Size: a a a

2021 July 07

AS

Alexey Stavrov in Modern::Perl
К черту условие задачи. Вам не интересно?
источник

SZ

Sergey Zhmylove in Modern::Perl
Очередные вещи перепроверять и надеяться на неожиданные результаты? Ну нет, увольте меня от такого удовольствия ;)
источник

AS

Alexey Stavrov in Modern::Perl
Если Вам очевидно, до напишите результат в числах, пожалуйста.
источник

SZ

Sergey Zhmylove in Modern::Perl
У тебя какой процессор?
источник

SZ

Sergey Zhmylove in Modern::Perl
И память какая, и тайминги какие?
источник

SZ

Sergey Zhmylove in Modern::Perl
И частота системной шины?
источник

AS

Alexey Stavrov in Modern::Perl
😊
Это типо вся информация, которая Вам нужна, чтобы дать точный ответ?
источник

SZ

Sergey Zhmylove in Modern::Perl
Конечно, у меня за долгие годы работы в техподдержке сильно развился скилл гадания по фотографии, так что этого достаточно :)
источник

AS

Alexey Stavrov in Modern::Perl
😊
источник

SZ

Sergey Zhmylove in Modern::Perl
Это я всё к тому, что результат в числах не нужен -- это частное.
источник

SZ

Sergey Zhmylove in Modern::Perl
А вот общее -- это качественный результат
источник

SZ

Sergey Zhmylove in Modern::Perl
И несколько байт кода (около 50) будут работать, очевидно, быстрее, чем лазить в память, которая не влезла в л3
источник

AS

Alexey Stavrov in Modern::Perl
Ну конретно в вашем тесте у вас вообще в 4 кеш линии влезает в L1
источник

AF

Alexandre Frolov in Modern::Perl
Добрый день!
Подскажите, пожалуйста, как правильно запускать сервис на базе Mojo::Base 'Mojolicious'
с помощью hypnotoad.

Подготовил такой Unit-файл для Debian 10:

[Unit]
Description=FFront App
After=network.target
After=mysql.service
Requires=mysql.service
[Service]
Type=simple
PIDFile=/home/xbox8/data/www/folm_front/hypnotoad.pid
User=xbox8
Group=xbox8
ExecStart=/usr/local/bin/hypnotoad /home/xbox8/data/www/folm_front/script/f_front
ExecReload=/usr/local/bin/hypnotoad /home/xbox8/data/www/folm_front/script/f_front
#ExecStop=/usr/local/bin/hypnotoad -s /home/xbox8/data/www/folm_front/script/f_front
KillMode=process
Restart=always
[Install]
WantedBy=multi-user.target

Этот файл я сделал по инструкции https://docs.mojolicious.org/Mojolicious/Guides/Cookbook#Hypnotoad

Когда указываю Type=simple, команда systemctl запускает и останавливает сервис, однако процессы Mojolicious (их 8) не завершаются.
Приходится вручную выдавать команду hypnotoad -s /home/xbox8/data/www/folm_front/script/f_front

Если снять комментарий с ExecStop, то сервис циклически останавливается и перезапускается.

А если указываю Type=forking, то сервис запускается и работает, но команда systemctl start f_front.service подвисает,
и если подождать, выдает:

Job for folm_front.service failed because a timeout was exceeded.

Ошибка такая:

f_front.service: PID file /home/xbox8/data/www/f_front/hypnotoad.pid not readable (yet?) after start: No such file or directory

Файла hypnotoad.pid в указанном месте действительно нет.

Подскажите, пожалуйста, в чем может быть проблема?
Спасибо!
источник

SZ

Sergey Zhmylove in Modern::Perl
источник

AF

Alexandre Frolov in Modern::Perl
похоже помогло!!! Спасибо!
источник

VG

Vadim Goncharov in Modern::Perl
конечно нет, мы ж в группе про перл
источник

VO

Vyacheslav Olkhovche... in Modern::Perl
влезает оно не сразу а после обращения. так что тут все тривиально -- если дрочить на такты в длинном папалайне где среди прочего такая операция -- битовые сдвиги, а если надо большой батч так обработать -- табличный лукап.

проверять конечно можно но скучно и предсказуемо.
источник

AS

Alexey Stavrov in Modern::Perl
Влезает оно после 2-ух обращений.
А знаете почему? Потому что есть prefetch в процессорах. Это когда процессор, не дожидаясь обращения к следующей кеш линии, сразу же её загружает.
А после того, как загрузили в кеш линии, процессор их скорее всего не вытеснял никем
источник

VO

Vyacheslav Olkhovche... in Modern::Perl
а ты не пробовал не только читать, но и вдумываться в прочитанное?
источник