Benchmarking and performance tweaking

I have done a benchmark study (on my hardware) using the benchmark app in the examples repo, results are below.
I know it is difficult to compare as there a miriad of considerations, but would it possible to provide a reference category where people can post the results they are getting and under what circumstances ?
Maybe there are results you have for particular well known boards that could be made available in a similar form.
It would be useful when trying to get the best performance from the platform you are working on. Also it would give an idea of what one could expect when a system is performing close to its best under the circumstances or if there is room for improvement by working on the low level drivers or by jostelling ram and or DMA queue depths etc.

Perhaps there is one, (if so I have not seen it). An in depth article or blog post would be helpfull when one needs to create the low level display interface. For example between ram allocation and performance tradeoffs for. And a guide that covers general principles on these matters. It seems to me that if you have large display objects that need to be redrawn frequently bigger is better (in terms of display buffer size). However if you have relatively small objects on screens that do not change frequetly then perhaps that ram could be better used elsewhere. An in depth “how to” would be very helpful.

Thank you.


Thanks for sharing! It really would be great to have a “database” about the performances.

Couldn’t it go to the “My project” category with a “benchmark” tag?

I post would be really useful. I add it to my todo list :slight_smile:

My feeling is that would muddy the waters a little. I think that it should be something very specific. i.e This is what you can expect on this board under these circumstances. But that is how I see it. The main thing though is that it is easilly accesible.

It’s true. But on the other hand, I try to avoid to make the categories too fragile.

So (think aloud) if we’d have a “Benchmark” category people could share their experience with a specific hardware/software configuration.
While the purpose of “My projects” category is to share if you’ve created something with LittlevGL.

They are really not the same but similar. I afraid there won’t be many posts in a “Benchmark” category. Actually, nobody shared such information so far.

So I suggest using the “My project” category for first, and if other people also send benchmarks we can create a new category for it.

And I don’t expect that many will.

Usually, people come here to ask questions, and then they move on with their projects. Some stick around to help answer other questions/contribute a feature, but statistics would prove that the majority come purely to ask questions.

With that in mind…

I agree.

I accept that is probably true. When starting out on with a new hardware platform, particularly one where starting from an unknown basis but perhaps also so when there is one. It is difficult to know when you have “got it right”. And it can be time consuming and after much trying this that and the other you never really know. Maybe you could simply add a section to the documentation that details the kind of performance you can expect. A list of different common micro’s running with different display controllers would achieve more or less these results with this benchmark test when configured that way. It can save a lot of time with that kind of reference information. My intention behind this post was to try to point that out. For NO other reason, I assure you !

I see and really would be great. Even with a few examples.
It’s planned to extend the docs with more tutorials and examples. I add this topic to my todo list.