What is Overhead in Development?
The Developer Guy
Overhead: computation time, memory, bandwidth, or other resources spent on extra work, which is required to perform a specific task.
Software developers introduced some helpful techniques, like adding abstraction. These made the process faster, but it's not without some cost: it usually makes the end product slower. Sometimes just a bit, sometimes much more! Let's learn about overhead with some practical examples.
00:00 Introduction 00:40 Disclaimer 01:08 Why use abstraction? 02:42 Max blink frequency with Assembly 03:59 ISA 04:30 Higher level languages 05:16 Optimalization with high level languages 06:03 Baremetal C: debug vs. release 06:43 Portability issues 07:12 Arduino and portability: HAL 08:08 HAL overhead 08:30 Overhead in binaries 09:24 Native STM32 10:06 Framework overhead 10:32 Fair comparison 11:28 Optimize microbit 12:13 Too much abstraction? 13:06 Final comparison 14:07 Bottlenecks ... https://www.youtube.com/watch?v=hjORztAoGz0
187735267 Bytes