Celluláris és Érzékelő Hullám-Számítógépek Kutatólaboratórium MTA-SzTAKI, Budapest Sokmagos processzor architektúrák Zarándy Ákos
Celluláris és Érzékelő Hullám-Számítógépek Kutatólaboratórium, MTA-SZTAKI 2 Áttekintés Sok magos processzorok előtérbe kerülése 10, 100, 1000, magos architektúrák Érzékelő processzortömbök
Celluláris és Érzékelő Hullám-Számítógépek Kutatólaboratórium, MTA-SZTAKI 3 Miért van szükség sok processzorra? Egy magos processzorok elérték a maximális tolerálható fogyasztást Sok magos processzorok kisebb teljesítményűek Sokmagos processzorok nem igényelnek gyártás technológia váltást Nanotechnológiás eszközök még messze vannak év W 100W 2005 egy magos sok magos Nano technológia
Celluláris és Érzékelő Hullám-Számítógépek Kutatólaboratórium, MTA-SZTAKI 4 Technológia tartalék Mai 45nm technológia –1 milliárd tranzisztor –4 GHz órajel frekvencia –Akár 1500 láb Pentium: –4 GHz –50 GOps –130W Intel 8080 processor –1975 –2MHz –0.5MOps –A teljesítménye elég volt egy ZX Spektrum vagy egy Commodore számítógéphez ~ 6 ezer tranzisztor 200,000 db 8080-as feltehető egyetlen chipre!!! 2000x nagyobb órajel érhető el ma!!! Az egy magos Pentium ma mégis “csak” ~100,000-szor nagyobb teljesítményű!!!
Celluláris és Érzékelő Hullám-Számítógépek Kutatólaboratórium, MTA-SZTAKI 5 Miért csökken az energia szükséglet a sok magos rendszerekben? Rövidebb jelutak (processzor mellett ott a memória) Alacsonyabb órajel, alacsonyabb core feszültség (f clock ~U core ) –Fogyasztás arányos a feszültség négyzetével Egy CMOS áramkör fogyasztása (Pw~ f 3 clock ) Alacsonyabb órajel frekvenciára tervezett eszközök energia igénye drasztikusan alacsonyabb –Nem kellenek extra erősítő fokozatok, amelyek a nagyon gyors jelterjedést biztosítják Órajel Adat Utasítás Trendek: –Energia növelés nélkül további teljesítmény növelés –Drasztikus energiacsökkentés, tartva a jelenlegi teljesítményt
Celluláris és Érzékelő Hullám-Számítógépek Kutatólaboratórium, MTA-SZTAKI 6 Sokmagos nagy fogyasztású processzorok Pentium család –Duo –quad Cell processor Terascale
Celluláris és Érzékelő Hullám-Számítógépek Kutatólaboratórium, MTA-SZTAKI 7 Cell Microprocessor IBM-Sony-Toshiba 1 db Power PC processor –512kByte cash –Max 6.4GFlops/25.6GOps –Elágazások, ciklusok kezelése 8db processzor mag (SPE) –256kByte memory –Max 6.4GFlops/25.6GOps –Változó szóhossz (8-128 bit) –SIMD –Elágazások, ciklusok kezelése Kommunikáció –200 Gbyte/s belső Megosztott (shared) memória modell (DMA-n keresztül) –25 Gbyte/s külső
Celluláris és Érzékelő Hullám-Számítógépek Kutatólaboratórium, MTA-SZTAKI 8 Cell Microprocessor főbb paraméterek Teljes sebesség (3.2 GHz) –60 GFlops (single precision) –225 GOPs (8 bit) 2,5 MByte memória összesen 245 millió tranzisztor 235 mm 2 szilícium 90nm technológia (65nm-es verzió már készül) 3.2GHz 85W (3.2 GHz) ~2,6 GigaOps/W (3.2 GHz) 400 M$ fejlesztési költség Elsődleges alkalmazás: Playstation 3
Celluláris és Érzékelő Hullám-Számítógépek Kutatólaboratórium, MTA-SZTAKI 9 Intel Terascale, 80 magos processzor 8x10 mag 1.28 TFolps 4GHz 275cm 2 szilícium felület 65 nm technonlógia 400 KByte memória összesen 100 millió tranzisztor
Celluláris és Érzékelő Hullám-Számítógépek Kutatólaboratórium, MTA-SZTAKI 10 Intel Terascale processzor mag 2db float MAC 2KB adat memória 3KB program memória Regisztertömb Kommunikáció –5 bemenet-5 kimenet –Non-blocking –Teljes cross bar –32GB/s irányonként
Celluláris és Érzékelő Hullám-Számítógépek Kutatólaboratórium, MTA-SZTAKI 11 Teljesítmény analízis Órajel harmadik hatványával arányos a fogyasztás –11-181W Hatékonnyság: –6-27 GFlops/W
Celluláris és Érzékelő Hullám-Számítógépek Kutatólaboratórium, MTA-SZTAKI 12 Sokmagos alacsony fogyasztású érzékelő processzor tömbök SCAMP –16 ezer processzor –20 Gops, 200mW –analóg processzorok Xenon –64 processzor –10 Gops, 20mW –Digitális processzorok
Celluláris és Érzékelő Hullám-Számítógépek Kutatólaboratórium, MTA-SZTAKI m CMOS (AMS) 1-poly 3-metal 128x128 cells APE cell 50 m 50 m 20 MIPS max. 12 W/cell 100 GIPS/W max 200mW (total) SCAMP-3 (2005) Chief Designer: Piotr Dudek, Machester University
Celluláris és Érzékelő Hullám-Számítógépek Kutatólaboratórium, MTA-SZTAKI 14 SCAMP Vision Chip lens SCAMP-2 chip optical input software instructions processed images/ features/descriptors
Celluláris és Érzékelő Hullám-Számítógépek Kutatólaboratórium, MTA-SZTAKI 15 SCAMP Vision Chip lens SCAMP-2 chip optical input software instructions processed images/ features/descriptors SIMD processor array APE
Celluláris és Érzékelő Hullám-Számítógépek Kutatólaboratórium, MTA-SZTAKI 16 SCAMP Vision Chip lens optical input software instructions processed images/ features/descriptors SIMD processor array APE REGISTERS PIX FLAG I/O & NEWS ALU Analogue Processing Element bus
Celluláris és Érzékelő Hullám-Számítógépek Kutatólaboratórium, MTA-SZTAKI 17 Analogue Registers analogue bus A i A B i B C i C D i D H i H K i K P i P Q i Q O i O analogue busses of four adjacent APEs Photodetector (PIXEL) i IN Input Output array column output Comparator & activity-flag V ref i PIX + _ FLAG (latch) N E W S Switched-current memory cells
Celluláris és Érzékelő Hullám-Számítógépek Kutatólaboratórium, MTA-SZTAKI 18 Transfer: A C analogue bus A i A B i B C i C D i D H i H K i K P i P Q i Q O i O analogue busses of four adjacent APEs Photodetector (PIXEL) i IN Input Output array column output Comparator & activity-flag V ref i PIX + _ FLAG (latch) N E W S i A = i C
Celluláris és Érzékelő Hullám-Számítógépek Kutatólaboratórium, MTA-SZTAKI 19 Add: A ( D+H) analogue bus A i A B i B C i C D i D H i H K i K P i P Q i Q O i O analogue busses of four adjacent APEs Photodetector (PIXEL) i IN Input Output array column output Comparator & activity-flag V ref i PIX + _ FLAG (latch) N E W S i A = (i D + i H )
Celluláris és Érzékelő Hullám-Számítógépek Kutatólaboratórium, MTA-SZTAKI 20 Divide: (A+B) D analogue bus A i A B i B C i C D i D H i H K i K P i P Q i Q O i O analogue busses of four adjacent APEs Photodetector (PIXEL) i IN Input Output array column output Comparator & activity-flag V ref i PIX + _ FLAG (latch) N E W S
Celluláris és Érzékelő Hullám-Számítógépek Kutatólaboratórium, MTA-SZTAKI 21 Conditional : IF (A+B)>0 analogue bus A i A B i B C i C D i D H i H K i K P i P Q i Q O i O analogue busses of four adjacent APEs Photodetector (PIXEL) i IN Input Output array column output Comparator & activity-flag V ref i PIX + _ FLAG (latch) N E W S
Celluláris és Érzékelő Hullám-Számítógépek Kutatólaboratórium, MTA-SZTAKI 22 Optical (Array-Parallel) Input analogue bus A i A B i B C i C D i D H i H K i K P i P Q i Q O i O analogue busses of four adjacent APEs Photodetector (PIXEL) i IN Input Output array column output Comparator & activity-flag V ref i PIX + _ FLAG (latch) N E W S Integration: FPN below 0.4% (rms) Continuous: Logarithmic compression
Celluláris és Érzékelő Hullám-Számítógépek Kutatólaboratórium, MTA-SZTAKI 23 Local Transfers analogue bus A i A B i B C i C D i D H i H K i K P i P Q i Q O i O analogue busses of four adjacent APEs Photodetector (PIXEL) i IN Input Output array column output Comparator & activity-flag V ref i PIX + _ FLAG (latch) N E W S to North from South
Celluláris és Érzékelő Hullám-Számítógépek Kutatólaboratórium, MTA-SZTAKI 24 APE Implementation (SCAMP-3) 111 transistors 67 control signals, 8 bias voltages 50 m x 50 m 0.35 m technology, 1P3M 1.25 MHz clock 12 W (max.) 512 MIPS/mm 2, 104 GIPS/W photo flag cmp. registers out & news in
Celluláris és Érzékelő Hullám-Számítógépek Kutatólaboratórium, MTA-SZTAKI x128 imageMedian FilterSobel Edge 32 kB 100s frames/sec Output Bottleneck Issue
Celluláris és Érzékelő Hullám-Számítógépek Kutatólaboratórium, MTA-SZTAKI x128 imageMedian FilterSobel Edge 16 kB Binary Map 2 kB 100s frames/sec 1000s frames/sec Output Bottleneck Issue
Celluláris és Érzékelő Hullám-Számítógépek Kutatólaboratórium, MTA-SZTAKI 27 Output Bottleneck Issue 128x128 imageMedian FilterSobel Edge 32 kB Binary Map 2 kB n = 15 1 Byte 100s frames/sec 1000s frames/sec >10 4 frames/sec Cell Count
Celluláris és Érzékelő Hullám-Számítógépek Kutatólaboratórium, MTA-SZTAKI 28 Példák SCAMP 3 működésére Élkiemelés 25 kép/s 1.2mW a teljes képfelvétel és az élkiemelés (2000 óra egyetlen ceruza elemről) Aktív kontúr követés 30 kép/s
Celluláris és Érzékelő Hullám-Számítógépek Kutatólaboratórium, MTA-SZTAKI 29 Finom szemcsés topografikus proceszortömb kínálta egyéb lehetőségek Beágyazott kép vagy egyéb érzékelő tömb Diffúzió (ellenállás háló) Globális logika, átlag
Celluláris és Érzékelő Hullám-Számítógépek Kutatólaboratórium, MTA-SZTAKI 30 On-chip Sensor Integration Advantages of near pixel processor arrangement –Local sensor control (based on the illumination distribution of a small neighborhood) Local sensor adaptation –Ultra high speed in decision making 10,000, 20,000 visual decisions/sec Global sensor control Local sensor control
Celluláris és Érzékelő Hullám-Számítógépek Kutatólaboratórium, MTA-SZTAKI 31 2D ellenállás háló Elsősorban analóg processzor tömbök –Adatok azonnal analóg formában vannak TeraOPS számítási teljesítmény, mW-okért Jól használható művelet Original image 600 ns80 ns900 ns1600 ns
Celluláris és Érzékelő Hullám-Számítógépek Kutatólaboratórium, MTA-SZTAKI 32 Globális logika, átlag Bináris képeken van-e fehér folt? Globális OR kapcsolat 5 ns Analóg memóriákkal globális átlag GLOBAL OR
Celluláris és Érzékelő Hullám-Számítógépek Kutatólaboratórium, MTA-SZTAKI 33 64x64 sensor-processor array Neighboring cells are directly interconnected Each cell is prepared to process 8x8 pixel array (scalable) SIMD 10GOPS, 20mW 500GOPS/W On-chip sensors Chief Designer: Péter Földesy Eutecus Inc MTA-SZTAKI Durva szemcsés érzékelő processzortömb: Xenon
Celluláris és Érzékelő Hullám-Számítógépek Kutatólaboratórium, MTA-SZTAKI 34 Processors: –Arithmetic –Morphologic Memory: –8-64 bytes/pixel Pixel representation: –1 bit/pixel (binary) –8 or 16 bits/pixel (grayscale) Pixel count: –from 1 to 64 pixels/cell Cell Architecture
Celluláris és Érzékelő Hullám-Számítógépek Kutatólaboratórium, MTA-SZTAKI 35 Achievable Resolution and Speed ASIC implementation –0.18 micron technology, (on-chip sensor) pixel size: 32x32 micron 256x256 array on 1cm 2 silicon 1,024 parallel processors 100MHz 0.1 Tops (100 GOps) –90 nanometer technology (off-chip sensor) pixel size: 12x12 micron 720x720 on 1cm 2 silicon 32,400 parallel processors 120MHz 3.8 TOps (3,800 GOps) FPGA implementation (off-chip sensor) –Virtex4 LX x160 array 400 parallel processors 150MHz 60 GOps
Celluláris és Érzékelő Hullám-Számítógépek Kutatólaboratórium, MTA-SZTAKI 36 Energia hatékonyság [GOps/W] Érzékelő tömbprocesszorok Sok magos processzorok FPGA-k Egy magos processzorok ,000 [db processzor]
Celluláris és Érzékelő Hullám-Számítógépek Kutatólaboratórium, MTA-SZTAKI 37 Sok magos eszközök hátránya Nincsenek hozzá algoritmusok, szoftverek ! Következő 5 év kihívása ilyen algoritmusokat/szoftvereket készíteni!!! Általános célú (PC, szerverek) Nagy számítás igényű feladatok (játékok grafikája, videó kódolás, meterológia) Konkrét cél alkalmazások (képfeldolgozás) Playstation 3: $500 (Cell microprocessor Linux alatt) [GOps/W] Érzékelő tömbprocesszorok Sok magos processzorok FPGA-k Egy magos processzorok ,000 [db processzor]
Celluláris és Érzékelő Hullám-Számítógépek Kutatólaboratórium MTA-SzTAKI, Budapest Köszönöm a figyelmet!
Celluláris és Érzékelő Hullám-Számítógépek Kutatólaboratórium, MTA-SZTAKI 39 Measurement results Original image Gradient Maximum filter 2D membrane waves