InfoCity
InfoCity - виртуальный город компьютерной документации
Реклама на сайте







Размещение сквозной ссылки

 

Тестирование однопроцессорной и двухпроцессорной систем


В последнее время в форумах хардверных сайтов часто обсуждается вопрос: "А стоит ли использовать двухпроцессорную систему в качестве ПК (WorkStation)? Что лучше - купить процессор на 1 ГГц или два на 600 МГц?" Вопрос действительно интересный, ведь и двухпроцессорные материнские платы вполне доступны по цене, да и софт постепенно учится работать на нескольких процессорах. Мы попытались разобраться, в каких же случаях двухпроцессорная система будет давать прирост в производительности, проведя небольшое тестирование.

Но для начала попробуем чисто теоретически рассмотреть ситуацию. Прежде всего необходимо, чтобы SMP (Symmetric Multi-Processing - Симметрическая Мультипроцессорность) поддерживалась операционной системой. Например, при работе в Windows 98 никакого толка от двух процессоров не будет - система сможет использовать только один из них. Среди систем, поддерживающих SMP, наиболее популярны Windows NT/2000, Linux, FreeBSD, BeOS.

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

Итак, с теорией мы немного разобрались - пора переходить к практике. Чтобы практическая часть не показалась вам, мягко говоря, несколько странной, сразу оговорюсь, что по различным причинам нам не удалось провести тестирования так, как мы бы того хотели -- "благодаря" форс-мажорным обстоятельствам (в виде безвременной и внезапной смерти одного из разделов жесткого диска, на котором, собственно, и хранились данные) некоторые результаты тестирований были утеряны. Тем не менее, мы все же решили написать данный обзор, тем более, что "критическая масса" результатов тестирования так или иначе сохранилась ;-).

Для тестирования были собраны две системы: Система 1.

  • Материнская плата: SOLTEK SL-68A на чипсете 440BX
  • Процессор(ы) Slot1 Pentium III 600 ( 6x100 Katmai)
  • Память: 160MB (128+32)
  • Жесткие диски: WD Spartan 7.5 GB (основной), Quantum Fireball CX 13.1 GB
  • Видео: Voodoo3 3000 PCI
  • Звуковая карта: Diamond Monster MX300

Система 2.

  • Материнская плата: Tyan Tiger 133 (S1834) на чипсете Via Apollo Pro133A
  • Процессор(ы): Slot1 Pentium 800EB (6x133 Coppermine)
  • Память: 224MB (128+64+32) - работала на частоте 133МГц
  • Жесткий диск: Seagate Barracuda ATA II
  • Видео: Voodoo3 3000 PCI
  • Звуковая карта: Diamond Monster MX300

Несколько слов о материнских платах: SOLTEK SL-68A содержит два разъема Slot1, 4 разъема DIMM, 5 слотов PCI, 2 ISA, 1 AGP. Из возможностей выделю аппаратный мониторинг и изменение частоты шины из BIOS Setup. Да, если это кому-нибудь интересно, плата сертифицирована 3D Labs.

Tyan традиционно выпускает "тяжелые" платы для серьезных задач - в ассортименте этой компании многопроцессорные материнки, модели с интегрированными SCSI-контроллерами и т.п.

Tyan Tiger 133 - двухпроцессорная плата - построена на несколько нетрадиционном для двухпроцессорных систем чипсете Via Apollo Pro133A. Тем интереснее было посмотреть ее в деле. В качестве Южного Моста на этой плате используется микросхема VT82C596B, которая не поддерживает ни встроенный AC-97 звук ни разъемы AMR/CNR (а кому нужны эти возможности на плате такого класса?J). На плате: разъема Slot1, 4 разъема DIMM, 5 слотов PCI, 1 ISA, 1 AGP. Плата также поддерживает аппаратный мониторинг, но вот возможностей для разгона не предоставляет никаких (впрочем, будет ли пользователь двухпроцессорной системы разгонять ее?). Стоить так же отметить очень широкие возможности настройки BIOS Setup.

Обе системы работали под управлением Windows 2000 (на основном диске создавался раздел NTFS размером 5МВ, после установки ОС и всех приложений диск дефрагментировался).

SiSoft Sandra2000

Итак, для начала мы провели синтетические тесты в SiSoft Sandra2000.

CPU Benchmark

Как видим, быстродействие по целочисельным операциям увеличилось примерно на 60%, а по операциям с плавающей точкой - почти в два раза. А при работе с набором команд SSE, и с целочисленными инструкциями MMX ситуация еще лучше - производительность увеличивается почти в два раза!

Теперь посмотрим, как же обстоят дела в Memory Benchmark.

Memory Benchmark

Да, вот оно узкое горлышко чипсета BX - при работе с памятью производительность двухпроцессорной системы лишь немного превышает показатели однопроцессорной, да и то? лишь для целочисленных операций. Это и неудивительно, ведь в этом чипсете шина памяти просто делится между процессорами. Нужно сказать, что на Via Apollo Pro133A горлышко становится еще уже - этот чипсет работает с памятью медленнее, чем BX, а шина также делится пополам между процессорами.

Ziff Davis Winstone 99

От синтетических тестов перейдем к Ziff Davis Winstone 99. Этот тест, как известно, проверяет производительность системы на реальных приложениях. Из возможных наборов приложений для тестирования мы выбрали Dual-Processor Inspection Tests, который состоит из программ, поддерживающих многопроцессорность: MicroStation SE, Photoshop 4.0 и Visual C++ 5.0.

ZD Winstone

Как видим, средний прирост производительности по этим приложениям составляет около 20%. Основным "тормозом" стала MicroStation SE (около 15% прироста), а вот при компиляции проекта в Visual C++ 5.0 выигрыш в скорости составил более 35%. Вообще говоря, не очень-то впечатляет. Нужно правда заметить, что в тесте использовались далеко не самые новые версии приложений. Возможно в более поздних лучше реализована многопоточность?

WinRAR+MPEG4

Как известно, современные архиваторы производят очень интенсивные математические операции и очень часто используются для тестирования процессоров. Правда многопоточных архиваторов я пока не встречал. Однако, как уже упоминалось раньше, наибольший выигрыш двухпроцессорная система дает тогда, когда запущенно несколько ресурсоемких приложений, пусть даже однопоточных. Поэтому, мы решили провести архивацию одновременно с просмотром фильма в формате MPEG4. Ведь декодирование MPEG4 также очень сильно нагружает процессор (на процессоре слабее Pentium II 400 полноценно насладиться просмотром фильма в формате MPEG4 вам не удастся). Немного о программах и настройках. Для архивирования был использован WinRAR 2.70 (Dictionary size - 1024KB, Compression Method - Best, Create solid archive, Use multimedia compression). Архивировалась директория WINNT от Windows 2000(5866 файлов, 623 MB), которая была расположена на дополнительном жестком диске (Quantum Fireball CX). Архивный файл писался на основной жесткий диск (WD Spartan). Два жестких диска было использовано для того, чтобы уменьшить влияние производительности дисковой подсистемы на время архивирования. Для просмотра фильма в MPEG4 ("Мумия", если кому интересно :-)) был использован кодек DivX, ползунок качества - на максимуме. Было проведено три тестирования, результаты усреднены (отклонения не превышали 5%).

Для начала, ради спортивного интереса, был запущен один только WinRAR. Так как это однопоточное приложение, то в любом случае используется только один процессор. Результаты приведены на нижней диаграмме. Небольшой выигрыш на двухпроцессорной системы обусловлен тем, что небольшая часть ресурсов отъедается операционной системой (запущенные сервисы и т.п.), а она, в отличие от WinRAR, может использовать для своих нужд второй процессор.

Real Applications

Посмотрим, что же будет при одновременной работе WinRAR и DivX? Вот это да! Почти в два раза быстрее! Кроме того отмечу, что при использовании одного процессора фильм иногда начинал "дергаться" (в двухпроцессорной конфигурации смотрелся идеально, также как и на одном процессоре, но без WinRAR).

Честно говоря я даже не знаю, чем объяснить такое уменьшение времени, затраченного на работу, ведь оно зависит не только от процессора но еще и от скорости дисковой подсистемы. Но тем не менее факт остается фактом - двухпроцессорная система в этом тесте проявила себя наилучшим образом. Для того, чтобы система с одним процессором могла показать такой же результат скорее всего понадобится PIII с частотой свыше 1.1 ГГц.

3DStudio MAX

Довольно-таки распространенной задачей для рабочей станции является реэндеринг трехмерных сцен. Поэтому, мы решили включить в тестирование 3D Studio MAX 3.11 (это приложение поддерживает многопоточность). Осуществлялся реэндеринг ста кадров с большим количеством полигонов. Тестирование проводилось два раза, результаты усреднялись.

Как видно из приведенной выше диаграммы, прирост производительности составил около 30%. Что ж, в общем-то неплохо, но после результатов предыдущего теста я почему-то надеялся на большее…

Игры

Одной из немногих игр, официально поддерживающих SMP, является Quake III (режим многопоточности можно включить, введя консольные команды r_smp 1 и vid_restart). И именно в нем мы планировали провести тестирование. Однако результаты оказались довольно-таки странными. Во-первых, выигрыш по demo1 даже на 640х480 составлял всего лишь несколько fps, причем он практически не зависел от того, включена поддержка SMP или нет. На более высоких разрешениях, после включения поддержки SMP скорость даже начинала падать! Я перепробовал все, что можно, устанавливал последний патч к Quake III, менял драйверы видеокарты, но картина кардинально не менялась.

Однако, в перерывах между тестированиями, я не мог отказать себе в удовольствии поиграть немного в любимую Unreal Tournament. Нигде я не встречал сведений о том, что эта игра поддерживает SMP, однако разницу между одним и двумя процессорами было видно невооруженным глазом!


Реклама на InfoCity

Яндекс цитирования



Финансы: форекс для тебя








1999-2009 © InfoCity.kiev.ua