[00:12:05] <_valexey__> vlad2: там первые результаты на гитхабе доступны
[00:12:13] <_valexey__> пока несколько кривенькие, но кое что уже есть
[00:14:33] <vlad2> А циферки что значат?
[00:14:48] <vlad2> Время/размер?
[00:19:00] <_valexey__> угу
[00:19:28] <_valexey__> по вертикали - время
[00:19:36] <_valexey__> по горизонтали - размер
[00:24:13] <vlad2> Если по верткали время, то mmap рулит.
[00:25:04] <_valexey__> ну он и раньше рулил :-) там в полтора раза быстрее было
[00:25:11] <_valexey__> или около того
[00:25:26] <_valexey__> но асимптотически не особо то и рулит :-)
[00:26:04] <_valexey__> модифицировал процедуру тестирования, запустил еще раз. на этот раз будут и 4гиговые файлы
[00:26:35] <_valexey__> за часа два наверно оттестится :-)
[00:26:43] <vlad2> С mmap не очень очевидно: как он себя повел бы, если бы в системе физически было 128Mb.
[00:27:09] <_valexey__> также
[00:27:22] <_valexey__> специально чтобы выявить зависимость я выше провел тест, отмотай лог
[00:27:43] <_valexey__> запускал на одной и той же машине с ограничением в 32Мб и без ограничения
[00:27:53] <_valexey__> скорость отличаетс в разы
[00:28:15] <_valexey__> то есть моя эмуляция ограниченности вполне работает
[00:28:41] <_valexey__> ну и потом будет запущено на сервере у которого и так памяти не много :-)
[00:36:19] <vlad2> Погодите, я еще свой другой вариает забабахаю ;)
[00:38:41] <_valexey__> пожалуйста-пожалуйста, но лучше бы уже пулреквестом, если получится :-) а то автоматика обломается пушать в гит
[00:38:57] <_valexey__> а ты вот прямо сейчас хочешь?
[01:15:24] <vlad2> Не, я на работе ;)
[01:15:38] <vlad2> Я поробую с брэнчами разобраться.
[01:16:04] <vlad2> Я должен как-то сделать брэнч в своем аккаунте на гитхабе?
[01:18:04] <_valexey__> угу. точнее форк. короче, на кнопка в гуе вебном жать, что-то там создавать :-)
[01:20:09] <vlad2> А. Т.е. мне надо сначала пушнуть с свой репозиторий, а потом я смогу на вебе делать реквест?
[01:33:55] <_valexey__> угу
[01:33:57] <_valexey__> вроде бы так
[01:43:49] <_valexey__> опа. на 4 гигах mmap решение вываливается с out of memory error
[01:48:34] <vlad2> ;)
[01:49:06] <vlad2> Не работает sparse array :)
[01:53:47] <_valexey__> ну, там возможно std::sort поглощает оперативку
[01:53:50] <_valexey__> или что-то еще
[01:53:57] <_valexey__> надо разбираться
[01:55:02] <_valexey__> а trurl прям наивный чукотский юноша. :-) в плане веры в стандартные алгоритмы сортировки и mmap
[01:55:16] <_valexey__> особенно я не стал бы доверять qsortу
[02:08:04] <_valexey__> ну, то есть trurl крут и знает наверняка больше меня, но нужно учесть, что знания в нашей области регулярно устаревают и их нужно перепроверять
[02:37:52] <vlad2> Чем он крут?
[03:08:13] <_valexey__> ну, он довольно много знает, это ж видно по форумам.
[03:08:27] <_valexey__> он вот например линкер линуксовый для ББ написал
[03:08:43] <_valexey__> консольный компилятор для ББ и соответствующие подсистемы оформил
[03:08:59] <_valexey__> ну, то есть чел в принципе в теме, не оторван от мира
[04:49:52] <_valexey_> vlad2: ну шо, пока твое решение рулит, ибо работает корректно. Единственное из :-)
[08:37:06] <geniepro> вот она, проблема бесплатного опенсорса: https://meduza.io/feature/2016/03/28/kak-slomat-internet
никто никому ничего не должен и может делать что хочет, в результате хз что получается
[08:40:59] <geniepro> https://scontent-amt2-1.xx.fbcdn.net/v/t1.0-9/15319122_350458441975094_3120954662141755743_n.jpg?oh=7a15ec3989f24fd921f0441ca4784930&oe=58B666C0
https://www.facebook.com/permalink.php?story_fbid=1352430941456285&id=100000681770994
[15:42:48] <s6> <abyss5_> посоветуйте гуёвый линукс который мышу обрабатывает нормально
<abyss5_> убунта матэ чото сломанная
<abyss5_> видимо это сломан один из распоследних xorg + linux
<abyss5_> убунта матэ 14.04 и 16.04 сломанные
<abyss5_> в винде мне неприятно
[15:43:06] <s6> geniepro: в астра линукс поди репы свои пустые
[15:44:57] <geniepro> там много пакетов, ваще он на основе дебиана
[15:48:35] <s6> не удивлюсь если эта проблема с мышой и там тоже
[15:48:43] <s6> надо баг репорты про это смотреть
[16:36:15] <valexey> созрели результаты нового прогона
[16:39:36] <valexey> Ыыыы! http://forum.oberoncore.ru/viewtopic.php?f=115&t=5965&p=99521
[16:45:24] <s6> ребутнусь в линух попробую убунтовый рецепт починки мыши https://help.ubuntu.com/16.04/ubuntu-help/mouse-problem-notmoving.html
[16:55:10] <valexey> в то время как весь мир уже отказывается от мышей, линуксоиды заняты починкой мышки...
[17:16:52] <valexey> надо будет выхлоп диагностических файликов куда-то в отдельный каталог перенаправить
[17:16:57] <valexey> а то каталог с исходниками засирается
[17:19:09] <valexey> гхм.. у меня ощущение складывается, что prospero может выслать исходник на РУССКОМ. Это меня несколько пугает :-)
[17:30:30] <vlad2> ИМПОРТ мДец
[17:32:46] <valexey> ИМПОРТ Заместить;
[17:33:51] <vlad2> Причем в досовской кодировке :)
[17:35:16] <vlad2> А можно узнать реальное потребление памяти на 400Mb и на 800Mb? Чтоб константу более точно подкрутить?
[17:38:48] <valexey> в смысле на 512 и на 1024?
[17:39:36] <vlad2> Ну на 1024 оно вылетает - фиг знает сколько ему надо для счасться.
[17:39:56] <valexey> зато на 2048 работает o_O
[17:40:05] <valexey> и на 4096 Мб работает
[17:40:27] <vlad2> Гхм. А оно точно по памяти вылетает, а не крэшится? :)
[17:40:37] <valexey> обожаю алгоритмы сортировки - у них потребление памяти может зависеть не только от объема, но и от характера входных данных :-)
[17:40:42] <valexey> а иногда, еще и от рандома
[17:40:46] <valexey> точно
[17:41:55] <valexey> в консоли так и написано - Out of memory: Kill process or sacrifice child
[17:41:58] <vlad2> А можно запустить на 1024 без ограничения и узнать сколько съело?
[17:43:04] <valexey> ну теоретиццки можно. но не прямо сейчас. ближе к ночеру доползу наверно. или даже завтра.
[17:44:02] <vlad2> OK, я могу на угад пока уменьшить до 50Mb буфер.
[17:44:58] <valexey> ок
[17:45:29] <valexey> а в понедельник уже сервак подниму, чтобы свою домашнюю машину не насиловать :-)
[17:56:09] <_valexey__> Вот! Вот оно - начались методы ополченские. Наугад константы выставлять!
[17:56:38] <_valexey__> Попытки методом перебора решить задачу! Вот он - комбинаторный ум, первый умотип! Приматизм!
[17:57:13] <_valexey__> Любой оберонщик имеет второй умотип, и уж он то с первой попытки бы выдал точное быстрое безошибочное решение!
[18:09:42] <valexey> Кстати, в русском ЯП обязательно должна быть возможность импортозамещения
[18:09:54] <valexey> То есть возможность заместить локальными сущностями сущности импортируемые.
[18:10:18] <valexey> Причем не только внутри функции, а глобально для всего модуля.
[18:11:20] <valexey> блин, mmap-решение каким-то образом вылазит за пределы песочницы и делает так, что система начинает убивать всех подряд под предлогом нехватки памяти
[18:11:35] <valexey> при том, что свободная память, судя по htop, еще есть.
[18:11:45] <valexey> Да и свопа море.
[18:11:48] <valexey> Что за фигня?
[18:12:26] <vlad2> Это ополчение еще более выского уровня.
[18:12:35] <vlad2> Пушнул 50Mb.
[18:15:03] <vlad2> На выходных попробую еще многопоточный вариант. Хотя не факт, что будет существенный профит.
[18:20:01] <vlad2> У него там еще микс с английским, вообще непонятно какой профит - все время раскладку переключать. Не говоря о штуках типа руссокой "с" и английской "с".
[18:20:41] <valexey> Буквы O тоже доставят
[18:20:49] <vlad2> Пушнул напрямую, не реквестом - подхватит?
[18:20:49] <valexey> е e
[18:20:55] <valexey> да, нормально всё
[18:21:08] <valexey> сейчас тестилка не запущена, поэтому её не смутит
[18:22:06] <valexey> они бы еще в физике и математике все греческие и всю латиницу на кириллицу бы заменили
[18:24:10] <vlad2> Ну греческую можно оставить
[18:24:14] <vlad2> она уже ;)
[18:24:34] <valexey> знание английского совершенно не поможет в изучении ЯП. помню в школе препод по информатики ученика спрашивал, что такое for - что за ключевое слово. а ученик отлично знал английский, он и перевел - for это, говорит, "для". но дальше дело не пошло, хотя препод и пытался сделать так, чтобы ученик на этом построил какую-то логическую цепочку которая привела бы к циклам.
[18:24:57] <valexey> но походу у препода у самого не вышло такую цепочку построить ;-)
[18:25:01] <vlad2> Угу.
[18:26:27] <valexey> кстати, помню когда я не знал английский ну вот вообще, это мне ничуть не мешало писать на плюсцах.
[18:26:47] <valexey> вот MSDN читать - это мешало. а на плюсах писать (по руским книжкам) -- нет.
[18:38:14] <valexey> многопоточность может дать процентов 20-50 прибавки к скорости. IMHO
[19:00:10] <vlad2> Теоретически там еще может быть какая-то добавка даже на одном ядре, если ОС умеет нагружать CPU пока ждет HDD.
[19:01:00] <vlad2> Т.е. в моем алгоритме можно читать следующий блок пока сортируется предыдущий.
[19:01:06] <valexey> эмм... а чем его нагружать то, если твой алгоритм обработал все доступные ему в ОЗУ данные и просто ждет пока очередная порция с HDD прилетит?
[19:01:15] <valexey> а, ну так то да
[19:01:57] <valexey> если мы знаем что будем читать потом, а при этом ОС своими алгоритмами кеширования и превентимного чтения будет часто ошибаться, то руками кешировать может быть выгоднее
[19:02:16] <valexey> просто за счет того, что мы лучше знаем что нам потребуется, чем эвристика системы
[19:05:00] <vlad2> Вобщем я не думаю, что это реально много даст - ну процентов 10 и то хорошо.
[19:05:09] <valexey> покурил еще системщину - ограничения выходят не совсем честные. т.е. производительность системы, точнее её поведение, не совсем такая какая была бы на честных 128 Мб ОЗУ.
[19:05:45] <valexey> и я не готов сказать, производительность при этом больше или меньше сейчас.
[19:05:53] <valexey> просто само поведение другое.
[19:06:05] <valexey> не факт что это как-то сильно на тестах сказывается, но тем не менее.
[19:06:17] <valexey> блин, век живи, век учись, дураком умрешь.
[19:06:58] <vlad2> Найди комп с 128Mb :) И SSD ;)
[19:07:27] <valexey> всегда можно виртуалку поднять :-)
[19:07:42] <valexey> но там будет ну совсем сурово. там же еще и ось отожрет памяти.
[19:09:10] <vlad2> Не, виртуалка тоже нечестно ;)
[19:09:43] <valexey> чоэто? ;-)
[19:09:48] <valexey> ну проц просядет, но это ж фигня
[19:12:48] <vlad2> HDD?
[19:14:48] <valexey> а что HDD? оно как было SSD так и останется
[19:15:18] <valexey> ну немножко длиннее будет идти реквест до SSD, но это ж постоянный множитель.
[19:15:42] <valexey> да, надо что-то вроде докера+виртуалку
[19:15:59] <valexey> одно ограничит кэш дисковый с гарантией, а другое ограничит всё остальное.
[19:27:20] <valexey> кроме всего прочего, будет отработана методика проведения тестирования/соревнований.
[19:27:24] <valexey> ;-)