River Trail — параллельный JavaScript от Intel


Пока Google думает о замене JavaScript на Dart, а Microsoft работает над тем, чтобы признать его первоклассным языком, Intel усердно работает над тем, чтобы JavaScript работал усерднее.

River Trail — это параллельный движок JavaScript с открытым исходным кодом.

Почему Intel?

Ну, у них много многоядерных процессоров, и River Trail их использует. Он расширяет JavaScript с помощью нескольких простых инструкций параллельного обмена данными, но в результате все равно остается узнаваемый JavaScript. В частности, он работает с HTML5, Canvas и WebGL. Он использует OpenCL в качестве промежуточного языка, поэтому он может работать на любом оборудовании, а не только на Intel. Брендан Эйх, изобретатель JavaScript, присутствовал на презентации River Trail на форуме разработчиков Intel и заявил, что будет лоббировать его включение в стандарт ECMAScript.

Подход к параллельному программированию довольно стандартен с использованием параллельных структур данных. Один новый объект ParallelArray обеспечивает все необходимое новое поведение. Вы можете преобразовать стандартный массив, включая массив пикселей Canvas, в ParallelArray или создать новый объект, используя необработанные данные. Когда у вас есть ParallelArray, вы можете работать с ним, используя новые параллельные методы, такие как сопоставление, сокращение, объединение, фильтрация и т. Д. Вся синхронизация и блокировка выполняются автоматически.

WebGL привносит 3D в браузер, но без параллельной обработки даже самый быстрый последовательный движок JavaScript не сможет создавать отличную графику. При параллельной реализации возможно все и вся. Демонстрационное приложение в видео ниже демонстрирует физическое моделирование с 4000 тел с использованием WebGL, и разница между последовательной и восьмиъядерной реализациями имеет огромное значение. Серийная версия движется со скоростью 3 кадра в секунду, но параллельная версия выглядит как анимация со скоростью 45 кадров в секунду.

Вы можете увидеть River Trail в действии в приложении, которое ближе к 3D-игре, на следующем видео, но качество звука оставляет желать лучшего.

Если вы воодушевлены, вы можете скачать плагин для браузера Firefox и начать писать параллельный JavaScript уже сегодня.


Добавить комментарий