Для WebKit представлена реализация технологии WebCL

4 июля 2011 года

Группа Khronos, развивающая технологии связанные с открытым графическим стандартом OpenGL, анонсировала создание прототипа с реализацией находящейся в разработке спецификации WebCL для браузерного движка WebKit. Код прототипа создан силами компании Samsung и открыт в рамках лицензии BSD. Следует отметить, что два месяца назад компанией Nokia уже был представлен первый прототип WebCL, реализованный в виде дополнения для браузера Firefox.

В настоящий момент работа над спецификацией WebCL еще не завершена и доступные реализации для Firefox и WebKit в первую очередь предназначены для ознакомления и экспериментов. WebCL описывает JavaScript-интерфейс к стандарту OpenCL (Open Computing Language), который определяет API и расширения языка Си для параллельного программирования, включая возможность задействования для решения вычислительных задач GPU видеокарт и эффективное использование возможностей многоядерных CPU. WebCL и OpenCL не ограничены одной акселерацией силами GPU, хотя это, бесспорно, одно из самых интересных применений, и могут обеспечить ускорение путем использования любого OpenCL-совместимого вычислительного модуля, например, обычного многоядерного CPU.

В качестве демонстрации возможностей прототипа WebCL для WebKit компания Samsung подготовила демонстрационное web-приложение в котором WebCL используется для расчета гравитационного взаимодействия N-объектов, состояние которых отображается на трехмерной сцене, построенной с помощью WebGL. Для сравнения, вынесенные на плечи WebCL вычислительные задачи продублированы на чистом JavaScript. Измерение производительности показало, что использование WebCL обеспечило стократное ускорение по сравнению с вычислениями на обычном JavaScript. Реализация WebCL для WebKit пока работает только на платформе Mac OS X и требует наличие видеокарты NVIDIA, поддерживающей спецификацию OpenCL 1.0. В ближайшее время число OpenCL-устройств и программных платформ планируется увеличить.

С точки зрения разработчика, дизайн и реализация WebCL очень близки к WebGL, который определяет способ формирования аппаратно ускоренного 3D-контента при помощи HTML5-конструкций "Canvas" и JavaScript-интерфейса к OpenGL API. Типичное WebCL-приложение начинается с создания объекта через вызов WebCLComputeContext (в случае WebGL вызывается WebGLRenderingContext). В дальнейшем созданный объект выступат в роли связующего звена для обращения к API OpenCL, примерно так же как осуществляется доступ к API OpenGL при использовании WebGL.

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

Источники

править
 
 
Creative Commons
Эта статья содержит материалы из статьи «Для WebKit представлена реализация технологии WebCL», опубликованной OpenNET и распространяющейся на условиях лицензии Creative Commons Attribution (CC BY) — указание автора, источник и лицензию.
 
Эта статья загружена автоматически ботом NewsBots в архив и ещё не проверялась редакторами Викиновостей.
Любой участник может оформить статью: добавить иллюстрации, викифицировать, заполнить шаблоны и добавить категории.
Любой редактор может снять этот шаблон после оформления и проверки.

Комментарии

Викиновости и Wikimedia Foundation не несут ответственности за любые материалы и точки зрения, находящиеся на странице и в разделе комментариев.