cogentcore / core

A free and open source framework for building powerful, fast, elegant 2D and 3D apps that run on macOS, Windows, Linux, iOS, Android, and the web with a single Go codebase, allowing you to Code Once, Run Everywhere.
http://cogentcore.org/core
BSD 3-Clause "New" or "Revised" License
1.73k stars 82 forks source link

Profile and optimize #659

Open kkoreilly opened 10 months ago

kkoreilly commented 10 months ago

We could probably improve performance a decent amount by profiling and optimizing, which would be helpful for lower capacity platforms like web.

kkoreilly commented 9 months ago

When we do this, we should do widget-specific render profiling using PushBounds and PopBounds.

theclapp commented 3 months ago

Some data points:

runrc commented 1 week ago

It would be beneficial to get some performance improvements done soon. The attraction of using Cogent Core versus say web technologies is the ability to handle and visualise large datasets. At the moment, the table struggles with scrolling with large amounts of data (https://github.com/cogentcore/core/issues/1128)

kkoreilly commented 1 week ago

@runrc Thank you for pinging us on this issue. We have been busy for various reasons as I explain below, but we will have more time soon to improve Cogent Core, and we will prioritize #1128 first.

We have been busy with the start of the academic year, particularly with updating all of the Computational Cognitive Neuroscience simulations to Cogent Core, which are actively needed each week for courses at three universities, and thus present pressing deadlines. Also, @rcoreilly has been working on Goal (#1229), which is needed for his continued scientific research and will be beneficial in general for data science with Cogent Core. However, we are at the tail end of both projects, and thus we will have much more time to dedicate to things such as table performance shortly.