Хабр Курсы для всех
РЕКЛАМА
Практикум, Хекслет, SkyPro, авторские курсы — собрали всех и попросили скидки. Осталось выбрать!
Можно ли лучше? В принципе да. Выполняем dart compile exe и получаем ускорение на 10% или 9.00 секунд.
В оригинальном варианте хорошо бы выводить результат, который возвращается из log_loop, иначе складывается впечатление, что gcc вовсе вырезает этот вызов (на 02 — O3).
Я думаю, что в таком случае была бы видна разница между "C с линковкой" и "C без линковки", потому что без LTO вырезать вызов функции из внешней библиотеки проблематично, а GCC 9.1 не включает LTO по-умолчанию. Можете посмотреть на godbolt ассемблерный вывод, call log в цикле (который инлайнится в .main) остаются и при O3.
Не будет существенной разницы, потому что exe — это фактически aot-snapshot + dart runtime
Ускоряем Dart. Нативно, недорого