Size: a a a

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

2019 December 19

M

MaxGraey in WebAssembly — русскоговорящее сообщество
то есть атомики будут просто игнорироваться, а вот atomic.notify будет выбрасывать исключение если это выполняется в среде не поддерживающей многопоточность или если это выполняется над обычной (не разделяемой) памятью
источник

C

Constantine in WebAssembly — русскоговорящее сообщество
Ҫѐҏӗѫӑ Ҹҋ 🤖
референсная имплементация интерпретатора на OCaml
А почему именно OCaml ?
источник

C

Constantine in WebAssembly — русскоговорящее сообщество
Ҫѐҏӗѫӑ Ҹҋ 🤖
референсный интерпретатор вазма тоже на OCaml
🤔
источник

R

Rustam in WebAssembly — русскоговорящее сообщество
Constantine
все мне интересное я выделил жирным, а это так к слову
по Deno тоже есть
источник

AT

Alexander Tchitchigin in WebAssembly — русскоговорящее сообщество
Constantine
А почему именно OCaml ?
High-level garbage-collected language with ADT and pattern matching plus very decent performance. 🤷‍♀
источник

M

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

ҪҸ

Ҫѐҏӗѫӑ Ҹҋ 🤖 in WebAssembly — русскоговорящее сообщество
Ҫѐҏӗѫӑ Ҹҋ 🤖
Аарон ушел из wasmer?
все еще там, на митинге сказал, что представляет wasmer
источник

ҪҸ

Ҫѐҏӗѫӑ Ҹҋ 🤖 in WebAssembly — русскоговорящее сообщество
источник
2019 December 20

ҪҸ

Ҫѐҏӗѫӑ Ҹҋ 🤖 in WebAssembly — русскоговорящее сообщество
блин, вчера ж был interface types митинг 😑
источник

M

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

DM

Dmitry M in WebAssembly — русскоговорящее сообщество
Того что есть достаточно, что бы рисовать в webgl с частотой 60fls
источник

P🛸

Pavel 🛸 in WebAssembly — русскоговорящее сообщество
Наконец-то, оно как будто сломано было.
источник

S

Safort in WebAssembly — русскоговорящее сообщество
Dmitry M
Того что есть достаточно, что бы рисовать в webgl с частотой 60fls
Хорошо, тогда попросим их больше не оптимизировать.
источник
2019 December 21

M

MaxGraey in WebAssembly — русскоговорящее сообщество
Помните я говорил про 3x если использовать SIMD в новом wasm бэкенде для tfjs? Так вот, это подтверждено практически + небольшой бонус в еще +50% если qfma использовать:
https://twitter.com/nsthorat/status/1208410035639992321
источник
2019 December 22

M

MaxGraey in WebAssembly — русскоговорящее сообщество
Я кажется понял, почему команда Dart-а не хочет в WebAssembly ссылаясь мол wasm еще нестабилен и вообще нам и так хорошо =) Но настоящая причина в том, что Dart AOT блин медленее чем даже JIT вариант. Иногда аж в 16 раз!

https://benchmarksgame-team.pages.debian.net/benchmarksgame/fastest/dart-dartaot.html
источник

AT

Alexander Tchitchigin in WebAssembly — русскоговорящее сообщество
MaxGraey
Я кажется понял, почему команда Dart-а не хочет в WebAssembly ссылаясь мол wasm еще нестабилен и вообще нам и так хорошо =) Но настоящая причина в том, что Dart AOT блин медленее чем даже JIT вариант. Иногда аж в 16 раз!

https://benchmarksgame-team.pages.debian.net/benchmarksgame/fastest/dart-dartaot.html
Так это не новость. В особенности - для разработчиков Dart. 😊
Несмотря на обязательную теперь статическую типизацию, Dart - очень динамический язык, поэтому AOT расставляет проверки и прочие механизмы, которые JIT спекулятивно выкидывает. AOT вообще только из-за iOS и сделали.
Я одного не могу понять - при чём тут WASM? 😄
источник

Б

Богдан in WebAssembly — русскоговорящее сообщество
MaxGraey
Я кажется понял, почему команда Dart-а не хочет в WebAssembly ссылаясь мол wasm еще нестабилен и вообще нам и так хорошо =) Но настоящая причина в том, что Dart AOT блин медленее чем даже JIT вариант. Иногда аж в 16 раз!

https://benchmarksgame-team.pages.debian.net/benchmarksgame/fastest/dart-dartaot.html
а у wasm-а разве нет инструкций для выполнения сгенерированного кода подобно тому как в js есть Function(..) ? Если нет то wasm это действительно преграда для jit-языков но с другой стороны можно ведь прокинуть интерфейс jit-а через js - со стороны wasm-а будет отсылаться запрос к js и уже через js будет происходить компиляция и выполнение нового wasm-модуля, на выходе будем иметь тот же jit, разве нет?
источник

AT

Alexander Tchitchigin in WebAssembly — русскоговорящее сообщество
Богдан
а у wasm-а разве нет инструкций для выполнения сгенерированного кода подобно тому как в js есть Function(..) ? Если нет то wasm это действительно преграда для jit-языков но с другой стороны можно ведь прокинуть интерфейс jit-а через js - со стороны wasm-а будет отсылаться запрос к js и уже через js будет происходить компиляция и выполнение нового wasm-модуля, на выходе будем иметь тот же jit, разве нет?
Пожалуй, только мееееедленно. 😂
Кроме того, зачем, если у JS и так есть JIT?
источник

AT

Alexander Tchitchigin in WebAssembly — русскоговорящее сообщество
Богдан
а у wasm-а разве нет инструкций для выполнения сгенерированного кода подобно тому как в js есть Function(..) ? Если нет то wasm это действительно преграда для jit-языков но с другой стороны можно ведь прокинуть интерфейс jit-а через js - со стороны wasm-а будет отсылаться запрос к js и уже через js будет происходить компиляция и выполнение нового wasm-модуля, на выходе будем иметь тот же jit, разве нет?
Особенно интересно в такой схеме выполнять деоптимизации. 😉
источник

M

MaxGraey in WebAssembly — русскоговорящее сообщество
Alexander Tchitchigin
Так это не новость. В особенности - для разработчиков Dart. 😊
Несмотря на обязательную теперь статическую типизацию, Dart - очень динамический язык, поэтому AOT расставляет проверки и прочие механизмы, которые JIT спекулятивно выкидывает. AOT вообще только из-за iOS и сделали.
Я одного не могу понять - при чём тут WASM? 😄
Дело в том что очеь многие мечтают и просят Dart компилировать в wasm, особенно разработчики flutter. Но команда не раз выступала с детальным разбором, что wasm нестабилен, и еще довольно много странных и предвзятых немного доводов, но похоже что истинная причина может как раз в том, что пока они не могут нормально скомпилировать в AOT. Ксати нашел даже в их FAQ завуалированное описание:

Code that’s compiled ahead-of-time (AOT) with a compiler such as dart2native has different performance characteristics from code that’s compiled just-in-time (JIT) in the Dart VM. AOT-compiled code is guaranteed to have fast startup and consistent runtime performance, with no latency during early runs. JIT-compiled code is slower at startup, but it can have better peak performance after it runs long enough for runtime optimizations to be applied.
источник