Heterogeneous Computing For Embedded Machine Learning
Machine learning in an embedded system is a challenge due to the limited memory and processing power of the embedded system. Multi-core embedded processing subsystems are useful when integrated with acceleration enhancing hardware but resources, especially memory, need to be handled carefully.
In a heterogeneous computing environment memory isolation methods and multi-threaded applications are key when multiple machine learning algorithms are executed concurrently within a multi-core system.
This project will build on previous team's efforts from other universities that have developed a System on a Chip (SoC) environment for a computer vision based machine learning system. Previous teams have implemented a single ML algorithm on the SoC, however this project will take it one step further by implementing multiple ML algorithms on the SoC. Students will have the opportunity to further enhance the machine learning algorithms that are known working during this process.
Xilinx Kria evaluation boards will be provided as well as tutoring on basic machine learning methods.
Objectives
Code written and running on a Xilinx Kria development board that infers 4 simultaneous machine learning algorithms. The models for the machine learning algorithms will be provided.
Motivations
Learn how to manage embedded computing resources so that one machine learning algorithm doesn't overwhelm the entire embedded system.
Qualifications
Minimum Qualifications:
- No prior machine learning experience is required.
- Access to a native Linux computing environment will be needed.
- Solid C coding training.
- Students should have prior experience working in a Linux development environment.
- Some Python coding experience is helpful.
Details
Project Partner:
JR Spidell
NDA/IPA:NDA Required
Number Groups:1
Project Status:Accepting Applicants
Keywords:CPythonLinuxConsultancyMachine Learning ML
