Reducing Energy Consumption for Machine Learning Inference on Edge Devices using C++20 Coroutines

Increasingly, machine learning inference is implemented on relatively low-powered edge devices, where battery life is a key performance criterion. In this work, we demonstrate how C++20 coroutines can be used to reorganise the execution order of an iterative inference task on an edge device. A Prognostic and Health Management (PHM) application receives streams of vibration data as envelope spectra from a wireless sensor network and processes them locally through an array of Support Vector Machines. In our experiments on ARM Cortex A72 & A53 64-bit SoCs, this method can reduce energy consumption for the task by up to 18%, reduce overall energy use by up to 20% and cut execution time by up to 20.5%. Furthermore, peak power levels are reduced by up to 4.5%, which can increase battery lifespan by reducing wear. We demonstrate that the necessary changes to the C++ code are simple, repeatable and generally applicable to iterative inference tasks.

Authors

Institutions

Publication Details

Journal
ACM Transactions on Embedded Computing Systems
Published
2026-06-24
DOI
https://doi.org/10.1145/3821577
Primary Topic
Innovative Energy Harvesting Technologies
Type
article
Field-Weighted Citation Impact
0.00
Controls
|||
ALL TIME
JAN
FEB
MAR
APR
MAY
JUN
JUL
AUG
SEP
OCT
article

Reducing Energy Consumption for Machine Learning Inference on Edge Devices using C++20 Coroutines

Steve Kerrison, Bronson W. Philippa, Bruce Belson, Jason Holdsworth
ACM Transactions on Embedded Computing Systems
Innovative Energy Harvesting Technologies
article

Reducing Energy Consumption for Machine Learning Inference on Edge Devices using C++20 Coroutines

Steve Kerrison, Bronson W. Philippa, Bruce Belson, Jason Holdsworth
article en

Abstract

Increasingly, machine learning inference is implemented on relatively low-powered edge devices, where battery life is a key performance criterion. In this work, we demonstrate how C++20 coroutines can be used to reorganise the execution order of an iterative inference task on an edge device. A Prognostic and Health Management (PHM) application receives streams of vibration data as envelope spectra from a wireless sensor network and processes them locally through an array of Support Vector Machines. In our experiments on ARM Cortex A72 & A53 64-bit SoCs, this method can reduce energy consumption for the task by up to 18%, reduce overall energy use by up to 20% and cut execution time by up to 20.5%. Furthermore, peak power levels are reduced by up to 4.5%, which can increase battery lifespan by reducing wear. We demonstrate that the necessary changes to the C++ code are simple, repeatable and generally applicable to iterative inference tasks.

ACM Transactions on Embedded Computing Systems
James Cook University Singapore (SG), James Cook University (AU)
Affordable and clean energy
Openalex Percentile: Top 12%
Innovative Energy Harvesting Technologies
AI Navigator

Ask Laika to Summarize, Analyze, and Connect papers live on the map.

Summarize Papers & Methodologies

Extract key findings, datasets, and comparative methods across publications.

Benchmark Rankings & Visual Analytics

Rank top research institutions, authors, funders, topics, and journals by Field-Weighted Citation Impact (FWCI) and paper volume with instant charts.

Connect Distant Disciplines

Bridge topological clusters on the map to find hidden collaborative intersections.

Reducing Energy Consumption for Machine Learning Inference on Edge Devices using C++20 Coroutines — Steve Kerrison, Bronson W. Philippa, et al. · ACM Transactions on Embedded Computing Systems (2026) | TGRS Research Map | TGRS