Przegląd architektury PlayStation 3

Podobne dokumenty
PlayStation3. Michał Zarychta

Plan wykładu. Akcelerator 3D Potok graficzny

Karty graficzne możemy podzielić na:

Julia 4D - raytracing

Organizacja pamięci w procesorach graficznych

Obliczenia równoległe na klastrze opartym na procesorze CELL/B.E.

GRAFIKA KOMPUTEROWA. Rozwiązania sprzętowe i programowe. Przyspieszanie sprzętowe. Synteza i obróbka obrazu

Tesla. Architektura Fermi

GRAFIKA KOMPUTEROWA. Rozwiązania sprzętowe i programowe. Przyspieszanie sprzętowe. Synteza dźwięku i obrazu

Architektura Komputerów

Implementacje algorytmów oddziałujących cząstek na architekturach masywnie równoległych

Programowanie procesorów graficznych GPGPU

Przegląd architektur kart. Sławomir Król

Wykład 6. Mikrokontrolery z rdzeniem ARM

Wprowadzenie. Artur Staszczyk Bartłomiej Filipek

Przyspieszanie sprzętowe

Porównanie wydajności CUDA i OpenCL na przykładzie równoległego algorytmu wyznaczania wartości funkcji celu dla problemu gniazdowego

Architektury komputerów Architektury i wydajność. Tomasz Dziubich

Bartłomiej Filipek

Programowanie procesorów graficznych NVIDIA (rdzenie CUDA) Wykład nr 1

GRK 4. dr Wojciech Palubicki

Potok graficzny i shadery. Hubert Rutkowski

Programowanie Procesorów Graficznych

Karta graficzna karta rozszerzeo odpowiedzialna generowanie sygnału graficznego dla ekranu monitora. Podstawowym zadaniem karty graficznej jest

Architektura potokowa RISC

Architektura komputerów

Technologie Informacyjne Wykład 2

Wysokowydajna implementacja kodów nadmiarowych typu "erasure codes" z wykorzystaniem architektur wielordzeniowych

System pamięci. Pamięć wirtualna

Architektura mikroprocesorów TEO 2009/2010

RENDERING W CZASIE RZECZYWISTYM. Michał Radziszewski

Analiza moż liwości i porównanie nowych ję zyków do programowania grafiki

Karty graficzne: budowa, zasada działania, standardy, parametry, dodatkowe funkcje

Akceleracja sprzętowa symulacji elektromagnetycznych. graficznych (GPU)

A Zasady współpracy. Ocena rozwiązań punktów punktów punktów punktów punktów

Libra.cs.put.poznan.pl/mailman/listinfo/skisrkolo.

i3: internet - infrastruktury - innowacje

Karta graficzna. Karta graficzna przyjmuje. rozszerzeń montowanej w magistrali wejścia/wyjścia na płycie głównej. Opcjonalnie układ graficzny

Implementacja sieci neuronowych na karcie graficznej. Waldemar Pawlaszek

GRK 5. dr Wojciech Palubicki

PROGRAMOWANIE WSPÓŁCZESNYCH ARCHITEKTUR KOMPUTEROWYCH DR INŻ. KRZYSZTOF ROJEK

Architektura komputerów

OpenGL - Open Graphics Library. Programowanie grafiki komputerowej. OpenGL 3.0. OpenGL - Architektura (1)

Karta przedmiotu. Podstawy programowania procesorów graficznych. realizowanego w ramach projektu PO WER

Architektura Procesorów Graficznych

Podstawy Techniki Mikroprocesorowej

HDR. Obrazy o rozszerzonym zakresie dynamiki

Wykład 4. Rendering (1) Informacje podstawowe

ARCHITEKTURA PROCESORA,

GPGPU General-Purpose computing on the GPU. Piotr Stańczyk

Programowanie gier komputerowych Tomasz Martyn Wykład 6. Materiały informacje podstawowe

Procesory Blackfin. Część 1

Struktura systemów komputerowych

Opis przedmiotu zamówienia

Architektura komputerów

CZYM JEST KARTA GRAFICZNA.

Synteza i obróbka obrazu HDR. Obrazy o rozszerzonym zakresie dynamiki

Zrównoleglenie i przetwarzanie potokowe

Architektura komputerów

METODY ELIMINACJI STUDENTÓW INFORMATYKI. Czyli co student INF-EKA powinien wiedzieć o MESI...

Architektura systemu komputerowego

System plików. Warstwowy model systemu plików

Wykład 4. Przegląd mikrokontrolerów 16-bit: - PIC24 - dspic - MSP430

1 Temat: Vertex Shader

Autor: inż. Wojciech Zatorski Opiekun pracy: dr inż. Krzysztof Małecki

Poniżej pokazane są poszczególne etapy, w nawiasach kwadratowych znajdują się nazwy tekstur, które utworzymy w projekcie, a przy strzałkach nazwy

Sprzęt komputerowy 2. Autor prezentacji: 1 prof. dr hab. Maria Hilczer

PROJEKTOWANIE SYSTEMÓW KOMPUTEROWYCH

CZĘŚĆ I ZAMÓWIENIA DOSTAWA SPRZĘTU INFORMATYCZNEGO DO PROJEKTU DOMOWY ASYSTENT OSÓB STARSZYCH I CHORYCH

Architektura komputerów

GRK 5. dr Wojciech Palubicki

Przetwarzanie obrazów w czasie rzeczywistym za pomocą GPU

AMD Ryzen recenzja procesora. Wpisany przez Mateusz Ponikowski Piątek, 11 Październik :47

Budowa komputera. Magistrala. Procesor Pamięć Układy I/O

Obliczenia Wysokiej Wydajności

Architektura komputerów

Larrabee GPGPU. Zastosowanie, wydajność i porównanie z innymi układami

JCuda Czy Java i CUDA mogą się polubić? Konrad Szałkowski

Systemy operacyjne III

SPECYFIKACJA TECHNICZNA (minimalne parametry techniczne)

System pamięci. Pamięć wirtualna

16. Taksonomia Flynn'a.

Budowa komputera. Magistrala. Procesor Pamięć Układy I/O

MESco. Testy skalowalności obliczeń mechanicznych w oparciu o licencje HPC oraz kartę GPU nvidia Tesla c2075. Stanisław Wowra

GRAFIKA RASTROWA. WYKŁAD 1 Wprowadzenie do grafiki rastrowej. Jacek Wiślicki Katedra Informatyki Stosowanej

Podstawy Informatyki Systemy sterowane przepływem argumentów

Projektowanie. Projektowanie mikroprocesorów

OPIS PRZEDMIOTU ZAMÓWIENIA- minimalne wymagania (zestawienie asortymentowo-ilościowe) PAKIET nr 2 CENA NAZWA ASORTYMENTU.

RDZEŃ x86 x86 rodzina architektur (modeli programowych) procesorów firmy Intel, należących do kategorii CISC, stosowana w komputerach PC,

Architektura Systemów Komputerowych Rozwój akceleratorów grafiki 3D po 2001r.

Architektura Systemów Komputerowych. Rozwój architektury komputerów klasy PC

Podsystem graficzny. W skład podsystemu graficznego wchodzą: karta graficzna monitor

Budowa Mikrokomputera

Architektura komputerów

Architektura systemu komputerowego. Działanie systemu komputerowego. Przerwania. Obsługa przerwań (Interrupt Handling)

Logiczny model komputera i działanie procesora. Część 1.

GR. 3. Diagnostyka i naprawa komputera.

Nowoczesne technologie przetwarzania informacji

Układ wykonawczy, instrukcje i adresowanie. Dariusz Chaberski

Budowa komputera Komputer computer computare

Transkrypt:

Przegląd architektury PlayStation 3 1 Your Name Your Title Your Organization (Line #1) Your Organization (Line #2)

Sony PlayStation 3 Konsola siódmej generacji Premiera: listopad 2006 33,5 mln sprzedanych 2

Hardware Procesor: Cell Broadband Engine Sony (SCE), Toshiba, IBM 2001-2005 400 mln dolarów GPU: RSX NVIDIA nic nowego ;) 3

Chipset graficzny: RSX Zmodyfikowany NV47 (GeForce 7800) oryginalny debiutował w połowie 2005 roku modyfikacja = wyrzucenie 8 ROPów! niezunifikowana architektura (dopiero w GeForce 8) 4

5

Przepływ przez RSX (1) 1. Vertex shader transformacja wierzchołków 8 jednostek Shader Model 3.0 wejście: wierzchołki z pamięci Pre T&L cache 4 kb kilkaset wierzchołków, zmniejsza narzut związany odczytem z pamięci wejście: tekstury L1 cache 2 kb L2 cache współdzielony z pixel shaderami wyjście: przetransformowane wierzchołki cache'owane w Post T&L cache - ~24 wierzchołki, niweluje konieczność wielokrotnego przeliczania tego samego wierzchołka (współdzielonego średnio przez 6 trójkątów) 6

Przepływ przez RSX (2) 2. Cull, clip & setup trójkąty fragmenty fixed-operation hardware wejście: przetransformowane wierzchołki z Post T&L cache przygotowywane w Primitive Assembly cache 4 wierzchołki uniknięcie fetchy z Post T&L cache, np. przy triangle stripach 1: A, B, C z Post T&L 2: B, C już w PA cache, D z Post T&L 3: C, D już w PA cache, E z Post T&L 4: D, E już w PA cache, F z Post T&L 7

Doskonały mesh 68 tys. trójkątów, 32 tys. wierzchołków, 1 triangle strip 8

Przepływ przez RSX (3) 2. Cull, clip & setup trójkąty fragmenty realizowana funkcjonalność: backface culling clipping do view volume triangle setup & traversal Z-culling wyjście: fragmenty 2x2 piksele (gradienty dla pixel shadera) 9

Przepływ przez RSX (4) 3. (Quad) Pixel shader 6 jednostek Shader Model 3.0 wejście: fragmenty 2x2 piksele (quady) przetwarzanie 4 pikseli jednocześnie niepoprawne również przetwarzane i wyniki odrzucane wejście: tekstury L1 cache 4 kb L2 cache współdzielony z vertex shaderami budowa: jednostka teksturująca (1 odczyt / cykl) 2 jednostki arytmetyczne (każda: 2 operacje wektorowe [np. add, mul, madd] lub 1 skalarna [np. sin, rsqrt, log, exp] / cykl) jednostka branchingu (1 branch / cykl) 10

Przepływ przez RSX (5) 3. (Quad) Pixel shader uruchamiany batchami (sterowane prez układ Quad Dispatch) ukrycie opóźnienia odczytu tekstury cykl QPS 1... QPS 6 arytm - gotowa od razu 1 quad 1 instrukcja 1 add r1, t1, c1... quad 6 instrukcja 1 add r1, t1, c1 2 quad 7 instrukcja 1 add r1, t1, c1... 3 quad 1 instrukcja 2 texld r2, r1, s1... quad 12 instrukcja 1 add r1, t1, c1 tex... to trochę zajmie... quad 6 instrukcja 2 texld r2, r1, s1 4 quad 7 instrukcja 2 texld r2, r1, s1... quad 1 instrukcja 3 add oc0, r2, c2... 5 quad 12 instrukcja 2 texld r2, r1, s1 quad 6 instrukcja 3 add oc0, r2, c2 ok, w międzyczasie załadowałem 11

Przepływ przez RSX (6) 3. (Quad) Pixel shader batching c.d. stan quadów musi być przechowywany pomiędzy kolejnymi wywołaniami instrukcji (rejestry 16/32 bit) rozmiar batchu ograniczony ilością pamięci na przechowanie stanu - zwykle kilkaset pikseli problemy z dynamic branchingiem utrzymywanie różnych branchy w batchu powoduje znaczne pogorszenie wydajności; rozsądnie używać, jeżeli flow nie zmienia się dla dużych partii ekranu wyjście: kolor, (ew. głębokość) fragmentu 12

Przepływ przez RSX (7) 4. Merging Fragment Crossbar rozdziela prace na mergery Merger zapisuje informacje o kolorze i głębokości testowanie głębokości, stencilu, nieprzezroczystości zapis do buforów ramki (mieszanie kolorów), głębokości wejście: piksele (kolor, nieprzezroczystość, głębokość) z pixel shaderów możliwy 4x multisampling obsługa kompresji bufora głębokości obsługa kafelkowanego (32x32 piksele) bufora głębokości 13

Przepływ przez RSX (8) 4. Merging wyjście? 14

RSX vs. Cell Nie! RSX nie jest next-gen! Topowa karta, ale: okrojona 1,5 roku później Cell Broadband Engine FTW! 15

Krótko o Cell Broadband Engine Budowa PPE PowerPC Processor Element CPU 8x SPE Synergistic Processor Element SPE = {kontroler pamięci, SPU rdzeń obliczeniowy} 8 ale 6 1 wyłączony, 1 dla systemu 16

Krótko o Cell Broadband Engine SPU 128-bitowy SIMD brak rejestrów skalarnych, brak instrukcji skalarnych! 256 kb lokalnej pamięci (szybkiej!) dane z innych obszarów (pamięć główna, pamięć wideo, lokalna pamięć innych SPU) mogą być kopiowane asynchronicznie przez DMA 17

SPU - zastosowanie Systemy cząsteczkowe Vertex skinning / morphing Progresywne siatki Woda Triangle culling Post processing 18