Parallel programming: how to tell threads are being scheduled across the cores?
I'm using threads for the first time to maximize usage of a multi-core processor. I'd like to know if all the cores are being used to their maximum potential, but I don't know how.
I was told that for a while MySQL had a flaw wherein it was not properly using the free Linux kernel to schedule its threads. However, I've never seen any calls that direct scheduling. I find this confusing, so another question I have is, is the onus on the programmer to cause threads to be scheduled on different cores?