Search papers, labs, and topics across Lattice.
This work introduces an open-source framework that enables complete on-device training using float16 on resource-constrained RISC-V single-core architectures, leveraging standard RISC-V extensions. By reducing the memory footprint by approximately 50% compared to float32 while maintaining minimal performance degradation, the framework enhances the feasibility of transfer learning and fine-tuning through layer-freezing capabilities. Additionally, the implementation demonstrates low area overhead for float16 operations on FPGA softcores, underscoring the practicality of this approach for embedded systems.
Achieving a 50% reduction in memory usage for on-device training without significant performance loss could revolutionize deep learning on resource-constrained hardware.
By leveraging standard RISC-V extensions, namely Zfh (scalar float16) and Zvfh (vector float16), this work proposes an open-source framework to enable complete on-device training on resource-constrained RISC-V single-core. Our approach allows memory footprint reduction by about 50% as compared to using float32 and with minimal model performance degradation. We also facilitate transfer learning and fine-tuning scenarios by incorporating layer-freezing capabilities. Our work builds onto AIfES, an open-source, modular and generic DNN training and inference framework for embedded systems that can be extended with custom hardware-specific functions. The benefits of float16 is further emphasized by outlining the low area overhead of Zfh on a RV64GC super-scalar out-of-order FPGA softcore (+1.15% LUT6 and +0.05% FF at 175MHz). Finally, we discuss the architecture of a Zvfh implementation within the same RISC-V core.