По наводке от Shmuel: viewtopic.php?style=3&p=179221#p179221
В ней ссылка на статью: https://luajit.org/ext_profiler.html (низко-высокоуровневые профилирования)
Изучил, но остались "непонятности":
1) для меня, наверное, подходит раздел "Низкоуровневый API Lua"
2) добавил в коде ViewColor строки: local profile = require("jit.profile")
Не ругается, всё ок, идем дальше.
3) требуется вставить код profile.start(mode, cb) в нужное место
но не смог разобраться, например написал так:
profile.start("i", cb)
Ошибка: bad argument #2 (function expected, got string)
Что именно подразумевается "cb" ? в статье сказано, что некая функция содержащей (thread, samples, vmstate) исходник на гитхабе этой функции.
Полагаю настолько очевидные вещи для обычных пользователей, что не нужно даже демонстировать example.
Или может быть перейти в раздел "высокоуровненый" Профилирование?
Пытаюсь понять, от чего LUA на пару секунд еле-шевелится, и затем на пару секунд бодро-шустро, и затем опять еле-шевелится (чередования по секундам).
Как в Lua правильно настроить профилирование (profiling)?
-
- Posts: 7044
- Joined: Thu 23 Mar, 2006 21:36
- Location: Israel
- Has thanked: 44 times
- Been thanked: 591 times
Как в LUA правильно настроить Профилирования (Profile) ?
"cb" это вероятно от слова callback.Ultrabyte wrote: Fri 06 Jun, 2025 14:22 profile.start("i", cb)
Ошибка: bad argument #2 (function expected, got string)
Ошибка вроде понятная, второй аргумент должен быть функцией, а по факту оказался строкой.
Как в Lua правильно настроить профилирование (profiling)?
Согласен, об этом упоминается в статье, в ошибках, но вот затык, нет
example "function CB"

В инете упоминается разные виды LUA, в котором описывалось как
profile.start(mode, "\out\profile.log")
- но это явно не наш случай.И, конечно, есть еще образец . Отсюда: https://github.com/2dengine/profile.lua
Но это снова не наш случай, т.к. другой PureLUA.
Остается открытый вопрос, как написать образцовый пример функции "cb".
Last edited by Ultrabyte on Sat 07 Jun, 2025 02:17, edited 1 time in total.
- John Doe
- Бюрократ
- Posts: 14338
- Joined: Wed 27 Apr, 2005 20:42
- Location: github.com/FarManagerLegacy
- Has thanked: 80 times
- Been thanked: 475 times
- Contact:
Как в Lua правильно настроить профилирование (profiling)?
Пример cb вижу в коде по вашей ссылке (репозиторий luajit).
Вторая ссылка это уже другой совершенно независимый профайлер, но и его тоже можно использовать. Единственное там сказано о необходимости отключить оптимизации luajit но не приведено команд как именно.
Вторая ссылка это уже другой совершенно независимый профайлер, но и его тоже можно использовать. Единственное там сказано о необходимости отключить оптимизации luajit но не приведено команд как именно.
https://t.me/FarManager — Telegram чат