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


ATI утверждает, что вычислительную мощность графических процессоров можно также использовать в других реализациях, выходящих далеко за рамки индустрии вычислений.
Почему графические процессоры стали столь универсальными? Как поясняет Николай Радовский, специалист компании ATI, индустрия трехмерных игр, с ее бурной динамикой роста и объемами инвестиций, послужила хорошей стартовой площадкой для развития программных и аппаратных технологий, так или иначе с ней связанных. Таким образом, производительность GPU на протяжении последних лет растет темпами, существенно опережающими формулу закона Мура. Г-н Радовский привел следующие цифры: по его данным, абсолютная производительность графических процессоров ATI Radeon последнего поколения, выраженная в GFLOPS (миллиардах операций с плавающей запятой в секунду), на порядок превосходит аналогичный параметр современных двухъядерных CPU Pentium4. Основное различие между этими двумя типами процессоров, препятствующее их прямой взаимозаменяемости, лежит в основополагающих принципах вычислений. Центральные процессоры используют принцип вычислений, основанный на исполнении потока инструкций. Ход вычислений, производимый CPU, по словам г-на Радовского, сравним со звеньями цепи — каждое последующее звено использует для вычислений исходные данные, которые являются результатом вычислений, выполненных в предыдущем звене. В противовес этому принципу, GPU в большей степени обрабатывают данные, а не инструкции. В графический процессор загружается одна конфигурация для всего периода вычислений и происходит параллельная многопоточная обработка массива данных в соответствии с загруженной конфигурацией. Этот принцип вычислений, по словам г-на Радовского, по своей структуре применим не только для обработки графических сцен, но и для просчета физического взаимодействия прорисовываемых тел и множества других вычислительных задач.

Для практической демонстрации альтернативных возможностей GPU производства ATI, компания при поддержке отечественного дистрибутора Compass, провела специальную презентацию с использованием полнофункциональной экспериментальной платформы, собранной под маркой “Гiгабайт”, основу которой составляли двухъядерный процессор Pentium D 840 и три графических адаптера семейства Radeon X1900. Особый интерес в конфигурации платформы вызывало именно нечетное количество видеоадаптеров — в классических, применяемых сегодня, многопроцессорных GPU-архитектурах (SLI и Crossfire) используется 2 или 4 адаптера, которые симметрично делят между собой нагрузку по просчету сцены. Как пояснил г-н Радовский, в представленной конфигурации два процессора задействованы в традиционной схеме Crossfire, в то время как третий адаптер выполняет функции выделенного физического сопроцессора.


Сравнительная динамика роста производительности GPU и CPU (по данным ATI)
Сравнительная динамика роста производительности GPU и CPU (по данным ATI)

Идея использования дополнительных чипов для просчета физического взаимодействия объектов впервые была реализована в чипе Ageia PhysX (см. PCWeek/UE №3/2005 год, стр. 13 — прим. ред.). До появления физического сопроцессора Ageia PhysX все вычисления, связанные с физическим взаимодействием объектов (столкновения, отражения, разрушения и деформации объектов, взаимное влияние тел, действие и противодействие ньютоновских сил) ложились на плечи центрального процессора. Сама концепция использования выделенного чипа для вычисления этих задач призвана, в первую очередь, “разгрузить” CPU от несвойственной ему работы и тем самым повысить общую производительность трехмерных приложений. Первые коммерческие реализации этого принципа появились весной этого года, когда компания Asus начала выпуски видеоадаптеров, на которых в пределах одной платы были установлены два чипа — GPU и физический сопроцессор Ageia. Компания ATI заявляет, что чип PhysX выполнил свою миссию — открыл в индустрии новое направление выделенных вспомогательных процессоров для “физики”, но современные GPU семейства Radeon на сегодняшний день многократно превышают возможности и быстродействие чипа компании Ageia. В некоторых тестах, к примеру, в определении столкновения тел по принципу sphere-to-sphere, чип Radeon X1900 XTX показывает быстродействие в 9 раз более высокое, чем выделенный физический сопроцессор Ageia PhysX. Этот факт, по словам г-на Радовского, открывает дорогу для начала нового витка развития индустрии трехмерных приложений — разработки асимметричных конфигураций, где для просчета физики используется дополнительный чип GPU, а не специализированный процессор. Г-н Радовский особо подчеркнул преимущества асимметричных конфигураций, которое помогает экономить на начальных стадиях инвестиций и продлевать срок моральной жизни аппаратного обеспечения. К примеру, пользователь имеет возможность на начальной стадии приобрести одну видеокарту среднего ценового диапазона, которая будет просчитывать только графику или графику с физикой одновременно. В будущем пользователь может модернизировать видеоподсистему, установив один или два (в режиме Crossfire) более мощных видеоадаптера для просчета графики, а старому видеоадаптеру назначить функцию выделенного физического сопроцессора.


Принимая во внимание все перечисленное, возникает очевидный вопрос — как альтернативные возможности GPU могут быть применены в корпоративном сегменте рынка? По словам г-на Радовского, практика использования GPU в коммерческих вычислениях пока только начинается, но успешных прецедентов уже достаточно. Независимый консорциум GPGPU (General-Purpose Computing on Graphical Processing Units — вычисления широкого применения на графических процессорах) выступает в качестве генерального идеолога и разработчика общих стратегий и методик по применению GPU на службе разнообразных корпоративных проектов. На сайте консорциума www.GPGPU.org опубликованы рекомендации по наладке и оптимизации вычислений, истории успешного применения различных графических чипов в таких направлениях как распознание речи, математическое моделирование физики веществ и сред, поиски эффективных алгоритмов компрессии данных, различные вычисления в области медицины и биологии и пр. Наиболее перспективным приложением, где применение GPU по мнению г-на Радовского сможет достичь наиболее ощутимого эффекта уже в ближайшем будущем, является распознание речи, что особенно актуально для стран Азии. Как известно, языки азиатских стран, которые насчитывают тысячи печатных символов, до сих пор заставляют искать альтернативные способы машинного ввода текстов, наиболее эффективным из которых считается распознание речи.

Главным сдерживающим фактором, препятствующим выходу GPU на авансцену вычислений общего назначения, г-н Радовский называет тот факт, что традиционные среды разработки ПО и культура программирования неразрывно связаны с архитектурой и принципом действия современных CPU. “В прошлом году появились в продаже первые двухъядерные CPU, но до сих пор очень малый процент прикладного ПО оптимизирован под многопоточность. Заставить программистов распараллеливать процессы хотя бы под два аппаратных потока — уже крайне сложная задача, чего уж говорить о программировании под GPU, которое изначальное подразумевает обработку множества параллельных потоков”, — комментирует ситуацию г-н Радовский. Компания ATI, традиционной сферой деятельности которой является индустрия развлечений, считает, что наиболее востребованной и быстроокупаемой реализацией альтернативных возможностей GPU будут именно трехмерные игры. Однако, в случае возникновения уверенного спроса на вычисления общего применения с использованием GPU со стороны коммерческих организаций, ATI не исключает создания специализированных решений для этих целей.