РЕКЛАМА
ИНФОРМАЦИЯ
Rambler's Top100 Рейтинг@Mail.ru

ВИДЕОКАРТЫ

Журналистское расследование: трюки ATi с оптимизацией текстурной фильтрации
Краткое содержание статьи: Вокруг ATi поднят новый скандал: с чипом X800 компания хитрит и использует неполную трилинейную фильтрацию. Мы решили разобраться в сути проблемы. Ведь вы не хотите, чтобы новая карта за $400-$500 была нацелена на удовлетворение нужд отдела маркетинга, а не потребностей конечных потребителей? К сожалению, пока так оно и получается. Читайте наше журналистское расследование.

Журналистское расследование: трюки ATi с оптимизацией текстурной фильтрации


Редакция THG,  5 июня 2004
Назад
Вы читаете страницу 4 из 6
1 2 3 4 5 6
Далее


Брилинейная фильтрация - просто фильтруем меньше

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

Брилинейная фильтрация - просто фильтруем меньше

На иллюстрации видны различия между билинейной, брилинейной и трилинейной фильтрациями. Брилинейная фильтрация показывает оптимизации, внесённые nVidia с картой GeForce 6800 Ultra. Количество оптимизаций может различаться от одной карты к другой.

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

Данный тип текстурной фильтрации был впервые осуществлён nVidia, чьи карты GeForce FX 5xxx выполняли именно его. Даже новые карты nVidia GeForce 6xxx выполняют такую же фильтрацию по умолчанию, однако nVidia отреагировала на критику и добавила в драйверы возможность отключения оптимизации.

Раньше ATi имела репутацию компании с более высоким качеством изображения на своих картах, что было обусловлено правильной трилинейной фильтрацией. Так оно и было до тех пор, пока не вышел Radeon 9600 (RV360). Этот чип стал тоже осуществлять брилинейную фильтрацию, хотя ATi намекала на адаптивный алгоритм. Драйвер определяет степень оптимизации, используя изменчивость mip-текстур. Новый чип ATi R420, также известный как Radeon X800, тоже использует эту оптимизацию.

Больше всего нас беспокоит то, что ATi не соизволила объяснить процедуру фильтрации. Обозреватели не заметили новую технологию фильтрации ATi, поскольку стандартные тесты качества фильтрации используют цветные mip-текстуры, на которых оптимизация не заметна. Дело в том, что драйвер переключается на полную трилинейную фильтрацию при использовании цветных mip-текстур.

Брилинейная фильтрация - просто фильтруем меньше

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

Эта особенность карт ATi была всё-таки обнаружена во время тестирования сайтом Computerbase. Обозреватели сайта обнаружили, что в игре Call Of Duty X800 даёт меньшую частоту кадров при использовании цветных mip-текстур, чем обычно. После этого было проведено сравнение качества изображения, и обозреватели обнаружили, что карта использует брилинейную фильтрацию. По крайней мере, с обычными текстурами.

Ниже мы приведём иллюстрации, которые использовал сайт Computerbase для доказательства оптимизации фильтрации ATi. Первый скриншот был сделан при билинейной фильтрации, а второй - при трилинейной. На них должны быть заметны существенные отличия при переходе между mip-уровнями. На 9800XT так оно и есть. Но на X800 мы наблюдаем лишь небольшую разницу - то есть используется брилинейная фильтрация.

Брилинейная фильтрация - просто фильтруем меньше

Небольшие отличия от билинейной фильтрации - ATi X800 не использует полную трилинейную фильтрацию.

Брилинейная фильтрация - просто фильтруем меньше

Значительные отличия от билинейной фильтрации - старая карта 9800XT обеспечивает полную трилинейную фильтрацию.

Ещё до получения официальной реакции ATi мы поговорили с ID Software, на чьём движке построена игра Call Of Duty.

Перед нами определённо "хитрость", на которую сегодня идут все основные производители. Вместо полного смешения двух прилегающих mip-уровней здесь используется сэмплирование только одного mip-уровня, что позволяет уменьшить число сэмплов, примерно, с 8 до 6.

При этом мы получаем заметное увеличение производительности с минимальными визуальными отличиями. Но тогда драйверу приходится анализировать mip-уровни, чтобы скрывать этот трюк, - неудачное последствие.

Если подобные возможности улучшения производительности не используются, то использование цветных mip-текстур в Q3 должно оказывать, практически, нулевое влияние на производительность.

Джон Кармак

Как мы видим, производительность движка Q3 при использовании цветных и обычных mip-текстур должна быть идентична, и тесты на карте nVidia 6800 это подтверждают. Но у Radeon X800 мы наблюдаем ухудшение производительности. А в UT2003/2004 ситуация вообще иная. Все карты показывают потерю производительности - просто здесь всё зависит от реализации движка. Приведём высказывание Epic:

xxx @ nVidia только что указала, что заполнение текстур постоянным значением цвета и альфы может привести к повышению количества пикселей, которые записываются в кадровый буфер (проходят альфа-тест), что влияет на производительность. Я полностью забыл об этом и, вероятно, постараюсь изменить код, чтобы отбросить канал альфа в движке следующего поколения :)

Несколько следующих тестов показывают, какой прирост производительности можно получить от реализации брилинейной фильтрации.

Брилинейная фильтрация - просто фильтруем меньше

Карта GeForce 6800 Ultra показывает одни и те же результаты при использовании цветных и обычных mip-текстур, при включении и выключении трилинейной оптимизации. X800, в тоже время, получает немалый прирост с обычными текстурами.

Следует отметить, что при использовании цветных mip-текстур присутствуют некоторые области, которые не окрашены. В них драйвер ATi тоже выполняет оптимизацию. То есть разница между полной фильтрацией и оптимизированной фильтрацией у X800 будет ещё больше, чем показывают результаты с цветными mip-текстурами.

ATi приносит свои извинения и отказывается обсуждать оптимизацию фильтрации, поскольку на её реализацию подан патент. Но верно это или нет - мы сказать не можем.

Что более важно, в документации ATi оставляет впечатление о реализации полной трилинейной фильтрации, при этом обозревателям рекомендуется отключить оптимизации у конкурентов, то есть у GeForce 6800, чтобы обеспечить честное сравнение. В то же время, ATi рекомендует оценивать качество изображения X800 по цветным mip-текстурам - однако при этом в играх обеспечивается совершенно иное качество.

Брилинейная фильтрация - просто фильтруем меньше

Брилинейная фильтрация - просто фильтруем меньше

В одном из руководств по обзору Radeon X800 ATi заявляет о реализации полной трилинейной фильтрации и для доказательства рекомендует использовать стандартные инструменты по оценке качества с цветными текстурами, что совершенно не соответствует истине.


Брилинейная фильтрация - просто фильтруем меньше

"Чтобы обеспечить честное сравнение..." ATi рекомендует отключить трилинейную оптимизацию у nVidia и заставить GeForce 6800 Ultra осуществлять полную трилинейную фильтрацию - хотя чип X800 не способен выполнять полную трилинейную фильтрацию с текущими драйверами.


Брилинейная фильтрация - просто фильтруем меньше

Из презентации ATi во время Editors Day2 в Торонто. ATi говорит об уменьшении трилинейной фильтрации до уровня билинейной, но вполне очевидно, что здесь подразумевается брилинейная оптимизация линейки nVidia GeForce 5xxx. Маркетологи ATi всегда говорят о билинейной фильтрации у этих карт. Ни один из производителей не уменьшил трилинейную фильтрацию до полной билинейной... Пока.

ATi предложила ряд объяснений этой проблемы в разговорах с нами:

Вопрос
Это на самом деле трилинейная фильтрация?

Анди/Раджа (Andy/Raja), ATi
Да, это линейная функция между двумя mip-уровнями на основе LOD.

Вопрос
Когда ATi реализует полную трилинейную фильтрацию, чтобы сайты смогли провести повторное тестирование ваших карт, поскольку все предыдущие тесты можно считать недействительными из-за трюка или оптимизации, как ни назови?

Анди/Раджа, ATi
Мы никогда не удаляли "полную трилинейную" фильтрацию. Мы не считаем, что результаты каких-либо тестов можно считать неверными из-за наших технологий. Во всех обзорах мы убеждались, что обладаем лучшим качеством картинки, чем другие решения.

Вопрос
...Вы намеренно реализовали новый алгоритм фильтрации? И можете ли вы сказать нам, почему сайты не были предупреждены о нём? Спасибо.

Анди/Раджа, ATi
Мы постоянно осуществляем доработку драйверов и аппаратной части. Каждое новое поколение чипов даёт драйверу большие возможности по программированию функций и режимов, чем раньше, когда они были аппаратными. Мы постоянно пытаемся улучшать качество и производительность, с каждым новым выпуском драйвера. На практике за прошедший год мы внесли десятки подобных оптимизаций в драйверы. Некоторые из этих многих оптимизаций никак не сообщаются, скажем, отделу PR или маркетинга. И многие оптимизации являются нашей интеллектуальной собственностью, и мы не можем, в любом случае, обсуждать их публично.

Полный список вопросов и ответов можно прочитать здесь (на английском).

Как видим, утверждения ATi частично ошибочны. Полная трилинейная фильтрация математически определена, и поэтому её можно считать стандартом. По этой причине брилинейную или какую-либо другую оптимизированную фильтрацию нельзя считать "настоящей". Мы не слишком понимаем, как ATi умудрилась сказать, что этот фильтр даёт более высокое качество, чем полный трилинейный. Более того, ATi уклонилась от ответа (вполне логично, с маркетинговой точки зрения), что они думают о результатах тестов из разных обзоров. Некоторые обозреватели отключали трилинейную оптимизацию nVidia GeForce 6800, как и рекомендует ATi. В наших тестах X800 трилинейная оптимизация у nVidia не отключалась, поэтому полученные значения являются верными, и их можно использовать для сравнения.

Понимание объяснений ATi зависит от вашей точки зрения. Однако факт заключается в том, что ATi X800 не может справиться с полной трилинейной фильтрацией, а nVidia GeForce 6800 обеспечивает, теоретически, лучшее качество фильтрации, по крайней мере, если отключить оптимизацию трилинейной фильтрации в драйвере. Также упомянем и тот факт, что качество картинки X800 не может быть оценено по тестам с цветными mip-текстурами. Поэтому то, что карта даёт хорошее качество в тестировании, верно лишь частично.

Однако ATi следует отдать должное за то, что оптимизация не слишком сильно ухудшает качество в играх - по крайней мере, у нас пока нет соответствующего примера. Но адаптивная природа оптимизации приводит к тому, что её очень сложно обнаружить. Даже линейку nVidia GeForce 5xxx не слишком сильно осудили за брилинейную фильтрацию, хотя критика, конечно, была. Но nVidia, в то же время, не скрывает использование этой фильтрации. И именно поэтому ATi заслужила большей критики. Также нам не очень понятно, насколько далеко заходит оптимизация ATi, то есть какой возможен минимальный уровень фильтрации, и ограничены ли оптимизации множественным отображением mip-текстур или они касаются чего-то ещё.

Ниже мы приведём официальный ответ ATi на эту проблему:
"Недавно возникли горячие дискуссии о наших алгоритмах трилинейной фильтрации.

Цель трилинейной фильтрации заключается в сглаживании переходов между mip-уровнями. До тех пор, пока эта цель достигается, нельзя говорить о "правильном" или "ошибочном" способе реализации фильтрации.

Мы сделали наш алгоритм фильтрации более интеллектуальным, чтобы увеличить производительность без ущерба качеству изображения. Как обнаружили некоторые обозреватели, между нашей реализацией фильтрации в Radeon 9800XT и Radeon X800 можно показать различия. Однако эти различия могут быть видны только при условии вычитания кадра до и после полученного и усиления результата. Но никто так и не заявил, что различия делают одну реализацию лучше, чем другую.

Наш алгоритм текстурной фильтрации на основе анализа изображения запатентован. Он определяет, насколько один mip-уровень отличается от следующего, и затем реализует нужный уровень фильтрации. То есть оптимизация применяется лишь в особых случаях - в частности, если mip-текстуры созданы с помощью прямоугольной фильтрации. Нетипичные случаи, когда каждая mip-текстура значительно отличается от других, не получают какой-либо оптимизации. Сюда можно отнести такие экстремальные случаи, как цветные mip-текстуры, и именно поэтому тесты с подобными текстурами дают отличающиеся результаты. Мы хотим, чтобы вы ясно понимали: мы не производим какого-либо определения запущенного приложения. Результаты просто показывают использование сложного алгоритма.

Мы рекомендуем пользователям поэкспериментировать с изменением движка качества текстур с положения "Качество/Quality" в "Производительность/Performance" - вы получите значительный прирост производительности без влияния на качество изображения до самого крайнего положения движка, и даже тогда различия будут трудно заметны. Мы уверены, что мы даём игрокам лучшее качество изображения на каждом уровне производительности.

Microsoft действительно установила некоторые стандарты текстурной фильтрации, и процесс сертификации WHQL компании включает расширенные тесты качества изображения для трилинейной фильтрации и множественного отображения mip-текстур. Драйверы CATALYST успешно прошли все эти тесты и, заметим, без применения нами определения запущенного приложения, хотя подобный шаг позволил бы скрыть низкокачественные алгоритмы от тестов.

Наконец, ATi очень серьёзно подходит к качеству изображения, и мы уверены, что устанавливаем новые стандарты качества для всей индустрии. Мы не легко идём на изменения алгоритмов фильтрации. Сначала мы производим множество различных анализов качества изображения. Этот алгоритм уже используется больше года в наших продуктах Radeon 9600, и мы не получили никаких претензий по поводу качества картинки. Если кто-либо обнаружит какие-либо ухудшения качества в результате работы этого алгоритма, то мы предлагаем сразу же сообщить об этом нам. Если проблема действительно существует, то мы её решим".

Назад
Вы читаете страницу 4 из 6
1 2 3 4 5 6
Далее


СОДЕРЖАНИЕ

Обсуждение в Клубе Экспертов THG Обсуждение в Клубе Экспертов THG


РЕКЛАМА
РЕКОМЕНДУЕМ ПРОЧЕСТЬ!

История мейнфреймов: от Harvard Mark I до System z10 EC
Верите вы или нет, но были времена, когда компьютеры занимали целые комнаты. Сегодня вы работаете за небольшим персональным компьютером, но когда-то о таком можно было только мечтать. Предлагаем окунуться в историю и познакомиться с самыми знаковыми мейнфреймами за последние десятилетия.

Пятнадцать процессоров Intel x86, вошедших в историю
Компания Intel выпустила за годы существования немало процессоров x86, начиная с эпохи расцвета ПК, но не все из них оставили незабываемый след в истории. В нашей первой статье цикла мы рассмотрим пятнадцать наиболее любопытных и памятных процессоров Intel, от 8086 до Core 2 Duo.

ССЫЛКИ
Реклама от YouDo
YouDo: https://youdo.com/remont-kompyuterov/, описание.