Size: a a a

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

2019 December 22

M

MaxGraey in WebAssembly — русскоговорящее сообщество
Vyacheslav Egorov
Ну и всякие там блокчейны это точно не моя ложка психотропов
Как насчет универсальных и безопасных плагинов? Тот же Fastly скомпилтровал QuickJS для этого, хотя в браузере есть и iframe и Realms, но ничего из этого не подошло)
источник

VE

Vyacheslav Egorov in WebAssembly — русскоговорящее сообщество
Ну вот в браузере я верю.
источник

ҪҸ

Ҫѐҏӗѫӑ Ҹҋ 🤖 in WebAssembly — русскоговорящее сообщество
(realms еще не довезли и в 2020 тоже мб не довезут)
источник

M

MaxGraey in WebAssembly — русскоговорящее сообщество
Vyacheslav Egorov
Ну вот в браузере я верю.
А как насчет node.js?
источник

ҪҸ

Ҫѐҏӗѫӑ Ҹҋ 🤖 in WebAssembly — русскоговорящее сообщество
у cloudflare и fastly есть wasm вне браузера
источник

M

MaxGraey in WebAssembly — русскоговорящее сообщество
Vyacheslav Egorov
Ну вот в браузере я верю.
В Intel, Mozilla, Fastly, Red Hat вы верите? https://bytecodealliance.org/press/formation
источник

Б

Богдан in WebAssembly — русскоговорящее сообщество
Vyacheslav Egorov
Потому что это очень странно и не очень оптимально с точки зрения размера и производительности - компилировать свой ГЦ, когда у тебя есть уже ГЦ в хосте (ЖС ГЦ)
Размер пожалуй да, но производительность? Это же постоянный интероп с рантаймом v8 на вызов gc в сравнением с быстрым проходом в юзер-спейсе самого wasm-а. Также для работы gc от v8 ему надо знать про шейп объектов в паяти wasm-а, а это наверняка добавляет ограничения и оверхед на подобного рода общение, когда же для особенностей своего языка можно построить какой-угодно лейаут объектов в памяти и выстроить самые разные оптимизации
источник

ҪҸ

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

ҪҸ

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

Б

Богдан in WebAssembly — русскоговорящее сообщество
Кстати народ, поправьте если ошибаюсь, но я так понимаю языки с gc подходят только для узкого круга задач, а вот для баз данных или разного рода кешей (или наверное всего что касается сервера и высоких нагрузок) языки с gc не подходят из-за принципа работы самого gc который собирает неиспользуюемые объекты путем сканирования всех занятых объектов от рут-сета. А для баз данных основная задача заключается в том что нужно бысто получить список связанных объектов (аля джойны и индексы) и самый быстрый способ их получить это хранить эти связанные объекты в памяти и связывать их по ссылке (константный переход по адресу без каких-либо деревьев или хешей). Ну а теперь представим себе такую in-memory базу и на амазоновском сервере с 4 терабайтами оперативки где будет храниться десятки миллиардов объектов связанных друг с другом ссылками. И получаем что gc будет сканировать все эти долгоживующие десятки млрд объектов и это будет пауза на десяток секунд.
источник

M

MaxGraey in WebAssembly — русскоговорящее сообщество
Богдан
Кстати народ, поправьте если ошибаюсь, но я так понимаю языки с gc подходят только для узкого круга задач, а вот для баз данных или разного рода кешей (или наверное всего что касается сервера и высоких нагрузок) языки с gc не подходят из-за принципа работы самого gc который собирает неиспользуюемые объекты путем сканирования всех занятых объектов от рут-сета. А для баз данных основная задача заключается в том что нужно бысто получить список связанных объектов (аля джойны и индексы) и самый быстрый способ их получить это хранить эти связанные объекты в памяти и связывать их по ссылке (константный переход по адресу без каких-либо деревьев или хешей). Ну а теперь представим себе такую in-memory базу и на амазоновском сервере с 4 терабайтами оперативки где будет храниться десятки миллиардов объектов связанных друг с другом ссылками. И получаем что gc будет сканировать все эти долгоживующие десятки млрд объектов и это будет пауза на десяток секунд.
Сейчас GC научились делать так, что мир не останавливался на 200-800 миллисекунд, раньше это было проблемой которая особенно чувствоваласть в realtime приложениях таких как игры. Вротая проблема GC - футпринт по памяти, который как раз очень сильно начинает сказываться когда у тебя есть огромные долгоживущие объекты как в базах данных. Например в Go я встречал базы, у которых основное приимущество было в том, что они умели этот футпринт свести до минимума) Ну вообще как я понял в Go GC пока еще не слишком совершенен, но намного лучше чем у остальных
источник

PC

Pavel Chebotarev in WebAssembly — русскоговорящее сообщество
Ничего себе узкий круг задач, который процентов 80 наверно рынка занимает и там крутятся миллиарды долларов )
источник
2019 December 23

VE

Vyacheslav Egorov in WebAssembly — русскоговорящее сообщество
MaxGraey
В Intel, Mozilla, Fastly, Red Hat вы верите? https://bytecodealliance.org/press/formation
Корпорации имена могут на многие вещи налеплять - в итоге решают отдельные люди на местах :) И я считаю эти люди хотят проехаться на волне хайпа (или их это волна захватила и тащит).
источник

VE

Vyacheslav Egorov in WebAssembly — русскоговорящее сообщество
MaxGraey
А как насчет node.js?
Я думаю ВАСМ решает определённые проблемы с нативными модулями в ноде, но мне не ясно насколько это реальные проблемы или выдуманные.
источник

VE

Vyacheslav Egorov in WebAssembly — русскоговорящее сообщество
Я очень скептичный человек во всем что касается ВАСМ, но я не бог и могу ошибаться.
источник

ҪҸ

Ҫѐҏӗѫӑ Ҹҋ 🤖 in WebAssembly — русскоговорящее сообщество
пользуясь случаем, хочу сказать, что я очень рад тому, что здесь собрались люди с разным опытом, мнением, областями применения.
источник

EO

Eugene Obrezkov in WebAssembly — русскоговорящее сообщество
Приятно знать, что есть люди, которые разделяют мой скепсис :)

Точнее выражаясь, не скепсис, а мысль, что васм это слишком перегретая технология у сообщества.

Однозначно, васм займёт свою нишу, но мне кажется, что сообщество уж слишком многого от него ожидает, чем он может дать.

И чего только стоит наброс про UNCOL, от которого все шарахаются и начинают игнорировать ;)
источник

DS

Dzianis Sheka in WebAssembly — русскоговорящее сообщество
Eugene Obrezkov
Приятно знать, что есть люди, которые разделяют мой скепсис :)

Точнее выражаясь, не скепсис, а мысль, что васм это слишком перегретая технология у сообщества.

Однозначно, васм займёт свою нишу, но мне кажется, что сообщество уж слишком многого от него ожидает, чем он может дать.

И чего только стоит наброс про UNCOL, от которого все шарахаются и начинают игнорировать ;)
а что за наброс UNCOL ?
https://brendaneich.com/2015/06/from-asm-js-to-webassembly/
https://news.ycombinator.com/item?id=17574481


про первый и единственный универсальный формат bytecode c 1958 года?
источник

EO

Eugene Obrezkov in WebAssembly — русскоговорящее сообщество
Dzianis Sheka
а что за наброс UNCOL ?
https://brendaneich.com/2015/06/from-asm-js-to-webassembly/
https://news.ycombinator.com/item?id=17574481


про первый и единственный универсальный формат bytecode c 1958 года?
Да, и собственно, историю вокруг UNCOL проблемы с тех пор
источник

EO

Eugene Obrezkov in WebAssembly — русскоговорящее сообщество
Computerphile неплохо о ней рассказали в одном из выпусков

https://youtu.be/pP_zIJSp3WA
источник