LINUX.ORG.RU

История изменений

Исправление theNamelessOne, (текущая версия) :

А что «думает» nanobench?

Поправь меня, если я где-то ошибся (не пишу на C++):

  1. Ты выполняешь бенчмарк для разных размеров вектора в цикле.
  2. В каждой итерации цикла ты ресайзишь и заполняешь вектор с нуля.
  3. Далее ты запускаешь бенчмарк, который замеряет скорость выполнения замыкания; вектор при этом в замыкание передаётся по ссылке. Замеры выполняются дохрениллиард раз (нам не особо важно, сколько именно, главное, что больше 1).
  4. В каждой итерации бенчмарка ты удаляешь из вектора чётные элементы.

Если я всё правильно понял, у тебя в первой итерации бенчмарка (не путать с итерацией цикла!) удаляются все чётные элементы вектора, при этом все последующие итерации бенчмарка будут выполняться уже на изменённом векторе, в котором чётных элементов не осталось (т.е. в последующих итерациях бенчмарка будет просто линейный проход по вектору без вызовов erase).

Что тогда ты хотел этим бенчмарком показать-то?

Исходная версия theNamelessOne, :

А что «думает» nanobench?

Поправь меня, если я где-то ошибся (не пишу на C++):

  1. Ты выполняешь бенчмарк для разных размеров вектора в цикле.
  2. В каждой итерации цикла ты ресайзишь и заполняешь вектор с нуля.
  3. Далее ты запускаешь бенчмарк, который замеряет скорость выполнения замыкания; вектор при этом в замыкание передаётся по ссылке. Замеры выполняются дохрениллиард раз (нам не особо важно, сколько именно, главное, что больше 1).
  4. В каждой итерации бенчмарка ты удаляешь из вектора чётные элементы.

Если я всё правильно понял, у тебя в первой итерации бенчмарка (не путать с итерацией цикла!) удаляются все чётные элементы вектора, при этом все последующие итерации бенчмарка будут выполняться уже на изменённом векторе, в котором чётных элементов не осталось.

Что тогда ты хотел этим бенчмарком показать-то?