Прекрасный пример преждевременной оптимизации на микроуровне, беспокоясь о единичных циклах ЦП, который ничего не дает, но запутывает ваш код - start_sec
и end_sec
больше не содержат значений, предлагаемых именами.И вы даже оптимизировали его неправильно:
start_sec -= -1; //keep it for million comparisons
Это добавит единицу к start_sec
.
Откуда берутся миллионы time_t
значений?Входной файл?База данных?Из системных часов?Случайный генератор?Каждый из этих источников будет на несколько медленнее, чем сравнение.Таким образом, даже если <и> на несколько циклов ЦП быстрее, чем <= и> = (для заданного вами набора команд на заданном конкретном ЦП), и профилирование показывает, что этот цикл на самом деле является вашим узким местом, эта «оптимизация» вряд ли решитЭта проблема.Специально для нескольких миллионов сравнений на современных ГГц ЦП с миллиардами циклов в секунду.