Google Summer of Code OpenCL image support for the r600g driver

Méret: px
Mutatás kezdődik a ... oldaltól:

Download "Google Summer of Code OpenCL image support for the r600g driver"

Átírás

1 Google Summer of Code 2015 OpenCL image support for the r600g driver

2 Képek:

3 a

4 Min szeretnék dolgozni? Kapcsolatfelvétel a mentorral

5 Project proposal Célok Miért jó ez? Milestone-ok Architektúra vázlata

6 Proposalok elbírálása

7 Kapcsolatfelvétel a szervezettel Fejlesztési környezet Folyamatok Szokások

8 Kép balra:

9 OpenCL image support for the r600g driver

10 OpenCL image support for the r600g driver

11 GPGPU Képek: AMD Accelerated Parallel Processing OpenCL Programming Guide

12 OpenCL image support for the r600g driver OpenCL: GPGPU keretrendszer GPU-side: OpenCL C nyelv kernel void vec_add(global float *a, global const float *b) { int i = get_global_id(0); a[i] += b[i]; }

13 OpenCL image support for the r600g driver OpenCL: GPGPU keretrendszer GPU-side: OpenCL C nyelv CPU-side: C, C++ lib [...] // inicializáció cl_program program = clcreateprogramwithsource(...); cl_kernel kernel = clcreatekernel(program, "vec_add", [...]); clsetkernelarg(kernel, 0, sizeof(cl_mem), &mem_buf_a); clsetkernelarg(kernel, 1, sizeof(cl_mem), &mem_buf_b); size_t work_size[] = {16}; clenqueuendrangekernel(q, kernel, [...], work_size, [...]);

14 OpenCL image support for the r600g driver A GPU hatékonyan kezel képeket

15 OpenCL image support for the r600g driver A GPU hatékonyan kezel képeket Interpoláció Kép:

16 OpenCL image support for the r600g driver A GPU hatékonyan kezel képeket Interpoláció Swizzling (cache!) x = x1 x0 bits y = y1 y0 bits mem_addr = y1 x1 y0 x0 bits Kép:

17 OpenCL image support for the r600g driver A GPU hatékonyan kezel képeket Interpoláció Swizzling Formátum-konverzió X Red Green Blue 1 5 bits 5 bits 5 bits Red Green Blue 5 bits 6 bits 5 bits Red Green Blue 8 bits 8 bits 8 bits

18 OpenCL image support for the r600g driver OpenCL image és sampler objektumok const sampler_t sampler = CLK_NORMALIZED_COORDS_FALSE CLK_FILTER_NEAREST; kernel void red_to_green(read_only image2d_t input, write_only image2d_t output) { size_t x = get_global_id(0); size_t y = get_global_id(1); uint4 color = read_imageui(input, sampler, (int2)(x, y)); // do something with color } write_imageui(output, (int2)(x, y), color);

19 OpenCL image support for the r600g driver mesa: 3D, video, GPGPU libek gyűjteménye 3D rendering API-k (pl. OpenGL) Video gyorsító API-k (pl. VAAPI) Eszközillesztők (driverek) r600g: AMD R600, R700, Evergreen és Northern Islands GPU-k g szuffix: Gallium

20

21 Gallium 3D Függ-e az alábbitól? API HW OS Igen Nem Nem* Nem Igen Nem Igen Igen Igen

22 OpenCL state tracker: clover API-szintű absztakciók menedzselése Buffer, image, sampler Adatmozgatás Események OpenCL C > GPU asm (most: R600 ISA) Device Driver adja a targetet Clang+LLVM fordít Clang OpenCL frontend LLVM AMDGPU backend Feladat: Fordítsa le a képekkel kapcsolatos OpenCL kódot is!

23 LLVM Fordítóprogram-keretrendszer LLVM IR: ASM szintű gépfüggetlen nyelv SSA: Static Single = internal constant [14 x i8] c"hello, world\0a\00" declare define %argc, i8** %argv) nounwind { entry: %tmp1 = getelementptr [14 x i32 0, i32 0 %tmp2 = call i32 i8* %tmp1 ) nounwind i32 0 }

24 LLVM Front-end: nyelv -> LLVM Back-end: LLVM ->? gépi kód ASM szövege Másik nyelv LLVM bitkód Bitkódok összelinkelhetőek Rengeteg optimalizációs algoritmus

25 OpenCL C -> R600 ISA Front-End: Clang Built-In Library: libclc LLVM bitkód library Feladat: Kép típus Képi builtinek Képek: AMD Accelerated Parallel Processing OpenCL Programming Guide

26 Device Driver: r600g API-szintű absztrakciók -> GPU-szintű fogalmak GPU felparaméterezése : regiszterek Kernel kezdőcíme Erőforrások kezdőcímei, metaadatai: memóriaterületek nézetei Nézetek VTX/TEX: csak olvasható nézet, vertex és texture bufferekre RAT (aka UAV): írható/olvasható nézet Van belőlük több (VTX0, VTX1, RAT5 stb.) Erőforrások leképezése Kernel input -> VTX0 Global bufferex -> VTX1, RAT0 read_only képek -> VTXn (n >= 2) write_only képek -> RATn (n >= 1)

27 Kép: Evergreen Family Instruction Set Architecture

28 Implementált feature-ök Képek metaadatai (dimenziók, pixelformátum) get_image_* Adatok küldése a kernelnek Képek olvasása és írása read_image* write_image* Csak 2D támogatott Sampler objektumok Csak kernelparaméterben Tesztek

29 Open-Source projektek mesa: maga a driver LLVM: OpenCL C fordításához libclc: OpenCL C beépített függvények piglit: tesztek Kevés patch került upstream-be (még)

30 Linkek Blog: zogi-gsoc2015.blogspot.com GSoC: LLVM Language Reference: llvm.org/docs/langref.html Evergreen ISA: developer.amd.com/wordpress/media/2012/10/amd_evergreen- Family_Instruction_Set_Architecture.pdf

OpenCL - The open standard for parallel programming of heterogeneous systems

OpenCL - The open standard for parallel programming of heterogeneous systems OpenCL - The open standard for parallel programming of heterogeneous systems GPU-k általános számításokhoz GPU Graphics Processing Unit Képalkotás: sok, általában egyszerű és független művelet < 2006:

Részletesebben

GPU Lab. 14. fejezet. OpenCL textúra használat. Grafikus Processzorok Tudományos Célú Programozása. Berényi Dániel Nagy-Egri Máté Ferenc

GPU Lab. 14. fejezet. OpenCL textúra használat. Grafikus Processzorok Tudományos Célú Programozása. Berényi Dániel Nagy-Egri Máté Ferenc 14. fejezet OpenCL textúra használat Grafikus Processzorok Tudományos Célú Programozása Textúrák A textúrák 1, 2, vagy 3D-s tömbök kifejezetten szín információk tárolására Főbb különbségek a bufferekhez

Részletesebben

GPGPU alapok. GPGPU alapok Grafikus kártyák evolúciója GPU programozás sajátosságai

GPGPU alapok. GPGPU alapok Grafikus kártyák evolúciója GPU programozás sajátosságai GPGPU alapok GPGPU alapok Grafikus kártyák evolúciója GPU programozás sajátosságai Szenasi.sandor@nik.uni-obuda.hu GPGPU alapok GPGPU alapok Grafikus kártyák evolúciója GPU programozás sajátosságai Szenasi.sandor@nik.uni-obuda.hu

Részletesebben

Adat- és feladat párhuzamos modell Az ISO C99 szabvány részhalmaza

Adat- és feladat párhuzamos modell Az ISO C99 szabvány részhalmaza Adat- és feladat párhuzamos modell Az ISO C99 szabvány részhalmaza párhuzamos kiegészítésekkel Numerikus műveletek az IEEE754 alapján Beágyazott és mobil eszközök támogatása OpenGL, OpenGL ES adatcsere

Részletesebben

GPGPU. GPU-k felépítése. Valasek Gábor

GPGPU. GPU-k felépítése. Valasek Gábor GPGPU GPU-k felépítése Valasek Gábor Tartalom A mai órán áttekintjük a GPU-k architekturális felépítését A cél elsősorban egy olyan absztrakt hardvermodell bemutatása, ami segít megérteni a GPU-k hardveres

Részletesebben

Párhuzamos és Grid rendszerek

Párhuzamos és Grid rendszerek Párhuzamos és Grid rendszerek (10. ea) GPGPU Szeberényi Imre BME IIT Az ábrák egy része az NVIDIA oktató anyagaiból és dokumentációiból származik. Párhuzamos és Grid rendszerek BME-IIT

Részletesebben

Fejlesztői szemmel - 2010. at K

Fejlesztői szemmel - 2010. at K Fejlesztői szemmel - 2010 M at K ta is K G i s er C ge on l y su lt in g Tartalom Bemutatkozás Az Androidról röviden, fejlesztői szemmel Az Android 2.2 újdonságai Új média alrendszer: Stagefright Telephony

Részletesebben

SAT probléma kielégíthetőségének vizsgálata. masszív parallel. mesterséges neurális hálózat alkalmazásával

SAT probléma kielégíthetőségének vizsgálata. masszív parallel. mesterséges neurális hálózat alkalmazásával SAT probléma kielégíthetőségének vizsgálata masszív parallel mesterséges neurális hálózat alkalmazásával Tajti Tibor, Bíró Csaba, Kusper Gábor {gkusper, birocs, tajti}@aries.ektf.hu Eszterházy Károly Főiskola

Részletesebben

Grafikus csővezeték 1 / 44

Grafikus csővezeték 1 / 44 Grafikus csővezeték 1 / 44 Grafikus csővezeték Vertex feldolgozás A vertexek egyenként a képernyő térbe vannak transzformálva Primitív feldolgozás A vertexek primitívekbe vannak szervezve Raszterizálás

Részletesebben

Videókártya - CUDA kompatibilitás: CUDA weboldal: Példaterületek:

Videókártya - CUDA kompatibilitás:   CUDA weboldal:   Példaterületek: Hasznos weboldalak Videókártya - CUDA kompatibilitás: https://developer.nvidia.com/cuda-gpus CUDA weboldal: https://developer.nvidia.com/cuda-zone Példaterületek: http://www.nvidia.com/object/imaging_comp

Részletesebben

GPGPU-k és programozásuk Dezső, Sima Sándor, Szénási

GPGPU-k és programozásuk Dezső, Sima Sándor, Szénási GPGPU-k és programozásuk Dezső, Sima Sándor, Szénási GPGPU-k és programozásuk írta Dezső, Sima és Sándor, Szénási Szerzői jog 2013 Typotex Kivonat A processzor technika alkalmazásának fejlődése terén napjaink

Részletesebben

HLSL programozás. Grafikus játékok fejlesztése Szécsi László t06-hlsl

HLSL programozás. Grafikus játékok fejlesztése Szécsi László t06-hlsl HLSL programozás Grafikus játékok fejlesztése Szécsi László 2013.02.16. t06-hlsl RESOURCES PIPELINE STAGES RENDER STATES Vertex buffer Instance buffer Constant buffers and textures Index buffer Constant

Részletesebben

Grafikus csővezeték és az OpenGL függvénykönyvtár

Grafikus csővezeték és az OpenGL függvénykönyvtár Grafikus csővezeték és az OpenGL függvénykönyvtár 1 / 32 A grafikus csővezeték 3D-s színtér objektumainak leírása primitívekkel: pontok, élek, poligonok. Primitívek szögpontjait vertexeknek nevezzük Adott

Részletesebben

Haladó Grafika EA. Inkrementális képszintézis GPU-n

Haladó Grafika EA. Inkrementális képszintézis GPU-n Haladó Grafika EA Inkrementális képszintézis GPU-n Pipeline Az elvégzendő feladatot részfeladatokra bontjuk Mindegyik részfeladatot más-más egység dolgozza fel (ideális esetben) Minden egység inputja,

Részletesebben

Számítógépek felépítése

Számítógépek felépítése Számítógépek felépítése Emil Vatai 2014-2015 Emil Vatai Számítógépek felépítése 2014-2015 1 / 14 Outline 1 Alap fogalmak Bit, Byte, Word 2 Számítógép részei A processzor részei Processzor architektúrák

Részletesebben

Diplomamunka. Miskolci Egyetem. GPGPU technológia kriptográfiai alkalmazása. Készítette: Csikó Richárd VIJFZK mérnök informatikus

Diplomamunka. Miskolci Egyetem. GPGPU technológia kriptográfiai alkalmazása. Készítette: Csikó Richárd VIJFZK mérnök informatikus Diplomamunka Miskolci Egyetem GPGPU technológia kriptográfiai alkalmazása Készítette: Csikó Richárd VIJFZK mérnök informatikus Témavezető: Dr. Kovács László Miskolc, 2014 Köszönetnyilvánítás Ezúton szeretnék

Részletesebben

MSP430 programozás Energia környezetben

MSP430 programozás Energia környezetben MSP430 programozás Energia környezetben lámpákról Mostan színes tintákról álmodom 1 Az RGB LED bemutatása Az RGB LED három, különböző színű LED egy közös tokban. A három szín a három alapszín, amelyből

Részletesebben

Eichhardt Iván GPGPU óra anyagai

Eichhardt Iván GPGPU óra anyagai OpenCL modul 1. óra Eichhardt Iván iffan@caesar.elte.hu GPGPU óra anyagai http://cg.inf.elte.hu/~gpgpu/ OpenCL API és alkalmazása Gyakorlati példák (C/C++) Pl.: Képfeldolgozás Párhuzamos tervezési minták

Részletesebben

Eichhardt Iván GPGPU óra anyagai

Eichhardt Iván GPGPU óra anyagai OpenCL modul 1. óra Eichhardt Iván iffan@caesar.elte.hu GPGPU óra anyagai http://cg.inf.elte.hu/~gpgpu/ OpenCL API és alkalmazása Gyakorlati példák (C/C++) Pl.: Képfeldolgozás Párhuzamos programozás elméleti

Részletesebben

Haladó Fordítóprogramok

Haladó Fordítóprogramok Haladó Fordítóprogramok Követelmények Horváth Gábor xazax.hun@gmail.com xazax.web.elte.hu 3-5 oldalas esszé, téma bemutatása, minimális előismeretet feltételezve vagy demo program Témák előadás közben

Részletesebben

Programozás C nyelven FELÜLNÉZETBŐL elhullatott MORZSÁK. Sapientia EMTE

Programozás C nyelven FELÜLNÉZETBŐL elhullatott MORZSÁK. Sapientia EMTE Programozás C nyelven FELÜLNÉZETBŐL elhullatott MORZSÁK Sapientia EMTE 2015-16 1 Felülnézet 1 Feltételes fordítás #if, #else, #elif, #endif, #ifdef, #ifndef stb. Felülnézet 2 #include: hatására a preprocesszor

Részletesebben

Parciális rekonfiguráció Heterogán számítási rendszerek VIMIMA15

Parciális rekonfiguráció Heterogán számítási rendszerek VIMIMA15 BUDAPESTI MŰSZAKI ÉS GAZDASÁGTUDOMÁNYI EGYETEM VILLAMOSMÉRNÖKI ÉS INFORMATIKAI KAR MÉRÉSTECHNIKA ÉS INFORMÁCIÓS RENDSZEREK TANSZÉK Parciális rekonfiguráció Heterogán számítási rendszerek VIMIMA15 Fehér

Részletesebben

OpenGL Compute Shader-ek. Valasek Gábor

OpenGL Compute Shader-ek. Valasek Gábor OpenGL Compute Shader-ek Valasek Gábor Compute shader OpenGL 4.3 óta része a Core specifikációnak Speciális shaderek, amikben a szokásos GLSL parancsok (és néhány új) segítségével általános számítási feladatokat

Részletesebben

i1400 Image Processing Guide A-61623_zh-tw

i1400 Image Processing Guide A-61623_zh-tw i1400 Image Processing Guide A-61623_zh-tw ................................................................. 1.............................................................. 1.........................................................

Részletesebben

Operációs rendszerek Memóriakezelés 1.1

Operációs rendszerek Memóriakezelés 1.1 Operációs rendszerek Memóriakezelés 1.1 Pere László (pipas@linux.pte.hu) PÉCSI TUDOMÁNYEGYETEM TERMÉSZETTUDOMÁNYI KAR INFORMATIKA ÉS ÁLTALÁNOS TECHNIKA TANSZÉK Operációs rendszerek p. A memóriakezelő A

Részletesebben

Grafikus csővezeték 2 / 77

Grafikus csővezeték 2 / 77 Bevezetés 1 / 77 Grafikus csővezeték 2 / 77 Grafikus csővezeték Vertex feldolgozás A vertexek egyenként a képernyő térbe vannak transzformálva Primitív feldolgozás A vertexek primitívekbe vannak szervezve

Részletesebben

Bevitel-Kivitel. Eddig a számítógép agyáról volt szó. Szükség van eszközökre. Processzusok, memória, stb

Bevitel-Kivitel. Eddig a számítógép agyáról volt szó. Szükség van eszközökre. Processzusok, memória, stb Input és Output 1 Bevitel-Kivitel Eddig a számítógép agyáról volt szó Processzusok, memória, stb Szükség van eszközökre Adat bevitel és kivitel a számitógépből, -be Perifériák 2 Perifériákcsoportosításá,

Részletesebben

OpenCL modul 2. óra: Első rész

OpenCL modul 2. óra: Első rész OpenCL modul 2. óra: Első rész OpenCL API fontos eljárások 3 Példaprojekt Üres Lekérdezések OpenGL / OpenCL együttműködés Hasznos linkek http://www.khronos.org/registry/cl/sdk/1.1/docs/man/ xhtml/ Webes

Részletesebben

Parciális rekonfiguráció Heterogén számítási rendszerek VIMIMA15

Parciális rekonfiguráció Heterogén számítási rendszerek VIMIMA15 BUDAPESTI MŰSZAKI ÉS GAZDASÁGTUDOMÁNYI EGYETEM VILLAMOSMÉRNÖKI ÉS INFORMATIKAI KAR MÉRÉSTECHNIKA ÉS INFORMÁCIÓS RENDSZEREK TANSZÉK Parciális rekonfiguráció Heterogén számítási rendszerek VIMIMA15 Fehér

Részletesebben

Magas szintű optimalizálás

Magas szintű optimalizálás Magas szintű optimalizálás Soros kód párhuzamosítása Mennyi a várható teljesítmény növekedés? Erős skálázódás (Amdahl törvény) Mennyire lineáris a skálázódás a párhuzamosítás növelésével? S 1 P 1 P N GPGPU

Részletesebben

Excel vagy Given-When-Then? Vagy mindkettő?

Excel vagy Given-When-Then? Vagy mindkettő? TESZT & TEA BUDAPEST AGILE MEETUP Pénzügyi számítások automatizált agilis tesztelése: Excel vagy Given-When-Then? Vagy mindkettő? NAGY GÁSPÁR TechTalk developer coach Budapest, 2014 február 6. SpecFlow

Részletesebben

Széchenyi István Egyetem www.sze.hu/~herno

Széchenyi István Egyetem www.sze.hu/~herno Oldal: 1/6 A feladat során megismerkedünk a C# és a LabVIEW összekapcsolásának egy lehetőségével, pontosabban nagyon egyszerű C#- ban írt kódból fordítunk DLL-t, amit meghívunk LabVIEW-ból. Az eljárás

Részletesebben

Számítógépes grafika

Számítógépes grafika Számítógépes grafika XX. rész A GPU programozása a GLSL nyelv Az OpenGL árnyaló nyelve a GLSL (OpenGL Shading Language), amely segítségével vertex- és pixel- (fragment) shaderek által programozhatjuk a

Részletesebben

C# osztályok. Krizsán Zoltán

C# osztályok. Krizsán Zoltán C# osztályok Krizsán Zoltán Fogalma Önálló hatáskőrrel rendelkező, absztrakt adattípus, amely több, különböző elemet tartalmazhat. Minden esetben a heap-en jön létre! A programozó hozza létre, de a GC

Részletesebben

Vizuális, eseményvezérelt programozás XI.

Vizuális, eseményvezérelt programozás XI. Vizuális, eseményvezérelt programozás XI ÓE-NIK, 2011 1 Hallgatói tájékoztató A jelen bemutatóban található adatok, tudnivalók és információk a számonkérendő anyag vázlatát képezik Ismeretük szükséges,

Részletesebben

A CUDA előnyei: - Elszórt memória olvasás (az adatok a memória bármely területéről olvashatóak) PC-Vilag.hu CUDA, a jövő technológiája?!

A CUDA előnyei: - Elszórt memória olvasás (az adatok a memória bármely területéről olvashatóak) PC-Vilag.hu CUDA, a jövő technológiája?! A CUDA (Compute Unified Device Architecture) egy párhuzamos számításokat használó architektúra, amelyet az NVIDIA fejlesztett ki. A CUDA valójában egy számoló egység az NVIDIA GPU-n (Graphic Processing

Részletesebben

Mobil Informatikai Rendszerek

Mobil Informatikai Rendszerek Mobil Informatikai Rendszerek Android NDK Native Development Kit Sicz-Mesziár János sicz-mesziar.janos@nik.uni-obuda.hu Mezei József mezei.jozsef@nik.uni-obuda.hu 2018. április 22. NDK Native Development

Részletesebben

Farkas Gyula Szakkollégium Bit- és számtologatók. DirectX9 felhasználása számítógépes grafikában (bevezető egy primitív keretrendszer)

Farkas Gyula Szakkollégium Bit- és számtologatók. DirectX9 felhasználása számítógépes grafikában (bevezető egy primitív keretrendszer) Farkas Gyula Szakkollégium Bit- és számtologatók DirectX9 felhasználása számítógépes grafikában (bevezető egy primitív keretrendszer) 2006. április 26. Róth Ágoston DirectX 9.0 SDK telepítése után A fejlesztői

Részletesebben

Utolsó módosítás:

Utolsó módosítás: Utolsó módosítás: 2012. 09. 06. 1 A tantárggyal kapcsolatos adminisztratív kérdésekkel Micskei Zoltánt keressétek. 2 3 4 5 6 7 8 9 Forrás: Gartner Hype Cycle for Virtualization, 2010, http://premierit.intel.com/docs/doc-5768

Részletesebben

A számítógépes grafika inkrementális képszintézis algoritmusának hardver realizációja Teljesítménykövetelmények:

A számítógépes grafika inkrementális képszintézis algoritmusának hardver realizációja Teljesítménykövetelmények: Beveetés A sámítógépes grafika inkrementális képsintéis algoritmusának hardver realiációja Teljesítménykövetelmények: Animáció: néhány nsec/ képpont Massívan párhuamos Pipeline(stream processor) Párhuamos

Részletesebben

KÉPFELDOLGOZÓ ALGORITMUSOK FEJLESZTÉSE GRAFIKUS HARDVER KÖRNYEZETBEN

KÉPFELDOLGOZÓ ALGORITMUSOK FEJLESZTÉSE GRAFIKUS HARDVER KÖRNYEZETBEN KÉPFELDOLGOZÓ ALGORITMUSOK FEJLESZTÉSE GRAFIKUS HARDVER KÖRNYEZETBEN Takács Gábor Konzulens: Vajda Ferenc PhD, adjunktus 1 TARTALOMJEGYZÉK: Budapesti Műszaki és Gazdaságtudományi Egyetem A kutatási projekt

Részletesebben

Clang Static Analyzer belülről

Clang Static Analyzer belülről Clang Static Analyzer belülről Nagy Donát 2015. október 6. Áttekintés 1 Clang Static Analyzer kívülről 2 A statikus elemzés folyamata 3 Az eszköz felépítése 4 Egy checker felépítése Rövid definíciók Clang

Részletesebben

OpenCL Kovács, György

OpenCL Kovács, György OpenCL Kovács, György OpenCL Kovács, György Szerzői jog 2013 Typotex Tartalom Bevezetés... xii 1. Az OpenCL története... xii 2. Az OpenCL jelene és jövője... xvii 3. OpenCL a Flynn-osztályokban... xviii

Részletesebben

GPGPU és számítások heterogén rendszereken

GPGPU és számítások heterogén rendszereken GPGPU és számítások heterogén rendszereken Eichhardt Iván eichhardt.ivan@sztaki.mta.hu ELTE-s GPGPU óra anyagai http://cg.inf.elte.hu/~gpgpu/ Gyors bevezetés a Párhuzamosságról OpenCL API Gyakorlati példák

Részletesebben

(GP)GPU kezdetek. Avagy hogyan lesz az algoritmusból implementáció. Lectures on Modern Scientific Programming Wigner RCP November 2015.

(GP)GPU kezdetek. Avagy hogyan lesz az algoritmusból implementáció. Lectures on Modern Scientific Programming Wigner RCP November 2015. (GP)GPU kezdetek Avagy hogyan lesz az algoritmusból implementáció Lectures on Modern Scientific Programming Wigner RCP 23-25 November 2015 Tartalom Számítógépes grafika GPU hardver ismeretek GPGPU API

Részletesebben

2D képszintézis. Szirmay-Kalos László

2D képszintézis. Szirmay-Kalos László 2D képszintézis Szirmay-Kalos László 2D képszintézis Modell szín (200, 200) Kép Kamera ablak (window) viewport Unit=pixel Saját színnel rajzolás Világ koordinátarendszer Pixel vezérelt megközelítés: Tartalmazás

Részletesebben

GPU alkalmazása az ALICE eseménygenerátorában

GPU alkalmazása az ALICE eseménygenerátorában GPU alkalmazása az ALICE eseménygenerátorában Nagy Máté Ferenc MTA KFKI RMKI ALICE csoport ELTE TTK Fizika MSc Témavezető: Dr. Barnaföldi Gergely Gábor MTA KFKI RMKI ALICE csoport Elméleti Fizikai Főosztály

Részletesebben

AliROOT szimulációk GPU alapokon

AliROOT szimulációk GPU alapokon AliROOT szimulációk GPU alapokon Nagy Máté Ferenc & Barnaföldi Gergely Gábor Wigner FK ALICE Bp csoport OTKA: PD73596 és NK77816 TARTALOM 1. Az ALICE csoport és a GRID hálózat 2. Szimulációk és az AliROOT

Részletesebben

Készítette: Trosztel Mátyás Konzulens: Hajós Gergely

Készítette: Trosztel Mátyás Konzulens: Hajós Gergely Készítette: Trosztel Mátyás Konzulens: Hajós Gergely Monte Carlo Markov Chain MCMC során egy megfelelően konstruált Markov-lánc segítségével mintákat generálunk. Ezek eloszlása követi a céleloszlást. A

Részletesebben

Silabs STK3700, Simplicity Studio laborgyakorlat

Silabs STK3700, Simplicity Studio laborgyakorlat Silabs STK3700, Simplicity Studio laborgyakorlat Scherer Balázs Budapest University of Technology and Economics Department of Measurement and Information Systems BME-MIT 2016 Saját Firmware library Saját

Részletesebben

Mechatronika és mikroszámítógépek 2017/2018 I. félév. Bevezetés a C nyelvbe

Mechatronika és mikroszámítógépek 2017/2018 I. félév. Bevezetés a C nyelvbe Mechatronika és mikroszámítógépek 2017/2018 I. félév Bevezetés a C nyelvbe A C programozási nyelv A C egy általános célú programozási nyelv, melyet Dennis Ritchie fejlesztett ki Ken Thompson segítségével

Részletesebben

D3D, DXUT primer. Grafikus játékok fejlesztése Szécsi László t01-system

D3D, DXUT primer. Grafikus játékok fejlesztése Szécsi László t01-system D3D, DXUT primer Grafikus játékok fejlesztése Szécsi László 2013.02.13. t01-system Háromszögháló reprezentáció Mesh Vertex buffer Index buffer Vertex buffer csúcs-rekordok tömbje pos normal tex pos normal

Részletesebben

Számítógépek felépítése, alapfogalmak

Számítógépek felépítése, alapfogalmak 2. előadás Számítógépek felépítése, alapfogalmak Lovas Szilárd SZE MTK MSZT lovas.szilard@sze.hu B607 szoba Nem reprezentatív felmérés kinek van ilyen számítógépe? Nem reprezentatív felmérés kinek van

Részletesebben

org.hibernate.lazyinitializationexception: illegal access to loading collection at

org.hibernate.lazyinitializationexception: illegal access to loading collection at org.hibernate.lazyinitializationexception: illegal access to loading collection at org.hibernate.collection.abstractpersistentcollection.initialize(abstractpersistentcollection.java:363) at org.hibernate.collection.abstractpersistentcollection.read(abstractpersistentcollection.java:108)

Részletesebben

4. Funkcionális primitívek GPUn

4. Funkcionális primitívek GPUn 4. Funkcionális primitívek GPUn GPU API emlékeztető Jelenleg a következő eszközök állnak rendelkezésre GPUs kódok futtatására: DirectX vagy OpenGL vagy Vulkan Compute Shader Ez grafikai célokra van kitalálva,

Részletesebben

Searching in an Unsorted Database

Searching in an Unsorted Database Searching in an Unsorted Database "Man - a being in search of meaning." Plato History of data base searching v1 2018.04.20. 2 History of data base searching v2 2018.04.20. 3 History of data base searching

Részletesebben

C vagy C++? Programozási Nyelvek és Fordítóprogramok Tanszék. Pataki Norbert. Programozási Nyelvek I.

C vagy C++? Programozási Nyelvek és Fordítóprogramok Tanszék. Pataki Norbert. Programozási Nyelvek I. Programozási Nyelvek és Fordítóprogramok Tanszék Programozási Nyelvek I. Témák 1 Bevezetés 2 A C++ alapfilozófiája 3 Névterek/namespace-ek 4 Függvények 5 Referenciák C++-ban Motiváció A C és a C++ nyelv

Részletesebben

Adatbázis-kezelés ODBC driverrel

Adatbázis-kezelés ODBC driverrel ADATBÁZIS-KEZELÉS ODBC DRIVERREL... 1 ODBC: OPEN DATABASE CONNECTIVITY (NYÍLT ADATBÁZIS KAPCSOLÁS)... 1 AZ ODBC FELÉPÍTÉSE... 2 ADATBÁZIS REGISZTRÁCIÓ... 2 PROJEKT LÉTREHOZÁSA... 3 A GENERÁLT PROJEKT FELÉPÍTÉSE...

Részletesebben

Textúrák. Szécsi László

Textúrák. Szécsi László Textúrák Szécsi László Textúra interpretációk kép a memóriában ugyanolyan mint a frame buffer pixel helyett texel adatok tömbje 1D, 2D, 3D tömb pl. RGB rekordok függvény diszkrét mintapontjai rácson rekonstrukció:

Részletesebben

Párhuzamos és Grid rendszerek. Flynn-féle architektúra modell. ClearSpeed gyorsító kártya. 2006: Tokyo Institute of Technology's

Párhuzamos és Grid rendszerek. Flynn-féle architektúra modell. ClearSpeed gyorsító kártya. 2006: Tokyo Institute of Technology's Párhuzamos és Grid rendszerek (10. ea) egy vektorprocesszor Szeberényi Imre BME IIT M Ű E G Y E T E M 1 7 8 2-1 - Flynn-féle architektúra modell Single DATA Multiple Single INSTRUCTIONS

Részletesebben

Direct3D pipeline. Grafikus játékok fejlesztése Szécsi László t03-pipeline

Direct3D pipeline. Grafikus játékok fejlesztése Szécsi László t03-pipeline Direct3D pipeline Grafikus játékok fejlesztése Szécsi László 2013.02.12. t03-pipeline RESOURCES PIPELINE STAGES RENDER STATES Vertex buffer Instance buffer Constant buffers and textures Index buffer Constant

Részletesebben

Flynn-féle architektúra modell. Párhuzamos és Grid rendszerek (8. ea) egy vektorprocesszor. Belső felépítés. ClearSpeed gyorsító kártya MTAP

Flynn-féle architektúra modell. Párhuzamos és Grid rendszerek (8. ea) egy vektorprocesszor. Belső felépítés. ClearSpeed gyorsító kártya MTAP Flynn-féle architektúra modell Párhuzamos és Grid rendszerek (8. ea) egy vektorprocesszor Szeberényi Imre BME IIT Single INSTRUCTIONS Multiple Single Single Instruction Single Data SISD

Részletesebben

GPGPU. Architektúra esettanulmány

GPGPU. Architektúra esettanulmány GPGPU Architektúra esettanulmány GeForce 7800 (2006) GeForce 7800 Rengeteg erőforrást fordítottak arra, hogy a throughput-ot maximalizálják Azaz a különböző típusú feldolgozóegységek (vertex és fragment

Részletesebben

Grafikus kártyák, mint olcsó szuperszámítógépek - I.

Grafikus kártyák, mint olcsó szuperszámítógépek - I. (1) Grafikus kártyák, mint olcsó szuperszámítógépek - I. tanuló szeminárium Jurek Zoltán, Tóth Gyula SZFKI, Röntgendiffrakciós csoport (2) Vázlat I. Motiváció Beüzemelés C alapok CUDA programozási modell,

Részletesebben

A keretrendszer. A linuxos keretrendszer az eredeti alapján készült (nagyrészt C++-ban), ezért nagyjából azzal azonos funkcionalitásokkal rendelkezik.

A keretrendszer. A linuxos keretrendszer az eredeti alapján készült (nagyrészt C++-ban), ezért nagyjából azzal azonos funkcionalitásokkal rendelkezik. A keretrendszer A linuxos keretrendszer az eredeti alapján készült (nagyrészt C++-ban), ezért nagyjából azzal azonos funkcionalitásokkal rendelkezik. Fordítás és futtatás A futtatáshoz elengedhetetlen,

Részletesebben

Programozás alapjai 2.Gy: A C nyelv alapjai P R O

Programozás alapjai 2.Gy: A C nyelv alapjai P R O Programozás alapjai 2.Gy: A C nyelv alapjai. P R O A L A G 1/32 B ITv: MAN 2018.10.02 Code::Blocks Indítsa el mindenki! 2/32 1 Code::Blocks Új projekt 2 3 4 5 3/32 Code::Blocks Forráskód Kód fordítása:

Részletesebben

Nemlineáris optimalizálási problémák párhuzamos megoldása grafikus processzorok felhasználásával

Nemlineáris optimalizálási problémák párhuzamos megoldása grafikus processzorok felhasználásával Nemlineáris optimalizálási problémák párhuzamos megoldása grafikus processzorok felhasználásával 1 1 Eötvös Loránd Tudományegyetem, Informatikai Kar Kari TDK, 2016. 05. 10. Tartalom 1 2 Tartalom 1 2 Optimalizálási

Részletesebben

Szakdolgozat. Dandár Gábor

Szakdolgozat. Dandár Gábor Szakdolgozat Dandár Gábor Debrecen 2008 Debreceni Egyetem Informatikai Kar A shader nyelvek lehetőségeiről A GPU felhasználása általános célú számításokra Témavezető: Készítette: Dr. Tornai Róbert Dandár

Részletesebben

Hadoop és használata az LPDS cloud-on

Hadoop és használata az LPDS cloud-on Hadoop és használata az LPDS cloud-on Bendig Loránd lbendig@ilab.sztaki.hu 2012.04.13 Miről lesz szó? Bevezetés Hadoop áttekintés OpenNebula Hadoop cluster az LPDS cloud-on Tapasztalatok, nyitott kérdések

Részletesebben

OSZTOTT 2D RASZTERIZÁCIÓS MODELL TÖBBMAGOS PROCESSZOROK SZÁMÁRA

OSZTOTT 2D RASZTERIZÁCIÓS MODELL TÖBBMAGOS PROCESSZOROK SZÁMÁRA Multidiszciplináris tudományok, 3. kötet. (2013) sz. pp. 259-268. OSZTOTT 2D RASZTERIZÁCIÓS MODELL TÖBBMAGOS PROCESSZOROK SZÁMÁRA Mileff Péter Adjunktus, Miskolci Egyetem, Informatikai Intézet, Általános

Részletesebben

ARM Cortex magú mikrovezérlők. mbed

ARM Cortex magú mikrovezérlők. mbed ARM Cortex magú mikrovezérlők mbed Scherer Balázs Budapest University of Technology and Economics Department of Measurement and Information Systems BME-MIT 2016 MBED webes fejlesztőkörnyezet 2009-ben megjelent

Részletesebben

Fejlett programozási nyelvek C++ Iterátorok

Fejlett programozási nyelvek C++ Iterátorok Fejlett programozási nyelvek C++ Iterátorok 10. előadás Antal Margit 2009 slide 1 Témakörök I. Bevezetés II. Iterátor definíció III. Iterátorok jellemzői IV. Iterátorkategóriák V. Iterátor adapterek slide

Részletesebben

Tervminták a valósidejű gyakorlatban

Tervminták a valósidejű gyakorlatban Tervminták a valósidejű gyakorlatban Forrás Ezeknek a diáknak a forrása a Game Programming Patterns című könyv Online elérhető a szerző oldaláról: http://gameprogrammingpatterns.com/contents.htm Game Loop

Részletesebben

FELÜLET...13 PROJEKTTERV...14

FELÜLET...13 PROJEKTTERV...14 1. FELADAT...3 1.1. FELADATKITŰZÉS:...3 1.2. PONTOSÍTÁS...3 1.2.1. Térkép:...3 1.2.2. Alkalmazott mesterséges intelligencia algoritmusok...3 1.3. ALRENDSZERDIAGRAM...3 2. OSZTÁLYOK...4 2.1. GUI ALRENDSZER(GYURI)...4

Részletesebben

eseményvezérelt megoldások Vizuális programozás 5. előadás

eseményvezérelt megoldások Vizuális programozás 5. előadás Programozási architektúrák, eseményvezérelt megoldások Vizuális programozás 5. előadás Komponens-alapú programozás Kezdelteges formája, az első komponensek: DLL-ek Black box ujrahasznosítható kód Függvényeket

Részletesebben

Hallgatói segédlet: Nvidia CUDA C programok debugolása Nvidia Optimus technológiás laptopokon. Készítette: Kovács Andor. 2011/2012 első félév

Hallgatói segédlet: Nvidia CUDA C programok debugolása Nvidia Optimus technológiás laptopokon. Készítette: Kovács Andor. 2011/2012 első félév Hallgatói segédlet: Nvidia CUDA C programok debugolása Nvidia Optimus technológiás laptopokon Készítette: Kovács Andor 2011/2012 első félév 1 A CUDA programok debugolásához kettő grafikus kártyára van

Részletesebben

Plakátok, részecskerendszerek. Szécsi László

Plakátok, részecskerendszerek. Szécsi László Plakátok, részecskerendszerek Szécsi László Képalapú festés Montázs: képet képekből 2D grafika jellemző eszköze modell: kép [sprite] 3D 2D képével helyettesítsük a komplex geometriát Image-based rendering

Részletesebben

ü É Í ü ü ü Í ü ű ü ü ü ű ü ű ű ű ü ü ü ű ü Í ü ű ü ü ü Ű Í É É Á Ő Á Ó Á Á Á Á É Á Á Á Á É Á Í Á Á Í Í ű Á É É Á Á Ö Í Á Á Á Á Á É Á Á Ó ű Í ü ü ü ű ű ü ü ű ü Á ü ű ü Í Í Í ü Í Í ű ű ü ü ü ü ű ü ű ü ü

Részletesebben

Ű Í ó Ü Ö Á Á Ó Ö Ü Ü Ü Ü Á Í Ü Á Á Ü Ü Ü Ü Ü Ü Ö Ü Í Ü Ü Ü Ü Ü Ü Ü Ü Ü Ü Á Í Ü Í Í Á Í Í Ü Í Í Ü Á Ü Ü Ü Ü Ü Ü Ü Ü Ő Ö Á ÁÍ Á Ü Ü Á Í Ü Í Á Ü Á Í ó Í Í Ü Ü ő Í Ü Ű Ü Ü Ü Ü Í Ü Ü Ü Ü Ü Ü Ü Í Ü Á Ü Ö Á

Részletesebben

ű í ú ü Á ü ü ü ü ü É É É Ü í ü Á í í ű í ú É É É Ü Í í í í Á í í Á í Á Í É Ő Ú ú Ú í í í íí í ú í í Í í Í Í É í í Í Í í ú í ü Ó í Í ú Í Í ű í ű í í í Í É Ü ű í ü ű í ú É É É Ü ű í í í í ü í Í í Ú Í í

Részletesebben

Í Á Á É ö ö ö ö ö ű ü ö ű ű ű ö ö ö ü ö ü í ü í í í ü í ü Á ü ö ö ü ö ü ö ö ü ö í ö ö ü ö ü í ö ü ű ö ü ö ü í ö í ö ű ű ö ö ú ö ü ö ű ű ű í ö ű í ű ö ű ü ö í ű í í ö í ö ö Ó Í ö ű ű ű ű í í ű ű í í Ü ö

Részletesebben

Demo board. Nagy András. Conet Kft november 29.

Demo board. Nagy András. Conet Kft november 29. Nagy András Baráth Áron Kéri Kálmán Conet Kft. 2016. november 29. Tartalom 1 Hardware Software 2 3 Hardware Software Tartalom 1 Hardware Software 2 3 Hardware Software Motiváció Elosztott épületvezérlés

Részletesebben

Függvények. Programozás I. Hatwágner F. Miklós november 16. Széchenyi István Egyetem, Gy r

Függvények. Programozás I. Hatwágner F. Miklós november 16. Széchenyi István Egyetem, Gy r Programozás I. Széchenyi István Egyetem, Gy r 2014. november 16. Áttekintés kel kapcsolatos fogalmak deklaráció Több, kompatibilis változat is elképzelhet. Meg kell el znie a fv. hívását. Mindenképp rögzíti

Részletesebben

Adatbázis és alkalmazás konszolidáció Oracle SPARC T4/5 alapon

Adatbázis és alkalmazás konszolidáció Oracle SPARC T4/5 alapon Adatbázis és alkalmazás konszolidáció Oracle SPARC T4/5 alapon Makár Zénó 2013. október 9. Invigor Informatika Kft 4 éve alakult Oracle Gold Partner HW és SW specializációk Oracle HW Support Provider Szolgáltatások

Részletesebben

GPGPU programozás oktatása

GPGPU programozás oktatása GPGPU programozás oktatása Szénási Sándor Összefoglalás A grafikus kártyák hagyományosan a képernyő tartalmának megjelenítéséért feleltek, ez azonban az évek folyamán lassan megváltozott. Ennek első látványos

Részletesebben

Objektumorientált programozás C# nyelven

Objektumorientált programozás C# nyelven Objektumorientált programozás C# nyelven 1. rész Osztályok és objektumok Mezık és metódusok Konstruktor és destruktor Névterek és hatókörök Láthatósági szintek Osztály szintő tagok Beágyazott osztályok

Részletesebben

Kir-Dev. 2016 tavasz. Március. Február. Kir-Dev

Kir-Dev. 2016 tavasz. Március. Február. Kir-Dev Kir-Dev 2016 tavasz Március simonyi.bme.hu újratelepítése bő 6 órás workshop Halad PéK - fejlődött keresőfelület, docker Áll Dzsájrosz Oktatás Újoncos tanfolyam Megtartottunk 4 előadást workshopokkal együtt

Részletesebben

Programozás. (GKxB_INTM021) Dr. Hatwágner F. Miklós május 6. Széchenyi István Egyetem, Gy r

Programozás. (GKxB_INTM021) Dr. Hatwágner F. Miklós május 6. Széchenyi István Egyetem, Gy r Programozás (GKxB_INTM021) Széchenyi István Egyetem, Gy r 2018. május 6. Parancssori paraméterek Parancssorban történ programindításkor a program nevét követ en szóközökkel elválasztva paraméterek (command

Részletesebben

GPGPU programozás lehetőségei. Nagy Máté Ferenc Budapest ALICE ELTE TTK Fizika MSc 2011 e-science Café

GPGPU programozás lehetőségei. Nagy Máté Ferenc Budapest ALICE ELTE TTK Fizika MSc 2011 e-science Café GPGPU programozás lehetőségei Nagy Máté Ferenc Budapest ALICE ELTE TTK Fizika MSc 2011 e-science Café Vázlat Egy, (kettő,) sok. Bevezetés a sokszálas univerzumba. A párhuzamosok a végtelenben találkoznak,

Részletesebben

ARM processzorok felépítése

ARM processzorok felépítése ARM processzorok felépítése Az ARM processzorok több családra bontható közösséget alkotnak. Az Cortex-A sorozatú processzorok, ill. az azokból felépülő mikrokontrollerek a high-end kategóriájú, nagy teljesítményű

Részletesebben

HLSL programozás. Szécsi László

HLSL programozás. Szécsi László HLSL programozás Szécsi László RESOURCES PIPELINE STAGES RENDER STATES Vertex buffer Instance buffer Constant buffers and textures Index buffer Constant buffers and textures Output buffer Constant buffers

Részletesebben

Operációs rendszerek. A Windows NT felépítése

Operációs rendszerek. A Windows NT felépítése Operációs rendszerek A Windows NT felépítése A Windows NT 1996: NT 4.0. Felépítésében is új operációs rendszer: New Technology (NT). 32-bites Windows-os rendszerek felváltása. Windows 2000: NT alapú. Operációs

Részletesebben

Grafikus processzorok általános célú programozása (GPGPU)

Grafikus processzorok általános célú programozása (GPGPU) 2015. szeptember 17. Grafikus processzorok általános célú programozása (GPGPU) Eichhardt I., Hajder L. és V. Gábor eichhardt.ivan@sztaki.mta.hu, hajder.levente@sztaki.mta.hu, valasek@inf.elte.hu Eötvös

Részletesebben

Objektumorientált programozás C# nyelven

Objektumorientált programozás C# nyelven Objektumorientált programozás C# nyelven 1. rész Osztályok és objektumok Mezık és metódusok Konstruktor és destruktor Láthatósági szintek Névterek és hatókörök Osztály szintő tagok Beágyazott osztályok

Részletesebben

Párhuzamos és Grid rendszerek

Párhuzamos és Grid rendszerek Párhuzamos és Grid rendszerek (10. ea) egy vektorprocesszor Szeberényi Imre BME IIT M Ű E G Y E T E M 1 7 8 2 Grir és OO labor BME-IIT Sz.I. 2013.04.15. - 1 - Flynn-féle architektúra

Részletesebben

PÁRHUZAMOS SZÁMÍTÁSTECHNIKA MODUL AZ ÚJ TECHNOLÓGIÁKHOZ KAPCSOLÓDÓ MEGKÖZELÍTÉSBEN

PÁRHUZAMOS SZÁMÍTÁSTECHNIKA MODUL AZ ÚJ TECHNOLÓGIÁKHOZ KAPCSOLÓDÓ MEGKÖZELÍTÉSBEN PÁRHUZAMOS SZÁMÍTÁSTECHNIKA MODUL AZ ÚJ TECHNOLÓGIÁKHOZ KAPCSOLÓDÓ MEGKÖZELÍTÉSBEN PARALLEL COMPUTING MODULE BASED ON THE NEW TECHNOLOGIES Vámossy Zoltán 1, Sima Dezső 2, Szénási Sándor 3, Rövid András

Részletesebben

Hardver modellezés SystemC-vel és SDL grafikus könyvtárral Visual Stúdió alatt

Hardver modellezés SystemC-vel és SDL grafikus könyvtárral Visual Stúdió alatt BME Hardver modellezés SystemC-vel és SDL grafikus könyvtárral Visual Stúdió alatt Visual Studio, SystemC, SDL Tóth Gergely Endre 2013.03.18. 1 Bevezetés Ebben a dokumentumban leírom, hogy hogyan lehet

Részletesebben

4. gyakorlat: interpolációs és approximációs görbék implementációja

4. gyakorlat: interpolációs és approximációs görbék implementációja Pázmány Péter Katolikus Egyetem Információs Technológiai Kar A számítógépes grafika alapjai kurzus, gyakorlati anyagok Benedek Csaba 4. gyakorlat: interpolációs és approximációs görbék implementációja

Részletesebben

Operációs rendszerek. UNIX fájlrendszer

Operációs rendszerek. UNIX fájlrendszer Operációs rendszerek UNIX fájlrendszer UNIX fájlrendszer Alapegység: a file, amelyet byte-folyamként kezel. Soros (szekvenciális) elérés. Transzparens (átlátszó) file-szerkezet. Link-ek (kapcsolatok) létrehozásának

Részletesebben