I can't remember my exact wording but the precise statement is that "for this benchmark, on my runs the PFor beats my naive tasks implementation <insert more disclaimers here>".
To actually answer your question: PFor uses tasks in an intelligent manner (partitioning the range amongst a much smaller number of tasks) instead of using one task per iteration. So, of course you could code with tasks yourself an equally (or even more
performant version), but look at the simplicity of the PFor API.
TIP: To get an insight into the PFor implementation place a breakpoint in the body of the for loop and look at the Parallel Tasks window.
Thanks. Regarding your wish list, those items are not under what we consider debugging and performance tools. We think of those as Correctness tools (or some say Analysis tools and other say Safety tools) - regardless, they are very important too and things
we are thinking about for future (post-VS2010) releases.
Not significantly. The point of the video was to show the tools and make you aware of the rich Task API and the ease of us of PFor as well as to show the pitfalls for no perf gains of directly using the ThreadPool. Even though I am microbenchmarking, if
you run each approach separate to each other, multiple times and with varying workloads, I do not expect the results will vary significantly.
We haven't published any insights. Currently, you would have to measure in yoru app and decide at what kind of workload you are getting speedup from parallelism. You could then have a conditional path that is serial for smaller workloads and a parallel path
for larger workloads.
SteveRichter, you can get a dump (which includes stacks) of any process via various methods/tools, e.g. Task Manager. A search for "hang dump" will point you to some resources. This new debugger window only works in the VS2010 IDE. Once you have a dump,
you can open it in Visual Studio and use the debugger windows (assuming you have symbols for the process), inc Parallel Stacks.
If you have further technical questions about this debugger window specifically, please post back.