Для ефективного таймінгу програм, особливо коли вам цікаво порівняти альтернативні рішення, вам потрібен контроль! Хороший спосіб - ввести у функцію процедуру, яку ви призначаєте. Виклик функції в циклі синхронізації. Напишіть процедуру заглушки, по суті, вилучивши весь код зі своєї функції та просто повернувшись із неї (але залиште всі аргументи у). Поставте заглушку у цикл синхронізації та повторіть час. Це вимірює всі накладні витрати, пов'язані з термінами. Відняти час заглушки від часу процедури, щоб отримати сітку: це має бути точним показником фактичного необхідного часу.
Оскільки більшість систем в даний час може бути перервано безперервно, важливо зробити кілька запусків часу, щоб перевірити їх мінливість. Замість того, щоб робити один довгий пробіг з секунд, робіть пробігу приблизно секунд кожна. Це допомагає зробити це в подвійній петлі все за один раз. Мало того, що простіше впоратися, це вводить трохи негативної кореляції у кожному часовому ряді, що фактично покращує оцінки.м н / мNмN/ м
Використовуючи ці основні принципи експериментального дизайну, ви по суті контролюєте будь-які відмінності через те, як ви розгортаєте код (наприклад, різницю між циклом for та реплікацією ()). Це змушує вашу проблему піти.