Previous Entry Share Next Entry
Пропускная способность памяти для GPU NVidia
evatutin
Измерение пропускной способности производилось с использованием функции cudaMemcpy() для различных направлений копирования (обсуждение, бинарник). Результаты (в ГБ/с):

GPU CPU Owner CPU to CPU CPU to GPU GPU to CPU GPU to GPU CPU to GPU (page-locked) GPU to CPU (page-locked)
1 GTX 770 Core i7 4770 @ 3,4 ГГц evatutin 5,3 5,5 6,4 81,5 11,3 11,5
2 GTX 760 Core i5 3470 @ 3,2 ГГц evatutin 8,4 4,7 4,8 66,5 11,6 11,8
3 GTX 660 Ti Core 2 Duo E6750 @ 2,66 ГГц evatutin 1,6 2,0 1,4 53,6 2,4 1,6
4 GTX 660 Ti (second) Core 2 Duo E6750 @ 2,66 ГГц evatutin 1,6 0,3 0,4 54,2 0,3 0,4
5 GXT 650 Core i3 550 @ 3,2 ГГц shar 4,2 4,3 4,1 28,3 5,1 6,2
6 GT 640M Core i7 3517U @ 1,90 ГГц tiano 4,3 1,8 1,9 9,8 2,5 2,5
7 GT 640M Core i3 3220 @ 3,3 ГГц tiano 4,4 3,4 3,4 11,9 6,2 6,2
8 GTX 570 ? sagip 3,2? 2,3? 2,4? 39,3? 3,4? 3,7?
9 GTX 560 Core i7 3570K @ 3,7 ГГц xpom 8,0 4,6 4,6 53,3 6,4 6,6
10 GTX 560 Core i5 2500 @ 3.3 ГГц Pushok 2,8 2,5 2,5 49,0 5,9 5,9
11 GTX 550 Ti Core i5 3470 Peregrin Krol 6,2 4,3 4,3 36,8 6,4 6,4
12 GTX 550 Ti ? TechnoID 2,9? 1,9? 2,0? 17,2? 3,1? 3,1?
13 GT 555M Core i5-2450M CPU @ 2,50 ГГц tiano 2,3 1,1 1,1 2,6 2,4 3,2
14 GTS 450 Core 2 Duo E6300 @ 1,86 ГГц evatutin 1,4 1,8 1,4 22,8 2,5 1,7
15 GT 440 Core 2 Duo E4300 @ 1,80 ГГц skunk 1,2 1,0 1,2 12,1 1,9 1,5
16 GT 440 Pentium E2220 @ 2,40 ГГц tiano 1,2 0,9 1,2 16,8 1,9 1,5
17 GTS 450 Eco Core i3 2130 @ 3,4 ГГц evatutin 5,1 4,9 5,3 8,8 6,2 6,0
18 GTX 250 Athlon X2 4400+ @ 2,30 ГГц slepojpju 1,2 0,9 0,9 11,6 1,4 1,4
19 9800 GT Core 2 Quad Q9500 @ 2,83 ГГц AlexA 1,8 2,7 2,1 18,0 4,9 4,4
20 9600 GT Сore 2 Quad Q9600 Peregrin Krol 1,9 1,8 1,8 13,2 3,7 3,9
21 8800 GT Quad Q6600 @ 2,4 ГГц evatutin 1,5 1,0 0,9 14,6 1,4 1,3


GPU CPU Owner CPU to CPU CPU to GPU GPU to CPU GPU to GPU CPU to GPU (page-locked) GPU to CPU (page-locked)
1 K20Xm Xeon E5-2650 evatutin 4,8 2,8 2,5 83,6 5,9 6,0
2 C1060 Xeon X5570 shar 4,5 4,3 3,2 36,2 4,9 3,3


Краткие выводы:

  1. Скорость копирования определяется не только параметрами видеокарты, но и системой в целом (по-видимому, связка RAM + CPU + Motherboard). Т.е. ставя быструю видеокарту в старую машину будьте готовы к тому, что весь свой потенциал она может не раскрыть. Яркий пример: моя машина на Core 2 Duo E6750 @ 2,66 ГГц с двумя GTX 660 Ti. Скорость копирования между CPU и GPU для первой видюхи отличается в меньшую сторону в 2-3 раза по сравнению а аналогами! Про вторую видюху я вообще говорить не хочу, тут более чем 10-кратный провал. Нужно срочно переставлять видюхи в более современную машину (тем более, что на этой потихоньку сдыхает мать), но пока некуда.
  2. Скорость обмена данными между CPU и GPU может лимитироваться либо RAM, либо интерфейсом PCI, система по возможности должна быть сбалансирована.
  3. Видеопамять GPU работает в 10-40 раз быстрее ОЗУ, поэтому даже если программная реализация алгоритм упирается в память, а не в вычисления, толк от переноса расчета на GPU может быть.
  4. Из предыдущего правила есть неприятное исключение в виде GTS 450 Eco (между прочим, не так давно NVidia раздавала их для обучения CUDA'е). Видно, что скорость копирования в пределах GPU у них просто полный пи... восторг: в 2-3 раза ниже, чем у древних карт семейств 9xxx и 8xxx, и в 8-9 раз ниже, чем у современного mainstream'а. Никто не скрывал, что на данных картах медленная память, но ведь не настолько же. Похожие выводы можно сделать и для 640M, и для 555M видимо для мобильных применений быстрая память не является приоритетом, важнее низкое энергопотребление.
  5. Использование page-locked памяти имеет смысл, т.к. ускоряет обмен данными между CPU и GPU до 2 раз.


Чего хотелось бы еще:

  1. Было бы очень интересно погонять данный тест на Quadra'х (может у кого завалялось?), т.к. по документации ПСП у них более 200 ГБ/с!
  2. Было бы неплохо посмотреть, как ведут себя системы с двумя, тремя (и более?) GPU на борту, т.к. в данном сравнении Multi-GPU система всего одна, да и та на старой материнке.


Спасибо всем, кто принял участие в мини-тестировании! Если кто-то пришлет еще, буду рад и добавлю в табличку.

PS. Данное тестирование является по большей части синтетическим, интересно было бы сопоставить результаты со скоростью счета реальных приложений (например, GPU-проектов BOINC), чем можно попробовать заняться в ближайшее время :)

[upd 13.08.13]
Из-за некорректного определения тактовой частоты CPU результаты были вручную отмасштабированы, многие цифры изменились. Версия программы изменена на 1.1

  • 1

Комментарий к комментариям

(Anonymous)
"Core 2 Duo E6750 @ 2,66 ГГц с двумя GTX 660 Ti. Скорость копирования между CPU и GPU для первой видюхи отличается в меньшую сторону в 2-3 раза по сравнению а аналогами! Про вторую видюху я вообще говорить не хочу"

Причина, по всей видимости, в подержке мамкой только PCIe v.1. Вторая видюха, нваверняка, стоит в слоте 4х (итого - 1/32 поддерживаемой gtx 660 скорости pcie).

  • 1
?

Log in