Is there any way to force DBCC SHRINKFILE to use more than one core? We're running SQL Server 2014 on a hex core machine - and SHRINKFILE is using one hyper threaded core. I/O is at a small fraction of capacity, and WAIT_TYPE is persistently 'SOS_SCHEDULER_YIELD'. Our database is 1TB so this is going to take days currently.
I've seen mentions of using index rebuilds or moving table to a different file group - but is there any way to do this without having to (a) actually move everything to a different file group (as opposed to just other files within the file group) or failing that (b) having to do this manually for every table in the db?