Size: a a a

WebAssembly — русскоговорящее сообщество

2021 May 04

К

Константин in WebAssembly — русскоговорящее сообщество
Скажите мне, а v8 как-нибудь бустит конструкции типа?:

for (let i = 0; i < 1000; i ++) {
   result[i] = source [i] * a + b;
}
источник

К

Константин in WebAssembly — русскоговорящее сообщество
(Оба массива -  типизированный массив, a, b строго числа. Ну те без всяких NaN, и тд)
источник

К

Константин in WebAssembly — русскоговорящее сообщество
А то у меня операции там на такой штуке ~ 300, а массивчики по 10к значений.
И работает около 0.5 секунды
источник

M

MaxGraey in WebAssembly — русскоговорящее сообщество
Судя по колличеству итераций это вряд ли попадет в turbofan и скорее всего будет выполняться в Ignition, если конечно функция с этим кусоком не прогрееться
источник

К

Константин in WebAssembly — русскоговорящее сообщество
Ну она довольно частая, это одна из фабрик по генерации текста.
Размещает глифы из таблицы в общий буффер с применением scale + shift.
источник

К

Константин in WebAssembly — русскоговорящее сообщество
еще смущает что для 1 элемента он выполняется почему-то дольше (310 и 95) в 3 раза.
Я думаю это никак не вылечить, хотя у меня тесселяция этих глифов в васм в разы быстрее чем копия =)

Вывод - отдам на васм весь билд текста, где SharedBuffer есть - тем повезло
источник

К

Константин in WebAssembly — русскоговорящее сообщество
гребаный COEP
источник

M

MaxGraey in WebAssembly — русскоговорящее сообщество
wasmtime (clanelift) обзаведется новым распределителем регистров портированным из IonMonkey
https://github.com/bytecodealliance/regalloc2/pull/1#issue-614843819

Пока не ясно увеличит ли это производительность, но скорость компиляции точно увеличило. Работа над интеграцией ведеться в этой ветке:
https://github.com/cfallin/wasmtime/tree/regalloc2
источник

CY

Czji Yomo in WebAssembly — русскоговорящее сообщество
Всем привет!
Приглашаем в эту субботу в 11 утра по мск на митап про PizzaScript #3 - WebAssembly as a Compilation Target - Overview.

We focus this time on a compilation target for programming languages. For our educational project PizzaScript, 🍕we’ve chosen WebAssembly because it is an awesome technology supported in main modern browsers and multiple environments. First, we need to understand what is WebAssembly, and we will overview the history, key features, and benefits of the technology. We'll explore interesting examples and problems we might be facing while implementing PizzaScript's compilation phase.

Внимание, контент будет на английском 🏴󠁧󠁢󠁥󠁮󠁧󠁿

https://www.eventbrite.co.uk/e/pizzascript-3-webassembly-as-a-compilation-target-overview-tickets-153222355189?aff=telegram
источник
2021 May 06

DB

Dmitry Bezhetskov in WebAssembly — русскоговорящее сообщество
вчера на hackfest Даниэль сказал что binaryen поддерживает GC, что он имел в виду? Как это работает? Я что-то выпал из темы и теперь ничего уже не понятно, @maxgraey можешь разъяснить?
источник

M

MaxGraey in WebAssembly — русскоговорящее сообщество
Поддерживает, но это пока в разработке. Кроме того еще много оптимизаций необходимо рподелать
источник

DB

Dmitry Bezhetskov in WebAssembly — русскоговорящее сообщество
поддерживает пропозал-gc, struct, array? или реализует сам gc?
источник

M

MaxGraey in WebAssembly — русскоговорящее сообщество
Ну то есть binaryen уже готов для wasm GC, по крайней мере для экспериментов. И кое кто уже экспериментирует:
Java:
https://github.com/WebAssembly/gc/issues/208
https://github.com/WebAssembly/gc/issues/207

Dart:
https://github.com/WebAssembly/gc/issues/209
источник

M

MaxGraey in WebAssembly — русскоговорящее сообщество
wasm GC proposal
источник

DB

Dmitry Bezhetskov in WebAssembly — русскоговорящее сообщество
ага, спасибо
источник

DB

Dmitry Bezhetskov in WebAssembly — русскоговорящее сообщество
на самом деле я вчера не очень понял почему именно Java, ну т.е. кому вообще сдалась Java в браузере, может кто-то знает почему это вообще делают?
источник

AT

Alexander Tchitchigi... in WebAssembly — русскоговорящее сообщество
Потому что могут! 😂
источник

AT

Alexander Tchitchigi... in WebAssembly — русскоговорящее сообщество
На самом деле, GWT ещё местами жив, а ещё есть Vaadin и, наверняка, другие.
источник

DB

Dmitry Bezhetskov in WebAssembly — русскоговорящее сообщество
мне просто кажется что мы где-то не там свернули и я боюсь что wasm канет в небытие из-за таких решений
источник

DB

Dmitry Bezhetskov in WebAssembly — русскоговорящее сообщество
как я понимаю gc необходим для работы с web-api и это очень благая цель, а java лишь как эксперимент
источник