The OpenNET Project / Index page

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



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

"Эксперимент по повышению эффективности работы утилиты cat"  +/
Сообщение от opennews (?), 18-Июл-22, 20:49 
Ариадна Конилл (Ariadne Conill), создатель музыкального проигрывателя Audacious, инициатор разработки протокола IRCv3 и лидер команды по обеспечению безопасности Alpine Linux, провела исследование насколько можно оптимизировать утилиту cat, осуществляющую вывод в стандартный выходной поток одного иди нескольких файлов. Для улучшения производительности cat в Linux предложено два варианта оптимизаций, основанных на использовании  системных вызовов sendfile и splice для прямого копирования данных между файловыми дескрипторами на уровне ядра без переключения контекста в пространство пользователя...

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

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

Оглавление

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


1. "Эксперимент по повышению эффективности работы утилиты cat"  +25 +/
Сообщение от zramemail (?), 18-Июл-22, 20:49 
Не мучайте кошку!!!
Ответить | Правка | Наверх | Cообщить модератору

2. "Эксперимент по повышению эффективности работы утилиты cat"  +5 +/
Сообщение от Иисус (?), 18-Июл-22, 20:50 
Тут история скорее про лоток
Ответить | Правка | Наверх | Cообщить модератору

60. "Эксперимент по повышению эффективности работы утилиты cat"  +6 +/
Сообщение от Аноним (60), 19-Июл-22, 09:49 
Скорее, про то что кошку оказывается можно напоить пургеном.
Ответить | Правка | Наверх | Cообщить модератору

5. "Эксперимент по повышению эффективности работы утилиты cat"  +1 +/
Сообщение от Аноним (5), 18-Июл-22, 20:54 
Ага, как будто нечем заняться. Был бы котом, наверное, слизал бы себе яйца до тазовых костей...
Ответить | Правка | К родителю #1 | Наверх | Cообщить модератору

111. "Эксперимент по повышению эффективности работы утилиты cat"  +/
Сообщение от _kp (ok), 20-Июл-22, 02:18 
Сat в скриптах же активно используется, а не просмотра файлов, и её оптимизация способствует заметному ускорению работы в повседневных задачах.
Плюс, за положительныным опытом cat подтягут и остальные инструменты.
Ответить | Правка | Наверх | Cообщить модератору

117. "Эксперимент по повышению эффективности работы утилиты cat"  –1 +/
Сообщение от n00by (ok), 20-Июл-22, 05:54 
То есть выводит всего пару строк текста, но часто, и на каждый такой чих инициализируется рантайм Си. По-моему, это давно оптимизировал Ларри Уолл.
Ответить | Правка | Наверх | Cообщить модератору

121. "Эксперимент по повышению эффективности работы утилиты cat"  +/
Сообщение от тигар.логиниться.лень (?), 20-Июл-22, 12:56 
ага. "скриптописателей" много еще не умерло, которые проповедуют UUOC, а хипсторы вообще про него, возможно, и не знают.
Ответить | Правка | К родителю #111 | Наверх | Cообщить модератору

125. "Эксперимент по повышению эффективности работы утилиты cat"  +3 +/
Сообщение от all_glory_to_the_hypnotoad (ok), 20-Июл-22, 15:16 
В скриптах с cat-ом не перемывают гигабайты. Оптимизация для скриптов это снижение задержки прогрева при запуске, но она и так скорее всего мизерная. Даже если перемалывать гигабайты, то наверняка в типичных сценариях проблема будет с пайпами и с кешом (cat будет вымывать файловый кеш)
Ответить | Правка | К родителю #111 | Наверх | Cообщить модератору

137. "Эксперимент по повышению эффективности работы утилиты cat"  +/
Сообщение от ммнюмнюмус (?), 28-Июл-22, 15:40 
Странные тенденции.
Замечено, что некоторые из узкоспециальных coreutils работают медленнее, чем их эмуляции на awk / sed (пример - cut). А в bash например, вопроки тормознутости самого интерпретатора, намного выше скорость передачи через пайп, чем у dash.
Ответить | Правка | Наверх | Cообщить модератору

24. "Эксперимент по повышению эффективности работы утилиты cat"  +/
Сообщение от Аноним (24), 18-Июл-22, 23:46 
Ей же яйца лижут.
Ответить | Правка | К родителю #1 | Наверх | Cообщить модератору

44. "Эксперимент по повышению эффективности работы утилиты cat"  +/
Сообщение от Бывалый смузихлёб (?), 19-Июл-22, 06:30 
Похоже что она

Ну вот, уже почти кошка. Осталось только начать свои лизать а не чужие

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

59. "Эксперимент по повышению эффективности работы утилиты cat"  +2 +/
Сообщение от Аноним (60), 19-Июл-22, 09:47 
А у нее вроде таки нет яиц. Хоть я в биографию сильно и не лез. Это иркоп фриноды бывшая. И черт знает насчет дырок, но как кодер - покажет мастеркласс любому. Утверждает что у нее код видите ли на 2 планетах работает. А вам слабо?!
Ответить | Правка | К родителю #24 | Наверх | Cообщить модератору

100. "Эксперимент по повышению эффективности работы утилиты cat"  +3 +/
Сообщение от Товарисч (?), 19-Июл-22, 17:13 
Полезное дело человек делает, вам жалко чтоли? Иногда интересно поиграться, а если из этого что-то дельное выйдет, то почему нет? Именно потому что такие люди есть и постоянно что-то чистят и оптимизируют у нас и есть система которая летает, а не всё это убогое унылое жрущее гигабайты вроде мака и винды. Я понимаю, что *вам лично* эта оптимизация (будучи включена в апстрим) ничего не принесёт, но если сложить все затраты в мире, сколько энергии и времени это сэкономит? Так держать, *utils это самые используемые утилиты, больше оптимизаций, хороших и разных!
Ответить | Правка | К родителю #1 | Наверх | Cообщить модератору

3. "Эксперимент по повышению эффективности работы утилиты cat"  –18 +/
Сообщение от Аноним (3), 18-Июл-22, 20:51 
Линуксу, с его реализацией переключения контекстов, ничего не поможет.
Ответить | Правка | Наверх | Cообщить модератору

6. "Эксперимент по повышению эффективности работы утилиты cat"  +13 +/
Сообщение от кубрик (?), 18-Июл-22, 20:59 
Ты сделал ошибку в слове линукс.

> Виндовсу, с его реализацией переключения контекстов, ничего не поможет.

Поправил. Не благодари

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

12. "Эксперимент по повышению эффективности работы утилиты cat"  –9 +/
Сообщение от Аноним (3), 18-Июл-22, 21:29 
Да, да, расскажи мне про то как ядра писать))
Ответить | Правка | Наверх | Cообщить модератору

26. "Эксперимент по повышению эффективности работы утилиты cat"  +1 +/
Сообщение от Michael Shigorinemail (ok), 18-Июл-22, 23:53 
Вы забыли скромно вывалить свой срам, так что и рассказывать Вам может кто угодно что угодно. :]
Ответить | Правка | Наверх | Cообщить модератору

31. "Эксперимент по повышению эффективности работы утилиты cat"  –2 +/
Сообщение от Аноним (-), 19-Июл-22, 00:24 
Я человек простой.
Ответить | Правка | Наверх | Cообщить модератору

126. "Эксперимент по повышению эффективности работы утилиты cat"  +/
Сообщение от Аноним (126), 21-Июл-22, 03:02 
AnonBSDnulOS ???
Ответить | Правка | К родителю #12 | Наверх | Cообщить модератору

8. "Эксперимент по повышению эффективности работы утилиты cat"  +4 +/
Сообщение от topin89 (ok), 18-Июл-22, 21:09 
Чем оно хуже в сравнении с FreeBSD, MacOS или Windows?
Ответить | Правка | К родителю #3 | Наверх | Cообщить модератору

22. "Эксперимент по повышению эффективности работы утилиты cat"  +1 +/
Сообщение от Аноним (22), 18-Июл-22, 23:18 
Сразу видно человека не разбирающегося в теме
Ответить | Правка | К родителю #3 | Наверх | Cообщить модератору

51. "Эксперимент по повышению эффективности работы утилиты cat"  +3 +/
Сообщение от Аноним (51), 19-Июл-22, 09:00 
Как и всем прочим. Иди возрождай Singularity, слёзно выпросив её у мелкомягких, если хочешь кардинально уменьшить кол-во переключений контекстов. Или в DOS'е сиди-работай.
Ответить | Правка | К родителю #3 | Наверх | Cообщить модератору

61. "Эксперимент по повышению эффективности работы утилиты cat"  +/
Сообщение от Аноним (-), 19-Июл-22, 09:54 
> Линуксу, с его реализацией переключения контекстов, ничего не поможет.

Ващет команда Linux была сильно иного мнения и поэтому они сделали дофейхоа очень крутых и эффективных механизмов на тему.

Во первых, если вам не нравится как работает переключение контекста, можно и не переключать! Во всяком случае, лишний раз. Они, вроде, умеют групировку сисколов при интенсивном потоке и переключение 1 раз на всю группу =)

Во вторых, у остальных переключение контекста будет врядли сильно лучше. С чего бы?

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

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

109. "Эксперимент по повышению эффективности работы утилиты cat"  +1 +/
Сообщение от Аноним (109), 19-Июл-22, 21:39 
Боюсь, что нужно быть конкретнее...

Чудовищный оверхед от переключения контекстов с последующей деградацией производительности без полной утилизации я по опыту наблюдал в Linux сильно чаще, чем в других ОС, но нельзя же вот так сразу говорить, что виновато именно ядро.

В моем случае чаще всего виновником было либо ПО, которое имеет "специфику" реализации, вышестоящая инфраструктура виртуализации, которая с одной стороны наложила дополнительный оверхед, а с другой стороны, какой-то злодей положил на хост с высоким оверкоммитом CPU много маленьких виртуальных машин и одну большую, при этом она неверно отражает аппаратную топологию хоста виртуализации.

Давайте еще вспомним, что Linux такие вещи сам в себе не настраивает, нужно учитывать аппаратные особенности сервера (SMP/NUMA), параметры premmption, tick frequency и всякие CONFIG_NO_HZ_IDLE / CONFIG_NO_HZ_FULL.
Все зависит от того как вам сконфигурировали ядро в дистрибутиве (обычно плохо, понавключав энергосберегательных режимов).
Начните читать тут: https://docs.kernel.org/timers/no_hz.html

И вообще каждый случай уникален, но есть еще одна общая черта... Не включайте HyperThreading или как там назвали ваше SMT в процессоре на серверах, где у вас ПО, которое приводит к паразитной нагрузке за счет переключения контекстов. Если планировщики процессов Windows еще умеют хитро шаманить так, чтобы оно не деградировало от наличия SMT, то в Linux эту дрянь лучше сразу выключить.

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

10. "Эксперимент по повышению эффективности работы утилиты cat"  +3 +/
Сообщение от L29Ah (ok), 18-Июл-22, 21:17 
Какое ещё исследование, почему нет патчей!?
Ответить | Правка | Наверх | Cообщить модератору

11. "Эксперимент по повышению эффективности работы утилиты cat"  –1 +/
Сообщение от Аноним (11), 18-Июл-22, 21:24 
Почему это не сделано 10 лет назад?
Ответить | Правка | Наверх | Cообщить модератору

14. "Эксперимент по повышению эффективности работы утилиты cat"  –1 +/
Сообщение от Аноним (3), 18-Июл-22, 21:29 
Потому что это линукс.
Ответить | Правка | Наверх | Cообщить модератору

62. "Эксперимент по повышению эффективности работы утилиты cat"  +1 +/
Сообщение от Аноним (-), 19-Июл-22, 09:56 
Потому что кодеров уровня Ариадны на этом глобусе очень ограниченное количество и они имеют свойство быть озадачены хреновой кучей других проектов, как правило очень хорошо оплачиваемых.
Ответить | Правка | К родителю #11 | Наверх | Cообщить модератору

72. "Эксперимент по повышению эффективности работы утилиты cat"  +2 +/
Сообщение от Аноним (72), 19-Июл-22, 11:27 
Что сложного вызвать определённую функцию вместо другой?
Ответить | Правка | Наверх | Cообщить модератору

78. "Эксперимент по повышению эффективности работы утилиты cat"  +4 +/
Сообщение от Аноним (-), 19-Июл-22, 12:18 
Сложно до исследования или после?

Постфактум все "умные". Почти, кроме отрицающих реальность.

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

89. "Эксперимент по повышению эффективности работы утилиты cat"  +3 +/
Сообщение от Аноним (11), 19-Июл-22, 13:41 
Сразу после написания соответствующих системных вызовов, очевидно, поскольку их писали именно для того. чем занимаются утилиты cat и cp.
Ответить | Правка | Наверх | Cообщить модератору

118. "Эксперимент по повышению эффективности работы утилиты cat"  +/
Сообщение от Аноним (118), 20-Июл-22, 12:10 
> системных вызовов, очевидно, поскольку их писали именно для того
> очевидно
> именно

Покажешь слепым какой из системных вызовов написан именно для cat и cp?

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

94. "Эксперимент по повышению эффективности работы утилиты cat"  +1 +/
Сообщение от Аноним (94), 19-Июл-22, 14:19 
> Что сложного вызвать определённую функцию вместо другой?

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

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

98. "Эксперимент по повышению эффективности работы утилиты cat"  +/
Сообщение от Аноним (98), 19-Июл-22, 14:31 
Почему эксперты с opennet и просто знающие люди это не сделали?
Это же так просто?
Ответить | Правка | К родителю #72 | Наверх | Cообщить модератору

68. "Эксперимент по повышению эффективности работы утилиты cat"  +6 +/
Сообщение от n00by (ok), 19-Июл-22, 10:44 
Потому что 10 лет назад никому в голову не пришло сделать cat для 4 гигабайт.
Ответить | Правка | К родителю #11 | Наверх | Cообщить модератору

15. "Эксперимент по повышению эффективности работы утилиты cat"  –1 +/
Сообщение от beck (??), 18-Июл-22, 21:41 
> для прямого копирования данных между файловыми дескрипторами на уровне ядра

Здравствуй, новая уязвимость.

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

16. "Эксперимент по повышению эффективности работы утилиты cat"  +2 +/
Сообщение от Аноним (16), 18-Июл-22, 21:49 
Где тут НОВАЯ уязвимость? Просто буфер будет гоняться сразу в ядре, но ядро туда заглядывать не будет и ничего испольнять не будет, тупое копирование.
Ответить | Правка | Наверх | Cообщить модератору

25. "Эксперимент по повышению эффективности работы утилиты cat"  +/
Сообщение от Аноним (24), 18-Июл-22, 23:48 
Ну да, на квоты же явно забили.
Ответить | Правка | К родителю #15 | Наверх | Cообщить модератору

47. "Эксперимент по повышению эффективности работы утилиты cat"  +/
Сообщение от Здрасьте (?), 19-Июл-22, 07:49 
splice очень старый вызов, лет 20 ему, а sendfile и того древнее. В каком месте уязвимость тут может быть новой?
Ответить | Правка | К родителю #15 | Наверх | Cообщить модератору

63. "Эксперимент по повышению эффективности работы утилиты cat"  +2 +/
Сообщение от Аноним (-), 19-Июл-22, 09:57 
> Здравствуй, новая уязвимость.

Я что-то не понимаю как эксплойтировать копирование данных между дескрипторами. Может вы и read() таким макаром эксплойтировать умеете? Ну тогда наверное и остальные сисколы тоже, да?

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

101. "Эксперимент по повышению эффективности работы утилиты cat"  +/
Сообщение от anonymous (??), 19-Июл-22, 18:16 
Сразу видно человека не разбирающегося в теме.
Ответить | Правка | К родителю #15 | Наверх | Cообщить модератору

127. "Эксперимент по повышению эффективности работы утилиты cat"  +/
Сообщение от Аноним (126), 21-Июл-22, 03:06 
Ты файлы/"файлы" УЖЕ открыл, вот они, дескрипторы то. В чём уязвимость?
Ответить | Правка | К родителю #15 | Наверх | Cообщить модератору

17. "Эксперимент по повышению эффективности работы утилиты cat"  +/
Сообщение от InuYasha (??), 18-Июл-22, 21:58 
"А что, так можно было?" )
Осталось остальные базовые утилиты дотянуть.
Ответить | Правка | Наверх | Cообщить модератору

70. "Эксперимент по повышению эффективности работы утилиты cat"  +/
Сообщение от n00by (ok), 19-Июл-22, 10:57 
Начать можно с замеров времени инициализации libc. Но кому это надо? Там вон гигабайты экономятся, красиво смотрится.
Ответить | Правка | Наверх | Cообщить модератору

27. "Эксперимент по повышению эффективности работы утилиты cat"  +1 +/
Сообщение от Онаним (?), 19-Июл-22, 00:04 
Может кота ещё на ио-урину переписать?
Ответить | Правка | Наверх | Cообщить модератору

34. "Эксперимент по повышению эффективности работы утилиты cat"  +/
Сообщение от Аноним (-), 19-Июл-22, 01:19 
Надо на Zig переписать.
Ответить | Правка | Наверх | Cообщить модератору

28. "Эксперимент по повышению эффективности работы утилиты cat"  +3 +/
Сообщение от Онаним (?), 19-Июл-22, 00:08 
Забыли только рассказать, что и у sendfile() есть ряд проблем, которые легко вылезают в странных конфигурациях с нетипичными файловыми системами и нетипичными дескрипторами, не все из которых удастся отдетектить в cat'е. Со splice() то же самое.
Ответить | Правка | Наверх | Cообщить модератору

81. "Эксперимент по повышению эффективности работы утилиты cat"  +/
Сообщение от pashev.ru (?), 19-Июл-22, 12:41 
Приведи примеры.

Капча 66666

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

92. "Эксперимент по повышению эффективности работы утилиты cat"  +/
Сообщение от Онаним (?), 19-Июл-22, 14:08 
Начнём с того, что оно требует sendpage на принимающей стороне, если это FS.
А так - гуглим
sendfile issues
sendfile sendpage
Ответить | Правка | Наверх | Cообщить модератору

29. "Эксперимент по повышению эффективности работы утилиты cat"  +/
Сообщение от Онаним (?), 19-Июл-22, 00:11 
Во, точно, я знаю. Надо для cat отдельный модуль ядра, который read-write будет делать прямо в ядре. А если серьёзно - cat-подобная операция копирования из дескриптора в дескриптор в ядре бы не помешала. copy_file_range маловато, оно с не-файлами не работает.
Ответить | Правка | Наверх | Cообщить модератору

36. "Эксперимент по повышению эффективности работы утилиты cat"  –1 +/
Сообщение от funny.falcon (?), 19-Июл-22, 01:51 
Так для этого и предназначен splice.
Правда, приходится делать два splice через pipe.
Ответить | Правка | Наверх | Cообщить модератору

54. "Эксперимент по повышению эффективности работы утилиты cat"  +/
Сообщение от Онаним (?), 19-Июл-22, 09:16 
Ехал splice через pipe, и я о том же.
Копирование между дескрипторами в принципе частая операция, честно говоря, оно бы и sendfile заменило, и много чего ещё.
Ответить | Правка | Наверх | Cообщить модератору

90. "Эксперимент по повышению эффективности работы утилиты cat"  +/
Сообщение от Аноним (90), 19-Июл-22, 14:02 
Я бы для начала разобрался, почему sendfile() оказался медленнее splice+pipe.
Ответить | Правка | Наверх | Cообщить модератору

95. "Эксперимент по повышению эффективности работы утилиты cat"  +/
Сообщение от Аноним (-), 19-Июл-22, 14:21 
> Я бы для начала разобрался, почему sendfile() оказался медленнее splice+pipe.

Так разберись?

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

124. "Эксперимент по повышению эффективности работы утилиты cat"  +/
Сообщение от ламерок (?), 20-Июл-22, 14:17 
так.. я уже запутался, мне из stdio в unix socket нужно, чем воспользоваться sendfile vs splice?
Ответить | Правка | К родителю #36 | Наверх | Cообщить модератору

30. "Эксперимент по повышению эффективности работы утилиты cat"  +1 +/
Сообщение от Аноним (30), 19-Июл-22, 00:23 
А io_uring сюда прикрутить можно?
Ответить | Правка | Наверх | Cообщить модератору

42. "Эксперимент по повышению эффективности работы утилиты cat"  +/
Сообщение от аноним228 (?), 19-Июл-22, 05:36 
Анон ты чем сейчас занят? Где комментарий: "Единственный способ ускорить сишное приложение - это если переписать его на RUST!"
Ответить | Правка | Наверх | Cообщить модератору

46. "Эксперимент по повышению эффективности работы утилиты cat"  –3 +/
Сообщение от Аноним (46), 19-Июл-22, 07:33 
Учитывая открытия этого гендорного чуда, нас будет ждать очередное аут оф мемори как минимум. Сишка и тру сишники такие тру...
Ответить | Правка | Наверх | Cообщить модератору

74. "Эксперимент по повышению эффективности работы утилиты cat"  +1 +/
Сообщение от Аноним (74), 19-Июл-22, 11:34 
что не так с открытием и почему тебе не фиолетово, что там за чудо за клавиатурой?
Ответить | Правка | Наверх | Cообщить модератору

52. "Эксперимент по повышению эффективности работы утилиты cat"  +3 +/
Сообщение от onanim (?), 19-Июл-22, 09:06 
я как только увидел заголовок, сразу подумал, что cat на Rust переписали.
Ответить | Правка | К родителю #42 | Наверх | Cообщить модератору

79. "Эксперимент по повышению эффективности работы утилиты cat"  +1 +/
Сообщение от Аноним (79), 19-Июл-22, 12:23 
Мозила переписывала-переписывала FF - недопереписала...
Ответить | Правка | Наверх | Cообщить модератору

87. "Эксперимент по повышению эффективности работы утилиты cat"  +/
Сообщение от Аноним (87), 19-Июл-22, 13:14 
У всех проблем одно начало...
Сидела женщина, скучала,
Качала ножкою своей,
И вдруг пришла мыслишка к ней...
.....

© Copyright: Александр Флинде, 2015

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

48. Скрыто модератором  –1 +/
Сообщение от Аноним (48), 19-Июл-22, 08:21 
Ответить | Правка | Наверх | Cообщить модератору

49. Скрыто модератором  +2 +/
Сообщение от Аноним (48), 19-Июл-22, 08:27 
Ответить | Правка | Наверх | Cообщить модератору

53. Скрыто модератором  +1 +/
Сообщение от Аноним (53), 19-Июл-22, 09:13 
Ответить | Правка | Наверх | Cообщить модератору

50. "Эксперимент по повышению эффективности работы утилиты cat"  –2 +/
Сообщение от Аноним (50), 19-Июл-22, 08:43 
Вау. Спустя столько лет лунуксоиды решили прекратить быдлокодить и вспомнили об оптимизациях.
Ответить | Правка | Наверх | Cообщить модератору

55. "Эксперимент по повышению эффективности работы утилиты cat"  +/
Сообщение от Аноним (55), 19-Июл-22, 09:23 
какое-то сильное преувеличение об авторстве audacious. это ж был просто форк xmms.
Ответить | Правка | Наверх | Cообщить модератору

56. "Эксперимент по повышению эффективности работы утилиты cat"  +/
Сообщение от Аноним (56), 19-Июл-22, 09:35 
Вроде уже переписали на Rust: https://github.com/sharkdp/bat
Ответить | Правка | Наверх | Cообщить модератору

65. "Эксперимент по повышению эффективности работы утилиты cat"  +/
Сообщение от Аноним (-), 19-Июл-22, 10:06 
Это вообще отдельная херь не имеющая отношения к сабжу.
Ответить | Правка | Наверх | Cообщить модератору

66. "Эксперимент по повышению эффективности работы утилиты cat"  –1 +/
Сообщение от Аноним (-), 19-Июл-22, 10:15 
Вот бы кто cat на Project Verona написал…
Ответить | Правка | Наверх | Cообщить модератору

75. "Эксперимент по повышению эффективности работы утилиты cat"  +/
Сообщение от Аноним (75), 19-Июл-22, 11:35 
> Вот бы кто cat на Project Verona написал…

Я даже не знаю что такое "Project Verona". Поэтому на меня можете не смотреть, меня жизнь этого проекта интересует меньше чем жизнь личинок мухи на другом континенте.

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

71. "Эксперимент по повышению эффективности работы утилиты cat"  +/
Сообщение от Аноним (56), 19-Июл-22, 11:17 
Пожалуй да, bat больше похож на less.
Ответить | Правка | К родителю #65 | Наверх | Cообщить модератору

77. "Эксперимент по повышению эффективности работы утилиты cat"  +1 +/
Сообщение от онаним (?), 19-Июл-22, 11:38 
должно быть "rat"
Ответить | Правка | К родителю #56 | Наверх | Cообщить модератору

67. "Эксперимент по повышению эффективности работы утилиты cat"  +3 +/
Сообщение от Аноним (67), 19-Июл-22, 10:39 
Ctrl+C/kill теперь не будет работать?
Ответить | Правка | Наверх | Cообщить модератору

76. "Эксперимент по повышению эффективности работы утилиты cat"  +/
Сообщение от Аноним (74), 19-Июл-22, 11:35 
кстати, интересно. часто случайно делаю cat бинарника на медленном ssh
Ответить | Правка | Наверх | Cообщить модератору

69. "Эксперимент по повышению эффективности работы утилиты cat"  +/
Сообщение от Аноним (69), 19-Июл-22, 10:51 
sed не помешало бы оптимизировать.
Ответить | Правка | Наверх | Cообщить модератору

88. "Эксперимент по повышению эффективности работы утилиты cat"  +/
Сообщение от Аноним (88), 19-Июл-22, 13:37 
А практическая польза от cat с 4 Гб вообще есть? Вообще для копирования используют cp в нем как дела обстоят?
Ответить | Правка | Наверх | Cообщить модератору

91. "Эксперимент по повышению эффективности работы утилиты cat"  +4 +/
Сообщение от Аноним (-), 19-Июл-22, 14:03 
> Вообще для копирования используют cp

Ведущие собаководы для копирования используют dd

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

97. "Эксперимент по повышению эффективности работы утилиты cat"  +1 +/
Сообщение от Аноним (-), 19-Июл-22, 14:25 
> Ведущие собаководы для копирования используют dd

Ну сделай им cp --reflink. Хотя с таких собаководов станется и 2-терабайтный образ винча копировать целиком, когда reflinked "копия" менее чем за секунду готова. Правда, вроде, это все же эксперты по мойке (или стрижке?) собак были...

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

104. "Эксперимент по повышению эффективности работы утилиты cat"  +/
Сообщение от Аноним (104), 19-Июл-22, 18:36 
> cp --reflink.

Ведущие собаководы используют ln

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

113. "Эксперимент по повышению эффективности работы утилиты cat"  +/
Сообщение от Аноним (-), 20-Июл-22, 02:55 
Маленький нюансик в том что вон те 2 терабайтных образа ведут себя как независимые файлы. И если эксперимент с починкой на "копии" зафейлился, можно стереть "копию" и попробовать иной подход.

А с ln вы таки безвозвратно загадите единственную копию которая была. И что хотите потом то и делайте. Так что я останусь при мнении что это ведущим собаководам лучше заниматься стрижкой собак. Или мойкой, что там пох хотел делать, не помню, но ему подходило больше чем линухами рулить. А зачем позориться такой эффективностью, когда те кто освоил современные технологии делают вас в десятки раз? Чтобы показывать всем остальным что вы отсталые днища? Это единственное ваше применение в современном IT.

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

119. "Эксперимент по повышению эффективности работы утилиты cat"  +/
Сообщение от Аноним (-), 20-Июл-22, 12:25 
> Маленький нюансик

Маленький нюансик начался с твоего 'cp --reflink', который возможен в пределах одной файловой системы, который поддерживает reflink'и.

В отличии от в шутку предложенной dd, который практически аналог cp.

Мой нюансик был ответом на твой нюансик. Давай меряться, чей нюансик меньше, или больше.

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

122. "Эксперимент по повышению эффективности работы утилиты cat"  +/
Сообщение от тигар.логиниться.лень (?), 20-Июл-22, 13:02 
усёр294, как там бтрфс, уже продакшн-реди? и второй вопрос - почему ты перестал везде вообще писать про "кампуктер размером с кредитку"?:-)
Ответить | Правка | К родителю #113 | Наверх | Cообщить модератору

112. "Эксперимент по повышению эффективности работы утилиты cat"  +/
Сообщение от _kp (ok), 20-Июл-22, 02:23 
Если просто копировать, то конечно, да, но если по пути пропустить в конвейерную обработку... то cat.
Ответить | Правка | К родителю #88 | Наверх | Cообщить модератору

115. "Эксперимент по повышению эффективности работы утилиты cat"  +/
Сообщение от Ламерок (??), 20-Июл-22, 05:47 
просто в cp реализовано system("cat file1 > file2")
Ответить | Правка | К родителю #88 | Наверх | Cообщить модератору

116. "Эксперимент по повышению эффективности работы утилиты cat"  –1 +/
Сообщение от n00by (ok), 20-Июл-22, 05:52 
> А практическая польза от cat с 4 Гб вообще есть? Вообще для
> копирования используют cp в нем как дела обстоят?

cat - от concatenate, т.е. служит для склейки файлов. Что там можно склеивать из 4-х гигабайтных файлов - так и осталось без ответа.

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

134. "Эксперимент по повышению эффективности работы утилиты cat"  +/
Сообщение от Аноним (134), 23-Июл-22, 16:36 
А Ариадну эту пробовал спросить?
Ответить | Правка | Наверх | Cообщить модератору

136. "Эксперимент по повышению эффективности работы утилиты cat"  +/
Сообщение от n00by (ok), 24-Июл-22, 07:09 
Так исходный вопрос не мой. Я так понял, что он риторический и обращён к местным экспертам, восторгающимся снижением карбонового следа.
Ответить | Правка | Наверх | Cообщить модератору

99. "Эксперимент по повышению эффективности работы утилиты cat"  –1 +/
Сообщение от Аноним (99), 19-Июл-22, 17:05 
Вот сейчас перепишут cp и в нём появятся дыры когда простой юзер будет рута получать при копировании файлов. Или файлы будут битые при определённых условиях.
Работает - не трогай!
Ответить | Правка | Наверх | Cообщить модератору

107. "Эксперимент по повышению эффективности работы утилиты cat"  +1 +/
Сообщение от Аноним (107), 19-Июл-22, 21:12 
https://mazzo.li/posts/fast-pipes.html (How fast are Linux pipes anyway?)
Ответить | Правка | Наверх | Cообщить модератору

114. "Эксперимент по повышению эффективности работы утилиты cat"  +/
Сообщение от Ламерок (??), 20-Июл-22, 05:46 
а что делать если sendfile вернул меньше чем нужно отправить данных?!
Ответить | Правка | Наверх | Cообщить модератору

120. "Эксперимент по повышению эффективности работы утилиты cat"  +1 +/
Сообщение от Аноним (-), 20-Июл-22, 12:29 
Посылать повторно, пока не вернется сколько надо или больше?
Ответить | Правка | Наверх | Cообщить модератору

123. "Эксперимент по повышению эффективности работы утилиты cat"  +/
Сообщение от ламерок (?), 20-Июл-22, 14:14 
вот хз в мане этот случай не описан, как например в read/write, поэтому испросил
Ответить | Правка | Наверх | Cообщить модератору

128. "Эксперимент по повышению эффективности работы утилиты cat"  +/
Сообщение от Аноним (126), 21-Июл-22, 03:14 
Вы всё врёти!
```
RETURN VALUE
       If  the  transfer was successful, the number of bytes written to out_fd is returned.  Note that a successful call to sendfile() may write fewer bytes than re‐
       quested; the caller should be prepared to retry the call if there were unsent bytes.  See also NOTES.
```
Ответить | Правка | Наверх | Cообщить модератору

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

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




Спонсоры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

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