Conference paper Open Access

Memory Footprint Optimization Techniques for Machine Learning Applications in Embedded Systems

Manolis Katsaragakis; Lazaros Papadopoulos; Mario Konijnenburg; Francky Catthoor; Dimitrios Soudris

Effective memory management is an important requirement for embedded devices that operate at the edges of Internet of Things(IoT) networks. In this paper, we present a set of memory optimization techniques for machine learning applications developed in Python. The proposed techniques aim to avoid the main drawbacks of static memory allocation and to promote dynamic memory management, in order to optimize memory usage and execution latency. The results of the presented techniques are evaluated in a biomedical application, showing significant memory utilization and performance improvements (64% reduction in memory size requirements and 51% execution time reduction). Additionally, we highlight the applicability of the proposed techniques to a wide variety of IoT applications that leverage machine learning algorithms. Finally, the results of the optimized biomedical application in Python are compared with the corresponding version of the application in C and we identify trade-offs between software maintainability and memory size requirements.

Files (2.2 MB)
Name Size
publication-6.pdf
md5:3a5d8ba16912943e3c2013ad5f7da5ad
2.2 MB Download
35
23
views
downloads
Views 35
Downloads 23
Data volume 51.1 MB
Unique views 33
Unique downloads 21

Share

Cite as