Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Component esp_lvgl_port, can SIMD instructions be used to speed up LVGL swapping bytes? (BSP-293) #154

Open
modi12jin opened this issue Apr 5, 2023 · 4 comments
Assignees
Labels
Area: LVGL related to LVGL and LVGL port Status: Awaiting triage Type: Question Issue is only question

Comments

@modi12jin
Copy link

I am more curious whether SIMD instructions can speed up the LVGL drawing UI process?

@github-actions github-actions bot changed the title Component esp_lvgl_port, can SIMD instructions be used to speed up LVGL swapping bytes? Component esp_lvgl_port, can SIMD instructions be used to speed up LVGL swapping bytes? (BSP-293) Apr 5, 2023
@igrr
Copy link
Member

igrr commented Apr 5, 2023

They definitely can be used to speed up color fill and similar operations. LVGL project is implementing the parallel drawing framework, which will allow the port layer to define handlers for specific drawing tasks (see this discussion). According to @kisvegabor the release of LVGL with these changes is planned in autumn (lvgl/lvgl#4011 (comment)). Then we will implement some of the drawing tasks using SIMD instructions.

@kisvegabor
Copy link

I confirm it! 🙂

@VojtechBartoska
Copy link
Contributor

@modi12jin Can I close this ticket as answered?

@VojtechBartoska VojtechBartoska added the Resolution: Awaiting response Issue is awaiting response from author label Mar 13, 2024
@kisvegabor
Copy link

Since v9 LVGL has some built-in ASM accelerators. See an example for the usage here.

Somewhere Espressif described that maintaining the ESP-ASM on ESP's side would be more beneficial, but I don't know if there is a final decision about it. Having them in LVGL could be beneficial to avoid compatibility issues though.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Area: LVGL related to LVGL and LVGL port Status: Awaiting triage Type: Question Issue is only question
Projects
None yet
Development

No branches or pull requests

5 participants