Входе тестирования программного продукта на разных системах с использованием встроенного бенчмарка были получены следующие результаты:
Процессор | Режим без теней | Итоговый результат |
AMD Athlon XP 2000+ (1.6 Ghz) | Отлично | 4161 |
P4 Northwood 2.6 GHz | Отлично | 3277 |
AMD Athlon 64 3000+ 939 (1.8Ghz) | Отлично | 5677 |
PIII 733Mhz | Недостаточна | 1628 |
P4 Prescott 3.0 GHz | Отлично | 2697 |
Core 2 Duo E4500 (2.2Ghz) | Отлично | 4500 |
Core 2 Duo E4400@ (3.29Ghz) | Отлично | 7700 |
AMD Turion TL-52 (1.8 Ghz) | Отлично | 4100 |
Из сводной таблицы, что программа ощутимо быстрее выполняется на процессорах фирмы AMD. В чем же причина? В процессорах от AMD традиционно, начиная с архитектуры K7, применяется очень быстрый блок вычислений с плавающей точкой. (FPU) [4] [5] Поэтому мы видим, что Athlon XP 2000+, который вышел на рынок в 2002 работает почти на равнее с современным процессором от Intel - Core 2 Duo E4400 и в 1.5 раза обгоняет P4 3.0Ghz на ядре Prescott. Интересна разница между P4 Northwood 2.6 GHz и P4 Prescott 3.0 GHz. Известно, что в ядро Prescott могло обеспечить ускорение в операциях с плавающей запятой при сравнении с Northwood только при использовании оптимизированных под SSE3 компиляторов, что ярко и отображается на результатах. Второй вывод, который можно сделать - программа очень сильно зависит от скорости работы с памятью. Этого стоило ожидать при выборе алгоритма Z - буфера. Так AMD Athlon 64 3000+ 939 (1.8Ghz) становится вторым по скорости работы после разогнанного Core 2 Duo E4400@ (3.29Ghz). Причина - интегрированный контроллер памяти, работающий в двухканальном режиме, который позволяет значительно снизить задержки при обращении к памяти и увеличить скорость обмена данными. [4] Однако, мы видим, что Turion TL-52 достаточно сильно проигрывает настольному одночастотному коллеге. TL-52 использует память типа DDRII 633, которая обладает в два и более раза большими задержками, в сравнении с DDRI 400 и одноканальный режим работы. Однако, DDRII позволяет увеличить производительность, но при работе на достаточно больших частотах. Разгон E4400 на 62% позволил превзойти процессор с изначальной частотой на 200Mhz большей на 71%. Однако, причина такого прироста не только в росте частоты процессора. Шина процессора была разогнана на 80%, а память работает на частоте в 864Mhz. Мы видим реальный существенный рост скорости работы программы при увеличении скорости обмена данными с памятью, тогда как частота процессора влияет на результаты намного меньше.
|
|
Выводы
В работе реализованы базовые алгоритмы машинной графики: Z-буфер, трассировка лучей, алгоритм закраски флагом, взятый из курса двумерной графики. Поэтому, эта работа являет собой отчёт об усвоении курса Машинной Графики МГТУ им Н.Э. Баумана. Хотя достичь реального времени и не удалось, но примененные алгоритмы позволяют заметно ускорить выполнение программы путем перехода на использование современных программных библиотек, оптимизированных под выполнение с применением поддерживаемых наборов инструкций процессора, например SSE. В ходе проведения тестирования так же были получены и подтверждены важные знания по архитектурам современных настольных систем. Стало очевидно, почему при аппаратной реализации алгоритм Z-буфера будет выполняться намного быстрее остальных. Программа может применяться как для моделирования перемещений группировок морских кораблей, так и в учебных целях, для наглядного демонстрирования зависимости скорости выполнения расчетов от выбранных методов и архитектуры аппаратной составляющей демонстрационного стенда.
|
|
Литература
1. Д. Роджерс, Дж. Адамс. Математические основы машинной графики. - М: изд-во "Мир", 2001. - 277с.
2. С.М. Авдеева, А.В. Куров. МЕТОДИЧЕСКИЕ УКАЗАНИЯ ПО ВЫПОЛНЕНИЮ КУРСОВОЙ РАБОТЫ ПО ДИСЦИПЛИНЕ "МАШИННАЯ ГРАФИКА" Москва 1995
3. Сайт "iXBT" [эл. ресурс]. - режим доступа http://www.ixbt.com/video/rt-raytracing. shtml
4. Сайт "iXBT" [эл. ресурс]. - режим доступа http://www.ixbt.com/cpu/amd-hammer-family2. shtml
5. Сайт "Ф-центр" [эл. ресурс]. - режим доступа http://www.fcenter.ru/online. shtml? articles/hardware/processors/5847