Karty graficzne do koparek kryptowalut a wielkość pamięci GDDR

0

Cześć,
Z czystej ciekawości chciałem się zapytać czy przy kopaniu kryptowalut ma znaczenie wielkość pamięci na karcie graficznej?
Te najmocniejsze karty graficzne mają nawet 24 GB GDDR - jaka mniej więcej część z tej pamięci jest faktycznie wykorzystywana przy kopaniu?

Pytam, bo obecnie brak kart graficzny przez tzw. "górników", natomiast podobno pamięć jest coraz droższa no i czy jest sens ładować tyle pamięci do kart graficznych, które będą wykorzystywane do kopania? Czy producenci nie powinni dla "górników" robić kart, które mają dużo rdzeni/procesorów, natomiast ograniczać takie karty np. 1 GB pamięci - więcej chyba im nie potrzeba(?). Jak myślicie?

2

nVidia ma specjalne karty do kopania https://www.nvidia.com/en-us/cmp/ i mają one normalną ilość VRAMu (w sensie porównywalną do odpowiadających im GeForce'ów). Do kopania trzeba dużo przepustowości VRAMu, a to osiąga się ładując dużą liczbę kości pamięci na laminat, bo każda kość ma ograniczoną przepustowość. Żeby mieć dużą przepustowość i małą pojemność to pojedyncza kość musiałaby mieć małą pojemność, ale chyba ogólnie nie ma na takie coś dużego popytu. Musiałbyś specjalnie opracowywać kości pamięci dla koparek, a to się raczej nie opłaca. PS: to tylko takie moje zgadywania, mogę się grubo mylić.

Radeon Fury miał względnie mało pamięci (4 gigabajty) przy względnie dużej przepustowości (pół terabajta na sekundę) i być może taka konfiguracja mogłaby być opłacalna przy kopaniu, ale tylko przy masowej produkcji i odświeżeniu całej architektury.

Kolejna sprawa to to, że nVidia nie chce przyznać, że koparki są ich głównym rynkiem zbytu (o ile są). Przy poprzedniej gorączce kopania bitcoinów, nVidia wyprodukowała tyle Pascali, że chyba kilka lat czyścili magazyny z nadmiaru towaru po tym jak bańka na pewien czas pękła.

0

@Wibowit dziękuję za wyjaśnienie.
Czy dobrze rozumiem, że gdybym chciał wykonywać jakieś skomplikowane obliczenia na karcie graficznej (ale już nie związane z kopaniem kryptowalut) - przykładowo mnożenie dwóch macierzy o względnie niewielkich rozmiarach - max kilka MB to kupując jakąś wypasioną kartę graficzną nie wykorzystam całej przepustowości, bo wszystkie dane będą prawdopodobnie umieszczone w jednej kości pamięci? Czy może dane i tak będą rozrzucone po kawałku na wszystkich kościach?

1

Przypuszczam że będą rozrzucone, celem zwiększenia transferu. W przypadku generowania grafiki do gier każda tysięczna sekundy się liczy, więc zapis danych do pamięci tak żeby dostęp był wolniejszy niż gdyby były w różnych kośćiach zwyczajnie nie ma sensu. Ograniczy tylko wydajność nie dając nic w zamian.

1

Czy może dane i tak będą rozrzucone po kawałku na wszystkich kościach?

W typowym przypadku właśnie tak będzie. Wczytując kilka kilobajtów ciągłego obszaru VRAMu do cache na GPU, obciążenie (dane) jest rozłożone na wszystkie kanały pamięci mniej więcej równomiernie i wykorzystujesz całą przepustowość. Nie zawsze tak jest, dla przykładu GeForce GTX 970 jest prześmiewczo nazywane kartą 3.5 GB + 0.5 GB:
https://en.wikipedia.org/wiki/List_of_Nvidia_graphics_processing_units#GeForce_900_series

For accessing its memory, the GTX 970 stripes data across 7 of its 8 32-bit physical memory lanes, at 196 GB/s. The last 1/8 of its memory (0.5 GiB on a 4 GiB card) is accessed on a non-interleaved solitary 32-bit connection at 28 GB/s, one seventh the speed of the rest of the memory space. Because this smaller memory pool uses the same connection as the 7th lane to the larger main pool, it contends with accesses to the larger block reducing the effective memory bandwidth not adding to it as an independent connection could.

Tego typu anomalie jak GTX 970 są jednak rzadkie i w typowym przypadku możesz założyć, że wczytując kilka kilobajtów (lub więcej) ciągłego obszaru pamięci VRAM osiągniesz maksymalną przepustowość (lub coś bardzo blisko niej).

0

Dziękuję :)

1 użytkowników online, w tym zalogowanych: 0, gości: 1