-
Notifications
You must be signed in to change notification settings - Fork 63
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
Optimizations to support large tracklists #4499
base: main
Are you sure you want to change the base?
Conversation
While the initial load is very fast 🥳 , it introduced a bug loading tracks:
It even happens with the test data:
|
interesting. i'm not sure if i fixed it but i pushed another change just now that could potentially help...can try to refetch the branch potentially with |
Yes that seems to work! 🙏 |
06fcf0b
to
ca89689
Compare
ca89689
to
7964199
Compare
7964199
to
8d5916d
Compare
eca8c12
to
e3b34ee
Compare
e3b34ee
to
9c08d08
Compare
364511f
to
dfc4a20
Compare
dfc4a20
to
d51e989
Compare
d51e989
to
ddbf2b9
Compare
So far I'm very grateful for all the changes. I don’t mean to push for more, but I wanted to share some observations based on my experience with +/- 100,000 tracks across two assemblies (~50,000 each):
These are just some positive experiences and pain points I’ve encountered. Please feel free to ignore if it’s not actionable right now, I just wanted to share in case it helps! |
ddbf2b9
to
615a613
Compare
Remove clone. It seems to be unneeded, even though it will mutate the original object, this doesn't seem like it should matter Another optimization to the track selector Use structuredClone Misc lint fixes Misc
615a613
to
33cbaf3
Compare
Thanks for your response. When it's a bit quieter here I will try to study this a bit more consistently. Because indeed, the 26k tracks load more than twice as fast as the 50k-ish tracks I have here.. 🤔 |
This is a re-opening of the frozen tracks PR
It will be a challenging PR to get fully merged but interested users can try the branch out
Two optimizations were added to frozen_tracks4 today including (a) removing the clone module, which was accidentally quadratic and introduced big slowdowns after around 64000 tracks and (b) a change to the generateHierarchy function for the track selector to make it faster
cc @Maarten-vd-Sande
this branch (frozen_tracks4)
before today on frozen_tracks4
main branch
some code for testing https://github.com/cmdcolin/jb2-large-tracklist-profiling