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

Benchmarks #34

Open
9 tasks done
faiface opened this issue Jun 5, 2017 · 0 comments
Open
9 tasks done

Benchmarks #34

faiface opened this issue Jun 5, 2017 · 0 comments
Milestone

Comments

@faiface
Copy link
Owner

faiface commented Jun 5, 2017

Benchmarks are incredibly useful when optimizing performance. They are also useful when we want to tell people how much we improved the performance of the library (for example: "The performance of drawing primitive shapes was improved by 80%", sounds good).

Technology

  • We'll use the standard "testing"
  • Each benchmark should be located in the same folder as the functionality it's benchmarking
  • Related benchmarks should be located together in a single appropriately named file
  • Benchmark files should have a different package than the functionality they're benchmarking (pixe -> pixel_test)

What to benchmark

Here's the list so far. Will most likely expand.

  • Pixel
    • ToRGBA
    • All Matrix operations
    • Sprite drawing to Batch
  • IMDraw
    • All IMDraw drawing operations (circle, line, etc.) separately for different number of points (i.e. don't use b.N as the number of points, but as the number of repeated drawings)
  • Text
    • Creating Atlas from several different rune sets (small, large)
    • Writing text (by small chunks, by large chunks, b.N should be the number of chunks, not their size)
@faiface faiface added this to the 0.7 milestone Jun 5, 2017
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant