Приложение A. Рекомендации для разработчиков
Рекомендации для разработчиков
В любой серьезном пособии по программированию рассматриваются вопросы производительности функций и выделения памяти. При разработке программ следует обращать внимание на их влияние на энергопотребление систем. Несомненно, это не затрагивает каждую строку кода, но поможет уменьшить вероятность неэффективного потребления.
Что может оказывать негативный эффект на энергопотребление системы?
- Использование потоков.
- Излишнее или неэффективное пробуждение процессора. Если пробуждение необходимо, выполните необходимые действия быстро и в одно и то же время.
- Излишнее использование
[f]sync()
. - Излишние периодические опросы (лучше применять тактику реагирования на события).
- Низкая эффективность пробуждений.
- Неэффективный доступ к дискам. Рекомендуется использование буферов большего объема для уменьшения частоты запросов доступа к диску и выполнение записи больших блоков за раз.
- Неэффективное использование таймеров. По возможности рекомендуется группировать таймеры для программ (или даже систем);
- Излишние операции ввода и вывода, потребления энергии и использования ресурсов памяти (включая утечку памяти).
- Выполнение вычислений, в которых нет необходимости.
Ниже об этом будет рассказано более подробно.
A.1. Использование потоков
Использование потоков не всегда ускоряет работу приложений.