Для Firefox представлен API для задействования в web-приложениях инструкций SIMD

В ночных сборках Firefox добавлена реализация API JS-SIMD (Single Instruction, Multiple Data), позволяющего организовать распараллеливание циклов обработки данных c использованием инструкций SIMD. API JS-SIMD пока доступен только для web-приложений, использующих расширение Asm.js с реализацией низкоуровневого подмножества языка JavaScript со строгой типизацией. Реализация API JS-SIMD не привязана к специфичным реализациям SIMD и может использовать как SIMD-инструкции Intel, так и ARM. В дальнейшем планируется предоставить возможность использования API JS-SIMD не только для Asm.js, но и для обычного JavaScript-кода. Кроме того ведётся работа по интеграции поддержки JS-SIMD в компилятор Emscripten, что позволит транслировать в JavaScript применяемые в программах на C/C++ механизмы SIMD. Для наглядной оценки различий в производительности выполнения использующих интенсивные вычисления web-приложений, с задействованием SIMD и без него, подготовлена демонстрационная страница. Например, при построении множества Мандельброта с использованием SIMD наблюдается четырёхкратное увеличение производительности. В некоторых других тестах скорость возрастает до 10 раз.

©  OpenNet