Need for speed (v1.2 b165, 64bit, Windows)

I’m the developer at Roon working on this problem, I’m actually taking a break from writing search code to respond to this post.

The existing search code is slow because it’s very simple, it just looks at every artist/track/album/etc name in your collection in order and picks the ones that match your search. I’m working on an improved version that uses an index of all these names to avoid having to look at each one. I don’t have hard numbers to share at this point, but I expect this will make search feel “fast” even for very large libraries on modest computers.

Designing an index does everything we need it to without consuming huge amounts of memory for large libraries (remember that for 500k tracks we have probably 5 million things to search) is proving to be a difficult technical problem. Supporting the kind of wildcard searches we want (searching for “fields” should match “Strawberry Fields Forever”, for example) means I can’t use a simple index, and the complicated ones have a lot of difficult cases that all need to be rock solid before release.

I can see the light at the end of the tunnel now, and I expect this will ship with 1.3, but it has taken longer than I expected.

One thing that would help me is more test cases to run my code against. @mzbe, (or anyone else here with a particularly large library) could I get an Excel export of your artists/tracks/albums? I can send a PM with instructions on how to export what I need and upload a file someplace only Roon staff can get at it.

6 Likes