I recently upgraded to a 24-core machine and had to disable the multicore feature.
WIth multicore enabled, CFSM kicks off 24 threads when it scans (this takes a while). Then, if I need to repair a single song it runs the repair on one thread and then the other 23 threads run with "nothing to do". This also takes a while.
With so many cores I''ve found that a full scan takes longer with multicore enabled than running single threaded.
Can you consider adding a parameter that will limit the number of threads that run with multicore enabled?