Size: a a a

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

2020 December 23

К

Константин in WebAssembly — русскоговорящее сообщество
Petr Penzin
Что нибудь из этого есть: f32x4, i32x4, i64x2, f64x2?
Не, ток лоад и стор
источник

PP

Petr Penzin in WebAssembly — русскоговорящее сообщество
Не айс :(
источник

PP

Petr Penzin in WebAssembly — русскоговорящее сообщество
Есть смысл проверить сборку руками, как и с простым тестом - можно для одного сорца вазм из клэнга получить через -S и поискать нужные инструкции
источник

PP

Petr Penzin in WebAssembly — русскоговорящее сообщество
(т.е. для сорца в котором ожидается векторизация)
источник

f

folex in WebAssembly — русскоговорящее сообщество
Alexander Tchitchigin
for file in *.cc do ... od;

😂
источник

AT

Alexander Tchitchigi... in WebAssembly — русскоговорящее сообщество
Вы же поняли, что я имел в виду. 😊
источник

f

folex in WebAssembly — русскоговорящее сообщество
конечно, просто это полезная инфа, которую редко где увидишь. Воспользовался шансом поделиться :)
источник
2020 December 25

SR

Sergey Rubanov in WebAssembly — русскоговорящее сообщество
В Wasmtime реализована поддержка wasi-nn

Есть множество кейсов для использования #WebAssembly для машинного обучения, но при этом надо решить несколько проблем. Wasi-nn создаёт высокоуровневый API для доступа к возможностям хоста по использованию специфических инструкций центрального и графического процессоров. В Wasmtime в качестве бекенда для wasm-nn используется OpenVINO.

В блоге Bytecode Alliance опубликованы две статьи, посвящённые этому:
- Machine Learning in WebAssembly: Using wasi-nn in Wasmtime
- Implementing a WASI Proposal in Wasmtime: wasi-nn
источник
2020 December 28

M

MaxGraey in WebAssembly — русскоговорящее сообщество
Petr Я смотрю v8 уже даже к post-MVP SIMDs готов?
https://github.com/v8/v8/blob/master/src/wasm/wasm-opcodes.h#L490

тут тебе и горизонтальные сложения и popcnt и rsqrt
источник

PP

Petr Penzin in WebAssembly — русскоговорящее сообщество
v8 бежит впереди паровоза, на нём все новые инструкции тестируют вживую. В моём понимании сомнительные, особенно popcnt и prefetch, но я устал уже спорить :)
источник

M

MaxGraey in WebAssembly — русскоговорящее сообщество
А почему prefetch сомнительная? Из-за того что у разных архитектур не обязательно одинаковая 16-64 байтовая длина кеш линии?
источник

PP

Petr Penzin in WebAssembly — русскоговорящее сообщество
Да, и вообще архитектура кэша отличается, даже для разных поколений одного и того же процессора
источник

M

MaxGraey in WebAssembly — русскоговорящее сообщество
Petr Penzin
Да, и вообще архитектура кэша отличается, даже для разных поколений одного и того же процессора
Ну у армов или 32- или 64-байтовые кеш линии, у современных x86 64-байтовые. Так что в теории можно задать ее минимальной везде (32-байта)
источник
2020 December 29

M

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

SR

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

M

MaxGraey in WebAssembly — русскоговорящее сообщество
Кстати, тоже заметил такую вешь, что Хром переключается в Liftoff если открываешь Dev-консоль и из-за этого не очень удобно мерять производительность, если результаты выводятся в консоль

https://www.reddit.com/r/WebAssembly/comments/kk9vuv/webassembly_much_slower_than_js_in_this_benchmark/
источник

SR

Sergey Rubanov in WebAssembly — русскоговорящее сообщество
MaxGraey
Кстати, тоже заметил такую вешь, что Хром переключается в Liftoff если открываешь Dev-консоль и из-за этого не очень удобно мерять производительность, если результаты выводятся в консоль

https://www.reddit.com/r/WebAssembly/comments/kk9vuv/webassembly_much_slower_than_js_in_this_benchmark/
они об этом писали. что лифтофф используется чтобы больше показывать в девтулзах
источник

SR

Sergey Rubanov in WebAssembly — русскоговорящее сообщество
вот, в 8.4. до этого интерпретатор использовался
источник

SR

Sergey Rubanov in WebAssembly — русскоговорящее сообщество
Также 30 июня в проекте V8 появилась релизная ветка v8.4. В ней:
- улучшения поддержки бейслайн комилятором для #WebAssembly Liftoff новых пропозалов
- отладка WebAssembly теперь осуществляется через Liftoff вместо интерпретатора, что позволило значительно улучшить время исполнения при включенном дебаггере
- поддержка WebAssembly SIMD (phase 3) под origin trial
- поддержка Javascrip WeakRefs (stage 3)
- приватные методы и аксессоры (stage 3)
источник

К

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