
Alex
26.04.2016
21:57:33
Они делают как:
Они аккуратно параметризовали через джинджа каждую ебаную переменную конфига
И задали на все дефолты
Местами не совпадающие с ванильными дефолтами

Google

Phil
26.04.2016
21:58:16
дададада
вот именно так

Alex
26.04.2016
21:58:23
Ворона птица сильная, но на голову наглухо ебанутая

Phil
26.04.2016
21:58:24
:))))
кстати у меня проблема - смотрю на конфиг и вижу полную фигу

Алексей
26.04.2016
21:58:52
аа. погоня за гибкостью
да так бывает

Phil
26.04.2016
21:59:00
с mysql это в общем случае прокатывает
[jnz d ьныйд z b yt cjdctv abue db;e

Alex
26.04.2016
21:59:17
Ну - я из предыдущего опыта знаю, что это не гибкость, а ООП головного мозга
Так делать нельзя, это край

Phil
26.04.2016
21:59:29

Алексей
26.04.2016
22:00:03
я думаю их засатвляют какие нить праивла игры

Google

Алексей
26.04.2016
22:00:24
корпоративные правила игры вообще вбывют сильно ебанутые под заеб одного челоека
а он например сказал, все парамтеры должны задваться через вебочку. а вебочка это динамик инвентори

Phil
26.04.2016
22:07:54

Alex
26.04.2016
22:09:49
Рома
Мне нужен человек-IO
@pragus
Как эккаунтить синхронный ввод-вывод в ядре?
А именно - только вывод?

Roman
26.04.2016
22:26:35

Alex
26.04.2016
22:28:00
Смотри
Есть вызовы, которые дождутся сброса данных на диск
Это fsync и write в O_DIRECT
А есть, которые через файловый кэш пойдут
Так и вот - как поймать те, которые через файловый кэш не идут?

Roman
26.04.2016
22:30:29
гм...

Alex
26.04.2016
22:30:45
Придумал следующий способ clean room development:
“Злая часть меня читает и понимает код, который надо реимплементнуть
Рассказывает доброй части меня
Добрая часть реимплементит код”
Хорошо быть разносторонним человеком
гм...
Таки - ловить по именам?
Имена просто выписать в столбик?
Или вообще не париться, а просто сделать два бенчмарка так и так

Google

Alex
26.04.2016
22:33:10
И коллы не считать
Гагагаг
http://ruhighload.com/post/%D0%92%D1%8B%D0%B1%D0%BE%D1%80+innodb_flush_method+%D0%BC%D0%B5%D0%B6%D0%B4%D1%83+O_DSYNC+%D0%B8+O_DIRECT
Прекрасно
Русские программисты - лучшие в мире!

Roman
26.04.2016
22:45:43
потому что если с обычным io по дескрипторам всё более-менее просто
то есть же mmap
есть ещё aio
который, кстати, работает и в буферизованном виде

Alex
26.04.2016
22:48:45
В доке пишут, что O_DIRECT не дает гарантий синхронной записи
Как много нам открытий чудных

Roman
26.04.2016
22:48:54
ну да.
это ж только cache bypass :)

Alex
26.04.2016
22:49:53
Ну эт понятно, да
Типа, возвращается, как только DMA controller кивнул
Нет, это все прекрасно, прекрасно
Сперва постгрес переехал на mmap
А теперь хочет переехать на O_DIRECT
Ну - и как мы себе это видим? O_O
“А теперь, ребята, мы откатим два года вашей работы”

Google

Alex
26.04.2016
22:59:57
You could also try mmaping your output files instead and use the MADV_DONTNEED or MADV_FREE flags to madvise(2) to indicate the pages need not be cached, although this is purely advisory and might do nothing.
В зале есть врач?
Коллега, что за хуйню нам тут показывают?

Roman
26.04.2016
23:10:46
точнее or

Alex
26.04.2016
23:11:20
MADV_FREE это санизм
Я чот в линуксе не вижу такого флага
Меня смущает “might do nothing”
И “kernel feels free to ignore it”
И как я узнаю, нах?
Есть небольшая вероятность что ядро игнорит только эдвайсы кэшировать
Потому что игнорить эдвайсы не кэшировать это чот дебилизм

Admin
ERROR: S client not available

Roman
26.04.2016
23:17:04
Точнее, там весело: файл бьётся на чанки до 2мб и сабмитится в bio на поднятие с диска

Alex
26.04.2016
23:19:16
Наше дело не рожать
Мне как раз надо вообще через кэш не гнать ничего

Roman
26.04.2016
23:19:40
Ну и из кеша странички не выкидываются мгновенно
Хотя и быстро

Alex
26.04.2016
23:20:04
И я так понимаю, что варианта вообще не гнать у меня просто нет
Раз уж mmap

Google

Roman
26.04.2016
23:20:41
Я так ради эксперимента делал на tmpfs :)

Alex
26.04.2016
23:21:07
Беглый googling stackoverflow чот ничего не дал
А что нужно сделать?

Roman
26.04.2016
23:22:19
Но у меня был совершенно специальный кейс: мне хотелось посмотреть в ядерные буферы без копирования
Я создавал файл нужного размера, открывал его с o_direct и мапил в память
Просто запись в такую память будет приводить к записи на диск модифицированных страниц

Alex
26.04.2016
23:24:20
Само собой
(Тут индеец зоркий глаз догадался пойти прочесть сигнатуру функции mmap)
Ну чо - все ясно, кул

Roman
26.04.2016
23:24:50
Ну вот.

Alex
26.04.2016
23:24:58
Имплеметнем

Roman
26.04.2016
23:27:29
Я баловался весело: в mmap'нутый файл splice нужное мне. Т.к. это все игры с указателями в ядре, то довольно дешево. В итоге, в памяти моего процесса оказывалось интересующее содержимое

Alex
27.04.2016
06:03:03
https://spin.atomicobject.com/2016/04/26/swift-long-compile-time/

Phil
27.04.2016
09:00:06
что-то я запутался. в grub указывается какой-то initrd, и он везде есть. но я вижу в dmesg, что грузится какой-то busybox initramfs. так initrd или initramfs?

Alex
27.04.2016
09:00:53
Бгггг
Это, в общем, история
Раньше называлось initrd
Потом стало называться initramfs
Это одно и то же

Daniel
27.04.2016
09:01:39
ну - оно разное внутре
но назначение одно и то же

Vartan
27.04.2016
09:01:59
Но смысл тот же