|
|
|
Плюсы против голого Си, холивар #9
|
|||
|---|---|---|---|
|
#18+
относительно snappy, Я честно не знаю. Жмём очень удобные для сжатия данные очень быстро раза в два-два с половиной. Зип утрамбовал бы их почти вчетверо. Снаппи "за нами" дожимает на треть или чуть больше. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.08.2012, 22:03 |
|
||
|
Плюсы против голого Си, холивар #9
|
|||
|---|---|---|---|
|
#18+
iv_an_ruПроясним ситуацпропущено... ... if the access is dense enough. "Плохие" паттерны доступа + 4-килобайтные страницы = Большая Попа. Иначе зачем бы вообще придумывали большие страницы. А с другой стороны, массовое тягание больших страниц туда-сюда = Вообще Мега-Попа, потому что в 64 мега внутреннего кэша диска садятся всего 16 таких 4 меговых страничек, ну и вообще мало кайфа таскать такие объёмы впустую. А причем тут внутренний кэш диска и TLB? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.08.2012, 23:10 |
|
||
|
Плюсы против голого Си, холивар #9
|
|||
|---|---|---|---|
|
#18+
донкихотiv_an_ruпропущено... ... if the access is dense enough. "Плохие" паттерны доступа + 4-килобайтные страницы = Большая Попа. Иначе зачем бы вообще придумывали большие страницы. А с другой стороны, массовое тягание больших страниц туда-сюда = Вообще Мега-Попа, потому что в 64 мега внутреннего кэша диска садятся всего 16 таких 4 меговых страничек, ну и вообще мало кайфа таскать такие объёмы впустую. А причем тут внутренний кэш диска и TLB?Есть у вас диск с 64 мегами RAM и NCQ на 30 команд. Пока я "сам" пишу кусками от 8 кило (одна моя логическая страница, она же текущий "минимум выравнивания" для O_DIRECT) до 1600 кило (мой самый длинный экстент), я могу надеяться, что памяти хватит даже на все 30 комманд, и диск лишней беготни и лишней записи делать не будет. Но я ж не могу дать хинт "дорогое ядро, запиши мне вот эти 24 килобайта из конца этой huge странички, и ещё 32 килобайта из начала следующей", я прохинтую целые странички, две штуки, общим весом 8 мегов. Всё, приехали. Значит надо юзать 4-х килобайтные странички, тогда хинтоваться всё будет правильно. Но каждые 64 гига ОЗУ это 16 миллионов коротких страниц. Тут возникает феерический вопрос --- а влезет ли активное подмножество TLB не то что в кэш TLB, а вообще в кэш проца? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.08.2012, 23:37 |
|
||
|
Плюсы против голого Си, холивар #9
|
|||
|---|---|---|---|
|
#18+
iv_an_ruЗначит надо юзать 4-х килобайтные странички, тогда хинтоваться всё будет правильно. Но каждые 64 гига ОЗУ это 16 миллионов коротких страниц. Тут возникает феерический вопрос --- а влезет ли активное подмножество TLB не то что в кэш TLB, а вообще в кэш проца? Нет не влезет. А зачем ему туда влезать? В кеш? Кто поставил такую задачу и для чего? Где вообще хоть какие-то тесты, которые говорят, что это недоделие - hugetlbs - дает хоть какие-то преимущества? То, что показывали графики redhat - говорит явно о том, что hugetlb - это в общем случае полная ерунда, ну 5-10% от силы прироста. У тебя реально какая-то маниакальная зацикленность на этом вопросе. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.08.2012, 23:46 |
|
||
|
Плюсы против голого Си, холивар #9
|
|||
|---|---|---|---|
|
#18+
Проясним ситуац, Да нету никакой зацикленности. Просто была в коде кучка ifdef-ов, через mmap таскать и лочить-разлочивать-хинтовать или всё делать самим с O_DIRECT. В итоге своя обработка рулит, только и всего. В двух последних версиях у нас от mmap остался ровно один mlock в ровно одном цикле --- в выделении своих дисковых буферов. Если что-то всерьёз изменится --- накатим старый дифф и померяем mmap ещё раз. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.08.2012, 00:05 |
|
||
|
Плюсы против голого Си, холивар #9
|
|||
|---|---|---|---|
|
#18+
iv_an_ruдонкихотпропущено... А причем тут внутренний кэш диска и TLB?Есть у вас диск с 64 мегами RAM и NCQ на 30 команд. Пока я "сам" пишу кусками от 8 кило (одна моя логическая страница, она же текущий "минимум выравнивания" для O_DIRECT) до 1600 кило (мой самый длинный экстент), я могу надеяться, что памяти хватит даже на все 30 комманд, и диск лишней беготни и лишней записи делать не будет. Но я ж не могу дать хинт "дорогое ядро, запиши мне вот эти 24 килобайта из конца этой huge странички, и ещё 32 килобайта из начала следующей", я прохинтую целые странички, две штуки, общим весом 8 мегов . Всё, приехали. Значит надо юзать 4-х килобайтные странички, тогда хинтоваться всё будет правильно. Но каждые 64 гига ОЗУ это 16 миллионов коротких страниц. Тут возникает феерический вопрос --- а влезет ли активное подмножество TLB не то что в кэш TLB, а вообще в кэш проца? Вы акцентировались на проблеме попадания на границу между двумя huge-страницами, но вероятность этого достаточно мала и общий вклад не велик. Я правильно понял, что вторая проблема, как записать 32-64 кб данных из страницы размером 4 мб? А вы реально тестировали, у вас перестройка очереди команд с NCQ на сколько и когда помогает? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.08.2012, 00:18 |
|
||
|
Плюсы против голого Си, холивар #9
|
|||
|---|---|---|---|
|
#18+
донкихотА вы реально тестировали, у вас перестройка очереди команд с NCQ на сколько и когда помогает?Мы сами не тестировали, нам клиент подарил результаты их ин-хаус прогонов. На жёстких дисках NCQ от 0% ровно и до +20% им подарил, в зависимости от моделей, причём размер буфера оказался почему-то "в два раза важнее", чем думали, как будто только половина используется действительно для буферизации, а на второй дивайс в тетрис сам с собой играет. На SSD разброс ещё больше --- от 0% ровно до 4-х раз. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.08.2012, 00:53 |
|
||
|
Плюсы против голого Си, холивар #9
|
|||
|---|---|---|---|
|
#18+
iv_an_ruВ итоге своя обработка рулит То что своя обработка рулит (рулит - управляет - rule), это и ежу понятно, что вы понаписали свой велосипед от синтетики и радуетесь. Осталось выяснить - помогли ли вам эти hugetlb или нет. Ну кроме эффекта плацебо, на синтетике. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.08.2012, 01:56 |
|
||
|
Плюсы против голого Си, холивар #9
|
|||
|---|---|---|---|
|
#18+
iv_an_ruдонкихотА вы реально тестировали, у вас перестройка очереди команд с NCQ на сколько и когда помогает?Мы сами не тестировали, нам клиент подарил результаты их ин-хаус прогонов. На жёстких дисках NCQ от 0% ровно и до +20% им подарил, в зависимости от моделей, причём размер буфера оказался почему-то "в два раза важнее", чем думали, как будто только половина используется действительно для буферизации, а на второй дивайс в тетрис сам с собой играет. На SSD разброс ещё больше --- от 0% ровно до 4-х раз. Это потому, что дисковый кэш нужен для перестроения очереди и сглаживания скачков производительности, т.е. когда его достаточно то больше уже не надо. Так же как интерфейс диска, должен быть примерно в 2 раза больше максимальной скорости диска (которая на самом деле нечто усредненное между пиками и провалами), а ещё больше уже смысла не имеет. Но честно говоря так до конца и не понял как NCQ соотносится с TLB, т.к. они друг о друге ничего не знают. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.08.2012, 02:03 |
|
||
|
Плюсы против голого Си, холивар #9
|
|||
|---|---|---|---|
|
#18+
донкихотНо честно говоря так до конца и не понял как NCQ соотносится с TLB, т.к. они друг о друге ничего не знают. Пациент рассказывал о собственной низкоуровневой реализации механизма кеширования (через ручное управление HugeTLB сегментами), там-же у них в т.ч. ручное управление операциями чтения с флагами c O_DIRECT, эдакое вспомоществование для NCQ Короче чуваки у себя в деревне решили на ленд-лизовский Шерман прикрутить направляющие от Катюши, и двигатель от Ил-2 вставить. У них даже покупает кто-то это. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.08.2012, 02:11 |
|
||
|
Плюсы против голого Си, холивар #9
|
|||
|---|---|---|---|
|
#18+
донкихотНо честно говоря так до конца и не понял как NCQ соотносится с TLB, т.к. они друг о друге ничего не знают.Если мы "сами" пишем, то никак и не соотносятся. Если надеемся на ядро, то проблема с большими страницами ровно одна --- как бы попросить ядро записать кусочек меньше 4-х мегов. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.08.2012, 02:26 |
|
||
|
Плюсы против голого Си, холивар #9
|
|||
|---|---|---|---|
|
#18+
донкихотЭто потому, что дисковый кэш нужен для перестроения очереди и сглаживания скачков производительности, т.е. когда его достаточно то больше уже не надо.Значит мы ещё не дошли до этого "больше не надо". Разница между 32Мб и 64Мб на диск оказалась заметной. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.08.2012, 02:29 |
|
||
|
Плюсы против голого Си, холивар #9
|
|||
|---|---|---|---|
|
#18+
В мире на данный момент есть всего три языка программирования, позволяющих наиболее эффективно решать любые задачи системного программирования, клиентских интерфейсов и всего остального. Это ANSI С (C99), JavaScript (ECMAScript 5) и Python (2.x >=2.6) соответственно. Остальное, не считая узкоспециализированных скриптов а-ля bash или sed, а также ассемблеров, нафиг не нужно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.08.2012, 11:38 |
|
||
|
Плюсы против голого Си, холивар #9
|
|||
|---|---|---|---|
|
#18+
Crack.tro, вы забыли определить, эффективность по каким именно параметрам вы имеете в виду. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.08.2012, 11:59 |
|
||
|
Плюсы против голого Си, холивар #9
|
|||
|---|---|---|---|
|
#18+
iv_an_ruCrack.tro, вы забыли определить, эффективность по каким именно параметрам вы имеете в виду. Видимо, имеется в виду эффективность по Crack.tro-параметрам. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.08.2012, 12:45 |
|
||
|
Плюсы против голого Си, холивар #9
|
|||
|---|---|---|---|
|
#18+
Crack.troВ мире на данный момент есть всего три языка программирования, позволяющих наиболее эффективно решать любые задачи системного программирования, клиентских интерфейсов и всего остального. Это ANSI С (C99), JavaScript (ECMAScript 5) и Python (2.x >=2.6) соответственно. Остальное, не считая узкоспециализированных скриптов а-ля bash или sed, а также ассемблеров, нафиг не нужно. Хотя бы скажите чем конкретно каждый из них хорош? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.08.2012, 14:38 |
|
||
|
Плюсы против голого Си, холивар #9
|
|||
|---|---|---|---|
|
#18+
Проясним ситуацдонкихотНо честно говоря так до конца и не понял как NCQ соотносится с TLB, т.к. они друг о друге ничего не знают. Пациент рассказывал о собственной низкоуровневой реализации механизма кеширования (через ручное управление HugeTLB сегментами), там-же у них в т.ч. ручное управление операциями чтения с флагами c O_DIRECT, эдакое вспомоществование для NCQ Короче чуваки у себя в деревне решили на ленд-лизовский Шерман прикрутить направляющие от Катюши, и двигатель от Ил-2 вставить. У них даже покупает кто-то это. Ну из ссылке в профиле вроде не совсем колхоз. Но излишний перфекционизм заметен. http://virtuoso.openlinksw.com/ Для жесткого диска плюс 20% в максимуме это не много, но если профит от ручного управления в среднем дает хотя бы половину от заявленных 4х раз для SSD, т.е. в 2 раза, то оно того стоит. По крайне мере пока стандартные средства не оптимизированы под SSD. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.08.2012, 15:12 |
|
||
|
Плюсы против голого Си, холивар #9
|
|||
|---|---|---|---|
|
#18+
донкихотНу из ссылке в профиле вроде не совсем колхоз. Но излишний перфекционизм заметен. http://virtuoso.openlinksw.com/ якобы highload и текстовые форматы данных (как и подобия SQL) - уже признак колхоза разобрал-собрал-разобрал-собрал-разобрал-собрал ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.08.2012, 17:19 |
|
||
|
Плюсы против голого Си, холивар #9
|
|||
|---|---|---|---|
|
#18+
донкихотДля жесткого диска плюс 20% в максимуме это не много, но если профит от ручного управления в среднем дает хотя бы половину от заявленных 4х раз для SSD, т.е. в 2 раза, то оно того стоит. По крайне мере пока стандартные средства не оптимизированы под SSD. LSM одинаково хорош и для HDD и для SSD. Просто пока рулят арбалеты вроде Oracle, MySQL ISAM и даже этого вашего виртуозо с 100-ей клиентов, но их head i/o паттерны одинаково плохи и для SSD и для HDD (для SSD не настолько плохи, впрочем). Но со временем нарезные ружья индейцев попотеснят (как netezza уже вовсю давит всякие Oracle с их экзадатами). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.08.2012, 17:24 |
|
||
|
Плюсы против голого Си, холивар #9
|
|||
|---|---|---|---|
|
#18+
Проясним ситуацякобы highload и текстовые форматы данных (как и подобия SQL) - уже признак колхозаЧто юзеры закачивают/запрашивают, то и съедается/отдаётся. Попросите, скажем, карту в WKT --- получите текст ("колхоз"), попросите её же в WKB --- получите бинарный поток ("не колхоз"). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.08.2012, 18:17 |
|
||
|
Плюсы против голого Си, холивар #9
|
|||
|---|---|---|---|
|
#18+
iv_an_ruПроясним ситуацякобы highload и текстовые форматы данных (как и подобия SQL) - уже признак колхозаЧто юзеры закачивают/запрашивают, то и съедается/отдаётся. Попросите, скажем, карту в WKT --- получите текст ("колхоз"), попросите её же в WKB --- получите бинарный поток ("не колхоз"). Так никто бинарные форматы и не просит, вот вы и не делаете, это и так понятно. В этом и есть печаль коробочного софта - он делается для "усредненного" пользователея. Как говорится, сделайте систему, которой сможет пользоваться любой дурак - и только дураки и будут ей пользоваться. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.08.2012, 18:24 |
|
||
|
Плюсы против голого Си, холивар #9
|
|||
|---|---|---|---|
|
#18+
Проясним ситуацТак никто бинарные форматы и не просит, вот вы и не делаете, это и так понятно.Да нет, просят. Но --- как бы вам ни хотелось --- не все :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.08.2012, 18:27 |
|
||
|
Плюсы против голого Си, холивар #9
|
|||
|---|---|---|---|
|
#18+
Проясним ситуацдонкихотНу из ссылке в профиле вроде не совсем колхоз. Но излишний перфекционизм заметен. http://virtuoso.openlinksw.com/ якобы highload и текстовые форматы данных (как и подобия SQL) - уже признак колхоза разобрал-собрал-разобрал-собрал-разобрал-собрал А подобие SQL это RDF? А в Netezza i/o паттерны разве сильно отличаются от Exadata на задачах для которых они предназначены DWH/DSS (те же sequential io)? Насколько помню единственное, что выделялось - это FPGA в Netezza, которая чуть-чуть выгодней CPU, но меркнет на фоне цены лицензий. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.08.2012, 22:01 |
|
||
|
Плюсы против голого Си, холивар #9
|
|||
|---|---|---|---|
|
#18+
iv_an_ruПроясним ситуацякобы highload и текстовые форматы данных (как и подобия SQL) - уже признак колхозаЧто юзеры закачивают/запрашивают, то и съедается/отдаётся. Попросите, скажем, карту в WKT --- получите текст ("колхоз"), попросите её же в WKB --- получите бинарный поток ("не колхоз"). А у вас любая Virtual Data Base может работать с абсолютно любым Unified Storage Model? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.08.2012, 22:03 |
|
||
|
|

start [/forum/topic.php?fid=16&msg=37932703&tid=1342110]: |
0ms |
get settings: |
7ms |
get forum list: |
10ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
136ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
63ms |
get tp. blocked users: |
1ms |
| others: | 205ms |
| total: | 438ms |

| 0 / 0 |
