1.2, Пропатентный тролль (?), 22:16, 11/02/2015 [ответить] [﹢﹢﹢] [ · · · ] [↓] [п©Б∙╗ п©Б∙╙п©Б∙╛п©Б∙╒п©Б∙ёя▐Б■─п©Б∙÷я▐Б■▄п©Б∙╛я▐Б■─я▐Б■░]
| +64 +/– |
Какой-то маразм. ОС на себя берёт всю тему общения с железом, буферезацию, размещение в (виртуальной!) памяти, следит за страницами, а БД делает write(fd, buf, sizeof(buf)) и ВНЕЗАПНО большинство времени тратится в ОС.
ЭТО ПРОСТО НЕВЕРОЯТНО! Я считаю надо писать докторскую. Или как минимум кандидатскую, ВАК будет довольна.
| |
|
2.10, Аноним (-), 23:22, 11/02/2015 [^] [^^] [^^^] [ответить] [↓] [п©Б∙╗ п©Б∙╙п©Б∙╛п©Б∙╒п©Б∙ёя▐Б■─п©Б∙÷я▐Б■▄п©Б∙╛я▐Б■─я▐Б■░]
| +8 +/– |
> Какой-то маразм. ОС на себя берёт всю тему общения с железом, буферезацию, размещение в (виртуальной!) памяти, следит за страницами, а БД делает write(fd, buf, sizeof(buf)) и ВНЕЗАПНО большинство времени тратится в ОС.
Таких вещей у "исследователей" не существует. Современный программистик - это функция которая за зарплату дергает методы объектов, пишет на C#, Python, JavaScript и юзерспейсом считает браузер.
| |
|
|
4.92, Аноним (-), 16:04, 12/02/2015 [^] [^^] [^^^] [ответить] [↓] [п©Б∙╗ п©Б∙╙п©Б∙╛п©Б∙╒п©Б∙ёя▐Б■─п©Б∙÷я▐Б■▄п©Б∙╛я▐Б■─я▐Б■░]
| +2 +/– |
>Ты имел ввиду Java, С#, JavaScript?
семейство Python,C#,Java,JavaScript,VB,VBScript,...
| |
|
|
2.22, Crazy Alex (ok), 00:28, 12/02/2015 [^] [^^] [^^^] [ответить] [↑] [п©Б∙╗ п©Б∙╙п©Б∙╛п©Б∙╒п©Б∙ёя▐Б■─п©Б∙÷я▐Б■▄п©Б∙╛я▐Б■─я▐Б■░]
| +9 +/– |
И тем не менее запросто может оказаться, что для данного конкретного случая ядро работает неоптимально. Причем виновата может быть любая сторона - как юзерспейс, неудачно работающий с интерфейсами ядра, так и само ядро. А может, там вообще пересборкой с другим конфигом можно обойтись. Как ни крути - локализация проблемного участка - это половина пути к решению проблемы.
| |
|
3.42, Какаянахренразница (ok), 05:13, 12/02/2015 [^] [^^] [^^^] [ответить] [↓] [п©Б∙╗ п©Б∙╙п©Б∙╛п©Б∙╒п©Б∙ёя▐Б■─п©Б∙÷я▐Б■▄п©Б∙╛я▐Б■─я▐Б■░]
| +7 +/– |
> запросто может оказаться, что для данного конкретного случая ядро работает неоптимально
Ядро работает не оптимально для любого (!) конкретного случая. Ибо оптимизировать под один случай означает запороться во всех остальных.
Пример. Каждый человек может сказать что-то типа "я не властелин вселенной, а все остальные не мои рабы, значит для моего конкретного случая общественный строй неоптимальный". И ведь будет прав, ибо общественный строй, условно говоря, оптимизирован для всего общества. Вот и ядро оптимизировано только для типового набора процессов и железа (для общего случая), но не для какого-то одного процесса.
| |
|
|
5.118, Какаянахренразница (ok), 05:07, 13/02/2015 [^] [^^] [^^^] [ответить] [п©Б∙╗ п©Б∙╙п©Б∙╛п©Б∙╒п©Б∙ёя▐Б■─п©Б∙÷я▐Б■▄п©Б∙╛я▐Б■─я▐Б■░]
| +5 +/– |
> В ядре шесть вагонов оптимизаций для тех или
> иных юз-кейсов.
В ядре, которое использовали ребята из этой новости, или в каком-то абстрактном сферическом ядре в вакууме? То-то же. Да, из исходников ядро можно собрать по-разному. Даже свои оптимизации можно добавить. И вообще, можно запилить своё ядро. Но это будет не то ядро, о котором говорится в новости. Софистика? Да ради бога.
| |
|
|
|
|
|
2.31, Аноним (-), 03:44, 12/02/2015 [^] [^^] [^^^] [ответить] [п©Б∙╗ п©Б∙╙п©Б∙╛п©Б∙╒п©Б∙ёя▐Б■─п©Б∙÷я▐Б■▄п©Б∙╛я▐Б■─я▐Б■░]
| +1 +/– |
> Главное, что на уровне ядра у них на 81% меньше! Достижение!
Ну так вроде бы и не соврали. Просто сказали не всю правду.
А знаете, в DOS можно вообще отделаться от овертеться от оверхеда на переключение контекстов и не надо ни с кем делить процессорное время. Правда радости с этого что-то мало...
| |
|
3.56, Аноним (-), 08:12, 12/02/2015 [^] [^^] [^^^] [ответить] [п©Б∙╗ п©Б∙╙п©Б∙╛п©Б∙╒п©Б∙ёя▐Б■─п©Б∙÷я▐Б■▄п©Б∙╛я▐Б■─я▐Б■░]
| –11 +/– |
>> Главное, что на уровне ядра у них на 81% меньше! Достижение!
> Ну так вроде бы и не соврали. Просто сказали не всю правду.
> А знаете, в DOS можно вообще отделаться от овертеться от оверхеда на
> переключение контекстов и не надо ни с кем делить процессорное время.
> Правда радости с этого что-то мало...
Не мало. DOS (а именно FreeDOS) - это лучшая реалтаймовая система из доступных сейчас. С прекрасной обратной совместимостью, прошу заметить. Для определённых задач (не требующх многозадачности и разделения прав доступа) - самое оно.
| |
|
4.58, Аноним (-), 08:30, 12/02/2015 [^] [^^] [^^^] [ответить] [п©Б∙╗ п©Б∙╙п©Б∙╛п©Б∙╒п©Б∙ёя▐Б■─п©Б∙÷я▐Б■▄п©Б∙╛я▐Б■─я▐Б■░]
| +20 +/– |
> Не мало. DOS (а именно FreeDOS) - это лучшая реалтаймовая система из
> доступных сейчас.
Булшит. Эталонный. От овоща застрявшего в 80-х прошлого века.
1) У х86 как такового с реалтаймностью - хреново! Мягко говоря. Ну то что jitter за счет cache hit/cache miss адский - думаю все давно поняли. Но это было бы слишком просто. Поэтому интел сделал SMM. Встанет у тебя какой-нибудь обработчик SMM на секунду в немеряном блобе биоса - и пусть весь мир подождет! Запретить вход в SMM нельзя - это самый привилегированный режим проца, ОС как максимум может лишь пост-фактум заметить что куда-то пропало процессорное время - видимо, кантовались в SMM. Ты как, готов расписаться за всю жизнедеятельность проприетарного биоса своей головой? А гарантии времен отклика возьмешь с традиционного места - с потолка?
2) Ссаный двухбаксовый микроконтроллер по части реалтаймности натянет все это безобразие с огромным отрывом и будет на порядки предсказуемее.
3) Дос "лучший" только для ретардов которые слаще морковки ничего не ели. Более дepьмово сделанной системы - еще поискать. Услуг минимум и они кривые, куча легаси и прочая. Модель памяти? Над ней угорает даже двухбаксовый микроконтроллерный ARM, где и то нынч есть нормальное плоское фоннеймановское 32-битное адресное пространство, без сношания мозга програмеру сегментацией и совершенно левыми ограничениями на ровном месте.
> С прекрасной обратной совместимостью, прошу заметить. Для определённых
> задач (не требующх многозадачности и разделения прав доступа) - самое оно.
При условии что вы безнадежный некрофаг, застрявший в развитии в своих 80-х.
| |
|
|
|
|
|
3.12, kuku (ok), 23:49, 11/02/2015 [^] [^^] [^^^] [ответить] [↓] [↑] [п©Б∙╗ п©Б∙╙п©Б∙╛п©Б∙╒п©Б∙ёя▐Б■─п©Б∙÷я▐Б■▄п©Б∙╛я▐Б■─я▐Б■░]
| –3 +/– |
Сначала расстроился, неужели всё так плохо ?
Но потом вспомнил что в TOP500 более 90%
занимает Linux. По моему там объёмы информации
немалые.
Улыбнуло. Недоперезап*сделись...
А моська продолжала тявкать...
А в Microsoft вообще-то молодцы, в плане
подрывной деятельности экосистемы Linux преуспели.
| |
|
|
|
|
3.69, VoDA (ok), 10:20, 12/02/2015 [^] [^^] [^^^] [ответить] [п©Б∙╗ п©Б∙╙п©Б∙╛п©Б∙╒п©Б∙ёя▐Б■─п©Б∙÷я▐Б■▄п©Б∙╛я▐Б■─я▐Б■░]
| –1 +/– |
> Ok. тогда kernel не будет работать с памятью, контекстом, буфферизациями и прочей
> ненужной фигней.
Если водитель с машиной на доставку товара тратит времени в 5 раз меньше, чем на обслуживание это же машины в гараже, то что-то не так в консерватории.
Если ускорение от буферизации дает +5% (абстрактно) к производительности, а на обслуживание буферизации тратится -20%, то такая буферизация вредна.
Так что время kernel в пять раз превышающее время app+hw навевает на мысль, что kernel сильно не оптимален.
| |
|
4.133, count0krsk (ok), 01:02, 14/02/2015 [^] [^^] [^^^] [ответить] [п©Б∙╗ п©Б∙╙п©Б∙╛п©Б∙╒п©Б∙ёя▐Б■─п©Б∙÷я▐Б■▄п©Б∙╛я▐Б■─я▐Б■░]
| –1 +/– |
> Так что время kernel в пять раз превышающее время app+hw навевает на
> мысль, что kernel сильно не оптимален.
Только на этой задаче, при непонятных условиях.
Кстати, автор в комментах пишет:
"It is frustrating to hear that you didn't bother reading the article closely enough to realize that I didn't run any experiments. This is a recap of an interesting experiment I found in a research paper."
Т.е. "Я сам ничего не мерял, это перепечатка эксперимента, прочитанного где-то на заборе". Вполне в духе аддиктов Микрософт. "Не читал, но осуждаю" ))
За такое вполне можно было бы подать иск, ибо Клевета в чистом виде - обгаживание репутации продукта.
| |
|
|
|
|
2.34, Аноним (-), 03:50, 12/02/2015 [^] [^^] [^^^] [ответить] [п©Б∙╗ п©Б∙╙п©Б∙╛п©Б∙╒п©Б∙ёя▐Б■─п©Б∙÷я▐Б■▄п©Б∙╛я▐Б■─я▐Б■░]
| +2 +/– |
> В общем любое решение BareMetal OS, проще сложного управления в ядре...
Спору нет, погадить можно и в чистом поле, а вместо строительства теплой комфортной хаты - быстренько накидать себе шалаш из веток и травы. Но почему-то такое решение устраивает далеко не всех. Хоть это и менее трудозатратно.
| |
|
|
2.43, Stax (ok), 05:36, 12/02/2015 [^] [^^] [^^^] [ответить] [п©Б∙╗ п©Б∙╙п©Б∙╛п©Б∙╒п©Б∙ёя▐Б■─п©Б∙÷я▐Б■▄п©Б∙╛я▐Б■─я▐Б■░]
| +1 +/– |
Если бы они хотели исправить, хотя бы вывод perf привели. Ну и сетевые настройки, с которыми получились такие плохие значения (как минимум опции драйвера и ethtool -c, ethtool -k). А то статья написана в духе "в линуксе все так плохо, а вот Arrakis рулит, за ним для наших задач будущее", конкретики - как повторить тест и даже какой-либо подробной информации о том, *где именно* плохо они не привели.
| |
|
1.25, Аноним (-), 01:00, 12/02/2015 [ответить] [﹢﹢﹢] [ · · · ] [↓] [п©Б∙╗ п©Б∙╙п©Б∙╛п©Б∙╒п©Б∙ёя▐Б■─п©Б∙÷я▐Б■▄п©Б∙╛я▐Б■─я▐Б■░]
| +1 +/– |
В комментариях вся суть местных дегенератов. Вместо того, чтоб отнестись к новости разумно, критически, сходить, проверить данные тестов, осмыслить, местная петушня восприняла новость как личное оскорбление, порочащее неприкасаемую святыню, поспешив наклеить всевозможные негативные ярлыки на авторов исследования
| |
|
2.36, Аноним (-), 03:54, 12/02/2015 [^] [^^] [^^^] [ответить] [п©Б∙╗ п©Б∙╙п©Б∙╛п©Б∙╒п©Б∙ёя▐Б■─п©Б∙÷я▐Б■▄п©Б∙╛я▐Б■─я▐Б■░]
| +3 +/– |
И правда, удивительно: чего это местные посетители критически воспринимают статейки от микрософтовского кекса, у которого самое подходящее описание - "мой папа - босс".
Ну а бонусом - ваш комент вообще образец культуры и терпимости, чего уж. НеПетyшня, блин, проприерасовская. Ус у вас отклеился.
| |
|
1.26, Прохожий (??), 01:08, 12/02/2015 [ответить] [﹢﹢﹢] [ · · · ] [↓] [↑] [п©Б∙╗ п©Б∙╙п©Б∙╛п©Б∙╒п©Б∙ёя▐Б■─п©Б∙÷я▐Б■▄п©Б∙╛я▐Б■─я▐Б■░]
| –3 +/– |
Конечно можно создать ОС с кучей всяких "нужных" проверок которые так или иначе повысят ее безопасность, но сделают ее крайне медленной. Кому она после этого будет нужна? Важен баланс, а если его не удается достичь - другой механизм который обладает нужными эксплуатационными характеристиками. Не все такие как Кнут или Таненбаум, поэтому ядром должны заниматься "избранные" и обязательно математики. Любая предполагаемая реализация должна пройти математический анализ. Время, когда каждый может что то написать "на коленке" - прошло. Только специалист высшего класса осилит все это. Дорогой специалист. Каждый должен заниматься своим делом. Не в обиду другим.
| |
1.44, anonym0use (?), 05:54, 12/02/2015 [ответить] [﹢﹢﹢] [ · · · ] [↓] [п©Б∙╗ п©Б∙╙п©Б∙╛п©Б∙╒п©Б∙ёя▐Б■─п©Б∙÷я▐Б■▄п©Б∙╛я▐Б■─я▐Б■░]
| +16 +/– |
Провел свое собственное исследование. Взял за основу рабочий код!
#include <stdio.h>
int main(void)
{
for (int i = 0; i < 3000000;i++) {
putchar('0');
fflush(stdout);
}
return 0;
}
Обнаружил, что 87% времени выполнения тратится на выполнение кода внутри ядра!
gcc49 -O2 -std=c99 -Wall test.c
$ time ./a.out > /dev/null
real 0m1.173s
user 0m0.142s
sys 0m1.030s
Долго думал, решил убрать fflush и проверить еще раз -- НЕВЕРОЯТНО, но это позволило сократить задержку записи в ядре в 114 раз!!
$ time ./a.out > /dev/null
real 0m0.019s
user 0m0.010s
sys 0m0.009s
| |
|
|
3.89, anonym0use (?), 15:25, 12/02/2015 [^] [^^] [^^^] [ответить] [п©Б∙╗ п©Б∙╙п©Б∙╛п©Б∙╒п©Б∙ёя▐Б■─п©Б∙÷я▐Б■▄п©Б∙╛я▐Б■─я▐Б■░]
| +1 +/– |
> Какое отношение ваш пример имеет к сетевому стеку Linux?
Мне было влом делать пример с сетью? =)
Принцип ведь тот же -- толком неизвестно, где и почему задержка. Возможно не очень оптимальный код редиса, возможно ядра или конкретно конфигов для тестированного железа. Возможно эта "неоптимальность" необходима в продакшене (как например sync-и/всякие barrier-ы в ФС, хотя без них в бенчах все работает в несколько раз быстрее) а тесты с арракисом -- работают отлично только на сферических железяках.
> Вы явно не читали.
Было бы что читать -- "мы протестировали редис и оказалось что ядро дает задержку в х%!"
А что, как, с какими конфигами, как повторить -- это ведь на самом деле не важно, да :)
| |
|
|
1.64, EuPhobos (ok), 09:03, 12/02/2015 [ответить] [﹢﹢﹢] [ · · · ] [↓] [п©Б∙╗ п©Б∙╙п©Б∙╛п©Б∙╒п©Б∙ёя▐Б■─п©Б∙÷я▐Б■▄п©Б∙╛я▐Б■─я▐Б■░]
| +5 +/– |
> При этом, 70% затраченного на выполнения кода ядра времени приходится на компоненты сетевого стека.
Смешно читать такое от сотрудника Макрасофта, при том, что в винде сетевой стек работает гораздо медленнее.
Типичная американская выходка и мышление: "У нас всё плохо с сетью.. Что же делать? А давай скажем, что У НИХ всё плохо с сетью, и на нас меньше думать будут? А давай! В общем мы тут исследовали вашу Линукс и поняли что ... ... "
| |
|
2.140, freehck (ok), 02:01, 14/02/2015 [^] [^^] [^^^] [ответить] [п©Б∙╗ п©Б∙╙п©Б∙╛п©Б∙╒п©Б∙ёя▐Б■─п©Б∙÷я▐Б■▄п©Б∙╛я▐Б■─я▐Б■░]
| –1 +/– |
Если бы всё было так просто... Мелкософт уже не конкурент, и большинству это очевидно. Тут, скорее всего, лишняя рекламация проекта Arrakis. Это ведь концепция ядра, написанная под лицензией MIT.
Вы заметили, как модно стало переписывать то, что уже реализовано в рамках GNU-лицензий, под не копилефт лецензиями? LLVM был только началом. Вот теперь сюда Arrakis можно присовокупить.
| |
|
|
2.67, Andrey Mitrofanov (?), 09:58, 12/02/2015 [^] [^^] [^^^] [ответить] [п©Б∙╗ п©Б∙╙п©Б∙╛п©Б∙╒п©Б∙ёя▐Б■─п©Б∙÷я▐Б■▄п©Б∙╛я▐Б■─я▐Б■░]
| +2 +/– |
> А еще и взаимодействие с OS организовано не оптимальным образом...
Тише-тише!! А то ж кто-нибудь услышит!? И не дай б. подумает, что высокопроизводительный бенчмарк высокопроизводительного сервера в высокоинтеллектуальном бложике высокообразованного сыночка босса в майкрософтах -- не использовал асинхронные сетевые api. </>
| |
|
|
2.99, trdm (ok), 16:30, 12/02/2015 [^] [^^] [^^^] [ответить] [п©Б∙╗ п©Б∙╙п©Б∙╛п©Б∙╒п©Б∙ёя▐Б■─п©Б∙÷я▐Б■▄п©Б∙╛я▐Б■─я▐Б■░]
| +/– |
Вобще смех-смехом, однако иногда и правда стоит делать некоторые оптимизации, к примеру на каждый чих не считыват конфиг сети с диска, а хотя-бы с на минуту его закешировать где-нить в памяти.
Я встречал на форточках, при мониторинге активности - винда постоянно тыкается в реестр, что-бы прочитать данные по текущей теме оформления или каких=нибудь настройках.
Есть такая проблема, хотя в (0) она изложена пренебрежительно и неаккуратно.
| |
|
|
4.122, Аноним (-), 09:44, 13/02/2015 [^] [^^] [^^^] [ответить] [п©Б∙╗ п©Б∙╙п©Б∙╛п©Б∙╒п©Б∙ёя▐Б■─п©Б∙÷я▐Б■▄п©Б∙╛я▐Б■─я▐Б■░]
| +/– |
> В случае Windows - это нормально. Весь реестр всегда хранится в оперативной
> памяти. Не вижу смысла тут что либо оптимизировать.
А в случае линукса файловый кэш во все поля.
Только представьте что память начала кончатся, и файловый кэш дропнули, а вам реестр в винде в файл подкачки уехал.
| |
|
|
6.138, count0krsk (ok), 01:24, 14/02/2015 [^] [^^] [^^^] [ответить] [п©Б∙╗ п©Б∙╙п©Б∙╛п©Б∙╒п©Б∙ёя▐Б■─п©Б∙÷я▐Б■▄п©Б∙╛я▐Б■─я▐Б■░]
| +/– |
> Вы плохо знакомы с архитектурой Windows. Не стоит допускать острой нехватки памяти.
> В этом случае, навряд ли можно в чем то винить OS.
Зато хорошо знакомы с Microsoft SQL Server, у которого память "утекает" со временем, и надо делать рестарт службы руками. В это время все кассовые терминалы, и прочие юзеры курят и ждут, ждут, ждут....
В линуксе даже на случай "Замуровали, демоны!" есть Alt+Shift+SysRq.
| |
|
|
|
|
|
1.108, none7 (ok), 20:14, 12/02/2015 [ответить] [﹢﹢﹢] [ · · · ] [п©Б∙╗ п©Б∙╙п©Б∙╛п©Б∙╒п©Б∙ёя▐Б■─п©Б∙÷я▐Б■▄п©Б∙╛я▐Б■─я▐Б■░]
| +/– |
И чего же тут удивительного? Если операция не особо сложнее доступа к массиву и занимает менее сотни тактов процессора, то даже копирование результата может занять времени больше чем поиск значения.
Конечно можно не сомневаться, что сетевой стек избыточен, ОС должна упаковать данные в пакет, посчитать чексуммы, прогнать через несколько слоёв фильтрации, пройтись по таблице маршрутизации, сообщить сетевой карте о необходимости передать пакет. Redis мог бы урезать пару из этих операций, будь он подключен непосредственно к драйверу сетевой карты.
| |
|
|
3.139, count0krsk (ok), 01:32, 14/02/2015 [^] [^^] [^^^] [ответить] [п©Б∙╗ п©Б∙╙п©Б∙╛п©Б∙╒п©Б∙ёя▐Б■─п©Б∙÷я▐Б■▄п©Б∙╛я▐Б■─я▐Б■░]
| –1 +/– |
> Ага, щас запилят свою ось, потом фс к ней приделают, потом драйвера,
> потом еще дыры латать пяток лет будут, а потом окажется, что
> получись тоже самое только кривое и не совместимое.
Зато теплое, ламповое, своё!
И клиентура уже сложилась. Вовлечь юзера в тестирование своей продукции, чтобы он чувствовал, что в хорошей ОС есть и капелька его победы - лучше, чем сразу выкатить годный продукт. Всё равно ведь придерутся.
| |
|
|
|