The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



"Запуск WebAssembly runtime как модуля ядра Linux"
Версия для распечатки Пред. тема | След. тема
Форум Разговоры, обсуждение новостей
Исходное сообщение [ Отслеживать ]
Подсказка: Для слежения за появлением новых сообщений в нити, нажмите "Проследить за развитием треда".
. "Запуск WebAssembly runtime как модуля ядра Linux" +/
Сообщение от Аноним (25), 27-Сен-18, 21:37 
> Это oversimplification.

Дудки. Дополнительные проверки для безопасности или есть, и на это тратятся ресурсы, или нет, и тогда они не тратятся. Дядька Тюринг на самом фундаментальному уровне гарантировал нам что мы заранее поведение программы своей программой (как то компилером) целиком не просчитаем - значит оверхед в рантайме на фактические проверки в момент операции. А какие еще варианты? При том в тугом цикле это может угрохать скорость в разы. В кернеле все еще усугубляется тем что нельзя заранее верить компилятору и прочему внешнему миру. Это мигом приведет к взлому, поэтому надо параноидально чикерить все и вся. Без оверхеда куча проверок не бывает - если процессору приваливает работенки, то и времени на ее выполнение приваливает.

> часть он тратит на выполнение кода в ring3, часть он тратит
> на выполнение кода в ring0, часть на ожидание i/o, и часть
> на переключение контекстов из ring3 в ring0 и обратно.

И вот тут хотелось бы какой-то инструментированной метрики с разблюдовкой по временам - куда сколько потрачено и какого масштаба выигрыш ожидается. И не окажется ли это как в песенке про мельника, который истратил шиллинг и заработал грош.

> того, что nginx будет перенесён в ядро. А вот выполнение собственно
> nginx кода и переключение контекстов изменится.

Вот конкретно Linux сейчас довольно здорово оптимизнут на предмет сисколов, с использованием хреновой кучи не-классических техник, придуманых линуксоидами. Например, vDSO, группировка сисколов и 1 переключения контекста на целый батч и проч. Им видите ли оверхед тоже не нравится и они изобрели много нового для его уменьшения.

> что-то быстрее, каким же будет суммарное изменение времени выполнения -- я могу лишь гадать.

В общем случае так. Но сравнивая уровень технологий Linux и тем что вытворяют jit - я пожалуй поставлю на Linux. Эти парни умеют работать так, чтобы результат радовал глаз. А сказать то же самое про jit'ы я не могу.

> Мы это узнаем совершенно точно, когда они запустят nginx в ядре, и
> прогонят его через тесты.

Флаг им.

> Я не знаю, как там насчёт gcc, но rustc сегодня имеет встроенный target webassembly.

А мне похрен на rustc. Пусть яп со встроенными менеджерами пакетов пользуется кто-нибудь другой, а я пешком постою с менее хипстерским/виндообразным тулчейном.

> Emscripten не нужен.

Да и rust куда-то туда же, как по мне.

> модулей ядра -- это другое и не твоё собачье дело решать
> за других, чем им заниматься в своё свободное время.

Несомненно. Но повертеть пальцем у виска, в том числе и публично. я все же могу и это вполне в пределах моего собачьего дела уже.

Ответить | Правка | Наверх | Cообщить модератору

Оглавление
Запуск WebAssembly runtime как модуля ядра Linux, opennews, 27-Сен-18, 18:40  [смотреть все]
Форумы | Темы | Пред. тема | След. тема



Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру