Parallel Programming and F#

Download Parallel Programming and F#

Post on 10-May-2015




2 download

Embed Size (px)


Best of PDC08, parallel programming and F# introductions


<ul><li>1.Lynn Langit Developer Evangelist Daniel Moth - Parallel Computing Platform Luca Bolognese</li></ul> <p>2. Threads Operating System Concurrency Runtime Programming Models Task Scheduler Resource Manager Integrated Tooling Programming Models Concurrency Runtime Parallel Pattern Library Resource Manager Task Scheduler Task ParallelLibrary PLINQ Managed Library Native Library Agents Library ThreadPool Data Structures Data Structures Tools Parallel Debugger Toolwindows Profiler Concurrency Analysis 3. 4. 5. Program Thread CLR Thread PoolGlobal Queue Worker Thread 1 Worker Thread p 6. Program Thread Task 1 Task 2 Task 3 Task 5 Task 4 Task 6 CLR Thread Pool: Work-Stealing Worker Thread 1 Worker Thread p Global Queue Local Queue Local Queue 7. 8. ThreadPool ThreadPool .QueueUserWorkItem(); System.Threading.Tasks Task .StartNew(); Starting varp =Task .StartNew(() =&gt; { vart =Task .StartNew(); }); Parent/Child varf =Future .StartNew(() =&gt; C()); intresult = f.Value; Tasks with results Taskt =Task .StartNew(); Taskp = t.ContinueWith(); t.Wait(2000); t.Cancel(); Continue/Wait/Cancel 9. 10. 11. 12. 13. var q = from p in people where p.Name == queryInfo.Name &amp;&amp;p.State == queryInfo.State &amp;&amp; p.Year &gt;= yearStart &amp;&amp; p.Year</p>


View more >