Description
Most of time, tasks won't start running at same time.
In this case hasSpeculativeTask in TaskInProgress not working very well.
Some times, some tasks just start running, and scheduler already decide it need speculative task to run.
And this waste a lot of resource.