Floating Point Fun on Cortex-M Processors (danielmangum.com)

by hasheddan 6 comments 60 points
Read article View on HN

6 comments

[−] Neywiny 26d ago
Interesting. I was just thinking about this because of another post on floating point. I'm wondering if I can disable the fpu every so often and turn it on only if code needs it and it raises an exception.
[−] glitchc 26d ago
It's unclear why one would ever need to do this. Is it for power savings? What other use-cases would benefit from turning the FPU off between instructions?
[−] russdill 26d ago
There is overhead, and applications that don't use the FPU avoid that overhead. https://www.netbsd.org/docs/kernel/lazyfpu.html
[−] Neywiny 26d ago
Yes, for power savings. But I'd need to do a bit of a study on my code to see if it's even worth it. Since the majority of it doesn't use the FPU, it could help. But it might not be worth the effort.
[−] bobmcnamara 26d ago
Yes, you could turn it off every context switch.
[−] summa_tech 26d ago
Zephyr support lazy FPU context switches. So the downside from enabling FPU sharing is fairly limited.