Задать вопрос
  • Как поправить код, чтобы улучшить расхождения времени его выполнения?

    @TicSo Автор вопроса
    2. Я не увидел в вопросе описания того, как происходит запуск. Хотябы в --release компилировал?

    спасибо за помощь разобраться
    да, > cargo run --release
    в отличие от debug даёт общее ускорение выполнения, но между повторами сохраняется иногда двукратное расхождение времени выполнения, например для массива на 10к элементов и 30 повторов:
    10к/30
    кол-во элементов массива `vec_01`, которые обрабатываю в цикле = 10000
    кол-во повторов = 30
    count_chet = 151950
    count_nech = 148050
    time_min = 59600 time_max = 110500


    При значительном увеличении кол-ва элементов в массиве, например, до 10кк:
    10кк/30
    кол-во элементов массива `vec_01`, которые обрабатываю в цикле = 10000000
    кол-во повторов = 30
    count_chet = 150007770
    count_nech = 149992230
    time_min = 44812400 time_max = 88239600
    -
    кол-во элементов массива `vec_01`, которые обрабатываю в цикле = 10000000
    кол-во повторов = 30
    count_chet = 149946630
    count_nech = 150053370
    time_min = 45137500 time_max = 89361300

    вот гуляет время от 45 ms до 89 ms на одинаковых условиях и наборе данных и думаю, что это не нормально (случайные служебные процессы), а косяк кода. Поэтому задал вопрос.
    Ответ написан