Параллельные вычисления, часть II. Число каналов памяти и массивы RAID
Редакция THG,  27 октября 2007


Введение

Введение

В первой части цикла статей, посвящённого параллельным вычислениям, мы обсуждали разницу в производительности между одно-, дву- и четырёхядерными процессорами, поскольку увеличение числа вычислительных блоков даёт ощутимо больший прирост производительности, чем "гонка" тактовой частоты. Но преимущество в производительности от параллельной обработки задачи или, по крайней мере, совместной работы множества устройств, можно получить не только в процессорах. Уже достаточно давно появились компьютеры с двумя и четырьмя видеокартами, да и есть ещё два компонента, которые определённо выигрывают от параллельной реализации: память и жёсткие диски.

Контроллеры памяти достаточно давно перешли от одного канала к параллельной работе двух, чтобы увеличить пропускную способность. В первой половине 2003 года Intel объявила чипсеты 865 и 875, которые перенесли платформы на Pentium 4 Socket 478 с одного канала памяти DDR333 на двухканальную конфигурацию DDR400. В то время пропускная способность не только удвоилась "на бумаге", но и в реальных приложениях прирост производительности тоже ощущался. Но какова ситуация сегодня? Многие ноутбуки работают только с одним модулем памяти (каналом), и никто особо не ощущает влияние этого на производительность. Кроме того, современные процессоры Intel Core 2 Duo работают со сложной системой кэширования, включающей 2 или 4 Мбайт кэша второго уровня, что снижает влияние медленной или очень быстрой памяти. Действительно ли двухканальные конфигурации памяти сегодня так необходимы?

Поскольку результаты тестов конфигураций с одним или двумя каналами памяти можно предсказать, мы решили пойти дальше. Для нашей статьи мы добавили ещё тесты, которые сравнивают производительность одного жёсткого диска и конфигураций RAID 0 с двумя и четырьмя жёсткими дисками в популярных приложениях. Мы уже опубликовали немало аналитических статей о RAID, поэтому здесь мы сфокусируем внимание на стандартных тестах для настольных ПК, а не на тестах производительности подсистемы хранения данных.

Параллельная работа памяти: один и два канала

Немного истории

Разработки в области оперативной памяти (известной как RAM - random access memory) шли практически линейно, пока AMD и Intel в 2003 году не представили двухканальные контроллеры. А в области серверов можно найти платформы Xeon (Bensley или последнюю платформу Stoakley для 45-нм процессоров), которые используют четырёхканальный контроллер памяти.

Модули памяти, альтернатива раздельным чипам памяти, появились в 1980-х годах, чтобы облегчить установку ОЗУ. Первые модули Single Inline Memory Module (SIMM) имели 30 контактов и работали с 8-битной шиной, то есть у компьютеров 286 и 386SX (16-битные ПК) модули необходимо было устанавливать парами, а для систем 386DX и выше (32-битные архитектуры) следовало занимать все четыре слота SIMM. 30-контактные модули SIMM и SIPP были распространены с ёмкостями от 256 кбайт до 4 Мбайт, а в середине 90-х их сменили 72-контактные SIMM. Тот факт, что модули необходимо было устанавливать парами или четвёрками, не имеет отношения к параллельной работе, поскольку причина кроется в соответствии с шириной шины.

72-контактные SIMM использовались для памяти с быстрым страничным режимом (fast page mode DRAM, FPM), которую быстро заменила память EDO (Extended Data Out) в конце 90-х. Хотя существовали SIMM и на 64 Мбайт, обычно ёмкость модулей не превышала 32 Мбайт. Технология EDO обеспечила лучшую производительность чтения, когда из одной страницы считывалось много данных, и не требовалось менять адрес строки. Память EDO обладала максимальной пропускной способностью 266 Мбайт/с.

EDO уступила место синхронной памяти DRAM (SDRAM) на 128-контактных модулях DIMM (64-битная шина данных на 3,3 В), а тактовая частота задавалась системной шиной или контроллером памяти. Первое поколение памяти PC66 уже было в два раза быстрее EDO-DRAM, а последующие поколения хорошо масштабировались: PC100 и PC133 стали весьма популярными. Затем появилась память с удвоенной передачей данных (double data rate, DDR SDRAM) на 184-контактных модулях DDR DIMM. Напряжение было уменьшено до 2,5 В, а производительность увеличена в два раза благодаря передаче данных на подъёме и спаде сигнала. Частоты составили до 200 МГц (DDR400). Память DDR2 на 240-контактных DIMM, как и память DDR3, по-прежнему использует технологию удвоенной передачи данных, но имеет большие буферы предварительной выборки, а также существенно увеличенные тактовые частоты - до 400 МГц для DDR2 (DDR2-800) и, как предполагается, до 800 МГц у DDR3 (DDR3-1600).

Все упомянутые технологии работают с одним каналом памяти (или могут работать), то есть они увеличили пропускную способность по сравнению с предыдущими поколениями, главным образом, с помощью расширения шины памяти и увеличения её частоты.

Два канала

Два канала
Если вы хотите получить максимальную производительность, то модули памяти следует устанавливать парами, по одному модулю на каждый канал. Этот шаг увеличивает пропускную способность памяти благодаря переходу на 128-битную шину (двухканальный режим работы).

Когда тактовые частоты уже не получалось увеличивать, индустрия решила расширить шину памяти с 64 до 128 бит. С появлением AMD Athlon XP и второго поколения процессоров Intel Pentium 4 под Socket 478 свет увидели чипсеты с двухканальными контроллерами памяти: Intel 865/875 и nVidia nForce2. Принцип работы весьма прост: данные распределяются между двумя каналами памяти, что позволяет удвоить пропускную способность. Вам потребуются два модуля памяти, но производительность будет ощутимо выше.

Двухканальные контроллеры памяти интегрировались во все последующие производительные чипсеты для процессоров Intel, такие, как Intel 915/925, 955 и 975 (с памятью DDR2), а также в последние модели P35 и X38. Не будем забывать и о линейке чипсетов nVidia nForce 4. Если смотреть с точки зрения памяти, то единственное отличие по сравнению с прошлыми линейками чипсетов заключается в используемых технологиях и частотах, а также в небольшой коррекции контроллеров на чипсетах для энтузиастов (Intel 975X, X38, nVidia nForce 680i), позволяющей снизить задержки. AMD же интегрирует контроллеры памяти во все процессоры AMD64. Одноканальная версия контроллера "умерла" вместе с Socket 754, а все другие архитектуры под Socket 939 и Socket AM2 используют двухканальный контроллер.

Но осталось ли преимущество двухканального контроллера сегодня? Производительность памяти и эффективность кэширования у современных платформ существенно выросли, как будет видно по результатам тестов. Мы оснастили систему Core 2 Duo памятью DDR2-800 с низкими задержками, после чего провели тесты в двухканальном режиме, а также с одним каналом памяти. В обоих случаях мы использовали 1-Гбайт DIMM от Corsair.

Два канала
Установка двух модулей памяти на один канал контроллера приведёт к его работе в одноканальном режиме.

Два канала
Каждый быстрый процессор Core 2 Duo оснащён 4 Мбайт кэша L2, который несколько нивелирует изменения в производительности подсистемы памяти. Другими словами, разница в использовании очень быстрой или очень медленной памяти всё ещё существенна, но она меньше, чем у старых процессоров с менее эффективным кэшем.

Параллельная работа HDD: один, два или четыре винчестера

Параллельная работа HDD: один, два или четыре винчестера

Параллельная работа жёстких дисков уже многие годы позволяет суммировать их производительность. Суть кроется в использовании технологии RAID (Redundant Array of Independent Drives, избыточный массив из независимых/недорогих жёстких дисков), которая будет распределять данные по нескольким винчестерам, суммируя их пропускную способность. Добавочные контроллеры RAID стали популярны на материнских платах для энтузиастов ещё во времена Athlon XP и Pentium 4 для Socket 478, недавно производители чипсетов стали интегрировать контроллеры в свои продукты.

Уже многие годы существует возможность объединить два жёстких диска в массив RAID 0 с чередованием или в RAID 1 с зеркалированием. Современные чипсеты с четырьмя или шестью портами Serial ATA способны поддерживать массивы RAID по всем портам. Мы решили протестировать традиционную конфигурацию с одним жёстким диском против двух конфигураций RAID 0: на двух винчестерах и на четырёх. Для наших тестов мы выбрали четыре жёстких диска WD1500 Raptor.

Параллельная работа HDD: один, два или четыре винчестера
Большинство материнских плат для энтузиастов оснащены не менее чем шестью портами Serial ATA.

Параллельная работа HDD: один, два или четыре винчестера

Параллельная работа HDD: один, два или четыре винчестера

Тестовая конфигурация

Для нашего проекта мы взяли типичный компьютер для верхнего сегмента массового рынка.

Платформа
Процессор Intel Core 2 Duo E6850 (65 нм, 3 000 МГц, кэш L2 4 Мбайт)
Материнская плата DFI LANParty UT P35-T2R, Rev: A.03
Чипсет Intel P35, BIOS 23.08.2007
Память Corsair CM2X1024-888C4D, 2x 1024 Мбайт DDR2-800 (CL 4-4-4-12, 2T)
Системный жёсткий диск Western Digital Raptor WD1500ADFD, 150 Гбайт, 10 000 об/мин, кэш 16 Мбайт, SATA/150
Дополнительные жёсткие диски Western Digital Raptor WD1500ADFD, 150 Гбайт, 10 000 об/мин, кэш 16 Мбайт, SATA/150
DVD-ROM Samsung SH-S183
Видеокарта Zotac GeForce 8800 GTS, GPU: GeForce 8800 GTS (500 МГц), память: 320 Мбайт GDDR3 (1600 МГц)
Звуковая карта Встроенная
Блок питания Enermax EG565P-VE, ATX 2.01, 510 Вт
Системное ПО и драйверы
ОС Windows XP Professional 5.10.2600, Service Pack 2
Версия DirectX 9.0c (4.09.0000.0904)
Драйвер платформы Intel Версия 8.3.1013
Графический драйвер nVidia Forceware 162.18

Система AMD Athlon 64 X2 была бы более чувствительной к производительности памяти, но её общая производительность ниже, именно поэтому мы решили придерживаться системы Intel Core 2 Duo.

Тесты и настройки

3D-игры
Call Of Duty 2 Version: 1.3 Retail
Video Mode: 1280x960
Anti Aliasing: off
Graphics Card: medium
Timedemo demo2
Prey Version: 1.3
Video Mode: 1280x1024
Video Quality: game default
Vsync = off
Benchmark: THG-Demo
Quake 4 Version: 1.2 (Dual-Core Patch)
Video Mode: 1280x1024
Video Quality: high
THG Timedemo waste.map
timedemo demo8.demo 1 (1 = load textures)
Аудио
Lame MP3 Version 3.98 Beta 5
Audio CD "Terminator II SE", 53 min
wave to mp3
160 kbps
Видео
TMPEG 3.0 Express Version: 3.0.4.24 (no Audio)
fist 5 Minutes DVD Terminator 2 SE (704x576) 16:9
Multithreading by rendering
DivX 6.7 Version: 6.7 (4 Logical CPUs)
Profile: High Definition Profile
1-pass, 3000 kbit/s
Encoding mode: Insane Quality
Enhanced multithreading
no Audio
XviD 1.1.3 Version: 1.1.3
Target quantizer: 1.00
Mainconcept H.264 v2 Version 2.1
260 MB MPEG-2 source (1920x1080) 16:9
Codec: H.264
Mode: NTSC
Audio: AAC
Profile: High
Stream: Program
Приложения
WinRAR Version 3.70
(303 MB, 47 Files, 2 Folders)
Compression = Best
Dictionary = 4096 kB
Autodesk 3D Studio Max Version: 8.0
Characters "Dragon_Charater_rig"
rendering HTDV 1920x1080
Sysmark 2007 Preview Version 1.01
Official Run
Cinebench Version: R10
1 CPU, x CPU run
Синтетические тесты
PCMark05 Pro Version: 1.2.0
CPU and Memory Tests
Windows Media Player 10.00.00.3646
Windows Media Encoder 9.00.00.2980

Результаты тестов: один, два или четыре жёстких диска

3D-игры

Между быстрым и медленным жёстким диском наблюдается заметная разница. Когда вы загружаете новый уровень в игре, этот процесс выполняется намного быстрее на винчестере Western Digital Raptor (10 000 об/мин) или на конфигурации RAID 0. Впрочем, наши тестовые сценарии не смогли это воспроизвести. Время подгрузки данных оказалось одинаково низким на двух или четырёх жёстких дисках в массиве RAID 0. Как и предполагалось, тесты 3D-производительности мало зависят от жёстких дисков.

3D-игры

3D-игры

3D-игры

3D-игры

Синтетические тесты

Синтетические тесты

Синтетические тесты

Тест жёсткого диска отражает то, что мы субъективно наблюдали при загрузке игровых уровней: конфигурация RAID справляется с подобным сценарием существенно быстрее, чем один винчестер. Однако переход с двух винчестеров на четыре не даёт ощутимой разницы.

Синтетические тесты

В целом, PCMark05 определённо выигрывает от более быстрой подсистемы хранения.

Синтетические тесты

Синтетические тесты

Тесты приложений

3DSMax и WinRAR существенно зависят от производительности процессора и памяти, а скорость накопителей влияет слабо. Впрочем, как мы обнаружили, производительность подсистемы хранения всё же важна для архиватора WinRAR, когда он распаковывает файлы или переносит их из временного хранилища в нужное место.

Тесты приложений

Тесты приложений

Тесты аудио/видео

Тесты аудио/видео

Кодировщик Lame MP3 не выигрывает от улучшенной производительности подсистемы хранения.

Тесты аудио/видео

Кодирование видео с помощью кодека DivX 6.6 выполнилось чуть быстрее в конфигурациях RAID.

Тесты аудио/видео

Тесты аудио/видео

SYSmark 2007 Preview

SYSmark 2007 Preview

Как и предполагалось, 3D-производительность мало выигрывает от увеличения пропускной способности подсистемы хранения. Впрочем, SYSmark 2007 Preview, по крайней мере, замечает, что разница есть.

SYSmark 2007 Preview

В секции e-learning пакета SYSmark 2007 Preview требуется подгружать немало аудио/видео-контента, что на конфигурации RAID выполняется быстрее. Впрочем, четыре жёстких диска не увеличивают производительность по сравнению с двумя.

SYSmark 2007 Preview

SYSmark 2007 Preview

SYSmark 2007 Preview

Финальный результат SYSmark 2007 оказался в пользу RAID-конфигурации из двух или четырёх жёстких дисков. Вы получаете 4% прироста, если развернёте RAID 0 на двух винчестерах и чуть меньше 3%, добавив ещё два.

Результаты тестов: один канал памяти против двух

Теперь позвольте ответить на более важный вопрос: оправдывает ли себя двухканальная работа памяти?

3D-игры

3D-игры

3DMark06 нужна лишь высокая производительность центрального процессора и графики. Он никак не отреагировал от переноса 2 Гбайт памяти с двух каналов на один.

3D-игры

Call of Duty 2 работает примерно на 4,2% медленнее, если отключить двухканальный режим.

3D-игры

Разница в Prey и того меньше - 1,6%.

3D-игры

В Quake IV разница тоже минимальна.

Синтетические тесты

Синтетические тесты

Синтетические тесты

Даже тест памяти PCMark 05 слабо отреагировал на отсутствие двухканального режима.

Синтетические тесты

То же самое можно сказать и про итоговый результат.

Синтетические тесты

Тест Sandra 2008 "заметил" разницу между одним и двумя каналами памяти DDR2-800: 5,7 Гбайт/с против 6,4 Гбайт/с - разница ощутимая, но до теоретических 50% она всё же далека.

Тесты приложений

Два теста приложений 3DSmax и WinRAR не очень сильно "тормозят", если отключить двухканальный режим работы памяти. Честно говоря, мы не ожидали, что WinRAR практически не замедлится в одноканальном режиме.

Тесты приложений

Тесты приложений

Тесты аудио/видео

Тесты аудио/видео

Тесты аудио/видео

Переход на одноканальную память не повлиял на результаты кодирования видео DivX 6.6...

Тесты аудио/видео

...и XviD.

Тесты аудио/видео

Кодировщик Mainconcept h.264 тоже не "заметил" перехода.

SYSmark 2007 Preview

SYSmark 2007 Preview

SYSmark 2007 Preview

SYSmark 2007 Preview

Единственный тест SYSmark 2007 Preview, который более-менее меняется при переходе с двух каналов на один, это Productivity (продуктивность).

SYSmark 2007 Preview

SYSmark 2007 Preview

Заключение

Заключение

Во второй статье нашего цикла, посвящённого параллельным вычислениям, мы рассмотрели разницу в производительности между одно- и двухканальной памятью, а также возможный прирост скорости при переходе с одного жёсткого диска на массив RAID 0 из двух и четырёх винчестеров. В первой статье мы проанализировали влияние на производительность увеличения числа ядер до двух и четырёх. Как мы обнаружили, сегодня разумно придерживаться двуядерного процессора, а четырёхядерный покупать только в том случае, если ваши приложения от него выигрывают. В начале следующего года можно ожидать нового 45-нм поколения процессоров под названием Penryn, которое даст ещё больше производительности при сниженных требованиях к энергопотреблению.

Но вернёмся к памяти и жёстким дискам. Как и предполагалось, разница между одно- и двухканальными режимами работы памяти DDR2-800 на современной системе Core 2 Duo близка к нулю и проявляется только в некоторых тестах. Да, разница в 1-3% процента часто заметна, но она не выходит за пределы погрешности. Для компьютеров геймеров и энтузиастов мы рекомендуем высокопроизводительную двухканальную память, поскольку память является одним из тех компонентов, которые должны работать быстро, чтобы вы могли максимально насладиться плавной игрой. Для обычных же приложений совершенно не имеет разницы, работает ваша память в одно- или двухканальном режиме. Два 1-Гбайт DIMM обычно дешевле одного 2-Гбайт модуля, но один DIMM сможет снизить энергопотребление на несколько ватт (впрочем, это больше просто интересно, чем важно).

То же самое касается и жёстких дисков: массив RAID даст незначительный прирост производительности из-за добавления накладных задержек контроллера, что видно по чуть сниженной производительности в некоторых тестах. Переход от одного жёсткого диска на массив RAID 0 из двух накопителей показал прирост производительности только в тестах, которые выигрывают от увеличения пропускной способности хранилища. Переход на четыре винчестера повышает производительность в тестах, интенсивно использующих накопители, но прирост относительно невелик.

КОНЕЦ СТАТЬИ


Координаты для связи с редакцией:

Общий адрес редакции: thg@thg.ru;
Размещение рекламы: Roman@thg.ru;
Другие координаты, в т.ч. адреса для отправки информации и пресс-релизов, приглашений на мероприятия и т.д. указаны на этой странице.


Все статьи: THG.ru

 

Rambler's Top100 Рейтинг@Mail.ru