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

uefi-test-runner: speed up ploting of sierpinski triangle by updating changed pixel only #1209

Merged
merged 1 commit into from
Jun 21, 2024

Conversation

JeffLi01
Copy link
Contributor

When only one pixel needs to be updated, there is no need to transfer the entire buffer. After drawing the background in advance, you only need to update each pixel that requires it.

@JeffLi01 JeffLi01 changed the title uefi-test-runner: speed up ploting of sierpinski triangle by updating… uefi-test-runner: speed up ploting of sierpinski triangle by updating changed pixel only Jun 17, 2024
@phip1611
Copy link
Contributor

phip1611 commented Jun 17, 2024

Interesting. May you tell us a little about the background how/where you noticed the slow performance? Are you running everything inside a QEMU without accelerator?

Looks cool and sensible - thanks!

@phip1611 phip1611 self-assigned this Jun 17, 2024
@JeffLi01
Copy link
Contributor Author

Are you running everything inside a QEMU without accelerator?

Yes, I executed the example within QEMU on my laptop, and it took several tens of seconds for the outline to appear.

… changed pixel only

Signed-off-by: Jeff Li <lijinfeng01@ieisystem.com>
@phip1611
Copy link
Contributor

I ran it locally on my machine. A notable performance improvement - thanks for your contribution!

@phip1611 phip1611 added this pull request to the merge queue Jun 21, 2024
Merged via the queue into rust-osdev:main with commit 8ea4837 Jun 21, 2024
12 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants