Измерение производительности видеосистемы: практика (страница 5)
реклама
Теперь вроде все, можно составить таблицу с результатами.
Вертикальная синхронизация: |
скорость кадров, к/с |
соседних отсчетов, % |
кадров по Vsync, к/с |
|
Отключена |
|
|
|
|
Включена |
|
|
|
|
Управляемая |
|
|
|
|
Двойной Vsync, ограничение 60 к/с |
|
|
|
|
Двойной Vsync, ограничение 120 к/с |
|
|
|
|
Проанализируем цифры. Но перед тем должен еще раз подчеркнуть, что столбец «на мониторе» является ориентировочным и его достоверность под большим вопросом.
Синхронизация отключена.
По логике вещей, отключение синхронизации должно обеспечивать наибольшую производительность системы. Но, по полученным данным, она скорее представляет весьма посредственную скорость. Можно забыть о последнем столбце, но «посредственность» затрагивает все столбцы. Причина очевидна – «шум» вывода соседних кадров, свойственный CrossFireX (а возможно и SLI).
реклама
Синхронизация включена.
По той же логике, включение синхронизации должно резко снижать производительность, так и происходит – в этом режиме все характеристики хуже. Но, постойте, все ли? Да, средняя скорость кадров оказалась меньше, но скорость кадров по Vsync повысилась. С одной стороны это логично, включение синхронизации ни коем образом не должно повлиять на симулятор синхронизации к Vsync, что и произошло. С другой стороны, включенная синхронизация означает сниженный уровень «шума» от нестабильности кадров из-за CrossFireX, что так же повышает значение в этой позиции.
Управляемая синхронизация.
В этом режиме программа RadeonPro активно управляет состоянием синхронизации, включая и отключая ее при установлении скорости кадров выше или ниже скорости развертки монитора. К сожалению Hard Reset демонстрирует скорость кадров ниже 60 к/с, поэтому синхронизация включается лишь на короткий интервал времени и больших дивидендов предоставить не может. Время работы Vsync хорошо заметно в последней трети графика по резкому снижению «шума» и прохождению линии строго по границе 60 к/с.
Двойной Vsync, ограничение 60 к/с.
Основные проблемы CrossFireX (и SLI?) связаны с нестабильностью соседних кадров, формируемых одновременно первой и второй видеокартой. Сборку CF/SLI можно осуществить не только с двумя, а и с большим количеством видеокарт, но, в виду очевидной редкости таких построений, речь идет только о двойных решениях.
Итак, видеокарты формируют поток кадров, но получаемой производительности не достаточно для полноценной синхронизации к частоте развертки монитора. Не беда, драйвер умеет выполнять синхронизацию на половинной частоте, что позволяет осуществлять синхронизацию частот кадров не только «выше 60», но и в диапазоне 30-60. Ниже 30 технология двойного Vsync работает так же, как и управляемая синхронизация – отключается.
В принципе, отказ от синхронизации при частоте кадров ниже 30 к/с не должен как-то ухудшать качество восприятия картинки, ведь это уже ‘полный провал’. Ну кто будет играть с 25 к/с? … Так что, в явные недостатки это свойство записывать не стоит. Впрочем, пора вернуться к таблице.
реклама
Этот режим позволяет добиться самых лучших результатов, причем об этом рапортуют все характеристики. Возросла даже средняя скорость кадров, чего (вроде бы) произойти не должно. Однако позвольте напомнить, игра «Hard Reset» не слишком любезна к многопроцессорным решениям. Вероятно, включение улучшенной синхронизации обеспечило устойчивую и постоянную работу системы генерации кадров в игре. Вполне возможно, что этим и вызвано улучшение скоростных характеристик.
Двойной Vsync, ограничение 120 к/с.
Программа RadeonPro, кроме всего сказанного, может ограничивать скорость кадров. Предположительно, механизм основан на гарантировании фиксированного интервала между сигналами «Present». Установкой ограничения по уровню 120 к/с я указал минимальный интервал между соседними кадрами (со стороны процессора). При общей двойной синхронизации это привело к повышенному «шуму» кадров.
Для предыдущего случая было установлено ограничение в 60 к/с, что соответствовало периоду кадровой развертки и появления «шума» подавлялось. Итак, ‘благое пожелание’ повысить производительность снижением уровня ограничения привело к увеличению нестабильности и, как следствие, скорость снизилась. Чем «шумнее» поток кадров, тем хуже.
Короче говоря, если у вас AMD, то программа RadeonPro вам в помощь.
Catalyst 13.8 beta
Не так давно компания AMD выпустила не совсем обычную редакцию драйвера, в котором сделаны некоторые подвижки в сторону улучшения качества выводимой картинки. На данный момент существует лишь бета версия этого драйвера, что явно намекает о его незавершенности. К слову, «глючный» он, но попробовать то стоит.
Ранее я приводил съемку маркеров, нет никаких препятствий привести данные и для этого драйвера. Дабы не раздувать статью, ограничимся лишь Heaven 4.0.
DirectX 11, драйвер из комплекта 13.8 бета:
Теперь самое время привести лог FRAPS.
Весьма любопытная картинка. Складывается такое впечатление, что драйвер ничего не «балансирует», а выполняет тривиальную синхронизацию к сетке частот, кратных кадровой развертке. А что, очень красивое решение! Но у него есть один недостаток, отмеченный ранее - при неодинаковых размерах кадров важно всячески избегать синхронности к частоте развертки, иначе последует резкое возрастание дефектности картинки.
Несколько выше я приводил сравнение кадров «1» к «3» и эквивалентных «3/4». Кадры «1» к «3» разбивают выводимую картинку на два поля, 1/1 и 1/2 (60 Гц и 30 Гц). Для снижения этого неприятного дефекта следует «размешивать» эти два поля, что можно получить старательно избегая синхронности к частоте развертки. Так что, реализация AMD очень красивая, но потенциально «проблемная». По приборам «все хорошо», а вот «на взгляд» …
Драйвер позволяет отключать функцию «Frame Pacing», попробуем без нее:
реклама
Знакомая картина. Для полноты сравнения, аналогичный режим для драйвера 13.6beta2:
А знаете, можно попробовать сделать собственный балансир фазы между потоками видеокарт. Простенький делается «на коленке», получилось следующее:
Стабилизация сопровождается некоторым эффектом «качания» и это сделано специально, дабы уменьшить синхронность к частоте развертки (дефекты перемешиваются).
Сравним результаты:
Режим работы |
скорость кадров,к/с |
соседних отсчетов, % |
кадров по Vsync, к/с |
|
13.8b, «Frame Pacing» включен |
|
|
|
|
13.8b, «Frame Pacing» выключен |
|
|
|
|
13.6 beta 2 |
|
|
|
|
13.8b, собственный балансировщик. |
|
|
|
|
Самые лучшие результаты у драйвера 13.8b с включенной функцией «Frame Pacing», что вполне ожидаемо. Немного неожиданно, что различается характер работы драйверов 13.b2 и 13.8b с отключенной функцией «Frame Pacing». Похоже, его весьма основательно «перепахали». Что до моей «затычки», то она показала вполне вменяемые результаты, хотя была состряпана за 10 минут . Впрочем, это мелочи. Но у этой «затычки» еще есть поле для деятельности, драйвер из комплекта 13.8b адаптирован только под dxgi (Dx10-11), а вот предыдущие Dx9 … кстати, давайте посмотрим.
DirectX 9, драйвер 13.6b2:
DirectX 9, драйвер 13.8b:
DirectX 9, различные версии драйвера:
Версия комплекта драйвера: |
скорость кадров,к/с |
соседних отсчетов, % |
кадров по Vsync, к/с |
|
13.6 beta 2 |
|
|
|
|
13.8 beta |
|
|
|
|
Драйвер из комплекта 13.8b просто ужасен. Он умудрился «провалить» тест даже по средней скорости кадров, которая вообще не учитывает какую-либо нестабильность вывода картинки. Про другие характеристики просто не хочется вспоминать. Вполне очевидно, что редакцию под DirectX 9 разобрать - разобрали, а собрать забыли. ((
В самом начале этого раздела я отмечал о «глючности» драйвера 13.8, настала пора это доказать. В данном тестировании я довольно много ссылался на игру «Crysis 3», но знаете, что я увидел сразу, после перестановки драйвера с 13.6b2? Познакомьтесь, это «Псих»:
Веселенький у него воротничок, не находите? И бронекостюм «Пророка» почему-то оброс кольями. Дефект наблюдался только на «Психе» и только в пределах уровня, потому «стабильным» его назвать нельзя, хотя симптом неприятный. Надеюсь исправят. «Crysis 3» сделан на DirectX11, а вот DirectX 9 – с ним очень плохо. И дело вовсе не в снизившейся производительности, возросла дефектность картинки. При анализе Heaven этот недостаток проявился очень четко. Давайте я соберу характеристики драйверов в общую таблицу, так будет заметнее.
DirectX 9, стабильность кадров (%).
по периоду, мс |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Дефекты с периодом 13 мс (80 Гц) глазом не замечаются, 26 мс (40 Гц) могут лишь отмечаться как некоторая «неустойчивость». Что до 65 мс (15 Гц) и 130 мс (7.5 Гц), то они заметны весьма четко. Драйвер 13.6b2 вносит дисбаланс только на соседние кадры, а вот 13.8b распространяет нестабильность на большую длительность кадровой последовательности.
Наверное, вы скажете – «Ну и что, подумаешь цифирь?» При просмотре Heaven много движения и почти всегда происходит смещение всего изображения. На драйвере 13.6b2 ничего необычного не наблюдается, лишь легкое подергивание, а вот 13.8b смотрится безобразно. Уж простите меня за столь не технический термин, но я затрудняюсь дать более корректное определение того, что «переливается» на экране, когда на счетчике показывается 60-100 FPS. При перерисовке движение происходит рывками.
реклама
Страницы материала
Лента материалов раздела
Соблюдение Правил конференции строго обязательно!
Флуд, флейм и оффтоп преследуются по всей строгости закона!
Комментарии, содержащие оскорбления, нецензурные выражения (в т.ч. замаскированный мат), экстремистские высказывания, рекламу и спам, удаляются независимо от содержимого, а к их авторам могут применяться меры вплоть до запрета написания комментариев и, в случае написания комментария через социальные сети, жалобы в администрацию данной сети.
Комментарии Правила