![]() |
Для авторов Архив рассылки |
Русский English | ||
![]() |
Путь: Panvasoft / Блог / nVidia GeForce 8800: масштабируемая архитектура и DirectX 10 |
За последние годы мы привыкли к тому, что в индустрии графических процессоров ничего принципиально нового не происходит: растёт число транзисторов, плавно повышается производительность, появляются системы для параллельной работы двух и четырёх видеокарт. Однако презентация nVidia GeForce 8800 (кодовое название G80) - явление совсем иного порядка. Во-первых, это первый в мире графический ускоритель, полностью поддерживающий новый программный интерфейс DirectX 10, на базе которого строится графика в новейшей операционной системе Windows Vista. Во-вторых, этот видеочип построен на базе принципиально новой архитектуры, чем все графические процессоры последних лет, и главное достоинство этой архитектуры - практически неограниченные возможности масштабируемости. Этот материал посвящен, прежде всего, именно архитектуре GeForce 8800, а также новым технологиям, реализованным в G80, который первые независимые тестировщики уже успели назвать самым высокопроизводительным "настольным" графическим ускорителем в мире. DirectX 10Начнём с первого несомненного достоинства GeForce 8800, на которое делают упор маркетологи nVidia - с программного интерфейса DirectX 10. Прежде всего, что такое "программный интерфейс" и зачем он нужен. Программный интерфейс или API (от английских слов Application Programming Interface - "интерфейс для программирования приложений") представляет собой прикладную программную библиотеку, выступающую в роли стандартного связующего элемента между прикладными программами, например, играми, и низкоуровневыми командами драйвера графического ускорителя. Помимо обеспечения максимальной совместимости различных приложений и систем команд графических процессоров, API позволяет программно эмулировать отдельные функции, не поддерживаемые видеокартой аппаратно, что позволяет гарантировать работоспособность с современными системами даже самых недорогих видеочипов. Проще говоря, программный интерфейс - это именно то, что помогает программистам воссоздать на мониторе задуманную художниками красивую трёхмерную картинку, не обращаясь к средствам низкоуровневого программирования под конкретное "железо". Что же стоит ожидать от DirectX 10, особенно если учесть, что самые продвинутые программисты, занимающиеся компьютерными играми, ещё только-только освоили возможности DirectX 9, да и то не все? Кстати, благодаря тому, что в DirectX 10 предусмотрена поддержка всех функций DirectX 9, а также унифицированная модель шейдеров, можно предположить, что уже изученные возможности предыдущего программного интерфейса будут реализованы на все сто процентов. Прежде всего, в DirectX 10 уменьшено число передаваемых вызовов прорисовки (draw calls), изменяющих состояние процессора, из-за чего программный интерфейс девятой версии мог стать фактором, ограничивающим производительность видеосистемы. В новом API расширено число объектов состояния, которые хранят всю информацию для данной конкретной ступени конвейера - всего их пять: InputLayout (буфер входящей вершинной информации), Sampler (сэмплер), Rasterizer (растровый процессор), DepthStencil (модуль глубинных текстур теней) и Blend (модуль смешивания). В этих объектах может быстро изменяться вся информация о состоянии без необходимости отправки множественных вызовов. Кроме того, появились так называемые постоянные буферы для хранения данных о шейдерах: каждая шейдерная программа имеет теперь доступ к 16 буферам из 4096 постоянных, в то время как в DirectX 9 число регистров не могло превышать 256. При этом каждый буфер обновляется одним вызовом прорисовки, что позволяет снизить нагрузку при обработке информации шейдерной программы. Для хранения шейдерных данных доступны и 128 текстурных массивов, в каждом из которых можно хранить 512 текстур одного размера. Один чрезвычайно интересный элемент в DirectX 10 носит название "view", что в этом случае можно понимать как "точка зрения": благодаря ему одни и те же данные могут интерпретироваться по-разному. К примеру, пиксельный шейдер может использовать вершинные данные для рендеринга текстуры, а затем вершинный шейдер, "взглянув на них со своей стороны", отправит их в вершинный буфер. Такие "точки зрения" позволяют разработчикам ПО оптимальным образом загрузить конвейеры и, тем самым, повысить скорость формирования изображения. Команда DrawAuto позволяет перерисовывать объект без обращения к центральному процессору. Эта команда, а также технология предикативного рендеринга позволяет существенно снизить влияние большого числа вызовов прорисовки на общий уровень производительности, что происходило в DirectX 9. Наконец, в DirectX 10 вместо традиционного строго последовательного конвейера применена система потокового вывода, смысл которой заключается в том, что данные шейдеров могут через специальный потоковый выход (stream output) передаваться через буфер для последующей обработки - это позволяет не дожидаться окончания полной обработки шейдера, как это принято в обычном конвейере, и повысить производительность. Схема такого конвейера отлично понятна из слайда, предоставленного nVidia:
![]()
Помимо вершинных и пиксельных шейдеров, в DirectX 10 появились и так называемые геометрические. Они дают возможность работать с геометрическими операциями, к примеру, целиком обрабатывать линии, что, по сравнению с вершинными шейдерами, описывающими лишь вершины, обеспечивает существенный уровень производительности наряду с повышением реалистичности изображения и снижением нагрузки на процессор. Как подчёркивают в nVidia, геометрические шейдеры впервые в истории позволят графическим процессорам самостоятельно генерировать данные, а не только обрабатывать существующие. Отличия четвёртой версии шейдеров от третьей наглядно представлены в таблице:
![]()
Безусловно, всех особенностей DirectX 10 в коротком обзоре мы коснуться не можем, но главные из них стоит выделить особо: это система потоковой обработки данных; оптимизация использования вычислительных ресурсов за счёт снижения числа вызовов прорисовки и снижения их влияния на общую производительность, а также ввода геометрических шейдеров; увеличение и унификация числа инструкций. Архитектура G80Графический процессор с кодовым названием G80 - микрочип, полностью поддерживающий DirectX 10, и это не могло не сказаться на его архитектуре. Прежде всего, этот чип позволяет обрабатывать любые шейдеры на одних и тех же вычислительных модулях. Иными словами, блоки обработки в новом процессоре унифицированы, что соответствует философии DirectX 10, согласно которой система потокового вывода позволяет неоднократно обрабатывать данные с одного модуля другим. Взглянем на блок-схему процессора G80:
![]()
Микросхема состоит из 128 процессоров, объединённых в 8 больших блоков, в каждом из которых содержится по 16 блоков целочисленных вычислений (или арифметико-логического процессора - ALU) - они выделены зелёным цветом и именуются здесь как SP - Stream Processors, то есть "потоковые процессоры". При этом с каждым из восьми блоков работают по 4 блока текстурирования (или текстурного процессора - TMU), состоящие из 4 модулей адресации (TA) и восьми модулей фильтрации (TF) - они на схеме синего цвета. Каждый из 8 блоков оснащён кэш-памятью первого уровня. Блоки целочисленных вычислений не векторные, а скалярные, при этом они унифицированы, что позволяет при необходимости использовать для любых типов вычислений любые свободные процессоры. Такая схема позволяет если не полностью исключить, то свести к минимуму ситуации, когда блоки обработки пиксельных шейдеров простаивают, в то время как блоки вершинные шейдеров не справляются с нагрузкой. Кроме того, чип оснащён 6 блоками растеризации (ROP), каждый из которых способен обрабатывать 4 пикселя (или 16 субпикселей, как показано на схеме) за такт, что означает возможность обработки всего 24 пикселей за один такт в цвете и с Z-буфером (т.е. с данными о глубине). При работе только с Z-буфером специальная технология обеспечивает обработку до 192 сэмплов за такт, при условии, что один сэмпл соответствует одному пикселю. При включении 4х полноэкранного сглаживания возможна обработка в Z-буфере до 48 пикселей за такт. Рядом с блоками растеризации размешена кэш-память второго уровня (оранжевого цвета). На схеме также выделены шесть блоков графической памяти (он же - кадровый буфер или FB), каждый из которых имеет 64-разрядный интерфейс, что в сумме даёт 384-битную ширину шины памяти. В результате применения столь широкой шины пропускная способность видеопамяти достигает 86,3 Гб/с. Процессор GeForce 8800 GTX рассчитан на работу с 768 Мб видеопамяти типа GDDR3 с нормативной тактовой частотой 900 МГц (эффективная частота - 1800 МГц). Поддерживается также память типов DDR1, DDR2, DDR3 и GDDR4. Кстати, в nVidia воспользовались именно памятью типа GDDR3, а не новейшей GDDR4 потому, что при гораздо более высокой цене она практически не даёт прироста производительности по сравнению с уже весьма распространённой "третьей" GDDR. Сверху на схеме серыми прямоугольниками представлены управляющие блоки, которые, несмотря на подписи, фактически могут являться универсальными, о чём свидетельствует их взаимосвязь и назначение. Непосредственно с восемью большими вычислительными блоками взаимодействуют модули вершинных, геометрических и пиксельных потоков; модуль Setup/Raster/ZCull отвечает за растеризацию треугольников в пиксели, а модуль Input Assembler фильтрует и "собирает" надлежащим образом поступающие для обработки в графический процессор данные. На схеме прекрасно видно, что графический процессор G80 отлично масштабируем, ведь по сути любой из восьми модулей можно попросту убрать, или добавить к имеющимся ещё вычислительных модулей без необходимости внесения каких-либо изменений в саму архитектуру всего процессора. Если же учесть унифицированность конвейеров и улучшенный диспетчер ветвлений GigaThread, обеспечивающий одновременное вычисление нескольких ветвлений шейдера, то можно сказать, что новый полностью готов практически к любым условиям рендеринга, при условии, разумеется, соразмерности вычислительной мощности возлагаемым задачам. Технологии G80Кратко опишем фирменные технологии, без которых G80 не был бы самим собой. Прежде всего, это встроенный в чип движок Lumenex, отвечающий за сглаживание, анизотропную фильтрацию и вывод картинки с широким динамическим диапазоном (HDR). Благодаря Lumenex владелец GeForce 8800 GTX доступ к новой технологии сглаживания 16х Coverage Sampling Antialiasing (CSAA) с поддержкой четырёх профилей 8x, 8xQ, 16x и 16xQ, анизотропной фильтрации с качеством 16х вне зависимости от угла обзора, 16- и 32-разрядной фильтрации текстур с плавающей запятой и полностью прямоугольному (т.е. без искажений плоскости) 128-разрядному режиму HDR, работающему одновременно со всеми перечисленными выше функциями. Технология Quantum Effects призвана имитировать множество новых физических эффектов. Как утверждают в nVidia, GeForce 8800 со своими 128 потоковыми процессорами обеспечивет достаточный уровень производительность для вычислений с плавающей запятой, создавая вполне реалистичную имитацию эффекты дыма, огня, взрывов, движения волос, меха или течения воды. Технология Early-Z обеспечивает фильтрацию невидимых на экране пикселей, обработка которых всё равно обычно осуществлялась видеопроцессором и отнимала немало вычислительных ресурсов, ещё до попадания данных в блок растеризации (ROP), в Z-буфере. Подобная технология применялась ещё в GeForce 6xхх, однако, как утверждают в nVidia, по скорости фильтрации G80 вчетверо превосходит GeForce 7900GTX. В чипе реализованы технологии высококачественного воспроизведения видео PureVideo и PureVideo HD, при этом PureVideo HD поддерживает форматы высокого разрешения H.264, VC-1, WMV/WMV-HD и MPEG-2 HD, а PureVideo - обычные видеоформаты WMV и MPEG-2. Все графические ускорители семейства GeForce 8800 поддерживают систему зашиты контента HDCP для видео высокого разрешения, реализованную в форматах нового поколения Blu-ray Disc и HD DVD, что позволяет воспроизводить зашифрованное видео на совместимых с этой системой мониторах. Все карты GeForce 8800 поддерживают технологию Extreme High Definition Gaming (XHD), которая позволяет играть в трёхмерные игры на широкоэкранных мониторах с разрешением вплоть до до 2560х1600 пикселей, что в семь раз превосходит качество картинки высокого разрешения телестандарта 1080i с чересстрочной развёрткой и вдвое - стандарта 1080p с прогрессивной развёрткой. Чтобы воспользоваться этим режимом, необходимо подключать монитор через двойной цифровой видеоинтерфейс Dual-Link DVI. Краткие технические характеристики G80:
Видеокарты серии GeForce 8800Пока на рынке официально представлены две карты серии 8800 - топовая GeForce 8800 GTX и её младшая сестра GeForce 8800 GTS, которые отличаются как самими процессорами (в старшем 8, а в младшем - 6 больших вычислительных блоков), так и шиной и объёмом памяти (см. спецификации). Как видим, уже при анонсе nVidia продемонстрировала возможности масштабирования новой унифицированной архитектуры. Неожиданное новшество - выделение интерфейсов из общего чипа (который получился, к слову, весьма внушительных размеров) в отдельную микросхему NVIO. Референсные карты уже традиционно для высокопроизводительных моделей большие по габаритам, "двухэтажны" и имеют мощную систему охлаждения, так что чип NVIO не слишком бросается в глаза, тем более что теоретически такое дискретное решение способно свести к минимуму возможные помехи и наводки.
![]()
Карта с интерфейсом PCI Express x16 снабжена двумя дополнительными разъёмами питания (8- и 6-контактным), двумя цифровыми видеовыходами DVI и выходом S-Video. Разумеется, на карточках предусмотрены разъёмы для подключения в режиме SLI. ЗаключениеПервые независимые тесты, которые несложно найти в интернете, показали, что GeForce 8800 GTX с внушительным перевесом выигрывает как у своих предшественниц из серии GeForce 7900 и 7950, так и у непосредственного конкурента ATI Radeon X1950 XTX. Очевидно, что ATI, которая не так давно полностью перешла во владение AMD, будет непросто отвоёвывать место в ряду производителей "самых-самых" графических процессоров. В несомненном активе G80 - первая в мире поддержка программного интерфейса DirectX 10, разработанного для операционной системы Windows Vista и унифицированная потоковая архитектура. С другой стороны, у ATI есть время проанализировать возможные ошибки nVidia (а они не может не быть, тем более у модели принципиально нового типа) и выпустить более привлекательный для потребителя продукт. А пока можно просто поздравить nVidia с удачным дебютом нового семейства графических процессоров и пожелать, чтобы столь мощные решения как можно быстрее стали бы доступны простым любителям компьютерных игр.
Категория: Железо
Источник: computerra.ru Опубликовал: Feeder, Дата: 28.11.2006, Просмотров сегодня: 1, Просмотров всего: 4709, Рейтинг: ![]() ![]() ![]() ![]() ![]() Расскажи друзьям: Еще статьи на угад: Установка на WD TV Live! прошивки с расширением WDLXTV Intel представила USB 3.0 Чего ждут от iPhone 3G? OEM-производители потихоньку начали выпускать компьютеры с CableCard HDTV iPod nano второго поколения Новый iPhone 3G аннонсирован! Всего 199$ Интервью с Кейта Иида из Nvidia о DirectX 10 Ваши комментарии:
|
|
![]() |
Приветствуем вас! Хотим предложить вам наши услуги и обсудить перспективы сотрудничества. Откликнитесь!
Думали ли вы, что ваши клиенты читают сообщения так же, как и вы? Наши рассылки по формам обратной связи помогут вам доставить свои предложения непосредственно в руки вашей целевой аудитории. Подключайтесь сейчас и наблюдайте за результатами!
Благодарим вас за интерес, проявленный к нашему предложению. Пожалуйста, посетите наш сайт для получения более детальной информации или передайте это предложение вашему руководителю. Желаем всем вам больших успехов в делах!
Мы готовы помочь: Сайт: http://formsait.tilda.ws Почта: marketing.trafik@mail.ru
"Рассылки по веб-формам: надежный способ удержания клиентов!"