Версия OpenCL 1.0, опирающаяся на язык программирования Си, была ратифицирована и опубликована организацией по стандартизации Khronos Group. Язык программирования OpenCL, разработанный Apple, позволяет переносить значительную часть обработки с центрального процессора на графический.
Современные графические процессоры, выпускаемые nVidia, ATI (в настоящее время - дочерняя компания AMD) и Intel, по своей сложности не уступают центральным процессорам, а в некоторых случаях и превосходят их. К примеру, новейшая модель ATI Radeon HD 4870 состоит почти из 1 млрд транзисторов - это вдвое больше, чем содержали ее предшественники.
Даже в тех случаях, когда графические процессоры задействованы в отображении гиперреалистичной графики игр-"стрелялок" или в кодировании видео, их ресурсы, как правило, используются далеко не полностью. OpenCL позволит решить эту проблему: благодаря этому языку графические процессоры смогут ускорять работу многих приложений, особенно тех, работа которых может быть разделена на множество более мелких параллельных операций, таких как сложные численные задачи, вывод графики с высоким разрешением и кодирование видео.
По наблюдению аналитика компании Gabriel Consulting Group Дэна Олдса, для таких операций графические процессоры "показывают поразительную скорость". Кодирование и вывод видео высокого разрешения могут выполняться в 40-100 раз быстрее, если приложения реализованы с использованием OpenCL. В приложениях для сферы здравоохранения, например, в обработке снимков магнитно-резонансной томографии и компьютерной аксиальной томографии будет достигнуто такое же ускорение.
"Если сравнить производительность со стандартным компьютером Mac, то некоторым может показаться, что речь идет о суперкомпьютере", - заметил Олдс.
Ян Лао, аналитик компании In-Stat, придерживается такого же мнения. "Это не гипербола, - заметил он. – В тот момент, когда я начинаю использовать OpenCL, я могу с полным правом отнести свой настольный компьютер к категории суперкомпьютеров или серверов младшего и среднего класса".
Прямой выигрыш Apple
По-видимому, именно Apple первой окажется в выигрыше от использования OpenCL, который будет поддерживаться в ожидаемой в скором времени Mac OS X 10.6, получившей кодовое название Snow Leopard.
"Новая версия операционной системы скрывает некоторые сложности OpenCL, в частности необходимость выявлять и загружать отдельные графические драйверы", - сказал Лао, отметив при этом, что компьютерам Mac потребуются специальные графические процессоры nVidia или ATI, для того чтобы задействовать все возможности этой технологии.
Snow Leopard может появиться уже в первом квартале 2009 года, хотя официально в Apple утверждают, что эта операционная система будет выпущена к середине года. Дополнительные подробности могут стать известны во время выставки Macworld Expo, которая состоится в первой половине января.
Олдс не считает, что OpenCL сразу превратит Mac в игровую платформу, несмотря на потенциальные преимущества, которые эта технология дает при рендеринге. Как он считает, OpenCL будет применяться для ускорения видео и графических приложений, используемых специалистами творческих профессий, которые давно работают на Mac.
В то же время Лао предполагает, что OpenCL подстегнет совершенствование платформы Mac. Во-первых, он станет стимулом для разработчиков программного обеспечения переносить свои решения на эту технологию с целью использования возможностей Snow Leopard. А во-вторых, OpenCL может дать столь необходимый толчок к более широкому распространению рабочих станций Mac Pro. Несмотря на то что рабочие станции, такие как Mac Pro, пользуются популярностью у цифровых художников и аниматоров, они давно уже уступили Linux и Windows рынок анимации и рендеринга старшего класса. А из-за своей цены, как заметил Лао, рабочие станции Mac не смогли завоевать сколько-нибудь серьезные позиции на рынках автоматизированного проектирования и инженерии.
Благодаря росту мощности, не требующему дополнительных затрат, который обеспечивает OpenCL, станции Mac Pro могут, по словам Лао, "вернуть Apple в игру и открыть для компании новые рынки".
Что будет с компьютерами под управлением Windows
Microsoft пока не сообщала о намерении формально поддерживать OpenCL в Vista или в своей новой операционной системе Windows 7. Тем не менее, как сказал Лао, это не означает, что для ПК с Windows преимущества, которые дает OpenCL, недоступны. Как сказал Лао, это вполне возможно, если ПК будут оснащены необходимыми графическими процессорами nVidia или ATI, установленными либо на системной плате, либо на дополнительной графической плате, и если приложения OpenCL будут модифицированы таким образом, чтобы они могли работать с драйверами nVidia или ATI.
В Microsoft уже подтвердили, что доработают Windows Vista, PowerPoint 2007, мультимедиа-плеер Silverlight и видеокодировщик Expression так, чтобы они могли работать с драйверами ATI.
Microsoft работает и над DirectX 11, новой версией своей давней библиотеки графических интерфейсов прикладного программирования. По словам Лао, DirectX 11, в частности его компонент Direct3D 11 API, дает программистам примерно одинаковые возможности управления, вне зависимости от того, где выполняется приложение, на центральном процессоре или на графическом.
Разница, по словам Лао, состоит в том, что OpenCL, скорее всего, позволит ускорить значительно более широкий спектр приложений, чем приложения на базе DirectX 11, который и впредь будет использоваться главным образом для увеличения производительности видеоигр.