Size: a a a

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

2019 December 22

DM

Dmitry M in WebAssembly — русскоговорящее сообщество
Mikhail Voronov
даже интересно стало, почему нет смысла?
Устраивает в продакшене такие бенчмарки?
источник

MV

Mikhail Voronov in WebAssembly — русскоговорящее сообщество
а какие именно бенчмарки?
источник

DM

Dmitry M in WebAssembly — русскоговорящее сообщество
Mikhail Voronov
а какие именно бенчмарки?
источник

MV

Mikhail Voronov in WebAssembly — русскоговорящее сообщество
MaxGraey
Подожди, во первых это опыт fluence и они делали это для каких то определенных целей, во вторых wasm никогда не будет быстрее native, он будет стремится к этому приблизиться и возможно где то будет даже выполняться с нативной скоростью. Во вторых, при чем здесь скорость? Открою один факт, который @chicoxyzzy здесь озвучивал не раз wasm - это не про скорость! Wasm не всегда и JS может обогнать. И наконец, в делах DB решает скорость IO и дешевизна интеропа прежде всего
что вы сразу на негативный опыт Fluence, как уже утверждённый факт. Я правда не читал 200+ сообщений сверху
источник

MV

Mikhail Voronov in WebAssembly — русскоговорящее сообщество
это очень плохие бенчмарки из-за asmble, на васмере получилось примерно как на native
источник

M

MaxGraey in WebAssembly — русскоговорящее сообщество
Mikhail Voronov
что вы сразу на негативный опыт Fluence, как уже утверждённый факт. Я правда не читал 200+ сообщений сверху
Я тоже вот не понял про наброс на fluence
источник

ҪҸ

Ҫѐҏӗѫӑ Ҹҋ 🤖 in WebAssembly — русскоговорящее сообщество
MaxGraey
Подожди, во первых это опыт fluence и они делали это для каких то определенных целей, во вторых wasm никогда не будет быстрее native, он будет стремится к этому приблизиться и возможно где то будет даже выполняться с нативной скоростью. Во вторых, при чем здесь скорость? Открою один факт, который @chicoxyzzy здесь озвучивал не раз wasm - это не про скорость! Wasm не всегда и JS может обогнать. И наконец, в делах DB решает скорость IO и дешевизна интеропа прежде всего
+

васм про предсказуемость. когда есть предсказуемость — это хорошо влияет на скорость, очевидно. но никто богом не клялся, что васм будет быстрее, чем Х
источник

MV

Mikhail Voronov in WebAssembly — русскоговорящее сообщество
я могу перетестить завтра, но, если мне не изменяет память, то был примерно паритет с native
источник

MV

Mikhail Voronov in WebAssembly — русскоговорящее сообщество
да и мы запускаем код на машинах пользователей, а тут две большие разницы с точки зрения безопасности: запускать бинарник или wasm
источник

M

MaxGraey in WebAssembly — русскоговорящее сообщество
Автор этой статьи в этом чате и сейчас с вами прям общается 😂
источник

MV

Mikhail Voronov in WebAssembly — русскоговорящее сообщество
мне, например, не очень хотелось бы у себя иметь ноду, которая запускает произвольный сторонний код в виде скомпилированного бинарника
источник

MV

Mikhail Voronov in WebAssembly — русскоговорящее сообщество
Ҫѐҏӗѫӑ Ҹҋ 🤖
+

васм про предсказуемость. когда есть предсказуемость — это хорошо влияет на скорость, очевидно. но никто богом не клялся, что васм будет быстрее, чем Х
именно, в нашем случае основное дело не в скорости, а в изоляции от ОС
источник

DM

Dmitry M in WebAssembly — русскоговорящее сообщество
Mikhail Voronov
именно, в нашем случае основное дело не в скорости, а в изоляции от ОС
В блокчейне да, в других ситуациях приходится компенсировать оверхед железом
источник

DM

Dmitry M in WebAssembly — русскоговорящее сообщество
Например какой толк в нагруженный прокси сервер сувать код с рантаймом go/c#?
источник

MV

Mikhail Voronov in WebAssembly — русскоговорящее сообщество
я где-то полгода назад сравнивал WAVM с нативным исполнением на синтетических тестах (более конкретно, на вот этих - https://medium.com/fluence-network/a-standalone-webassembly-vm-benchmark-5300d534a04d), и в среднем он проигрывал в 1,6 раз
источник

AT

Alexander Tchitchigin in WebAssembly — русскоговорящее сообщество
Dmitry M
Например какой толк в нагруженный прокси сервер сувать код с рантаймом go/c#?
А какой смысл в ядро Linux совать виртуалку со своим набором инструкций? Как бишь она? BPF? 😉
источник

M

MaxGraey in WebAssembly — русскоговорящее сообщество
Dmitry M
Например какой толк в нагруженный прокси сервер сувать код с рантаймом go/c#?
Это лишь вопрос выбора. То, что у Go и C# жирный рантайм и далеко не оптимальная wasm кодогенерация, то это не совсем вина wasm. Это очень хорошо видно по TinyGo который использует LLVM и у которого на выходе wasm получается сравнимым с C++ и Rust
источник

ҪҸ

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

VE

Vyacheslav Egorov in WebAssembly — русскоговорящее сообщество
Бэкэнд у нас свой. Этот LLVM скелет начали делать и пока не закончили - потому что мотивации мало, а на проекты без мотивации сложно выделить ресурсы :) Был когда-то проект более рабочего бэка через ЛЛВМ (интерн сделал) и там мы тестировали и прототип кодогенерации ВАСМ - работало. Но скорее всего когда будем делать серьезно, то будем делать руками, а не через LLVM
источник

M

MaxGraey in WebAssembly — русскоговорящее сообщество
Vyacheslav Egorov
Бэкэнд у нас свой. Этот LLVM скелет начали делать и пока не закончили - потому что мотивации мало, а на проекты без мотивации сложно выделить ресурсы :) Был когда-то проект более рабочего бэка через ЛЛВМ (интерн сделал) и там мы тестировали и прототип кодогенерации ВАСМ - работало. Но скорее всего когда будем делать серьезно, то будем делать руками, а не через LLVM
Спасибо за инсайд. Я тоже считаю что LLVM избыточен для wasm. Я ранее высказал предположение, что реальная причина того, что wasm нету в Dart-е это довольно низкая производительность AOT если сравнивать с Dart VM? Или причина в том, что вы пока не видите где бы мог пригодиться WebAssembly учитывая что для web есть dart2js, а для ios/android - dart2native
источник