Size: a a a

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

2019 December 12

M

MaxGraey in WebAssembly — русскоговорящее сообщество
А разве lightbeam не просто baseline компилятор для cranelift, так же как liftoff для turbofan в v8?
источник

OS

Oleg Shelajev in WebAssembly — русскоговорящее сообщество
Я же не спорю что это может быть безопасным, я просто говорю что мне кажется что если симплементировать на вебассембли j2ee сервер, то совсем не факт что будет прям намного более безопасным чем существующие
источник

OS

Oleg Shelajev in WebAssembly — русскоговорящее сообщество
MaxGraey
Я немного устал с тобой спорить о том, что еще не до конца стабилизировано=) Если очень интерестно как все это работает милости прошу сюда:
https://github.com/WebAssembly/WASI/issues/5
Я тоже немного устал что технология которой ещё нет (не стабилизирована) преподносится как манна небесная
источник

OS

Oleg Shelajev in WebAssembly — русскоговорящее сообщество
Как будто jvm идиоты писали
источник

M

MaxGraey in WebAssembly — русскоговорящее сообщество
Oleg Shelajev
Я же не спорю что это может быть безопасным, я просто говорю что мне кажется что если симплементировать на вебассембли j2ee сервер, то совсем не факт что будет прям намного более безопасным чем существующие
Это совсем не факт, если бы мы знали факты, но мы не знаем факты, поэтому фактически нам неведомы факты того, являются ли те факты теми фактами о которых говорят нам факты или это пустая демагогия?)
источник

MZ

Maksym Zavershynskyi in WebAssembly — русскоговорящее сообщество
MaxGraey
А разве lightbeam не просто baseline компилятор для cranelift, так же как liftoff для turbofan в v8?
Теперь понятно.
источник

ҪҸ

Ҫѐҏӗѫӑ Ҹҋ 🤖 in WebAssembly — русскоговорящее сообщество
MaxGraey
А разве lightbeam не просто baseline компилятор для cranelift, так же как liftoff для turbofan в v8?
и liftoff, и lightbeam отдельные однопроходные компиляторв
источник

OS

Oleg Shelajev in WebAssembly — русскоговорящее сообщество
Но ты скидываешь сюда статьи про вот эту демагогию и говоришь хорошая статья
источник

M

MaxGraey in WebAssembly — русскоговорящее сообщество
Ҫѐҏӗѫӑ Ҹҋ 🤖
и liftoff, и lightbeam отдельные однопроходные компиляторв
Да но на сколько я знаю в v8 ты можешь отключить только liftoff но не turbofan. Как там в cranelift и wasmtime не знаю. Опять же это если следовать аналогии и воспринимать lightbeam как baseline компилятор
источник

ҪҸ

Ҫѐҏӗѫӑ Ҹҋ 🤖 in WebAssembly — русскоговорящее сообщество
MaxGraey
Да но на сколько я знаю в v8 ты можешь отключить только liftoff но не turbofan. Как там в cranelift и wasmtime не знаю. Опять же это если следовать аналогии и воспринимать lightbeam как baseline компилятор
у v8 есть no-jit режим
источник

lp

lil pep in WebAssembly — русскоговорящее сообщество
Maksym Zavershynskyi
Но вы же не будете использовать cranelift, у вас же будет wasmtime/lightbeam? Или ты имеешь ввиду что усложняют весь wasmtime для cranelift и это будет касаться всех кто использует wasmtime даже если это wasmtime/lightbeam?
почему же нет? lightbeam нужен нам для недоверенного кода, cranelift/мб в будущем llvm/подобные бакенды нужны для доверенного
источник

M

MaxGraey in WebAssembly — русскоговорящее сообщество
Ҫѐҏӗѫӑ Ҹҋ 🤖
у v8 есть no-jit режим
https://v8.dev/blog/jitless

«WebAssembly is currently unsupported, but interpretation is also in the realm of possibility. V8’s builtins are still compiled to native code, but are no longer part of the managed JS heap, thanks to our recent efforts to embed them into the V8 binary.»
источник

MZ

Maksym Zavershynskyi in WebAssembly — русскоговорящее сообщество
lil pep
почему же нет? lightbeam нужен нам для недоверенного кода, cranelift/мб в будущем llvm/подобные бакенды нужны для доверенного
А какой доверенный код вы собираетесь выполнять? Это ты говоришь о выполнение substrate lightclient закомпилитрованного в Wasm, то что Pierre Krieger сделал или что-то другое?
источник

M

MaxGraey in WebAssembly — русскоговорящее сообщество
MaxGraey
https://v8.dev/blog/jitless

«WebAssembly is currently unsupported, but interpretation is also in the realm of possibility. V8’s builtins are still compiled to native code, but are no longer part of the managed JS heap, thanks to our recent efforts to embed them into the V8 binary.»
Это только для JS пока что. И  используется Ignition
источник
2019 December 13

AT

Alexander Tchitchigin in WebAssembly — русскоговорящее сообщество
Насколько я смотрел доки по Cranelift, никакой baseline компилятор или fallback интерпретатор ему не требуется. Он просто получает на вход нужные структуры (CFG), и генерирует оптимизированный нативный код.
источник

AT

Alexander Tchitchigin in WebAssembly — русскоговорящее сообщество
Откуда берутся нужные структуры - использовался ли другой компилятор или интерпретатор с профилированием для их получения - Cranelift глубоко безразлично. 🤷‍♀
источник

M

MaxGraey in WebAssembly — русскоговорящее сообщество
Alexander Tchitchigin
Насколько я смотрел доки по Cranelift, никакой baseline компилятор или fallback интерпретатор ему не требуется. Он просто получает на вход нужные структуры (CFG), и генерирует оптимизированный нативный код.
baseline и не обязателен. Liftoff например используется для multi-tier компиляции, у FF и Safari точно так же и нужно это просто для ускорения загрузки, что ыб пока основной компилятор молотит оптимизации в фоне хоть как то начать уже выполнение, ну я не уверен что cranelift умеет стриминговую компиляцию
источник

M

MaxGraey in WebAssembly — русскоговорящее сообщество
Alexander Tchitchigin
Откуда берутся нужные структуры - использовался ли другой компилятор или интерпретатор с профилированием для их получения - Cranelift глубоко безразлично. 🤷‍♀
wasm jit это совсем не тот jit который используется в javasdcript или Java с его С0, C1 и C2
источник

M

MaxGraey in WebAssembly — русскоговорящее сообщество
там не нужен интерпретатор на который фолбечится во время деоптимизаций
источник

AT

Alexander Tchitchigin in WebAssembly — русскоговорящее сообщество
MaxGraey
baseline и не обязателен. Liftoff например используется для multi-tier компиляции, у FF и Safari точно так же и нужно это просто для ускорения загрузки, что ыб пока основной компилятор молотит оптимизации в фоне хоть как то начать уже выполнение, ну я не уверен что cranelift умеет стриминговую компиляцию
Уверен, что не умеет в стриминг. 😊
Всё-таки, обычно в JIT более быстрые уровни собирают статистику для более оптимизирующих. И более оптимизирующие таки полагаются на наличие этой статистики. Cranelift прямо никакую статистику не использует.
источник