Об авторе. Артём Бадышев. В прошлом геофизик, занимался обработкой и инерпретацией сейсмических данные в морских походах. 4 года в Альфе, из которых 2 — QA Team Lead.
Вы не поверите, но ни одной строчки не вбивал руками. Всю таблицу традиционно списал у сеньора из предыдущих серий )). Это он себя сеньором, а я пенсионером называем.
тут результат считается сразу в десятичном виде. И прибавить 3 к предпоследнему разряду это одна команда. А прибавить 15 это две команды - прибавить 5 и прибавить 1 с переносом.
Даже если провести очевидные оптимизации сеньорского кода - использовать в одной команде деление с остатком (ассемблерный код, наверно) и убрать деление до 0 в myitoa и найти другой критерий останова.
do {
*--cur = number % 10 + '0';
number /= 10;
} while (number != 0);
то все равно мой код будет быстрее - в нем для получения каждого байта кода вывода используется "+1" или "+3" и ">9", что гораздо быстрее деления на 10.
Итак, чтобы победить этот мой изящный говнокод, сеньорам нужно придумать что-то умное или хитрое. Просто так парой операторов дело провернуть не получится.
Там немного другая оптимизация. Просто вывод fwrite по 30 строк в миллиарде требует почти 1.5 сек. Многопоточность там разрешена и достаточно 3 потоков, чтобы получить максимальную скорость вывода.
Если там что есть быстрее (20G/sec у xiver77), то это уже оптимизация ввода/вывода. Ну и алгоритмически неинтересна. В этой статье собственно скорость не главное. Тут вся хитрость в алгоритме.
Обожаю комментарии виртуозов софтскиллс. Только вот Вы, уважаемый, всё напутали.
У нас не "черный лебедь", а "черный ворон". Да и насчет распределения - оно не может изменится, т.к. его нет у Черного ворона и не бывает. И если чего-то нет, то и меняться оно не может.
Но за комментарий большое спасибо. Столько много букв! Наверно сильно задел, аж до "Бабушкиных ...", значит не зря был пост.
Как у классика - "Ты теоремы можешь и не знать, Но уболтать клиента ты обязан!"
Например: Пользователь смотрел красный малолитражный автомобиль модели «А» => К его профилю привяжется модель «А» и цвет «красный»; пользователь смотрел страницу кредита => К его профилю привяжется интерес «кредит». При следующем посещении сайта или в ретаргетинге для него будет показан баннер про красный автомобиль с текстом про кредит.
Честно, думал, что рекламировать туфли тому, кто их уже купил плохая стратегия.
Даже с искусственным интеллектом))
Если хотите понять, как реально принимают решения и как распространяется информация, обращайтесь.
yurikgl никого они не боятся.
У меня с карты Тройка списали лишних 150 и чиновник Московского Дептранса предложил проехаться на Белорусский подать заявление на бумаге!!! и потом опять там же получить пополнение карты.
Т.е потратить 180 чтобы вернуть 150.
Когда написал жалобу Ликсутову на его чиновника, то мне ответил он сам, этот чиновник.
Они тут нарушили и здравый смысл и закон. И денег так и не вернули
Лучше использовать определение случайной последовательности данное Пер Мартин Лёфом. И деньги были бы целы и овцы мыты. ))
Да и в АН РФ оно как бы лучше смотрелось
На схеме из «опробовать изделия» нет стрелки прямо на «выдать изделия»
Т.е. все поступают на клеймение, хотя в тексте написано, что те, что не соответствуют, возвращаются без клейма.
Вспомнил рассказ фантастику, но не помню ни названия ни автора.
Отправляют экспедицию в космос с супер важным заданием и в экипаже оказался полный неумёха. Все тяжко страдают и напрягаются ( почти весь рассказ ). Но при успешном возвращении вдруг командир узнает в этом неумёхе великого клоуна, самого любимого людьми. Только без грима.
Ну и вернувшись и отметив, спрашивает своего командующего - "за что?".
А тот и отвечает - " вы все спецы, стальные люди и супермены. Вы бы поубивали там друг друга без него"
а мне кажется - типичный "сын маминой подруги"
Вы не поверите, но ни одной строчки не вбивал руками. Всю таблицу традиционно списал у сеньора из предыдущих серий )). Это он себя сеньором, а я пенсионером называем.
Зря Вы так. Любой код можно улучшить. Это же не гонки на выживание.
Что-то не вижу [
Это не скобка квадратная, это такая утилита или команда, в зависимости от реализации.
Это ЦНИИ "Монолит" - ведущая контора Министерства оборонной промышленности по экономике и планированию. И там реально была автоматизация, компьютеры.
https://rgantd.kaisa.ru/object/157210154 - вот их архивы
Несерьезно и незачет.
"Не плодите сущности без необходимости"
вот результат сеньора! time ./multithreaded2 > /dev/null
Казалось бы 1.141 это мощща!!
Но вот результат пенсионера в один поток time ./my_1 > /dev/null
И алгоритмически сеньоры пока идут мимо. Т.к. "user 0m3,659s" всё как бы меньше user "0m4,122s"
на машине
model name : Intel(R) Core(TM) i5-3317U CPU @ 1.70GHz (это вот тут нет интринсиков)
P.S. придется прочитать про потоки и заделать как бы уже всерьёз ))
тут результат считается сразу в десятичном виде. И прибавить 3 к предпоследнему разряду это одна команда. А прибавить 15 это две команды - прибавить 5 и прибавить 1 с переносом.
Даже если провести очевидные оптимизации сеньорского кода - использовать в одной команде деление с остатком (ассемблерный код, наверно) и убрать деление до 0 в myitoa и найти другой критерий останова.
то все равно мой код будет быстрее - в нем для получения каждого байта кода вывода используется "+1" или "+3" и ">9", что гораздо быстрее деления на 10.
Итак, чтобы победить этот мой изящный говнокод, сеньорам нужно придумать что-то умное или хитрое. Просто так парой операторов дело провернуть не получится.
Там немного другая оптимизация. Просто вывод fwrite по 30 строк в миллиарде требует почти 1.5 сек. Многопоточность там разрешена и достаточно 3 потоков, чтобы получить максимальную скорость вывода.
Если там что есть быстрее (20G/sec у xiver77), то это уже оптимизация ввода/вывода. Ну и алгоритмически неинтересна. В этой статье собственно скорость не главное. Тут вся хитрость в алгоритме.
Обожаю комментарии виртуозов софтскиллс. Только вот Вы, уважаемый, всё напутали.
У нас не "черный лебедь", а "черный ворон". Да и насчет распределения - оно не может изменится, т.к. его нет у Черного ворона и не бывает. И если чего-то нет, то и меняться оно не может.
Но за комментарий большое спасибо. Столько много букв! Наверно сильно задел, аж до "Бабушкиных ...", значит не зря был пост.
Как у классика - "Ты теоремы можешь и не знать, Но уболтать клиента ты обязан!"
То то на ровном месте минус (правда только один ) прилетел в карму!
Ничего не комментировал, никого не трогал и на тебе ))
Джек Лондон " на сороковой миле"
lib.ru/LONDON/on40mile.txt
Очень эффективный.
Честно, думал, что рекламировать туфли тому, кто их уже купил плохая стратегия.
Даже с искусственным интеллектом))
Если хотите понять, как реально принимают решения и как распространяется информация, обращайтесь.
У меня с карты Тройка списали лишних 150 и чиновник Московского Дептранса предложил проехаться на Белорусский подать заявление на бумаге!!! и потом опять там же получить пополнение карты.
Т.е потратить 180 чтобы вернуть 150.
Когда написал жалобу Ликсутову на его чиновника, то мне ответил он сам, этот чиновник.
Они тут нарушили и здравый смысл и закон. И денег так и не вернули
Проверьте сами поиск по слову «M&A», это целый раздел инвест бизнеса. И посмотрите, что ваш поиск найдет
Да и в АН РФ оно как бы лучше смотрелось
Т.е. все поступают на клеймение, хотя в тексте написано, что те, что не соответствуют, возвращаются без клейма.
Слишком простой, прямолинейный подход.
Насос ломается обычно вследствие износа ( или по глупости эксплуатанта )
А на этот износ расходуется энергия и начало разрушения и весь предшествующий износ хорошо видно в спектре колебаний.
Вспомнил рассказ фантастику, но не помню ни названия ни автора.
Отправляют экспедицию в космос с супер важным заданием и в экипаже оказался полный неумёха. Все тяжко страдают и напрягаются ( почти весь рассказ ). Но при успешном возвращении вдруг командир узнает в этом неумёхе великого клоуна, самого любимого людьми. Только без грима.
Ну и вернувшись и отметив, спрашивает своего командующего - "за что?".
А тот и отвечает - " вы все спецы, стальные люди и супермены. Вы бы поубивали там друг друга без него"
Вот такой рассказ.
Жаль, что не помню автора и название.
Тут небольшое лукавство. Нужно чтобы эти почти независимые случайные величины имели почти одинаковое! ожидание. Тогда да, ЦПТ доказана и действует.
А если в пруду два сорта рыбы - караси и карпы, и караси едят не то, что едят карпы.
Если пруд дикий и там особи разных лет, то применение ЦПТ весьма сомнительно.
Даже если пруд культивируется и там особи одного года, то все равно их размер не всегда подчиняется ЦПТ. И классический пример это размеры плотвы.