О стохастической оптимизации энергопотребления процессора смартфона
Ключевые слова:
ОС Android, динамическое масштабирование частоты напряжения, стохастическая оптимизация, SPSA, энергопотреблениеАннотация
Увеличение времени работы смартфона — это постоянное стремление, которое с каждым годом становится все более и более важным. Это может быть достигнуто с помощью более совершенного оборудования или путем внедрения в программное обеспечение практик с учетом энергопотребления, и последний подход является более доступным. Поскольку ЦП является одним из самых энергоемких устройств для смартфонов, динамическое масштабирование частоты напряжения (DVFS) представляет собой метод настройки частоты ЦП в соответствии с текущими вычислительными потребностями, и уже были разработаны различные алгоритмы, как энергосберегающие, так и энергонезависимые. Следуя нашей предыдущей работе по этому вопросу, мы предлагаем новый подход DVFS для использования стохастической аппроксимации одновременных возмущений (SPSA) с двумя зашумленными наблюдениями для отслеживания оптимальной частоты и реализации нескольких алгоритмов на его основе. Кроме того, мы также решаем проблему аппаратной задержки между сигналом для ЦП об изменении частоты и ее фактическим обновлением. Поскольку ОС Android может использовать планировщик задач по умолчанию или планировщик с учетом энергопотребления, который способен использовать преимущества разнородных архитектур мобильных ЦП, таких как ARM big.LITTLE, мы также исследуем схему интеграции между предлагаемыми алгоритмами и планировщиками ОС. Представлена методология тестирования на основе моделей для сравнения разработанных алгоритмов с существующими, а также описан набор тестов, отражающий реальные сценарии использования. Наши эксперименты показывают, что алгоритм на основе SPSA хорошо работает с EAS с упрощенной схемой интеграции, демонстрируя производительность ЦП, сравнимую с другими алгоритмами DVFS с учетом энергопотребления, и снижение энергопотребления.
Литература
2. Spall J.C. Multivariate stochastic approximation using a simultaneous perturbation gradient approximation. IEEE Transactions on Automatic Control. 1992. vol. 37. no. 3. pp. 332–341.
3. Granichin O., Amelina N. Simultaneous perturbation stochastic approximation for tracking under unknown but bounded disturbances. IEEE Transactions on Automatic Control. 2015. vol. 60. no. 6. pp. 1653–1658.
4. Bogdanov E., Bozhnyuk A., Bykov D., Sartasov S., Sergeenko A., Granichin O. Dynamic Voltage-Frequency Optimization using Simultaneous Perturbation Stochastic Approximation. 60th IEEE Conference on Decision and Control (CDC). 2021. pp. 3774–3779.
5. Granichin O., Vakhitov A. Accuracy for the SPSA algorithm with two measurements. WSEAS Transactions on Systems. 2006. vol. 5.
6. Mair H.T., Gammie G., Wang A., Lagerquist R., Chung C.J., Gururajarao S., Kao P., Rajagopalan A., Saha A., Jain A., Wang E., Ouyang S., Wen H., Thippana A., Chen HsinChen, R.S., Chau M., Varma A., Flachs B., Peng M., Tsai A., Lin V., Fu U., Kuo W., Yong L.-K., Peng C., Shieh L., Wu J., Ko U. 4.3 A 20nm 2.5GHz ultra-low-power tri-cluster CPU subsystem with adaptive power allocation for optimal mobile SoC performance. 2016 IEEE International Solid-State Circuits Conference (ISSCC). 2016. pp. 76–77.
7. Bogdanov E., Bozhnyuk A., Sartasov S., Granichin O. On Application of Simultaneous Perturbation Stochastic Approximation for Dynamic Voltage-Frequency Scaling in Android OS. 7th International Conference on Event-Based Control, Communication and Signal Processing (EBCCSP’21). 2021. DOI: 10.1109/EBCCSP53293.2021.9502396.
8. The kernel development community. Energy Aware Scheduling. Available at: https://www.kernel.org/doc/html/next/scheduler/sched-energy.html. (accessed 10.05.2023).
9. CPU frequency and voltage scaling code in the Linux (TM) kernel. Linux CPUFreq. CPUFreq Governors. Available at: https://android.googlesource.com/kernel/common/+/a7827a2a60218b25f222b54f77ed38f57aebe08b/Docum freq/governors.txt. (accessed 10.05.2023).
10. Basireddy K.R., Singh A.K., Al-Hashimi B.M., Merrett G.V. AdaMD: Adaptive Mapping and DVFS for Energy-Efficient Heterogeneous Multicores. IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems. 2020. vol. 39. no. 10. pp. 2206–2217.
11. Lee J., Nam S., Park S. Energy-Efficient Control of Mobile Processors Based on Long Short-Term Memory. IEEE Access. 2019. vol. 7. pp. 80552–80560.
12. Rapp M., Krohmer N., Khdr H., Henkel J. NPU-accelerated imitation learning for thermal- and QoS-aware optimization of heterogeneous multi-cores. Proceedings of the 2022 Conference and Exhibition on Design, Automation and Test in Europe (DATE ’22). 2021. pp. 584–587.
13. Kim S., Bin K., Ha S., Lee K., Chong S. ZTT: learning-based DVFS with zero thermal throttling for mobile devices. Proceedings of the 19th Annual International Conference on Mobile Systems, Applications, and Services (MobiSys’21). 2021. pp. 41–53.
14. Song S., Kim J., Chung J.-M. Energy Consumption Minimization Control for Augmented Reality Applications based on Multi-core Smart Devices. IEEE International Conference on Consumer Electronics (ICCE). 2019. DOI: 10.1109/ICCE.2019.8661917.
15. Ohk S.-R., Kim Y., Kim Y.-J. Phase-Based Low Power Management Combining CPU and GPU for Android Smartphones. Electronics. 2022. vol. 11. no. 16. DOI: 10.3390/electronics11162480.
16. Dey S., Isuwa S., Saha S., Singh A.K., McDonald-Maier K. CPU-GPU-Memory DVFS for Power-Efficient MPSoC in Mobile Cyber Physical Systems. Future Internet. 2022. vol. 14. no. 3. DOI: 10.3390/fi14030091.
17. CPU Idle Time Management. Available at: https://docs.kernel.org/admin-guide/pm/cpuidle.html. (accessed 10.05.2023).
18. Metri G., Agrawal A., Peri, R., Brockmeyer M., Weisong S. A simplistic way for power profiling of mobile devices. 2012 International Conference on Energy Aware Computing. 2012. DOI: 10.1109/ICEAC.2012.6471020.
19. Monsoon Power Monitor Specifications. Available at: https://www.msoon.com/specifications. (accessed 10.05.2023).
20. Chung Y., Lin C., King C. ANEPROF: Energy Profiling for Android Java Virtual Machine and Applications. 2011 IEEE 17th International Conference on Parallel and Distributed Systems. 2011. pp. 372–379. DOI: 10.1109/ICPADS.2011.28.
21. Measuring Component Power. Available at: https://source.android.com/docs/core/power/component. (accessed 10.05.2023).
22. Granichin O. Linear regression and filtering under nonstandard assumptions (arbitrary noise). IEEE Transactions on Automatic Control. 2004. vol. 49. no. 10. pp. 1830–1837.
23. Geekbench 5 CPU Workloads. Available at: https://www.geekbench.com/doc/geekbench5-cpu-workloads.pdf. (accessed 10.05.2023).
Опубликован
Как цитировать
Раздел
Copyright (c) Станислав Юрьевич Сартасов, Макар Андреевич Пелогейко, Олег Николаевич Граничин
Это произведение доступно по лицензии Creative Commons «Attribution» («Атрибуция») 4.0 Всемирная.
Авторы, которые публикуются в данном журнале, соглашаются со следующими условиями: Авторы сохраняют за собой авторские права на работу и передают журналу право первой публикации вместе с работой, одновременно лицензируя ее на условиях Creative Commons Attribution License, которая позволяет другим распространять данную работу с обязательным указанием авторства данной работы и ссылкой на оригинальную публикацию в этом журнале. Авторы сохраняют право заключать отдельные, дополнительные контрактные соглашения на неэксклюзивное распространение версии работы, опубликованной этим журналом (например, разместить ее в университетском хранилище или опубликовать ее в книге), со ссылкой на оригинальную публикацию в этом журнале. Авторам разрешается размещать их работу в сети Интернет (например, в университетском хранилище или на их персональном веб-сайте) до и во время процесса рассмотрения ее данным журналом, так как это может привести к продуктивному обсуждению, а также к большему количеству ссылок на данную опубликованную работу (Смотри The Effect of Open Access).