Прежде чем кэш будет приносить пользу, его надо заполнить, а прирост скорости не будет мгновенным.
А как же кэш на запись? Ведь кэшируется не только чтение, но и запись, а запись более дорогая операция, так как кэш самого жесткого диска может для нее не использоваться(так как энергозависим), а SSD может использоваться, так как энергонезависим.
«единственная альтернатива C++–шаблонам для подобных оптимизаций – это писать десятки, сотни и тысячи функций – вот уж где действительно copy-paste.», альтернатива — использовать генераторы C кода, например XSLT, или скрипт который сгенерирует эти 3840 функций и отдать компилятору, при этом можно генерировать любой код, не ограничиваясь С++ шаблонизатором.
Чем Ваш сервис лучше hotspotshield.com который так же имеет on demand на iPhone, предоставляет профили не имеет ограничений по скорости и существует в бесплатной версии?
От перевода времени спасет и CLOCK_MONOTONIC и CLOCK_MONOTONIC_RAW, но как правильно написал @kibrtgus NTP может подводить часы без прыжков, а управляя скоростью хода, в этом случае CLOCK_MONOTONIC будет идти тоже с другой скоростью, а CLOCK_MONOTONIC_RAW никак затронут не будет.
Как пишут в мане — CLOCK_MONOTONIC_RAW (since Linux 2.6.28; Linux-specific), автор видимо тестировал со старыми ядрами.
А как же кэш на запись? Ведь кэшируется не только чтение, но и запись, а запись более дорогая операция, так как кэш самого жесткого диска может для нее не использоваться(так как энергозависим), а SSD может использоваться, так как энергонезависим.
Как пишут в мане — CLOCK_MONOTONIC_RAW (since Linux 2.6.28; Linux-specific), автор видимо тестировал со старыми ядрами.