1.2, A.Stahl (ok), 10:43, 28/02/2021 [ответить] [﹢﹢﹢] [ · · · ]
| +26 +/– |
Всё, Раст больше не нужен? (Ну, он и раньше был не нужен, но теперь за него вообще никаких аргументов не осталось)
| |
|
2.4, ИмяХ (?), 10:46, 28/02/2021 [^] [^^] [^^^] [ответить]
| +11 +/– |
Благодаря этому инструменту выявятся те участки кода, которые нужно переписать на раст.
| |
|
|
|
|
6.178, Аноним (178), 20:37, 03/03/2021 [^] [^^] [^^^] [ответить]
| +/– |
Сабж таки позиционируется как годный и для продакшнового применения. Если от KASAN оверхед солидный то от этого уже куда разумнее. Поэтому можно позволить себе избавиться от непонятных барабашек и сделать хакерам неудобно. Если это важнее максимального перфоманса любой ценой.
| |
|
5.18, Anonimous (?), 11:58, 28/02/2021 [^] [^^] [^^^] [ответить]
| +/– |
Так сабж всегда можно отключить, если дебаг не нужен. При отклюбчении не будет и оверхеда.
| |
5.19, Аноним (19), 11:58, 28/02/2021 [^] [^^] [^^^] [ответить]
| +3 +/– |
Сабж это культ-карго от легковерных туземцев, которые ужас как боятся дыреней.
| |
|
6.79, пердёжник (?), 16:54, 28/02/2021 [^] [^^] [^^^] [ответить]
| –2 +/– |
> Сабж это культ-карго от легковерных туземцев, которые ужас как боятся дыреней.
Ну да, это нормально когда у вас приложение вылетает раз в час (сарказм)
| |
|
7.140, Аноним (140), 23:13, 01/03/2021 [^] [^^] [^^^] [ответить]
| +/– |
Сейчас 2021 год сейчас ничего не вылетает раз в час. Вылезь уже из криокамеры.
| |
7.179, Аноним (178), 20:37, 03/03/2021 [^] [^^] [^^^] [ответить]
| +/– |
> Ну да, это нормально когда у вас приложение вылетает раз в час (сарказм)
Это вы про питон наверное, там класть на ошибки норма, поэтому оно в какой-то момент просто осыпается с диким стэктрейсом как раз.
| |
|
6.170, Аноним (-), 20:16, 03/03/2021 [^] [^^] [^^^] [ответить]
| –1 +/– |
Нене, за карго культом - к растаманам. У них там эрзац пакетного менеджера.
| |
|
|
4.43, Owlet (?), 14:14, 28/02/2021 [^] [^^] [^^^] [ответить]
| –2 +/– |
У раста нет оверхеда по сравнению с си на эквивалентном коде. Все его фичи работают во время компиляции.
| |
|
|
|
7.137, Аноним (-), 19:56, 01/03/2021 [^] [^^] [^^^] [ответить]
| +/– |
> Сылки на треды, в которых проходило обсуждение
"Мы все так говорим, а значит это правда!" (с)
| |
|
8.147, Аноним (-), 16:40, 02/03/2021 [^] [^^] [^^^] [ответить] | +1 +/– | А grep переписали в ripgrep и получилось быстрее Причем не в абстрактновакуумны... текст свёрнут, показать | |
|
|
10.166, Аноним (-), 14:46, 03/03/2021 [^] [^^] [^^^] [ответить] | +/– | Так дети, пытающиеся казаться взрослыми, умничают, не пытаясь понять смысл прочи... большой текст свёрнут, показать | |
|
|
|
11.197, Аноним (-), 10:33, 07/03/2021 [^] [^^] [^^^] [ответить] | +/– | Оно как бы да, но есть нюансы Вот конкретно это - и правда довольно странная шт... большой текст свёрнут, показать | |
|
|
|
8.164, Alexey (??), 08:17, 03/03/2021 [^] [^^] [^^^] [ответить] | +1 +/– | Надеюсь вы сами прочитали статью Dropbox как минимум утверждает, что 1 реализа... текст свёрнут, показать | |
|
|
|
5.49, Славик (?), 14:53, 28/02/2021 [^] [^^] [^^^] [ответить]
| –1 +/– |
Smart_pointer - это разве не оверхед? Каждое обращение к памяти со спинлоком!
| |
|
6.124, Siborgium (ok), 09:44, 01/03/2021 [^] [^^] [^^^] [ответить]
| +/– |
Оверхед, но никаких спинлоков там нет. Проблема там в том, что умные указатели плохо оптимизируются, но от этого страдают и кресты в той же степени.
| |
|
7.203, Славик (ok), 10:35, 14/10/2022 [^] [^^] [^^^] [ответить]
| +/– |
Я имел ввиду Thread Safety смарт поинтера. Если не спинлок то атомик, хрен редьки не слаще.
Ой.. позновато прочитал.
| |
|
6.131, _ (??), 14:20, 01/03/2021 [^] [^^] [^^^] [ответить]
| +/– |
О каких умных указателях ты говоришь?
Обычные ссылки (&T, &mut T) имеют в рантайме оверхеда даже меньше чем обычные указатели, ибо у них намного более строгие правила алиасинга
Box оверхед имеет только на этапе компиляции, в рантайме это тот же malloc/free
Rc имеет оверхед Box + подсчёт ссылок через inc/dec
Arc - тот же Rc, только подсчёт ссылок атомарный
Таким образом оверхед ты задаёшь явно, и там где надо можешь обойтись без него
Ни о каких спинлоках речи не идёт, если ты сам не создашь свой умный указатель со спинлоками, и не назовёшь его SpinLock
| |
|
7.169, Аноним (-), 20:12, 03/03/2021 [^] [^^] [^^^] [ответить]
| +/– |
Указатель обычно сводится к вгрузке аж 1 регистра (базы) константой (адресом), от которого потом и пляшут. В лучшем случае - круть типа LTO еще потом допрет, что вон там и вон там уже похожее было, так что вместо кодирования всего адреса закодирует только смещение в команде. В каком месте может оверхед возникнуть? Это ж примитивные регистровые операции в современных процессорах. Можно даже прямо относительно PC (IP, ...) кодировать на нормальных процах с относительной адресацией, ARM такое очень любят. Уродцы типа x86-32 не в счет, ими уже почти никто не пользуется.
Там и так эффективность запредельная, LZ4 даже на чистом асме народ побить не смог.
| |
|
8.199, _ (??), 11:28, 11/03/2021 [^] [^^] [^^^] [ответить] | +1 +/– | Оверхед появляется на оптимизируемом коде с алиасингом, см сишный restrict В Rus... текст свёрнут, показать | |
|
|
|
5.125, Siborgium (ok), 09:45, 01/03/2021 [^] [^^] [^^^] [ответить]
| +/– |
Полная чушь. Да, на расте можно писать как на си, но тогда он от си ничем не отличается. На сейф расте оверхед есть и он очень заметный.
| |
5.149, Аноним (149), 16:42, 02/03/2021 [^] [^^] [^^^] [ответить]
| +/– |
ооооооооооооо даааааааааааааааааааааааа
уволен по причине некомпетентности, гуляй вася
| |
|
|
3.62, Аноним (62), 15:43, 28/02/2021 [^] [^^] [^^^] [ответить]
| +/– |
>Благодаря этому инструменту выявятся те участки кода, которые нужно переписать на раст.
Но зачем? Раз уж выявили, то можно существующих код на C подправить.
| |
|
4.189, пердёжник (?), 08:25, 04/03/2021 [^] [^^] [^^^] [ответить]
| +/– |
> Но зачем? Раз уж выявили, то можно существующих код на C подправить.
тоже логично
| |
|
3.171, Аноним (-), 20:17, 03/03/2021 [^] [^^] [^^^] [ответить]
| +/– |
> Благодаря этому инструменту выявятся те участки кода, которые нужно переписать на раст.
Пофиксить их на си будет сильно проще. А так растишки свой redox уже который там год переписыват. Но пока вроде ни 1 живого дева юзающего свое недоразумение для хотя-бы разработки ОС так и нет?
| |
|
2.7, Аноним (7), 10:59, 28/02/2021 [^] [^^] [^^^] [ответить]
| –3 +/– |
Ты не так остёр, как думаешь.
Поздно пить смузи, когда продакшн упал. И удачи с исправлением в исходниках и слел6ующим деплоем.
| |
|
3.54, Аноним (54), 15:12, 28/02/2021 [^] [^^] [^^^] [ответить]
| +/– |
что самое интересное, его плюсуют какие-то смузи-фанбои, что говорит о том, насколько интеллектуально развиты 95% местной аудитории
| |
|
4.68, Аноним (68), 15:59, 28/02/2021 [^] [^^] [^^^] [ответить]
| +/– |
> что самое интересное, его плюсуют какие-то смузи-фанбои, что говорит о том, насколько интеллектуально развиты 95% местной аудитории
Сам и плюсует - делов-то, запустить скрипт трехстрочник.
| |
|
|
|
3.13, A.Stahl (ok), 11:38, 28/02/2021 [^] [^^] [^^^] [ответить]
| +14 +/– |
(Ну, он и раньше был не нужен, но теперь за него вообще никаких аргументов не осталось)
| |
3.20, Аноним (19), 11:59, 28/02/2021 [^] [^^] [^^^] [ответить]
| +/– |
Безопасных языков еще полно, можно за любой топить хоть за zig.
| |
|
4.46, Аноним (6), 14:48, 28/02/2021 [^] [^^] [^^^] [ответить]
| +/– |
> Безопасных языков еще полно, можно за любой топить хоть за zig.
Я топил за zig 8 лет назад, теперь я топлю за си, как за самый безопасный (в сравнении с теми же плюсами или даже джавой).
| |
|
5.141, Аноним (140), 23:15, 01/03/2021 [^] [^^] [^^^] [ответить]
| +/– |
Языку zig 5 лет, а топил ты за него когда его не было. Завязывай уже с тем что ты там делаешь.
| |
|
6.143, Аноним (6), 06:13, 02/03/2021 [^] [^^] [^^^] [ответить]
| +1 +/– |
И что такого? Я оценил аргументы автора ещё когда он только разрабатывался. Но, в конечном счёте, пришлось признать, что си при грамотном подходе намного лучше альтернатив.
| |
|
7.172, Аноним (-), 20:23, 03/03/2021 [^] [^^] [^^^] [ответить] | +1 +/– | Для си статический анализ и инструментацию более-менее нарулили А типовые пробл... большой текст свёрнут, показать | |
|
|
|
|
3.67, Аноним (62), 15:48, 28/02/2021 [^] [^^] [^^^] [ответить]
| –3 +/– |
>Fracta1L теперь не нужен.
Но, ведь, скучно без него будет :)
| |
|
|
|
4.32, Аноним (32), 12:46, 28/02/2021 [^] [^^] [^^^] [ответить]
| +1 +/– |
переполнение буфера от присланного по сети кривого пакета раст тоже на этапе компиляции проверяет?
| |
|
5.35, Аноним (35), 13:20, 28/02/2021 [^] [^^] [^^^] [ответить]
| –1 +/– |
При обращении к буферу Rust автоматически сделает проверки на выход за границу. При выходе будет либо паника, либо вернется Option::None, зависит как обращаться. Если эти проверки гарантированно не нужны, их выкинет оптимизатор. Для чтения данных применяются методы, которые тоже проверяют границы переданного им буфера, и не выходят за границу. (Слайсы в Rust содержат не только голый указатель, но и длину).
Я не работал с голыми пакетами, но если объясните подробнее, как при кривом пакете происходит переполнение буфера, буду благодарен.
| |
|
|
7.158, Аноним (158), 01:28, 03/03/2021 [^] [^^] [^^^] [ответить]
| +/– |
> Так нет оверхеда, или есть автоматические проверки на выход за границу?
Эти проверки и в Си по хорошему надо делать, поэтому никакого оверхеда, только автоматизация. Но если вотпрямкапецкакнадо, есть unsafe-метод.
| |
|
6.127, Совершенно другой аноним (?), 10:57, 01/03/2021 [^] [^^] [^^^] [ответить]
| +/– |
Например, кривой пакет состоит из заголовка плавающего размера и тела. Например, в заголовке, по лучшим традициям Microsoft (у них часто применялся такой подход) в самом начале есть длина заголовка, на основании которого можно вычислить, где начинается тело и размер самого тела пакета. Ну и вот, вдруг, например размер заголовка кто-то сформировал не 10, а 100. Соответственно при разборе такого пакета можно вылететь за буфер на 90 байт, если взаимно не контролировать все эти длины и между собой и с общей длиной пакета.
| |
|
|
8.182, Аноним (-), 20:46, 03/03/2021 [^] [^^] [^^^] [ответить] | +/– | Особенно интересно будет когда ты попробуешь все это в кернел моде провернуть А... большой текст свёрнут, показать | |
|
|
|
5.44, Аноним (-), 14:38, 28/02/2021 [^] [^^] [^^^] [ответить]
| +/– |
> переполнение буфера от присланного по сети кривого пакета раст тоже на этапе
> компиляции проверяет?
Пинание погроммиста использовать итератор, если он не хочет по умолчанию получить баундчек в рантайме, происходит на этапе компиляции.
| |
|
6.53, Сишник (?), 15:10, 28/02/2021 [^] [^^] [^^^] [ответить]
| –2 +/– |
Ну так и в сишке можно массив гарантированно обойти без промаха и проверок - макрос тип FOR(list, pointer, type) юзаешь и всё.
| |
|
7.55, Аноним (12), 15:15, 28/02/2021 [^] [^^] [^^^] [ответить]
| –2 +/– |
Кто-то говорил, что нельзя? А почему все не юзают? А говорит ли об этом компилятор? А почему мне язык не даст по рукам, если я использую небезопасную версию, если безопасная версия не имеет штрафа по перформансу?
| |
|
|
9.73, Аноним (-), 16:16, 28/02/2021 [^] [^^] [^^^] [ответить] | –2 +/– | Таково древнее наследие обратной совместимости и отсутствие проработанной базы ... текст свёрнут, показать | |
|
8.88, Аноним (88), 20:27, 28/02/2021 [^] [^^] [^^^] [ответить] | +2 +/– | По той же причине по которой используют неэффективные алгоритмы или пишут свой в... текст свёрнут, показать | |
|
9.101, Аноним (12), 23:22, 28/02/2021 [^] [^^] [^^^] [ответить] | –1 +/– | То есть эта хитрая штука не переносима между платформами Язык Си точно для крос... текст свёрнут, показать | |
|
|
7.72, Аноним (-), 16:12, 28/02/2021 [^] [^^] [^^^] [ответить]
| +2 +/– |
> Ну так и в сишке можно массив гарантированно обойти без промаха и
> проверок - макрос тип FOR(list, pointer, type) юзаешь и всё.
Понимаешь, алгебраические типы данных и отсутствие null - это не только модные слова акедемических смузихлебов последних 30 лет, но и возможность для компилятора сильно ограничить некорректные состояния вычислений и выкинуть на*рен все лишние проверки, заэнфорсив только одну - при проверке входящих данных.
| |
|
8.185, Аноним (-), 20:52, 03/03/2021 [^] [^^] [^^^] [ответить] | +/– | Как ни странно, GCC в этом довольно неплохо преуспевает А прикинь, он сам умеет... большой текст свёрнут, показать | |
|
9.187, Аноним (-), 01:15, 04/03/2021 [^] [^^] [^^^] [ответить] | +/– | А прикинь - как ни странно, для этого используются наработки смузихлебов по оп... большой текст свёрнут, показать | |
|
|
|
|
|
4.173, Аноним (-), 20:25, 03/03/2021 [^] [^^] [^^^] [ответить]
| –1 +/– |
> раст, в отличии от, делает проверки на этапе компиляции
А тут их железка делает. Условно халявно - она всегда это делает, просто более креативное использование paging. Хруст, кстати, без MMU тоже, видите ли, много чего не могет - так он тоже на поддержку некоторых constraints железками полагается.
| |
|
|
2.80, freecoder_xx (?), 17:01, 28/02/2021 [^] [^^] [^^^] [ответить]
| +4 +/– |
Это пять! Зашел сюда специально, чтобы почитать комменты про Rust. Заголовок новости просто кричит о том, что в комментариях будут его обсуждать. )
| |
|
3.84, Анончик (?), 18:38, 28/02/2021 [^] [^^] [^^^] [ответить]
| +/– |
Ну только поржать над людьми которые больше helloworld.c не видели и даже не вдупляют что такое санитайзер.
| |
|
2.83, Анончик (?), 18:36, 28/02/2021 [^] [^^] [^^^] [ответить]
| +/– |
каким был тролем таким и остался. Думал возраст тебя исправит но видно нет.
| |
2.92, GrayRats (ok), 22:13, 28/02/2021 [^] [^^] [^^^] [ответить]
| +/– |
ммм ядро пишут на С и Shell и других очень низких языках раст тут не нужен
| |
|
3.93, Аноним (-), 22:58, 28/02/2021 [^] [^^] [^^^] [ответить]
| +/– |
> ммм ядро пишут на С и Shell и других очень низких языках раст тут не нужен
> ядро пишут на С и Shell
> Shell и других очень низких языках
Это опеннет ...
| |
|
4.121, n00by (ok), 08:24, 01/03/2021 [^] [^^] [^^^] [ответить]
| +/– |
>> ммм ядро пишут на С и Shell и других очень низких языках раст тут не нужен
>> ядро пишут на С и Shell
>> Shell и других очень низких языках
> Это опеннет ...
Как минимум Rosa Tresh полностью автономна и написана баш-программистами.
| |
|
3.174, Аноним (-), 20:26, 03/03/2021 [^] [^^] [^^^] [ответить]
| +/– |
> ммм ядро пишут на С и Shell и других очень низких языках раст тут не нужен
На shell там разве что кусочки системы сборки, лол.
| |
|
2.146, Аноним (149), 16:40, 02/03/2021 [^] [^^] [^^^] [ответить]
| +/– |
А он был кому-то кроме фрактала (не написавшего не строчки) нужен?
| |
|
1.3, Аноним (-), 10:46, 28/02/2021 [ответить] [﹢﹢﹢] [ · · · ]
| –2 +/– |
Лучше бы добавили простую возможность узнавать-проверять валидные границы памяти в приложениях, существующие решения или набор непереносимых костылей или огромные библиотеки снижающие производительность
| |
|
2.5, Онаним (?), 10:51, 28/02/2021 [^] [^^] [^^^] [ответить]
| +2 +/– |
Такая возможность в C/C++ и много других языков уже давно добавлена.
if или assert, по вкусу.
| |
2.22, Аноним (19), 12:02, 28/02/2021 [^] [^^] [^^^] [ответить]
| –1 +/– |
Умные указатели уже миллион лет как придумали в с++. Это все равно что аналог safe в с++.
| |
|
3.30, Аноним (12), 12:25, 28/02/2021 [^] [^^] [^^^] [ответить]
| –2 +/– |
> Умные указатели уже миллион лет как придумали в с++
А когда запретят писать на "тупых" указателях?
> Это все равно что аналог safe в с++
Что ты подразумеваешь под safe?
| |
|
4.34, SR_team (ok), 13:18, 28/02/2021 [^] [^^] [^^^] [ответить]
| –1 +/– |
> А когда запретят писать на "тупых" указателях?
Не раньше, чем из раста полностью удалят unsafe, и любой код будет safe, т.е. никогда
| |
|
5.56, Аноним (12), 15:18, 28/02/2021 [^] [^^] [^^^] [ответить]
| +/– |
Ему про тупые указатели, он про раст и safe, сначала определи, что такое safe, можешь при этом не использовать слово "раст"
| |
|
6.145, SR_team (ok), 10:48, 02/03/2021 [^] [^^] [^^^] [ответить]
| +/– |
> Ему про тупые указатели
они unsafe
> он про раст и safe, сначала определи, что такое safe
да, потому что полностью избавится от тупых указателей нельзя, даже если интерфейсы пользователя будут safe, кишки будут реализованы с unsafe. Полное выбрасывание unsafe из языка подразумевает, что на нем нельзя будет написать такие кишки.
> можешь при этом не использовать слово "раст"
за живое задел что-ли? Я не имел в виду ничего плохого в контексте раста
| |
6.175, Аноним (-), 20:28, 03/03/2021 [^] [^^] [^^^] [ответить]
| +/– |
> сначала определи, что такое safe, можешь при этом не использовать слово "раст"
У хрустиков есть кейворд такой. И что характерно, системщина без него чего-то ну совсем вот не обходится. Доходит до того что эти чудо кодеры пишут unsafe, asm, ну и какой там safety дальше наверное понятно. Черт, это уже даже статический анализ не сожрет, в asm видите ли маловато формальных деклараций намерений было.
| |
|
|
4.150, Аноним (149), 16:46, 02/03/2021 [^] [^^] [^^^] [ответить]
| +/– |
> А когда запретят писать на "тупых" указателях?
А зачем? Не надо их запрещать. Они прекрасны.
Те кто не осилил - никто не заставляет использовать. Можешь вообще без указателей.
| |
|
5.177, Аноним (178), 20:34, 03/03/2021 [^] [^^] [^^^] [ответить]
| +/– |
Особенно с железками поработать. Особенно когда точный паттерн доступа к адресу важен, ога. Но хрустики напишут unsafe asm и поимеют офигенно безопасТный и охренеть какой читаемый код.
А так то сие на сях делается. Если осторожно.
| |
|
|
|
|
1.8, Аноним (8), 11:08, 28/02/2021 [ответить] [﹢﹢﹢] [ · · · ]
| +2 +/– |
Что-то Debian стал много есть оперативки. Голая установка на uefi занимает 75 Мб оперативки. А ведь ещё пару лет назад 30 было. Ядро жиреет или что?
| |
|
|
|
4.25, Аноним (6), 12:16, 28/02/2021 [^] [^^] [^^^] [ответить]
| +/– |
Моё ядро занимает 80-100 (понятное дело без гуя вообще без всего). Но там все эти acpi с i2c и edac и всё прочее -- если их отключить, вроде даже можно что-то сэкономить, но тогда никакого контроля над железом просто не будет.
| |
|
|
6.27, Аноним (6), 12:20, 28/02/2021 [^] [^^] [^^^] [ответить]
| +3 +/– |
Из того что я знаю, добавили различные защиты и канареечные значения на случай атак, кроме того структуры ядра теперь рандомизируются в памяти.
| |
6.28, Аноним (12), 12:23, 28/02/2021 [^] [^^] [^^^] [ответить]
| +1 +/– |
Если раньше все работало, то зачем ты что-то меняешь? Сиди себе на своем старье на пуле памяти в 30мб
| |
|
7.40, Аноним (8), 14:03, 28/02/2021 [^] [^^] [^^^] [ответить]
| +3 +/– |
Я хотел узнать причины, а не слушать едкие бессмысленные колкости.
| |
|
8.48, Аноним (12), 14:52, 28/02/2021 [^] [^^] [^^^] [ответить] | –2 +/– | Ну смотри Ты не сидишь на своем старье, потому что тебя что-то не устраивало в н... текст свёрнут, показать | |
|
9.57, Аноним (8), 15:21, 28/02/2021 [^] [^^] [^^^] [ответить] | +/– | При чём здесь мой выбор новой версии Я спросил лишь причину жора оперативки Ме... текст свёрнут, показать | |
|
10.59, Аноним (12), 15:29, 28/02/2021 [^] [^^] [^^^] [ответить] | –1 +/– | Обновления безопасности - проблема Если нет проблем, то почему тебя беспокоят о... текст свёрнут, показать | |
|
|
12.105, Аноним (12), 23:29, 28/02/2021 [^] [^^] [^^^] [ответить] | –1 +/– | Наблюдаю по ленсуку, венде и прочим живым ОС Наращивание фич - увеличение потре... большой текст свёрнут, показать | |
|
|
|
|
|
|
8.61, Аноним (12), 15:33, 28/02/2021 [^] [^^] [^^^] [ответить] | +/– | Ты тоже из тех, кто считает, что если в системе есть баги, то это называется вс... текст свёрнут, показать | |
|
|
|
|
|
3.176, Аноним (-), 20:29, 03/03/2021 [^] [^^] [^^^] [ответить]
| +1 +/– |
> Чего минусов налепили? Проверьте сами в виртуалке хотя бы.
Запустил armhf версию на 64 мегах без свопа. Нормально? Не быстро, конечно - дискового буфера мизер.
| |
|
2.38, timur.davletshin (ok), 13:52, 28/02/2021 [^] [^^] [^^^] [ответить]
| +2 +/– |
Отключи Huge pages и будет кушать НАМНОГО меньше. Другой вопрос, что ты будешь потом жаловаться на фрагментацию оперативной памяти.
| |
|
3.97, Онаним (?), 23:04, 28/02/2021 [^] [^^] [^^^] [ответить]
| –2 +/– |
Смотря какие huge pages. Если transparent - то ведро нормально справляется с переаллокацией. Если принудительные аллокации в софте - там да, хип на полтора байта 2 метра весит.
| |
|
4.99, timur.davletshin (ok), 23:08, 28/02/2021 [^] [^^] [^^^] [ответить]
| +/– |
> Смотря какие huge pages. Если transparent - то ведро нормально справляется с
> переаллокацией. Если принудительные аллокации в софте - там да, хип на
> полтора байта 2 метра весит.
Ну переключи madvise параметр у ядра и проверь, сколько будет жрать ОЗУ после перезагрузки. Потом сравнишь с умолчальным. Разница будет в несколько сот мегабайт.
| |
|
5.100, Онаним (?), 23:21, 28/02/2021 [^] [^^] [^^^] [ответить] | +2 +/– | Взял одну из тестовых систем с MariaDB и обвесом Поигрался transparent_hugepag... большой текст свёрнут, показать | |
|
6.106, timur.davletshin (ok), 23:31, 28/02/2021 [^] [^^] [^^^] [ответить]
| +/– |
Раз уж за жадный до РАМы Линукс пошла пьянка, то ещё аллокатор памяти можно на какой-нибудь jemalloc поменять через LD_PRELOAD. Со старыми версиями glibc (до 2.26 вроде) особенно было актуально. Сейчас тоже смысл есть зачастую, но надо тестировать с самым "любимым" приложением. Ситуация перестала быть очень однозначной. Плюс, ряд приложений внутренне уже используют свой аллокатор памяти (FF тот же jemalloc древней версии какой-то использует).
| |
|
7.108, Онаним (?), 23:35, 28/02/2021 [^] [^^] [^^^] [ответить]
| +1 +/– |
Мне показалось - именно показалось, тестов много не делал, что в последнее время разница между malloc и jemalloc почти стёрлась.
| |
|
|
5.102, Онаним (?), 23:22, 28/02/2021 [^] [^^] [^^^] [ответить]
| +/– |
С madvise даже немножко меньше выходит, потому что ядро себя слегка пооптимальнее раскладывает.
Но у меня с thp по другим причинам не сложилось, там на расщепление страниц очень большие накладные расходы, поэтому оно везде выключено.
| |
|
|
7.107, Онаним (?), 23:31, 28/02/2021 [^] [^^] [^^^] [ответить]
| +/– |
Ну да. Там смотрю буферы диска с thp пооптимальнее ещё разложились.
Но всё равно, на системе с 12 крупными фоновыми демонами и ещё чистым MariaDB buffer pool никакими сотнями метров близко не пахнет.
| |
|
|
|
|
|
2.96, Онаним (?), 23:03, 28/02/2021 [^] [^^] [^^^] [ответить]
| +/– |
Делайте скидку на x86-64, в два раза разбухают указатели.
Плюс сам код рыхлее.
Но и модули памяти на месте не стояли, в пристойных машинах менее 4G уже не встретить, а на серверах вообще кошмарные объёмы, у меня системный SSD меньше :D
| |
|
|
4.116, Онаним (?), 23:52, 28/02/2021 [^] [^^] [^^^] [ответить]
| +2 +/– |
Не совсем код.
Взять то же ядро.
Cтруктурки повыравнивали, чтобы в кеш удобнее ложились. RCU во все поля. Куча percpu структур новых - рост числа ядер в процах породил необходимость параллелить всё, что можно. Ну и самих структурок поболе стало. В сетевом стеке только с 4.x до 5.x вагон и тележка изменений.
| |
|
|
|
|
|
3.132, Урри (ok), 17:22, 01/03/2021 [^] [^^] [^^^] [ответить]
| +1 +/– |
А указатели на эти дополнительные струкуры не в физической памяти создаются?
| |
|
|
1.24, Zenitur (ok), 12:09, 28/02/2021 [ответить] [﹢﹢﹢] [ · · · ]
| –4 +/– |
Самое то для старых компьютеров, на которых memtest бьёт тревогу, а QEMM постоянно показывает окно "ой, у вас тут содержимое памяти повредилось". Но при этом надо как-то выживать, потому что SIMM или DIMM SDRAM уже хрен купишь.
Или это не то?
| |
|
2.33, Иван Лох (?), 13:17, 28/02/2021 [^] [^^] [^^^] [ответить]
| +4 +/– |
Нет. Это не то. То (возможномть передать ядру список битых блоков RAM) есть с первых версий linux.
| |
2.36, n80 (?), 13:33, 28/02/2021 [^] [^^] [^^^] [ответить]
| +1 +/– |
Не то, это легковесный аналог address sanitizer, чисто пытается проверять выходы за границу массивов/объектов. Для твоих нужд badram давно в ядре есть, если сбоят конкретные участки. Но, вообще говоря, контакты чисть и проверь охлаждение.
И да, где это SIMM/DIMM хрен купишь? Залежи же.
| |
2.85, Анончик (?), 18:43, 28/02/2021 [^] [^^] [^^^] [ответить]
| +/– |
полгода назад выкинул 10 планок по 64мб pc-133, до этого оно лежали на авито с полгода по 1 рубль штука.
Они тупо не нужны были людям.
| |
|
3.193, Аноним (193), 00:17, 07/03/2021 [^] [^^] [^^^] [ответить]
| +/– |
> полгода назад выкинул 10 планок по 64мб pc-133, до этого оно лежали
> на авито с полгода по 1 рубль штука.
Странно, они на драгмет заметно дороже идут.
| |
|
4.195, n80 (?), 10:08, 07/03/2021 [^] [^^] [^^^] [ответить]
| +/– |
> Странно, они на драгмет заметно дороже идут.
Эм, даже в существенно более старых буржуйских компонентах драг.металлы отсутствуют. Точнее, если чего и присутствует, то в совсем уж следовых количествах, так что на моей памяти их никто не принимал. Неужели сейчас начали перерабатывать и такое?
| |
|
|
2.201, Аноним (201), 16:40, 30/08/2021 [^] [^^] [^^^] [ответить]
| +/– |
Может, тебе подумать, какому бы музею вычтехники всю твою коллекцию продать? На вырученны, глядишь, и один новый компуктер прикупить выгорит.
| |
|
|
|
|
4.194, Аноним (194), 00:21, 07/03/2021 [^] [^^] [^^^] [ответить]
| +/– |
> Там длинная история: https://www.opennet.me/openforum/vsluhforumID3/119728.html#31
При том не такая однозначная как тут лечат. Там у людей довольно специфичные подходы и приоритеты. Вплоть до того что при непонятках лучше уронить систему, на всякий... но закавывка в том что это немного непрактично для продакшна. В конце концов компьютеры ставят чтобы работать а не паниковать.
> Патчи распространяются под GPL-2 и их можно включать в основное ядро.
У основного ядра расстановка приоритетов несколько другая, а своенравный и некооперативный апстрим - таки тоже отдельная проблема.
| |
|
|
2.63, Аноним (-), 15:46, 28/02/2021 [^] [^^] [^^^] [ответить]
| +2 +/– |
Не всем удается без смс и просмотра рекламы его скачать. Может по-этому ?
| |
|
1.69, Плохой Танцор (?), 15:59, 28/02/2021 [ответить] [﹢﹢﹢] [ · · · ]
| –3 +/– |
По моему скромному мнению, это всё костыли, а проблема кроется в неудачной архитектуре процессора и его системы команд. Можете бить меня тапками или кидать в меня камни, но от своего скромного мнения, я не откажусь.
| |
|
2.71, Ordu (ok), 16:07, 28/02/2021 [^] [^^] [^^^] [ответить]
| +2 +/– |
> от своего скромного мнения, я не откажусь.
Да кому ты нужен со своим скромным мнением?
| |
2.110, Онаним (?), 23:38, 28/02/2021 [^] [^^] [^^^] [ответить]
| +/– |
Проблема кроется в неудачной архитектуре человеческих мозгов, которые не заточены на 100% точные вычисления.
| |
2.129, InuYasha (??), 11:41, 01/03/2021 [^] [^^] [^^^] [ответить]
| +/– |
Как бы, и да, но наследие есть наследие, и пилить архитектуру с чистого листа, конечно, можно (если есть много денег и времени), но её внедрение будет весьма затруднительно. Так что, пока живём с x86 и наслоением новых макроинструкций. \(o_O)/
| |
|
1.75, Аноним (75), 16:23, 28/02/2021 [ответить] [﹢﹢﹢] [ · · · ]
| +/– |
>Подобная функциональность уже присутствовала в ядре в виде опции сборки KASAN (kernel address sanitizer, использует Address Sanitizer в современных gcc и clang) - однако позиционировалась в основном для отладочного применения.
Но ведь на убунте kasan из коробки идёт, и включается опцией в строке ядра.
| |
1.77, Аноним (75), 16:28, 28/02/2021 [ответить] [﹢﹢﹢] [ · · · ]
| –1 +/– |
Судя по описанию, на рабочих системах такое не нужно, в эксплоитах это обойдут, а говнодрайверы броадкома и так постоянно крашатся при полном отсутствии свободных аналогов, хорошо что хоть к панике ядра это не приводит.
| |
|
|
3.109, Онаним (?), 23:37, 28/02/2021 [^] [^^] [^^^] [ответить]
| +1 +/– |
Я так понимаю, "классический" arm лет через эннадцать пойдёт на выпил вместе с i?86 :)
| |
|
|
1.122, еман (?), 09:10, 01/03/2021 [ответить] [﹢﹢﹢] [ · · · ]
| +/– |
они лишь оттягивают неминуемое переписывание на rust.
есть же и другие ошибки памяти, а не только обращения к не размеченным областям..
| |
|
2.156, Аноним (157), 22:09, 02/03/2021 [^] [^^] [^^^] [ответить]
| +/– |
> неминуемое переписывание на rust
> есть же и другие ошибки памяти
Ну вот ты и доказал ненужность хруста.
| |
|
1.151, Аноним (152), 17:02, 02/03/2021 [ответить] [﹢﹢﹢] [ · · · ]
| +/– |
> но предусмотрена настройка "panic_on_warn"
А нельзя просто грохать приложение?
| |
|
2.160, Ordu (ok), 02:14, 03/03/2021 [^] [^^] [^^^] [ответить]
| +/– |
Какое приложение? Это санитайзер для ядерной кучи, для памяти используемой ядром. Если там косяк, то это косяк ядра, и юзерспейс код тут ни при чём. Более того, даже если его грохнуть, то это скорее всего не поможет, потому как косячные структуры в куче ядра продолжат существовать.
| |
|
1.192, Аноним (192), 23:28, 04/03/2021 [ответить] [﹢﹢﹢] [ · · · ]
| –1 +/– |
Когда система уходит в бесконечный своп и перестаёт реагировать на операции ввода, о чём в это время думает Торвальдс, какие все кругом 3.14-до-сы?
| |
|