TROCHĘ HISTORII Marek Zając PO CO UŻYWAĆ OPENCL? Marek Zając.

Slides:



Advertisements
Podobne prezentacje
STL - Standard Template Library Autor: Błażej Chodarcewicz rainbow.mimuw.edu.pl/~bc189380/STL/
Advertisements

Współprogramy Plan: Motywacja Składnia Scenariusz obiektu współprogramu Przykłady Producent – konsument ( instrukcja attach ) Czytelnik -pisarze ( instukcja.
1 Building Integration System - Training Internal | ST-IST/PRM1 | 02/2008 | © Robert Bosch GmbH All rights reserved, also regarding any disposal,
PRZELICZNIK DŁUGOŚCI w programie NetBeans IDE autorzy: Michał Mrozek i Marcin Mrugała 2012.
Warsztaty C# Część 2 Grzegorz Piotrowski Grupa.NET PO
Wykład 4: Systemy nawigacji satelitarnej
Machine learning Lecture 3
Mechanika kwantowa dla niefizyków
Przyszłe zmiany sposobu finansowania zadań oświatowych
HELIOTECHNIKA W chwili obecnej jest niekonkurencyjna w porównaniu ze źródłami konwencjonalnymi, ale jest to „czysta energia” dlatego wiąże się z nią wiele.
B R Y Ł Y P L A T O Ń S K I E.
Bankowość Pieniądz Podstawowe informacje o bankach
Weryfikacja hipotez statystycznych
Krakowskie Sympozjum Naukowo-Techniczne
Zasilacze prądu stałego Czyli rzeczywiste źródła napięcia
Prof. nadzw. dr hab. inż. Jarosław Bartoszewicz
Mechanika kwantowa dla niefizyków
Box Behnken Design w optymalizacji procesu biosyntezy β-karotenu w hodowlach drożdży Rhodotorula rubra Ludmiła Bogacz-Radomska(1), Joanna Harasym(1,2,3),
Prof. dr hab. Roman Sobiecki Rachunki makroekonomiczne
CAPS LOCK - CERTYFIKOWANE SZKOLENIA JĘZYKOWE I KOMPUTEROWE
Prezentacje wykonali: Marcin Łukasik Wiktor Kołek
Co to jest SSC Master… SSC Master to platforma elektronicznego obiegu, dekretacji i akceptacji dokumentów w organizacji. Dzięki szerokiemu i elastycznemu.
Podstawy pomagania SPPiIK, 2016 Anna Gromińska.
Chemia biopierwiastków
Sedymentacja.
Współczesne kierunki polityki społecznej
Sprawozdanie roczne z realizacji Planu działania Krajowej Sieci Obszarów Wiejskich na lata za rok 2016 Warszawa, 26 czerwca 2017 r. Materiał.
Srebrna Małopolska regionalne inicjatywy na rzecz seniorów
Stan Wojenny.
O UTWORZENIE ZWIĄZKU METROPOLITALNEGO W WOJEWÓDZTWIE ŚLĄSKIM
Wojewódzki Inspektorat Ochrony Środowiska w Białymstoku
ZAWODOZNAWSTWO Materiały zrealizowane w ramach projektu
Wykład 8: Złożone problemy przetwarzania mobilnego
© dr hab. Inż. Paweł Jabłoński
Adsorpcja faza stała/ gazowa lub ciekła faza ciekła/ gazowa lub ciekła
MODELE EPIDEMIOLOGICZNE
Zagadnienie prawdy Andrzej Łukasik Zakład Ontologii i Teorii Poznania
Ewolucja gwiazd.
STAŁE RÓWNOWAGI REAKCJI PROTOLITYCZNYCH
Optymalizacja sieci drogowej propozycja algorytmu
Nie ma innego – Tylko Jezus Mariusz Śmiałek
W ramach stypendium Ministerstwa Kultury i Dziedzictwa Narodowego
Parki krajobrazowe na Podlasiu
Materiały pochodzą z Platformy Edukacyjnej Portalu
Zasady poprawnej komunikacji – jak uniknąć konfliktów ?
Moje dziecko i jego potrzeby.
Edukacja psychologiczna
GMINA RUDZINIEC.
Czym jest mowa nienawiści?
Wykład 7 Prawo urzędnicze.
MIASTO I GMINA OLESNO WYKONANIE BUDŻETU rok 2012.
Bezpieczeństwo gospodarcze strefy Schengen – walka z korupcją, doskonalenie wiedzy i działań Policji Mazowsza sierż. szt. mgr Bartosz Alot LK KWP zs.
Załamywanie światła czyli niesamowite zjawiska związanie z falową naturą światła Patryk Hes.
CENTRUM TRANSFERU TECHNOLOGII AGH
FQT2015, LNF Frascati, September 2015
Kazimierz Grotowski - bardzo ciekawe życie
Przedziwne właściwości cieczy
Zmienne losowe skokowe
Opublikowano w NATURE Physics vol. 11, Oct (DOI: /NPHYS3432) Motywacja
HARRODS, FORTNUM & MASON, SELFRIDGES
Reguły logiczne: jak wydobyć i zrozumieć wiedzę ukrytą w danych
SPOTKANIE KOMISJI DS. STAŻU PODYPLOMOWEGO OKRĘGOWEJ IZBY LEKARSKIEJ
Poradnik dla absolwenta gimnazjum
Stopień realizacji wskaźników Regionalnego Programu Operacyjnego Województwa Zachodniopomorskiego na lata Stan na r.
Ochrona danych osobowych
Ewaluacja jakości działalności naukowej
Bieszczady.
POL-on 2.0 Omówienie zakresu zmian w systemie POL-on
działalności naukowej
Zapis prezentacji:

TROCHĘ HISTORII Marek Zając

PO CO UŻYWAĆ OPENCL? Marek Zając

Intel Core i5 2550k OC 4,2 GHz AMD Radeon HD7870 OC 1,1 GHz

Marek Zając Intel Core i5 2550k 4 rdzenie AMD Radeon HD rdzeni

Marek Zając

DLACZEGO NIE UŻYWAĆ OPENCL? Marek Zając

CZEGO NAM TRZEBA? Marek Zając

CZAS NA NAJLEPSZE! Marek Zając

KOD!

TRADYCYJNE PODEJŚCIE Marek Zając

double* tab = new double[ ]; //prepare array... //... for(int i = 0; i < ; i++) { tab[i] *= 2.5; }

OPENCL Marek Zając

double* tab = new double[ ]; //prepare array... //... …

Marek Zając cl_int err; cl::vector platformList; cl::Platform::get(&platformList); … …

Marek Zając cl_context_properties cprops[3] = { CL_CONTEXT_PLATFORM, (cl_context_properties) (platformList[0])(), 0 }; cl::Context context(CL_DEVICE_TYPE_ALL, cprops, NULL, NULL, &err); cl::vector devices; devices = context.getInfo (); … …

Marek Zając std::ifstream file("func.cl"); std::string prog(std::istreambuf_iterator (file), (std::istreambuf_iterator ())); cl::Program::Sources source(1, std::make_pair(prog.c_str(), prog.length() + 1)); cl::Program program(context, source); err = program.build(devices, ""); cl::Kernel kernel(program, "func", &err); … …

… JUŻ PRAWIE, JESZCZE TYLKO … Marek Zając

cl::Buffer in(context, CL_MEM_READ_WRITE, sizeof(double) * ); cl::CommandQueue queue(context, devices[0], 0, NULL); const size_t local_ws = 256; const size_t global_ws = ceil((double)local_ws / ); cl::Event event; … …

Marek Zając

queue.enqueueWriteBuffer(in, CL_TRUE, 0, sizeof(double) * , tab); kernel.setArg(0, in); kernel.setArg(1, ); queue.enqueueNDRangeKernel(kernel, cl::NullRange, cl::NDRange(global_ws), cl::NDRange(local_ws), NULL, &event); event.wait(); queue.enqueueReadBuffer(in, CL_TRUE, 0, sizeof(double) * , tab); …

CZYŻBY KONIEC? Marek Zając

__kernel void func(__global double* in, int n) { size_t id = get_global_id(0); in[id] *= 2.5; }

TO MOŻE JAKIŚ TEST? ŻĄDAMY DOWODÓW! Marek Zając

__kernel void func(__global double* in, double x, int n) { size_t id = get_global_id(0); if(id < n) { in[id] *= x; in[id] += 10.0 * x; in[id] = sqrt(in[i]); }

Marek Zając K = K * 200

WYNIK TO… Marek Zając

CPU GPU 11,731 sek. 6,068 sek.

Marek Zając

double => float Marek Zając CPU GPU 12,963 sek. 2,979 sek.

Marek Zając DZIĘKUJĘ ZA UWAGĘ ŹRÓDŁA OBRAZKÓW: 99% KRADZIONE Z INTERNETU, 1% WŁAŚNE