id,summary,reporter,owner,description,type,status,priority,milestone,component,version,severity,resolution,keywords,cc,mlocked 1287,Performance and clean patches for mythmusic,eskil ,Isaac Richards,"Performance and cleanup patches for mythmusic. The main part here is the performance, based off revision 8915, I added some code (1-perfmeasure.patch) to measure the time and cpu cycles spend on loading the metadata and creating the tree with various tree layout settings, using my db with about 29000 metadata entries. Here's the ""before"" results : * Tree build of 'directory' took 37865 Mcycles, wall time 23.74s * Tree build of 'artist album title' took 13539 Mcycles, wall time 8.49s * Tree build of 'splitartist artist album title' took 14606 Mcycles, wall time 9.16s * Tree build of 'splitartist1 artist album title' took 16328 Mcycles, wall time 10.24s After making all the changes that oprofile suggested, these are the new times : * Tree build of 'directory' took 9586 Mcycles, wall time 6.01s * Tree build of 'artist album title' took 10544 Mcycles, wall time 6.61s * Tree build of 'splitartist artist album title' took 10845 Mcycles, wall time 6.80s * Tree build of 'splitartist1 artist album title' took 10660 Mcycles, wall time 6.68s Noticeable is the time for ""directory"", is about 4 times faster. The other ones are a few seconds faster which is nice and stuff. Since loading the metadata from the db takes about 5 seconds, I declare success. Since there's a ton of changes, I've split up the patches to make it easier to look through (but the split out patches don't nessecarily apply cleanly, compile or work, they're just for reviewing all the changes).",patch,closed,minor,unknown,mythmusic,,medium,fixed,,,0