mirror of
https://github.com/esphome/esphome.git
synced 2026-06-24 12:53:26 +00:00
0b288c0f082d5a658f5d800426e0813a08b5156b
Reduce CPU overhead in display update loops by caching computed values: - Cache data_mask_ and clock_ pin masks during setup() instead of recomputing them in every display function call - Optimize hscan_start_() by using cached values instead of calling get_data_pin_mask_() on every row - Cache height, width_bytes, buffer_len at start of display functions to avoid repeated virtual function calls in tight loops - Precompute LUT base pointers in display3b_() to avoid k*256 index calculations in inner loop - Hoist model checks (is_6_plus, needs_last_clock) outside loops to reduce branching in performance-critical paths These optimizations reduce function call overhead and redundant calculations in the display update paths, which are executed for every pixel row during screen refresh.
Description
ESPHome is a system to control your ESP8266/ESP32 by simple yet powerful configuration files and control them remotely through Home Automation systems.
Readme
Multiple Licenses
393 MiB
Languages
C++
60.7%
Python
38.9%
C
0.3%
