oldi

Методика интегрального сравнения производительности игровых видеокарт

Сергей Пахомов

Зависимость результатов тестирования от производительности процессора

Интегральный показатель производительности

   Среднее арифметическое или среднее геометрическое?

   Среднее геометрическое с учетом весовых коэффициентов

   Расчет интегрального показателя в тесте 3DMark 2005

   Интегральный показатель производительности по совокупности тестов

 

Тестирование игровых видеокарт — одна из самых популярных сегодня тем, которой уделяют внимание практически все тестовые лаборатории как онлайновых, так и печатных изданий. Разработано немало методик, позволяющих сравнивать производительность видеокарт. Все методики тестирования видеокарт основываются на использовании игровых приложений и на измерении скорости обработки кадров (frames per second, fps). Чем больше число fps, тем выше производительность видеокарты. При сравнительном тестировании видеокарт возникает и другая проблема: как на основе результатов большого количества тестов вывести некий интегральный показатель, который мог бы корректно характеризовать производительность видеокарт и использоваться для сравнения их производительности.

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

Зависимость результатов тестирования от производительности процессора

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

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

Итак, сбалансированным можно назвать такое решение, когда возможности видеокарты соответствуют возможностям процессора. Естественно, что такая сбалансированность зависит от конкретного приложения (игры) и от разрешения экрана.

Существуют три типичные зависимости скорости обработки кадров (fps) от разрешения экрана. В первом случае (рис. 1) результат остается неизменным при любом разрешении экрана. Это означает, что производительность видеокарты превышает производительность подсистемы «процессор—чипсет—память», в результате чего видеокарта остается недогруженной и большую часть времени графический процессор простаивает. В данном случае имеет место несбалансированная конфигурация: мощная видеокарта сочетается со слабым центральным процессором (подсистемой «процессор—чипсет—память»). В такой ситуации замена видеокарты на более мощную не повлияет на производительность всей системы в целом, и результат останется таким же. В то же время замена процессора на более мощный приведет к увеличению результатов тестирования, а система станет более сбалансированной. Понятно, что сам по себе результат тестирования в данном случае не является репрезентативным показателем производительности видеокарты и не может использоваться для корректного сравнения видеокарт друг с другом. Тем не менее такой результат может использоваться для оценки производительности всей системы (компьютера) в целом, хотя и свидетельствует о несбалансированности системы при использовании конкретного приложения.

 

Рис. 1. Пример зависимости результатов тестирования от разрешения экрана в случае использования производительной видеокарты и маломощной подсистемы «процессор—чипсет—память»

Во втором случае (рис. 2) результат остается неизменным при низких разрешениях экрана и начинает линейно уменьшаться при высоких разрешениях. Это означает, что при низких разрешениях экрана производительность видеокарты превышает производительность подсистемы «процессор—чипсет—память», а при высоких, наоборот, — производительность подсистемы «процессор—чипсет—память» становится выше производительности видеокарты. Оптимальным в данном случае можно считать разрешение 1024x768, при котором возможности видеокарты примерно соответствуют возможностям процессора.

 

Рис. 2. Пример зависимости результатов тестирования от разрешения экрана в случае использования производительной видеокарты и маломощной подсистемы «процессор—чипсет—память»

Рис. 2. Пример зависимости результатов тестирования от разрешения экрана в случае использования производительной видеокарты и маломощной подсистемы «процессор—чипсет—память»

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

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

Еще один возможный характер зависимости результатов тестирования от разрешения экрана показан на рис. 3. В данном случае наблюдается линейное уменьшение результатов тестирования по мере увеличения разрешения экрана.

 

Рис. 3. Пример зависимости результатов тестирования от разрешения экрана в случае использования производительной подсистемы «процессор—чипсет—память» и маломощной видеокарты

Рис. 3. Пример зависимости результатов тестирования от разрешения экрана в случае использования производительной подсистемы «процессор—чипсет—память» и маломощной видеокарты

Ясно, что в подобном случае производительность системы в целом определяется производительностью видеокарты. Это пример несбалансированной системы, когда возможности процессора ограничиваются возможностями видеокарты. Однако такие результаты тестирования будут репрезентативными при сравнении производительности видеокарт. При замене процессора на более высокопроизводительный в данном случае результаты тестирования не изменятся, а при замене видеокарты на лучшую результаты увеличатся при всех разрешениях.

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

Интегральный показатель производительности

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

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

Самый простой способ определения такого интегрального показателя производительности  — это усреднение результатов тестирования при различных разрешениях экрана. Вопрос здесь только в том, насколько корректно использовать данный интегральный показатель для сравнения видеокарт.

Среднее арифметическое или среднее геометрическое?

Интегральный показатель производительности можно определять как среднее арифметическое или как среднее геометрическое отдельных подтестов. Если мы хотим использовать интегральный показатель производительности для сравнения видеокарт, то есть для определения, во сколько раз одна видеокарта производительнее другой, то использование геометрического среднего будет более корректным. Предположим, что имеется два подтеста, в первом из которых видеокарта A продемонстрировала результат в 100 fps, а видеокарта B — 101 fps, а во втором подтесте видеокарта A продемонстрировала результат 10 fps, а видеокарта B — 15 fps (табл. 1).

 

Таблица 1. Обоснование выбора среднего геометрического

Таблица 1. Обоснование выбора среднего геометрического

Понятно, что производительность карт в первом тесте примерно одинакова (разница всего в 1%), а во втором тесте производительность видеокарт B в полтора раза выше производительности карты A. Следовательно, и интегральный показатель производительности видеокарт B должен быть примерно в 1,5 раза выше интегрального показателя производительности видеокарты A. Если рассчитывать интегральный показатель производительности карты как среднее арифметическое результатов первого и второго подтестов, то для карты B он окажется всего в 1,05 раза выше, чем для карты A, что мало соответствует действительности. Если же определить интегральный показатель производительности карты как среднее геометрическое результатов первого и второго подтестов, то для карты B он окажется всего в 1,23 раза выше, чем для карты A, что более точно отражает ситуацию.

Среднее геометрическое с учетом весовых коэффициентов

В случае если речь идет об определении интегрального показателя производительности видеокарты по совокупности результатов подтестов, полученных при различном разрешении экрана, можно еще больше усложнить результат расчета интегрального показателя производительности, сделав его более корректным для сравнения видеокарт. Для этого нужно учесть вес каждого подтеста, определяющий его значимость, то есть рассчитать средневзвешенный результат. Если, к примеру, имеется n результатов X1, X2, X3,...Xn (каждому из которых соответствует свое разрешение экрана), то среднее геометрическое этих результатов рассчитывается по формуле:

 

При этом вес каждого результата Xi одинаковый и равен 1/n (в сумме вес всех тестов равен 1).

Геометрическое среднее с учетом веса wi каждого подтеста будет определяться по формуле:

 

Вопрос здесь заключается в определении алгоритма, задающего весовые коэффициенты так, чтобы полученный интегральный показатель производительности мог использоваться для корректного сравнения видеокарт.

Рассмотрим еще раз график, представленный на рис. 1. Как уже отмечалось, вплоть до разрешения экрана 1024x768 точек результаты тестирования «упираются» в производительность подсистемы «процессор—чипсет—память» и не должны использоваться для характеристики производительности видеокарты. Результаты теста при разрешениях 1024x768 точек и выше, наоборот, зависят только от производительности видеокарты. Поэтому при расчете среднего геометрического весовые коэффициенты при высоких разрешениях экрана должны быть выше весовых коэффициентов, соответствующих результатам при низких разрешениях экрана. Для того чтобы реализовать отвечающее данному критерию правило расчета весовых коэффициентов, нужно, чтобы весовые коэффициенты были бы прямо пропорциональны относительному приросту производительности (увеличению fps) при переходе от высокого разрешения к более низкому. То есть если результат Xi соответствует более высокому разрешению, а результат Xi-1 — более низкому, то весовой коэффициент i - го результата должен быть пропорционален величине |(Xi-1 – Xi)/Xi|. Знак модуля в данной формуле используется для того, чтобы обеспечить положительность результата, поскольку в случае приблизительной равности результатов могут возникать ситуации, когда Xi-1 < Xi . Учитывая, что сумма всех весовых коэффициентов должна быть равна 1, после нормировки получим следующую формулу для расчета весового коэффициента i-го результата:

 

Причем в данной формуле i >= 2, то есть результат X1 теста, соответствующего самому низкому разрешению, используется лишь для расчета весового коэффициента результата теста, соответствующего более высокому разрешению.

Формулы для расчета весовых коэффициентов и интегрального результата производительности по совокупности результатов для различных разрешений экрана представлены в табл. 2.

 

Таблица 2. Формулы для расчета весовых коэффициентов и интегрального результата производительности по совокупности результатов для различных разрешений экрана

Таблица 2. Формулы для расчета весовых коэффициентов и интегрального результата производительности по совокупности результатов для различных разрешений экрана

Расчет интегрального показателя в тесте 3DMark 2005

Рассмотренный выше алгоритм определения интегрального показателя производительности видеокарт можно использовать в том случае, если речь идет об игровых бенчмарках, когда результат тестирования представляется как скорость обработки кадров (fps). Однако, кроме широко известных игровых бенчмарков, практически ни одно тестирование видеокарт не обходится без использования популярного и общепризнанного бенчмарка 3DMark 2005, который является достаточно серьезным инструментом для исследования производительности видеокарт. Остается выяснить, применим ли вышерассмотренный алгоритм к тесту 3DMark 2005. Проблема заключается в том, что результат теста 3DMark 2005 измеряется не в привычных fps, а в некоторых безразмерных единицах, называемых 3DMark05 score. Например, результатом теста 3DMark 2005 может быть число 5372. Чтобы понять, корректно ли использовать рассмотренный выше алгоритм к тесту 3DMark 2005, необходимо выяснить, что скрывается за результатом теста 3DMark 2005.

В тесте 3DMark 2005 используются три игры: Return to Proxycon (Game Test 1), Firefly Forest (Game Test 2) и Canyon Flight (Game Test 3). Результат теста 3DMark 2005 рассчитывается как среднее геометрическое (с равными весовыми коэффициентами) от fps в каждом из игровых тестов, и полученное число умножается на 250:

 

К примеру, если результаты тестирования в каждой из игре следующие: Return To Proxycon: 27,02 fps, Firefly Forest: 17,45 fps и Canyon Flight: 33,86 fps, то результат теста будет равен 6295 3DMark05 score.

Итак, по своему физическому смыслу результат теста 3DMark 2005 — это усредненная скорость обработки кадров, умноженная на 250, что, естественно, не меняет ситуации. Следовательно, рассмотренный выше алгоритм расчета интегрального показателя производительности видеокарты может использоваться в том числе и для теста 3DMark 2005.

Интегральный показатель производительности по совокупности тестов

Предыдущий алгоритм расчета интегрального показателя производительности предполагал наличие нескольких результатов одного и того же теста, полученных при разных разрешениях экрана. Соответственно данный интегральный показатель можно использовать для сравнения видеокарт (а также игровых ПК в целом) примененительно к одному конкретному тесту (игре). Понятно, что такое сравнение видеокарт не может быть репрезентативным, поскольку ни одна видеокарта (и ни один ПК) не приобретается под одну отдельно взятую игру. В то же время в принципе нельзя утверждать, что если в одной игре видеокарта А демонстрирует более высокий результат, чем видеокарта B, то и в любой другой игре видеокарта A будет производительнее видеокарты B. Именно поэтому для корректного сравнения видеокарт необходимо использовать как минимум три-четыре игровых теста. При этом, однако, возникает вопрос, как на основе результатов отдельных тестов сравнивать между собой видеокарты, то есть речь идет об алгоритме, который позволил бы вычислять некий интегральный показатель производительности видеокарты по совокупности тестов.

Для расчета такого интегрального показателя производительности по совокупности тестов необходимо, чтобы результаты всех отдельных тестов выражались в одинаковых единицах измерения, например в fps. В этом случае результаты теста 3DMark 2005 необходимо предварительно разделить на 250, чтобы уравнять их с результатами всех остальных тестов. Для расчета интегрального показателя производительности можно использовать уже рассмотренный алгоритм нахождения среднего геометрического (с равными весовыми коэффициентами):

 

Полученный таким образом интегральный показатель производительности характеризует среднюю скорость обработки кадров в fps на конкретном наборе тестовых программ.

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

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

КомпьютерПресс 1'2005