دانلود فیلم آموزشی برنامه نویسی موازی Parallel ProgrammingReviewed by صابر بوستانی on Jun 10Rating:

آموزش برنامه نویسی موازی Parallel Programming

 

با سلام. در این پست در خدمت تمامی کاربران سایت آموزش برنامه نویسی سورس باران هستیم با یک پست آموزشی دیگر. همانطور که مشاهده می کنید در این مطلب فیلم آموزشی برنامه نویسی موازی Parallel Programming را جهت دانلود قرار داده ایم. یکی از مهمترین نکات و مباحث در برنامه نویسی حرفه ای، بحث Parallel Programming می باشد. زمانی که شما یک برنامه را به صورت معمولی پیاده سازی می کنید، در یک زمان فقط یک کار می تواند انجام شود. بطور مثال فرض کنید میخواهید یک عملیات سنگین محاسباتی که ۳۰ ثانیه طول می کشد را در برنامه تحت ویندوز خود پیاده سازی کنید در این صورت وقتی کاربر روی دکمه شروع کلیک می کند برنامه شما هنگ می کند و زمانی که کار تمام شد به حالت عادی برمیگردد.برای حل این مشکل شما باید از برنامه نویسی موازی استفاده کنید تا هم فرم شما هنگ نکند و هم بتوانید یک Progressbar برای نمایش درصد پیشرفت کار طراحی کنید.همچنین عملیات برنامه نویسی موازی قبلا به وسیله Thread ها انجام می شد اما با معرفی دات نت ۴ یک ویژگی جالب به نام TPL به آن اضافه شده که این کار را به صورت ساده تر انجام می دهد.این دوره آموزشی برنامه نویسی موازی Parallel Programming  محصول شرکت  Pluralsight می باشد که در آن نحوه برنامه نویسی موازی و همزمان اپلیکیشن های تحت دات نت و Silverlight با استفاده از Task آموزش داده می شود.همچنین سر فصل های این دوره آموزشی در ادامه مطلب موجود می باشد.

جهت دانلود فیلم آموزشی برنامه نویسی موازی Parallel Programming به ادامه مطلب مراجعه نمایید.

۰۱:۲۳:۱۱
Introductions and Agenda
۰۱:۵۲
The pitfalls of concurrency
۰۱:۵۰
Correctness guarantees: safety, liveness
۰۰:۴۴
Terminology: race conditions, critical sections
۰۰:۵۴
Race conditions involving shared resources
۰۳:۳۶
Demo 1: parallelizing a Logfile Search app
۰۱:۱۴
Demo 1: source code layout
۰۴:۲۶
Demo 1: from sequential to parallel
۱۱:۴۱
Demo 1: summary of why it’s broken
۰۰:۱۸
Solving race conditions — an overview
۰۱:۰۰
Solution 1: locking
۰۳:۵۷
Demo 2: solution using locking
۰۳:۵۶
Solution 2: interlocking
۰۱:۱۴
Demo 3: solution using interlocking
۰۷:۵۳
Solution 3: lock-free
۰۲:۱۴
Demo 4: lock-free solution
۱۳:۳۵
The danger of shared objects
۰۱:۵۵
Thread-safety and solutions to shared objects
۰۲:۵۴
Demo 5: using thread-safe objects
۰۴:۱۴
Synchronization primitives
۰۱:۰۷
The concurrent data structures: thread-safe collections
۰۰:۲۲
Performance lessons…
۰۲:۲۱
Demo 6: improving performance
۰۸:۳۱
Summary and References
۰۱:۲۳
Execution Model and Types of Parallelism         ۰۱:۰۴:۱۹
Introductions and Agenda
۰۱:۵۹
Tasks: developer’s role vs. .NEt’s role
۰۰:۲۴
Execution model: high-level view
۰۱:۲۹
Task granularity: just how lightweight?
۰۰:۵۸
Execution model: tasks vs. threads vs. cores
۰۲:۳۳
Custom task scheduling
۰۰:۵۳
Additional observations regarding task scheduler
۰۱:۳۵
Work-stealing in detail
۰۱:۵۲
Two important assumptions: short-lived, random order
۰۰:۵۰
Fairness option to execute tasks in order
۰۱:۲۲
LongRunning option for tasks > 1-2 seconds
۰۰:۴۵
Demo 1: executing 100 long-running tasks
۰۰:۳۰
Demo 1: solution attempt with default behavior
۰۴:۲۶
Demo 1: solution attempt with long-running option
۰۲:۰۸
Solution for 100 long-running tasks
۰۱:۴۷
Demo 2: proper solution in action
۰۴:۳۲
Parallel.For = more concise solution
۰۰:۴۴
Types of Parallelism
۰۰:۳۶
Data parallelism
۰۰:۵۲
Task parallelism
۰۰:۳۷
Dataflow parallelism
۰۲:۲۴
Embarrassingly parallel
۰۰:۵۷
TPL support for parallelism types
۰۰:۲۵
Parallel.For, .Foreach, .Invoke
۰۲:۴۴
Structured (fork-join) parallelism
۰۱:۰۷
Demo 3: Mandelbrot app overview
۰۱:۱۱
Demo 3: sequential version
۰۱:۵۷
Demo 3: Parallel.For version
۰۶:۳۸
Data partitioning
۰۲:۱۵
Custom data partitioning
۰۲:۲۸
Exception handling with Parallel class
۰۰:۴۱
Breaking out of a Parallel loop
۰۱:۲۶
Cancelling a Parallel loop
۰۱:۴۰
Demo 4: Mandelbrot app with cancellation
۰۵:۵۰
Summary and References
۰۱:۴۴
Designs and Patterns for Parallel Programming         ۰۱:۱۷:۳۲
Introductions and Agenda
۰۱:۳۵
Design Problem 1: 100+ CPU-intensive operations
۰۲:۲۵
Design Problem 2: download 20+ web pages
۰۳:۱۴
Design Problem 3: application logging task
۰۲:۰۹
Parallel Patterns — master list
۰۰:۲۸
Pipeline pattern
۰۱:۲۹
Dataflow pattern
۰۱:۳۴
Increasing parallelism in pipeline and dataflow
۰۱:۱۶
Concurrent Data Structures — master list
۰۰:۵۹
ConcurrentQueue T
۰۳:۳۱
Demo 1: overview of Netflix data mining app
۰۳:۲۴
Demo 1: overview of parallel solution (v1)
۰۲:۴۴
Demo 1: implementation with ConcurrentDictionary T
۰۵:۴۳
Demo 1: results
۰۱:۱۴
Producer-Consumer pattern
۰۱:۲۳
Implementation of Producer-Consumer with BlockingCollection T
۰۳:۰۳
Demo 2: Netflix solution using Producer-Consumer (v2)
۰۷:۴۰
Demo 2: results
۰۰:۵۲
MapReduce pattern
۰۰:۵۱
Implementing MapReduce
۰۴:۲۴
Demo 3: Netflix using MapReduce
۰۳:۵۰
Demo 3: results
۰۱:۳۳
Parallel LINQ (PLINQ)
۰۲:۴۶
Demo 4: Netflix with PLINQ
۰۳:۰۸
Speculative Execution pattern
۰۱:۲۵
APM: Asynchronous Programming Model pattern
۰۱:۲۳
APM example of async file I/O
۰۱:۱۷
Demo 5: Stock History with Speculative Execution and APM
۰۹:۰۱
Parallel I/O design challenge
۰۱:۴۵
Summary and References
۰۱:۲۶