Как получить пропускную способность памяти из тактовой частоты памяти/скорости памяти

К вашему сведению, вот характеристики, которые я получил от Nvidia.

http://www.geforce.com/hardware/desktop-gpus/geforce-gtx-680/specifications

http://www.geforce.com/hardware/desktop-gpus/geforce-gtx-titan/specifications

Обратите внимание, что скорость памяти/тактовая частота памяти на их веб-сайте совпадают и измеряются в Гбит/с.

Спасибо!


person Blue_Black    schedule 24.02.2013    source источник


Ответы (3)


У Titan 384-битная шина, а у GTX 680 всего 256, следовательно, пропускная способность памяти на 50% больше (при условии, что часы и задержки идентичны).

Редактировать: я попытаюсь объяснить всю концепцию немного подробнее: ниже представлена ​​упрощенная модель факторов, определяющих производительность оперативной памяти (не только на видеокартах).

Фактор A: Частота

ОЗУ работает с тактовой частотой. Оперативная память, работающая на частоте 1 ГГц, «тикает» 1 000 000 000 (миллиард) раз в секунду. С каждым тактом он может получить или отправить один бит на каждой дорожке. Таким образом, теоретический модуль ОЗУ только с одной полосой памяти, работающей на частоте 1 ГГц, будет передавать 1 гигабит в секунду, поскольку в байтах 8 бит, что означает 125 мегабайт в секунду.

Фактор B: "Скорость накачки"

DDR-RAM (двойная скорость передачи данных) может передавать два бита за тик, и даже есть шины с «четверной накачкой», которые передают четыре бита за тик, но я не слышал о последних, используемых на видеокартах.

Фактор C: ширина шины.

В оперативной памяти есть не только одна полоса для отправки данных. Даже у Intel 4004 была 4-битная шина. Графические карты, которые вы связали, имеют 256 полос шины и 384 полосы шины соответственно.

Все вышеперечисленные факторы перемножаются для расчета теоретического максимума, при котором данные могут быть отправлены или получены:

**Максимальная пропускная способность в байтах в секунду= Частота * Скорость загрузки * Ширина шины / 8 **

Теперь давайте посчитаем для двух видеокарт, которые вы связали. Оба они используют один и тот же тип ОЗУ (GDDR5 с частотой подкачки 2), оба работают на частоте 3 ГГц.

GTX-680: 3 Gbps * 2 * 256 / 8 = 192 GB/s

GTX-Titan: 3 Gbps * 2 * 384 / 8 = 288 GB/s

Фактор D: задержка — или в дело вступает реальность

Этот фактор НАМНОГО сложнее рассчитать, чем все вышеперечисленное вместе взятые. По сути, когда вы говорите своей оперативной памяти: «Эй, мне нужны эти данные», требуется некоторое время, пока она не найдет ответ. Эта задержка зависит от ряда факторов, и ее действительно сложно рассчитать, и обычно это приводит к тому, что системы с оперативной памятью выдают намного меньше своих теоретических максимумов. Здесь все тайминги, предварительная выборка и множество других вещей вступают в игру. Поскольку в маркетинге можно использовать не только цифры, где более высокие цифры означают «лучше», маркетинг фокусируется в основном на других вещах. И, если вам интересно, это в основном то, чем GDDR5 отличается от DDR3, установленной на вашей материнской плате.

person Hazzit    schedule 24.02.2013
comment
Спасибо, Хаззит! Я понимаю, что пропускная способность памяти = тактовая_скорость*ширина_памяти. Но концепция memory_speed/memory_clock меня все еще смущает... - person Blue_Black; 25.02.2013
comment
Hazzit - Это алгоритм, который я бы использовал для расчета запаса памяти? В САМОМ ДЕЛЕ!!! Я не уверен. Спасибо. - person Patricia; 09.11.2015
comment
@MissLucy Я не уверен, что вы имеете в виду под запасом памяти. Вышеприведенная формула — это максимальная скорость шины памяти. Фактическая пропускная способность ограничена этим числом и всегда будет несколько ниже этого максимума. - person Hazzit; 10.11.2015
comment
@ RestlessC0bra Вы смотрите на частоту графического процессора. Вместо этого посмотрите на характеристики памяти (ссылки на вопрос выше). Оба указаны как 6 Гбит / с, что означает 3 ГГц * 2 (потому что DDR) - person Hazzit; 27.11.2016
comment
четырехбитные шины, которые передают четыре бита за такт, но я не слышал, чтобы последние использовались на видеокартах => Посмотрите на передачу сигналов PAM4 через GDDR6X. - person Tristan; 24.04.2021

Я думаю, что правильный расчет объясняется здесь:
https://www.goldfries.com/computing/gddr3-vs-gddr5-graphic-card-comparison-see-the-difference-with-the-amd-radeon-hd-7750/

Вкратце:
"(тактовая частота памяти x ширина шины / 8) * множитель типа GDDR = пропускная способность в ГБ/с

Множитель типа GDDR равен 2 для GDDR3 и 4 для GDDR5.

Там есть еще много деталей, довольно хорошо объясненных и подробных.

person VeganEye    schedule 29.06.2017

Из https://www.goldfries.com/computing/gddr3-vs-gddr5-graphic-card-comparison-see-the-difference-with-the-amd-radeon-hd-7750/:

(memory clock in Hz bus width 8) memory clock type multiplier = пропускная способность в МБ/с

где memory clock type multiplier является одним из следующих:

HBM1 / HBM2: 2
GDDR3: 2
GDDR5: 4
GDDR5X: 8

Возьмем одну из самых современных видеокарт на момент написания этой статьи, GTX 1080 Ti, которая использует память GDDR5X. Согласно techPowerUp!, характеристики этой карты следующие:

Частота памяти: 1376 МГц
Разрядность шины: 352 бита
Тип памяти: GDDR5X

Если мы подставим эти значения в приведенную выше формулу, мы получим:

(1376 * 352 / 8) * 8 = 484 352 MB/s = ~484 GB/s

Аналогично для GTX 1070, в котором используется старая память GDDR5:

Частота памяти: 2002 МГц
Разрядность шины: 256 бит
Тип памяти: GDDR5

(2002 * 256 / 8) * 4 = 256 256 MB/s = ~256 GB/s

Наконец, для AMD Fury X, использующего HBM1:

Тактовая частота памяти: 500 МГц
Разрядность шины: 4096 бит
Тип памяти: HBM1

(500 * 4096 / 8) * 2 = 512 000 MB/s = 512 GB/s

и Vega 64, использующий HBM2:

Частота памяти: 945 МГц
Разрядность шины: 2048 бит
Тип памяти: HBM2

(945 * 2048 / 8) * 2 = 483 840 MB/s = ~484 GB/s

person Ian Kemp    schedule 31.07.2017