Вступить в клуб →
средняявопросСборка, отладка и профилирование

Замер производительности сделан на отладочной сборке

Сравнивали две реализации фильтра сигнала. Замер выполнен на сборке с флагами -O0 -g и включённым санитайзером адресов: реализация A оказалась быстрее B примерно втрое. Вывод занесли в отчёт и выбрали A.

В релизной сборке с оптимизацией картина обратная: B заметно быстрее A.

Как это объяснить?

  • Санитайзер замедляет обе реализации одинаково, поэтому исходный вывод о преимуществе A остаётся корректным
  • Обратная картина означает ошибку в реализации B, и искать её нужно именно в релизной сборке с оптимизацией
  • Нужно просто увеличить число повторов замера: при достаточном количестве прогонов результаты сойдутся
  • Замер без оптимизаций и под санитайзером не отражает релиз: инлайнинг и векторизация меняют соотношение

🔒 Проверка ответа — для участников клуба

  • Проверка ответа
  • Подсказка, если застряли
  • Разбор с объяснением, почему так
  • Прогресс по всем задачам и виртуальные собеседования
Зарегистрироваться →

Регистрация занимает минуту

Другие задачи раздела