The OpenNET Project / Index page

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



"Выпуск библиотеки libuv 1.45.0 с поддержкой подсистемы io_uring"
Вариант для распечатки  
Пред. тема | След. тема 
Форум Разговоры, обсуждение новостей
Изначальное сообщение [ Отслеживать ]

"Выпуск библиотеки libuv 1.45.0 с поддержкой подсистемы io_uring"  +/
Сообщение от opennews (??), 29-Май-23, 11:53 
Опубликован выпуск библиотеки libuv 1.45.0, применяемой для мультиплексирования соединений и асинхронной обработки ввода/вывода во многих проектах, нацеленных на высокопроизводительную обработку сетевых и файловых запросов, например, в платформе Node.js, DNS-серверах BIND 9 и Knot DNS, HTTP-сервере H2O, Lua-фреймворке  Luvit,  виртуальной машине MoarVM,  языке Julia и   Python-фреймворке uvloop. Библиотека позволяет организовать цикл обработки событий в неблокирующем режиме, реализованный на базе таких методов, как epoll в  Linux, kqueue в BSD и macOS, IOCP в Windows и event ports в Solaris. Код проекта написан на языке Си и распространяется под лицензией MIT...

Подробнее: https://www.opennet.me/opennews/art.shtml?num=59213

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

Оглавление

Сообщения [Сортировка по времени | RSS]


1. "Выпуск библиотеки libuv 1.45.0 с поддержкой подсистемы io_ur..."  –15 +/
Сообщение от Аноним (1), 29-Май-23, 11:53 
Т.е. теоритически работа Ноды может зависеть от версии ведра лол?
Ответить | Правка | Наверх | Cообщить модератору

8. "Выпуск библиотеки libuv 1.45.0 с поддержкой подсистемы io_ur..."  +/
Сообщение от Аноним (8), 29-Май-23, 13:07 
Нет, практически зависит текстового редактора.
Ответить | Правка | Наверх | Cообщить модератору

45. Скрыто модератором  +4 +/
Сообщение от Аноним (-), 30-Май-23, 03:09 
Ответить | Правка | К родителю #1 | Наверх | Cообщить модератору

48. "Выпуск библиотеки libuv 1.45.0 с поддержкой подсистемы io_ur..."  +1 +/
Сообщение от iiiypuk (?), 30-Май-23, 07:18 
Ранее из каждой жели орали "Linux не ниже 2.6"
Ответить | Правка | К родителю #1 | Наверх | Cообщить модератору

2. "Выпуск библиотеки libuv 1.45.0 с поддержкой подсистемы io_ur..."  –7 +/
Сообщение от Аноним (2), 29-Май-23, 12:03 
теперь однопоточная нода будет работать быстрее, чем типичная многопоточная прога на сишке, в которой авторы по религиозным соображениям ограничивает себя posix api (у дидов на юниксе не было io_uring)
Ответить | Правка | Наверх | Cообщить модератору

3. "Выпуск библиотеки libuv 1.45.0 с поддержкой подсистемы io_ur..."  –2 +/
Сообщение от Annnno (?), 29-Май-23, 12:21 
Мультимилионы зависимостей с вами не согласятся
Ответить | Правка | Наверх | Cообщить модератору

4. "Выпуск библиотеки libuv 1.45.0 с поддержкой подсистемы io_ur..."  +1 +/
Сообщение от Аноним (2), 29-Май-23, 12:38 
у мультимиллионов зависимостей require('fs') автомагически получит ядерно-поддерживаемую асинхронщину вместо тред-пул-бейзед.
Ответить | Правка | Наверх | Cообщить модератору

5. "Выпуск библиотеки libuv 1.45.0 с поддержкой подсистемы io_ur..."  +3 +/
Сообщение от keydon (ok), 29-Май-23, 12:40 
Внезапно ОС-специфичные штуки нередко оказываются быстрее, но влияют на совместимость.
Никогда так не было и вот опять.
Ответить | Правка | К родителю #2 | Наверх | Cообщить модератору

10. "Выпуск библиотеки libuv 1.45.0 с поддержкой подсистемы io_ur..."  –2 +/
Сообщение от Аноним (10), 29-Май-23, 13:09 
Софт, не совместимый с AIX — не софт вовсе. Даже если поддержка совместимости вызывает проблемы и заставляет отказываться от новых фич — она обязана быть, ведь это UNIX-way
Ответить | Правка | Наверх | Cообщить модератору

16. "Выпуск библиотеки libuv 1.45.0 с поддержкой подсистемы io_ur..."  +/
Сообщение от Аноним (16), 29-Май-23, 13:44 
Да ладно, в продакшоне уж давно Linux way.
Ответить | Правка | Наверх | Cообщить модератору

12. "Выпуск библиотеки libuv 1.45.0 с поддержкой подсистемы io_ur..."  +/
Сообщение от Самый Лучший Гусь (?), 29-Май-23, 13:11 
А ничего кроме линукса в средне-вминяемом продакшене и не бывает. А там где бывает как правило быстрота не нужна.
Ответить | Правка | К родителю #5 | Наверх | Cообщить модератору

20. "Выпуск библиотеки libuv 1.45.0 с поддержкой подсистемы io_ur..."  +7 +/
Сообщение от keydon (ok), 29-Май-23, 14:09 
> А ничего кроме линукса в средне-вминяемом продакшене и не бывает. А там
> где бывает как правило быстрота не нужна.

Фряхи еще встречаются в вменяемых продакшенах.

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

21. "Выпуск библиотеки libuv 1.45.0 с поддержкой подсистемы io_ur..."  +/
Сообщение от Аноним (21), 29-Май-23, 14:47 
Опять сейчас нетфликс притащат (а больше нечего).
Ответить | Правка | Наверх | Cообщить модератору

32. "Выпуск библиотеки libuv 1.45.0 с поддержкой подсистемы io_ur..."  +8 +/
Сообщение от КриоМух (?), 29-Май-23, 19:04 
Как это больше ничего? Ещё контора в которой я одминю. У меня тут пожалуйста и бэкапы и почтовик и vpn сервер и nginx и сайтики в клеточках и телефония многоголовая, всё это на милой фряшечке. Работает, не жужжит, пить - есть не просит.
Ответить | Правка | Наверх | Cообщить модератору

46. "Выпуск библиотеки libuv 1.45.0 с поддержкой подсистемы io_ur..."  +/
Сообщение от mistiqemail (ok), 30-Май-23, 04:26 
Нежно люблю фряху (академической любовью) но как конторка с сайтиками, телефонией и прочими впнами на фряхе коррелирует со словом "вменяемая"?
Ответить | Правка | Наверх | Cообщить модератору

49. "Выпуск библиотеки libuv 1.45.0 с поддержкой подсистемы io_ur..."  +2 +/
Сообщение от Кровосток (ok), 30-Май-23, 08:19 
Многократно извиняюсь, что влезаю в ваш разговор.
Но человек выше - описал свой продакшен, описал что у него там работает. Вы поставили под сомнение вменяемость его личного прода, почему?
Ответить | Правка | Наверх | Cообщить модератору

50. "Выпуск библиотеки libuv 1.45.0 с поддержкой подсистемы io_ur..."  –2 +/
Сообщение от mistiqemail (ok), 30-Май-23, 08:21 
> Многократно извиняюсь, что влезаю в ваш разговор.
> Но человек выше - описал свой продакшен, описал что у него там
> работает. Вы поставили под сомнение вменяемость его личного прода, почему?

Прочитайте всю ветку, так есть ответ на ваш вопрос, в том числе и в моем ответе этому человеку.

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

51. "Выпуск библиотеки libuv 1.45.0 с поддержкой подсистемы io_ur..."  –1 +/
Сообщение от Tron is Whistling (?), 30-Май-23, 09:40 
> Фряхи еще встречаются в невменяемых продакшенах.

Fixed.

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

17. "Выпуск библиотеки libuv 1.45.0 с поддержкой подсистемы io_ur..."  +7 +/
Сообщение от Аноним (17), 29-Май-23, 13:52 
так вся эта библиотека и есть обертка для совместимости и единообразности работы с зоопарком - вокруг кучи разных костылей разных систем тебе дают единый костыль со своей единой абстракцией. Т.е., упрощенно, под капотом (под единой универсальной абстракцией) была спрятана поддержка 4-х движков, чтобы ты не мучался с каждой системой по отдельности и сейчас тебе добавили очередной частный 5-й. Да, это повлияло на совместимость - совместимость библиотеки с системами и их механизмами увеличилась. И да, тут получилось удачно, вопреки мему про "14-ть несовместимых + 1 универсальный протокол = 16 несовместимых протоколов" - этот "нулевой универсальный протокол" вышел таки хорошечным.
Ответить | Правка | К родителю #5 | Наверх | Cообщить модератору

23. "Выпуск библиотеки libuv 1.45.0 с поддержкой подсистемы io_ur..."  –1 +/
Сообщение от Аноним (23), 29-Май-23, 15:55 
Однопоточная нода будет работать быстрее из-за ключевой C-библиотеки - libuv.so
Ответить | Правка | К родителю #2 | Наверх | Cообщить модератору

31. "Выпуск библиотеки libuv 1.45.0 с поддержкой подсистемы io_ur..."  +1 +/
Сообщение от Вы забыли заполнить поле Name (?), 29-Май-23, 18:11 
Она статически линкуется
Ответить | Правка | Наверх | Cообщить модератору

47. "Выпуск библиотеки libuv 1.45.0 с поддержкой подсистемы io_ur..."  –1 +/
Сообщение от Аноним (-), 30-Май-23, 05:34 
> теперь однопоточная нода будет работать быстрее, чем типичная многопоточная прога на сишке,
> в которой авторы по религиозным соображениям ограничивает себя posix api (у дидов на
> юниксе не было io_uring)

...благодаря сишной либе? Легко стоять на плечах гигантов :)

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

6. "Выпуск библиотеки libuv 1.45.0 с поддержкой подсистемы io_ur..."  +/
Сообщение от Аноним (6), 29-Май-23, 12:45 
А для Rust будет?
Ответить | Правка | Наверх | Cообщить модератору

7. "Выпуск библиотеки libuv 1.45.0 с поддержкой подсистемы io_ur..."  +2 +/
Сообщение от Ananimus (?), 29-Май-23, 12:46 
Да, уже занесли.
Ответить | Правка | Наверх | Cообщить модератору

9. "Выпуск библиотеки libuv 1.45.0 с поддержкой подсистемы io_ur..."  +2 +/
Сообщение от Аноним (16), 29-Май-23, 13:08 
Из безопастного языка вызывать небезопасную библиотеку? Некошерно же. Перепешите на Rust.
Ответить | Правка | К родителю #6 | Наверх | Cообщить модератору

13. "Выпуск библиотеки libuv 1.45.0 с поддержкой подсистемы io_ur..."  +1 +/
Сообщение от Аноним (13), 29-Май-23, 13:14 
Почему, некошерно? Ведь уже известно, что на расте нельзя ничего написать серьёзного. И такими темпами не скоро ещё можно будет, где асинхронные генераторы? Сколько генераторный голод будет продолжаться? Это всё бюрократы проклятые. А так, любители поиграться со ржавчиной порадуются хоть.
Ответить | Правка | Наверх | Cообщить модератору

14. "Выпуск библиотеки libuv 1.45.0 с поддержкой подсистемы io_ur..."  +/
Сообщение от Аноним (14), 29-Май-23, 13:19 
Слишком жирно, попробуй еще раз.
Ответить | Правка | Наверх | Cообщить модератору

15. "Выпуск библиотеки libuv 1.45.0 с поддержкой подсистемы io_ur..."  –4 +/
Сообщение от Аноним (13), 29-Май-23, 13:22 
Не, это то, почему лично я отправил раст на помойку до лучших времён, питон куда лучше справляется с асинхронной нагрузкой, и не зависанет рандомно опять же (и никакой возможности определить из-за чего).
Ответить | Правка | Наверх | Cообщить модератору

18. "Выпуск библиотеки libuv 1.45.0 с поддержкой подсистемы io_ur..."  +1 +/
Сообщение от Иисус (?), 29-Май-23, 13:57 
Так давно уже всё написали. Вон в tokio поддержка ещё в далёком 2021 году появилась: https://tokio.rs/blog/2021-07-tokio-uring
Ответить | Правка | К родителю #6 | Наверх | Cообщить модератору

26. "Выпуск библиотеки libuv 1.45.0 с поддержкой подсистемы io_ur..."  –1 +/
Сообщение от Аноним (26), 29-Май-23, 16:57 
https://lib.rs/crates/ringbahn
Ответить | Правка | К родителю #6 | Наверх | Cообщить модератору

30. "Выпуск библиотеки libuv 1.45.0 с поддержкой подсистемы io_ur..."  +1 +/
Сообщение от Вы забыли заполнить поле Name (?), 29-Май-23, 18:08 
> https://lib.rs/crates/ringbahn

4 releases
0.0.0-experimental.3     Jun 19, 2020
0.0.0-experimental.2     Jun 8, 2020
0.0.0-experimental.1     May 27, 2020
0.0.0-experimental     May 26, 2020

Узнаю растоманов - люботелей обмазаться (не)свеженьким

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

11. "Выпуск библиотеки libuv 1.45.0 с поддержкой подсистемы io_ur..."  +/
Сообщение от Аноним (13), 29-Май-23, 13:09 
8 мегабайт стек? Это много или мало? Типичный асинхронный пул в районе сотен тредов.
Ответить | Правка | Наверх | Cообщить модератору

61. "Выпуск библиотеки libuv 1.45.0 с поддержкой подсистемы io_ur..."  +/
Сообщение от Аноним (61), 30-Май-23, 17:28 
Но ведь она не выделяется вся сразу, а только необходимый объем?
Ответить | Правка | Наверх | Cообщить модератору

22. "Выпуск библиотеки libuv 1.45.0 с поддержкой подсистемы io_ur..."  –2 +/
Сообщение от Аноним (22), 29-Май-23, 14:54 
>выставление единого размера стека в 8 МБ для пула потоков на всех архитектурах и платформах

low-memory системы теперь на свалку?

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

24. "Выпуск библиотеки libuv 1.45.0 с поддержкой подсистемы io_ur..."  +1 +/
Сообщение от _hide_ (ok), 29-Май-23, 16:39 
У разработчиков всё работает :-)
Ответить | Правка | Наверх | Cообщить модератору

25. Скрыто модератором  +/
Сообщение от Аноним (25), 29-Май-23, 16:55 
Ответить | Правка | К родителю #22 | Наверх | Cообщить модератору

43. Скрыто модератором  +2 +/
Сообщение от Аноним (43), 29-Май-23, 22:49 
Ответить | Правка | Наверх | Cообщить модератору

27. "Выпуск библиотеки libuv 1.45.0 с поддержкой подсистемы io_ur..."  –1 +/
Сообщение от YetAnotherOnanym (ok), 29-Май-23, 17:24 
Там обычно не требуются скорости, для которых придуман сабж.
Ответить | Правка | К родителю #22 | Наверх | Cообщить модератору

39. "Выпуск библиотеки libuv 1.45.0 с поддержкой подсистемы io_ur..."  +/
Сообщение от Аноним (39), 29-Май-23, 20:20 
1. Зато там требуется энергоэффективность. А снизив оверхед (бесполезную трату времени, а значит - энергии (E = P * T, P = U**2/R * долю "светлого" кремния) можно либо большей энергоэффективности добиться, либо большей производительности.
2. Разработчики софта тебя спросить забыли. Просто возьмут и притащат либу, потому что им так удобно. И потребуют новую версию, потому что это тоже удобно, и там могут функции и API появится.
Ответить | Правка | Наверх | Cообщить модератору

40. "Выпуск библиотеки libuv 1.45.0 с поддержкой подсистемы io_ur..."  +1 +/
Сообщение от Аноним (39), 29-Май-23, 20:23 
Доля "светлого" кремния регулируется аппаратно в зависимости от того, на что чип рассчитан, программист её может только уменьшить, отправив программу спать. А уменьшение оверхеда - это уже работа программера.
Ответить | Правка | Наверх | Cообщить модератору

41. "Выпуск библиотеки libuv 1.45.0 с поддержкой подсистемы io_ur..."  +/
Сообщение от Славик (ok), 29-Май-23, 20:52 
А зачем сабж для таких систем? Пользуй liburing.
Ответить | Правка | К родителю #22 | Наверх | Cообщить модератору

63. "Выпуск библиотеки libuv 1.45.0 с поддержкой подсистемы io_ur..."  +1 +/
Сообщение от Аноним (-), 30-Май-23, 19:07 
> low-memory системы теперь на свалку?

Во первых, по дефолту линух выделяет память под страницы памяти только когда ее фактически используют. Это имеет свои особенности но лучше стыкуется с тем что делает современный софт и так со времен царя гороха. Номинально заказать вы можете хоть терабайт. Цифра VSZ может выглядеть жутковато но это будет работать даже на весьма склерозной системе с мизером оперативки.

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

В третьих, малоемкие чипы уже с производства поснимали в целом и проблема как-то сама собой отпадает, даже десятибаксовый одноплатник не напряжется особо. Остается разве что совсем винтажное железо. А у вас там точно вообще будет libuv последней версии на таком железе, хоть когда-нибудь?

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

38. Скрыто модератором  +1 +/
Сообщение от ivan_erohin (?), 29-Май-23, 20:16 
Ответить | Правка | Наверх | Cообщить модератору

44. Скрыто модератором  –1 +/
Сообщение от анон (?), 29-Май-23, 23:24 
Ответить | Правка | Наверх | Cообщить модератору

52. "Выпуск библиотеки libuv 1.45.0 с поддержкой подсистемы io_ur..."  +/
Сообщение от Tron is Whistling (?), 30-Май-23, 09:43 
"применение io_uring в libuv позволяет добиться повышения пропускной способности в 8 раз"

Пропускной способности чего? В случае того же BIND обработка запросов тяжелее их пересылки в разы.
Или там пропускная способность фекалий в системе отведения измерялась?

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

53. "Выпуск библиотеки libuv 1.45.0 с поддержкой подсистемы io_ur..."  +1 +/
Сообщение от Tron is Whistling (?), 30-Май-23, 09:44 
А я таки не ошибся :D

"Did some basic benchmarking, and it's giving me > 8x performance when reading small chunks out of /dev/zero"

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

54. "Выпуск библиотеки libuv 1.45.0 с поддержкой подсистемы io_ur..."  +/
Сообщение от Tron is Whistling (?), 30-Май-23, 09:46 
Ну и дальше, как обычно с иоуриной, началось...

"You know what's coming now... This change has introduced regressions in some file operations"
"So an official way to disable io_uring, preferably through the API, would be necessary for us."

Короче все проблемы с этой хренью у libuv ещё впереди :D Действительно, отключение не помешает.

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

55. "Выпуск библиотеки libuv 1.45.0 с поддержкой подсистемы io_ur..."  +/
Сообщение от another_one (ok), 30-Май-23, 11:05 
Можешь глянуть бенчмарки ноды с обновленным libuv:
https://ci.nodejs.org/view/Node.js%20benchmark/job/benc...
Ответить | Правка | К родителю #52 | Наверх | Cообщить модератору

56. "Выпуск библиотеки libuv 1.45.0 с поддержкой подсистемы io_ur..."  +/
Сообщение от Tron is Whistling (?), 30-Май-23, 12:57 
Зачем мне нода?
Ответить | Правка | Наверх | Cообщить модератору

57. "Выпуск библиотеки libuv 1.45.0 с поддержкой подсистемы io_ur..."  +/
Сообщение от another_one (ok), 30-Май-23, 12:58 
Ну ты просил реально применение, а не /dev/zero
Ответить | Правка | Наверх | Cообщить модератору

59. "Выпуск библиотеки libuv 1.45.0 с поддержкой подсистемы io_ur..."  –1 +/
Сообщение от Tron is Whistling (?), 30-Май-23, 12:59 
Это знаешь, как к газели двигатель от спорта приделывать. Смысл тот же.
Ответить | Правка | Наверх | Cообщить модератору

58. "Выпуск библиотеки libuv 1.45.0 с поддержкой подсистемы io_ur..."  –1 +/
Сообщение от Tron is Whistling (?), 30-Май-23, 12:59 
Тем более что про неё всё выше правильно отметили

"Безусловно твоя поделка на ноде тормозит из-за недостаточно модного апи в недостаточно свежей оберточке. А не потому что js с лефтпадами"

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

60. "Выпуск библиотеки libuv 1.45.0 с поддержкой подсистемы io_ur..."  +/
Сообщение от Аноним (60), 30-Май-23, 14:01 
Я просто оставлю это здесь. https://unixism.net/loti/
Ответить | Правка | Наверх | Cообщить модератору

64. "Выпуск библиотеки libuv 1.45.0 с поддержкой подсистемы io_ur..."  +/
Сообщение от Аниномemail (?), 05-Июн-23, 14:25 
Было сравнение io_uring и epoll в работе с потоком. Epoll отказался быстрее.
Ответить | Правка | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




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

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