aktualności

NVIDIA: 3D Memory, pamięć zunifikowana, architektura Pascal i NVLink

64
27 marca 2014, 00:25 Piotr Gontarczyk

NVIDIA w trakcie konferencji GTC przedstawiła i zapowiedziała kilka kolejnych nowości, które skupiły na sobie całkiem sporo uwagi. "Zieloni" ogłosili, że planują w przyszłych procesorach grafiki integrować nowy super-szybki interfejs, o nazwie NVIDIA NVLink. Interfejs w porównaniu do dziś stosowanych rozwiązań zapewniać nawet dwunastokrotnie szybszą wymianę danych pomiędzy CPU, a GPU. Ma to wyeliminować występujące od wielu lat wąskie gardło na linii tych dwóch ważnych elementów komputera osobistego i przy okazji otworzyć drzwi dla nowej generacji wielkoskalowych superkomputerów o wydajności od 50x do 100x większej niż najmocniejsze jednostki używane dziś.

NVIDIA po raz pierwszy interfejs NVLink zamierza zastosować w kolejnej architekturze GPU, o nazwie Pascal, która w postaci gotowych procesorów grafiki powinna pojawić się w 2016 roku. Obecnie NVIDIA przewiduje, że architektura Pascal będzie bezpośrednią następczynią wprowadzonej w tym roku architektury Maxwell. Nowy interfejs, jak wynika z informacji przedstawionej przez NVIDIĘ, zaprojektowany został przy współpracy z firmą IBM, która zamierza wykorzystać go w swoich przyszłych procesorach. Wygląda więc na to, że zacieśnia się współpraca pomiędzy obiema firmami, a w przyszłości NVLink mocno zwiąże ze sobą procesory IBM Power z jednostkami obliczeniowymi NVIDIA Tesla. Nowy interfejs pozwoli na jeszcze lepsze wykorzystanie mocy obliczeniowej GPU w nowego typu aplikacjach, ale także w zadaniach dziś powszechnych.

Warto mieć na uwadze to, że obecnie dostępne GPU z procesorami opartymi na architekturze x86 łączą się za pośrednictwem interfejsu PCI Express, który ogranicza możliwości GPU w dostępie do kontrolowanej przez CPU pamięci operacyjnej, która przy okazji jest przeciętnie 4- lub 5-krotnie szybsza. W przypadku połączenia GPU z procesorami IBM Power, problem z PCI Express jest jeszcze większy, gdyż układy IBM-a zapewniają większą przepustowość niż ich bracia oparci na architekturze x86. Jako że NVLink ma osiągać przepustowość typowego podsystemu pamięci operacyjnej, to powinien skutecznie wyeliminować wciąż problematyczne wąskie gardło.

Szybki interfejs łączący GPU z CPU powinien mocno poprawić ogólną wydajność oprogramowania, które wykorzystuje obliczenia równoległe na GPU, choć nie tylko. Zwracamy uwagę na to, że procesory grafiki z reguły dysponują szybką pamięcią RAM, ale o stosunkowo niewielkiej pojemności, podczas gdy jednostka centralna (CPU) do swojej dyspozycji ma pamięć o znacznie większej pojemności, ale jednocześnie o relatywnie niskiej wydajności. Dlatego też aplikacje skupione wokół intensywnych obliczeń z reguły pobierają dane z nośnika lub sieci, po czym przenoszą do pamięci operacyjnej, kontrolowanej przez CPU, a dopiero potem poszczególne cząstki kopiowane są do pamięci graficznej, z której korzysta ostatecznie GPU. Zastąpienie interfejsu PCI Express nowym NVLinkiem sprawi, że przenoszenie danych pomiędzy CPU a GPU będzie znacznie szybsze, co w efekcie powinno korzystnie wpłynąć na wydajność całego systemu.

To jednak nie wszystko, co NVIDIA przygotowała i zaprezentowała w ramach konferencji GTC. Drugi przystanek na naszej dzisiejszej trasie to technika Unified Memory, która występować ma razem z interfejsem NVLink. Jak twierdzi NVIDIA, Unified Memory pozwoli uprościć programowanie aplikacji dla GPU. Dzięki tej technice, wykorzystujący ją programista do tworzenia aplikacji będzie mógł traktować pamięć GPU i CPU jako jeden duży blok pamięci. Programista może operować na danych nie martwiąc się o to, czy w danym momencie przechowywane są one w pamięci CPU czy GPU, gdyż podział ten po prostu nie będzie istniał. Na tę chwilę nie wiemy czy opisana technika jest konkurencją dla HSA (promowanego m.in. przez AMD) i w jaki sposób miałoby to być realizowane (konieczna jest współpraca z producentem CPU).

Mimo że przyszłe procesory grafiki firmy NVIDIA wciąż będą obsługiwać interfejs PCI Express, to jednak NVLink będzie techniką używaną do łączenia GPU z kompatybilnymi procesorami, ale także do łączenia ze sobą wielu procesorów grafiki. Warto też zauważyć, że pomimo bardzo wysokiej przepustowości, w porównaniu do PCI Express interfejs NVLink osiąga według NVIDII lepszą sprawność energetyczną. W trakcie wystąpienia na GTC 2014 szef NVIDII, Jen-Hsun Huang, osobiście zaprezentował autorski moduł z procesorem grafiki opartym na architekturze Pascal i wyposażonym w interfejs NVLink. Nowy moduł GPU, jak wskazał Huang, zajmuje 1/3 powierzchni standardowego laminatu wykorzystywanego obecnie dla kart graficznych. Złącza umieszczone na dole modułu Pascala pozwalają podłączyć go do płyty głównej. NVIDIA przewiduje, że NVLink w przyszłości trafi m.in. do mocno zintegrowanych, wielkoskalowych systemów superkomputerowych, które przy znacznie większej niż dziś sprawności energetycznej oraz moc obliczeniową nawet 100-krotnie większą niż maszyny używane dziś.

Wspomnieliśmy o architekturze Pascal, a więc czas i nią się trochę zająć. Zacznijmy od tego, że Pascal to architektura, którą NVIDIA wprowadzi jako następną, zamiast architektury Volta, która nie została anulowana, a po prostu pojawi się po Pascalu. Okazuje się, że firma zwyczajnie zamieniła nazewnictwa. Nazwa następnej generacji pochodzi od Blaise'a Pascala, francuskiego matematyka i fizyka, który nie tylko sprecyzował pojęcia ciśnienia i próżni, ale był też związany m.in. ze stworzeniem mechanicznego kalkulatora czy teorii prawdopodobieństwa. Wiemy już, że procesory grafiki oparte na architekturze Pascal będą wykorzystywać kilka rewolucyjnych rozwiązań, a więc m.in NVLink, zunifikowaną pamięć oraz 3D Memory.

NVIDIA zaprezentowała dwuprocesorową kartę graficzną GeForce GTX Titan Z

Pierwsze i drugie z tych rozwiązań już znamy. W trakcie swojego wystąpienia Jen-Hsun Huang zwracał też uwagę na to, że w przypadku architektury Pascal, interfejs NVLink ma zapewniać przepustowość ponad 80 GB/s, a więc znacznie większą niż obecnie oferowane przez PCI Express 16 GB/s. 3D Memory to nowe podejście NVIDII do sposobu integracji pamięci w układzie scalonym. W porównaniu do "tradycyjnej" pamięci DRAM, 3D Memory ma według Jen-Hsun Huanga oferować 2,5-krotnie większą pojemność. Sprawność energetyczna ma być aż 4-krotnie lepsza. Znacznie lepiej przedstawiać się ma też przepustowość, aczkolwiek w trakcie tegorocznej konferencji nie mówiono o szczegółach. Warto jednak zauważyć, że gdy w "rozkładzie jazdy" NVIDII widniała jeszcze nazwa architektury Volta, to mówiono o przepustowości 3D Memory na poziomie aż 1 TB/s. Zapewne tak ogromnej szybkości transferu NVIDIA od razu nie wykorzysta w konsumenckich procesorach grafiki. Prędzej pojawić się ona może w profesjonalnych produktach serii Tesla.

Architekturę Pascal NVIDIA zamierza wykorzystać w procesorach grafiki dla osobistych komputerów konsumenckich, ale także serwerów chmurowych, platform HPC (High Performance Computing) oraz innych. Obecnie wiemy, że pierwsze procesory grafiki oparte na architekturze Pascal NVIDIA zamierza oficjalnie zaprezentować najpóźniej w 2016 roku.

Źródło: NVIDIA (prezentacja na GTC), opracowanie własne
mocu1987Zobacz profil
Poziom ostrzeżenia: 0%
mocu19872014.03.27, 00:42
Zostaje nam czekać, a widzę że jest na co - przynajmniej na papierze ^^
szefonsZobacz profil
Poziom ostrzeżenia: 0%
szefons2014.03.27, 02:32
-11#2
Unified Memory dobra sprawa, ale podział będzie istniał, bo systemowy ram jest sporo wolniejszy od pamięci gpu.

W ogóle to bym wolał, aby pc przeszły metamorfozę bardziej w kierunku ps4, wspólna szybka pamięć, pamięć kupowałyby się osobno, ale dla całego systemu i gpu, grafiki by były bez.
TheMr.Zobacz profil
Poziom ostrzeżenia: 0%
TheMr.2014.03.27, 06:23
szefons @ 2014.03.27 02:32  Post: 735439
Unified Memory dobra sprawa, ale podział będzie istniał, bo systemowy ram jest sporo wolniejszy od pamięci gpu.

W ogóle to bym wolał, aby pc przeszły metamorfozę bardziej w kierunku ps4, wspólna szybka pamięć, pamięć kupowałyby się osobno, ale dla całego systemu i gpu, grafiki by były bez.

Żeby PC brał zadyszki na każdej nowej produkcji? Nie dziękuje, wole rozwiazanie nvidii.
HashiZobacz profil
Poziom ostrzeżenia: 0%
Hashi2014.03.27, 06:39
-9#4
Jak pisałem, ze magistrala CPU <-> GPU to ograniczenie to mnie tu chciano zjeść, ze gierki im chodzą tak samo na x1 i x16. Trzeba być naprawdę oszołomem to potęgi entej by twierdzić, ze magistrala nie jest ograniczeniem. Oficjalna strona Nv:
'NVLink technology unlocks the GPU's full potential by dramatically improving data movement between the CPU and GPU, minimizing the time that the GPU has to wait for data to be processed,' said Brian Kelleher, senior vice president of GPU Engineering at NVIDIA. 'NVLink enables fast data exchange between CPU and GPU, thereby improving data throughput through the computing system and overcoming a key bottleneck for accelerated computing today,' said Bradley McCredie, vice president and IBM Fellow at IBM. 'NVLink makes it easier for developers to modify high-performance and data analytics applications to take advantage of accelerated CPU-GPU systems.
accelerated computing applications typically move data from the network or disk storage to CPU memory, and then copy the data to GPU memory before it can be crunched by the GPU. With NVLink, the data moves between the CPU memory and GPU memory at much faster speeds, making GPU-accelerated applications run much faster.
http://nvidianews.nvidia.com/Releases/NVID...mputin-ad6.aspx
Co najciekawsze, mówi się o przyroście 5-12 razy względem PCIExpress 3.0. Czyli 5-12x 16GB/s - 32GB/s. Nie sprecyzowano, czy prędkość ta dotyczy jednego modułu, czy kilku SLI, czy obu kierunków czy łącznej prędkości ale i tak dałoby to:
5x 31.5GB/s = 157GB/s do 12x 378GB/s (przy maksymalnym założeniu, ze dotyczy to prędkości w obu kierunkach i jednego układu).
I teraz proszę nie wieszać psów na mnie ale.. teraz ponownie zacytuje lead programmera NaughtyDog:
Remember that the latest PCI Express 4.0 is just 31.51 GB/sec, way less than 176 GB/sec. A game runs on CPU + GPU.
https://twitter.com/mrengstad
Czyli jest w tym sens. Nv ma wejść w 2016 roku i jest pokrywało by się to z tym co mówił Cerny. Pełny potencjał HSA i hUMA odblokowany będzie w 2016-2017 (przynajmniej w przypadku PS4). Czekam na atak maniaków PC.
Co do pamięci 3D to wiele firm produkujących SoC pracuje nad tym bajerem i pokazano wiele prototypów takich stacków. Z tego co pamiętam to IBM, Micron i Toshiba grają tu pierwsze skrzypce. Juz w 2007 pokazali 3D nand stack:
http://www.dailytech.com/Toshiba+Reveals+3...article7659.htm
Co do superkomputerów to nie wiem czy nie dochodzimy do punktu 'zero'. Odkryliśmy Bozon Higsa, czarną materię, potrafimy rozwiązać większość problemów naukowych, medycznych, pogodę tez w pewnym stopniu więc nie wiem czy to całe podnoszenie mocy nie idzie w gwizdek, Choć napewno sprawność energetyczna jest najważniejsza w tym kontekście. Lepiej by pomyśleli nad problemem zwiększania wydajności pracy, która przyczyni się w długim okresie do spadku zatrudnienia na świecie (taki paradoks). Nawet Bill Gates ostatnio poruszył ten temat w kontekście robotyki. Wszystko było by fajnie jakby roboty zajmowały sie np rolnictwem tylko wtedy musieli byśmy wrócić do komuny i socjalizmu.
Promilus1984Zobacz profil
Poziom ostrzeżenia: 0%
Promilus19842014.03.27, 07:02
Trzeba być naprawdę oszołomem to potęgi entej by twierdzić, ze magistrala nie jest ograniczeniem.

Jest, ale nie takim na jakie lekarstwem będzie nvlink. PCI-E 3.0 16x ma przepustowość bodajże 16GB/s w jedną stronę. DDR3-2400 w dualu ma bodajże 38GB/s i jednocześnie musi też wykarmić CPU, których apetyt dla 4GHz intela z IPC dajmy na to 1.2 w trybie 64b może wynosić właśnie 38GB/s - per core!
NVLink to byłaby fajna sprawa w superkomputerach gdzie można w jednym węźle mocno zwiększyć komunikację między wszystkimi elementami składowymi, na desktopach to może mieć delikatny wpływ dla SLI i klastrów obliczeniowych. Nic dla 'kowalskiego'.
*Konto usunięte*2014.03.27, 07:03
wreszcie to ma ręce nogi, fajnie to poskładał Vega... brakuje tylko linka to prezentacji, która jest dostępna.
http://www.twitch.tv/nvidia/c/3957218
Promilus1984 @ 2014.03.27 07:02  Post: 735451
Trzeba być naprawdę oszołomem to potęgi entej by twierdzić, ze magistrala nie jest ograniczeniem.

Jest, ale nie takim na jakie lekarstwem będzie nvlink. PCI-E 3.0 16x ma przepustowość bodajże 16GB/s w jedną stronę. DDR3-2400 w dualu ma bodajże 38GB/s i jednocześnie musi też wykarmić CPU, których apetyt dla 4GHz intela z IPC dajmy na to 1.2 w trybie 64b może wynosić właśnie 38GB/s - per core!
NVLink to byłaby fajna sprawa w superkomputerach gdzie można w jednym węźle mocno zwiększyć komunikację między wszystkimi elementami składowymi, na desktopach to może mieć delikatny wpływ dla SLI i klastrów obliczeniowych. Nic dla 'kowalskiego'.


Mało tego twierdził, że limitem w grach jest PCI-E, nie chodziło mu o GPGPU, a o zwykłe gry...
HashiZobacz profil
Poziom ostrzeżenia: 0%
Hashi2014.03.27, 07:05
-11#7
Promilus1984 @ 2014.03.27 07:02  Post: 735451
Trzeba być naprawdę oszołomem to potęgi entej by twierdzić, ze magistrala nie jest ograniczeniem.

Jest, ale nie takim na jakie lekarstwem będzie nvlink. PCI-E 3.0 16x ma przepustowość bodajże 16GB/s w jedną stronę. DDR3-2400 w dualu ma bodajże 38GB/s i jednocześnie musi też wykarmić CPU, których apetyt dla 4GHz intela z IPC dajmy na to 1.2 w trybie 64b może wynosić właśnie 38GB/s - per core!
NVLink to byłaby fajna sprawa w superkomputerach gdzie można w jednym węźle mocno zwiększyć komunikację między wszystkimi elementami składowymi, na desktopach to może mieć delikatny wpływ dla SLI i klastrów obliczeniowych. Nic dla 'kowalskiego'.

Moze mieć dla Kowalskiego jeśli Nv użyje tego w SoC opartym na ARM. Czyli per core łącze NvLink.
Ja pisze tez w kontekście PS4, bo na podstawie schematów według mnie tam per core jest 8 magistral -> GPU. Dlatego przepustowość 176GB/s dotyczy łącznej przepustowości całego układu CPU - GPU.
Popatrz na PS3. Magistrala ma łączną max przepustowość (zdławioną) 72GB/s i potrafi nakarmić 25,6GB/s RAM CPU i 35GB/s GPU łącznie.
EDIT
O widze raporty się sypią bo gimba nie potrafi merytorycznie podchodzić do tematu. Tak tak wasze PC GPU są cudowne, fantastyczne, piękne i jeszcze raz cudowne. 90% tu piszących ma zerowe pojęcie o podstawach informatyki na poziomie podstawówki. Ja takowy posiadam.
darkmartinZobacz profil
Poziom ostrzeżenia: 0%
darkmartin2014.03.27, 07:48
Moim zdaniem najciekawsze w NVLInk jest połączenie między GPU.
Przypuszczam że zestawy 'SLI' będą używać wspólnej pamięci wszystkich GPU jako jednej przestrzeni adresowej w węzłach NUMA (NUMA GPU).
Dodanie kolejnego modułu GPU spowoduje wzrost faktycznej ilości pamięci.
Być może zakończy do erę naprzemiennego renderowania klatek.
Dodanie modułu GPU będzie tak samo proste jak wstawienie kolejnego procesora do socketu. Także pod względem oprogramowania. System być może pokaże więcej modułów CUDA jako całość. Jako jedno urządzenie obliczeniowe.
Być może chcąc osiągnąć wydajniejsze GPU po prostu wstawimy od 1 do np 4 takie moduły Pascal.
AssassinZobacz profil
Poziom ostrzeżenia: 0%
Assassin2014.03.27, 08:02
-5#9
Mnie się wydawało, że w Ps4 z kontrolerem pamięci łączy się tylko 4-rdzeniowy moduł CPU (są 2 takie), ale mogę się mylić.

W każdym razie jeśli chodzi o przepustowość PCIE to może być ona wąskim gardłem, ale nie musi - wszystko zależy od tego, jak pisane będzie oprogramowanie. Przy obecnym sofcie w zasadzie nie ma różnicy między PCIE 2.0 a 3.0 czy też 8x a 16x (poza SLI/CF). Gdyby jednak drastycznie zwiększyć przepustowość na linii CPU-GPU to w przypadku np. takich układów jak Core i7 Haswell i GTX 780 Ti dałoby to ciekawe pole do popisu dla programistów.

Oczywiście t w przypadku takich układów jak APU PS4, APU AMD dla pecetów czy planowanego APU Nvidii z ARM ma to drugorzędne znaczenie - po prostu wąskie gardło jest w innym miejscu (w przypadku PS4 to przede wszystkim wydajność CPU). Nie ma więc miejsca na żadne czary.
HashiZobacz profil
Poziom ostrzeżenia: 0%
Hashi2014.03.27, 08:26
-11#10
Assassin @ 2014.03.27 08:02  Post: 735461
Mnie się wydawało, że w Ps4 z kontrolerem pamięci łączy się tylko 4-rdzeniowy moduł CPU (są 2 takie), ale mogę się mylić.

W każdym razie jeśli chodzi o przepustowość PCIE to może być ona wąskim gardłem, ale nie musi - wszystko zależy od tego, jak pisane będzie oprogramowanie. Przy obecnym sofcie w zasadzie nie ma różnicy między PCIE 2.0 a 3.0 czy też 8x a 16x (poza SLI/CF). Gdyby jednak drastycznie zwiększyć przepustowość na linii CPU-GPU to w przypadku np. takich układów jak Core i7 Haswell i GTX 780 Ti dałoby to ciekawe pole do popisu dla programistów.

Oczywiście t w przypadku takich układów jak APU PS4, APU AMD dla pecetów czy planowanego APU Nvidii z ARM ma to drugorzędne znaczenie - po prostu wąskie gardło jest w innym miejscu (w przypadku PS4 to przede wszystkim wydajność CPU). Nie ma więc miejsca na żadne czary.

Co do kontrolera pamięci to nie wiem dokładnie jak on jest wkomponowany ale opieram się głównie na wypowiedzi głównego programisty SCE oraz Cernego (there are multiple levels of arbitration in the hardware to determine what runs, how it runs, and when it runs, alongside the graphics that's in the system) oraz na schemacie GPU w VGLeaks (chodzi mi o Process Buffers i ringi zaraz pod ścieżkami z rdzeni CPU):
http://2.bp.blogspot.com/-XO9fGRqurd4/Ulex..._queues+(1).jpg
Samo zdjęcie SoC tez daje wgląd w układ kontrolerów (jest ich 3, jeden duzy koło rdzeni CPU i 2 mniejsze po bokach GPU, choć i tak nie wiadomo jak wygląda połączenie wewnątrz). Tak jakby rdzenie CPU (patrząc na szerokość kontrolera pamięci współdzielonej) miały 1/2 przepustowości GDDR5 (kontroler po lewej):
http://www.extremetech.com/wp-content/uplo...ineered-apu.jpg
Po prawej jest wyjście do kontrolera video HDMI i innych peryferii. Patrząc na zagospodarowanie przestrzenią nie dało się tego inaczej (lepiej) rozmieścić. Jedynie 3D stacked RAM by tu wniósł dodatkowy ficzer.


Zaloguj się, by móc komentować
1