User Guide


Microsoft Task Parallel Library* (TPL)

Microsoft Task Parallel Library* (TPL) in the Microsoft .NET* Framework is a combination of public types and APIs that allow addition of parallelism and concurrency on Windows* OS systems. For
Intel Advisor
users, use Microsoft TPL for C# and managed C++ libraries.
Microsoft TPL is a high-level parallel programming framework for .NET code to help you harness the performance of multi-core processors. It lets you specify logical parallelism instead of threads. That is, you specify potential parallelism - what can be run in parallel. The library decides the actual parallelism at run-time, matching it to the available hardware.
Microsoft TPL provides two main classes:
  • System.Threading.Tasks.Parallel
    : includes
  • System.Threading.Tasks.Task
    : is the preferred way to express asynchronous operations.
Other classes are also available. For example,
provides for concurrent collections that do not require external locking.
You can use Microsoft TPL for introducing parallelism into either C# programs or managed C++ code.
Please refer to your Microsoft MSDN* help documentation for information about this parallel framework. For example: MSDN Library > .NET Development > .NET Framework 4 > .NET Framework Advanced Development > Parallel Programming > Task Parallel Library

Product and Performance Information


Intel's compilers may or may not optimize to the same degree for non-Intel microprocessors for optimizations that are not unique to Intel microprocessors. These optimizations include SSE2, SSE3, and SSSE3 instruction sets and other optimizations. Intel does not guarantee the availability, functionality, or effectiveness of any optimization on microprocessors not manufactured by Intel. Microprocessor-dependent optimizations in this product are intended for use with Intel microprocessors. Certain optimizations not specific to Intel microarchitecture are reserved for Intel microprocessors. Please refer to the applicable product User and Reference Guides for more information regarding the specific instruction sets covered by this notice.

Notice revision #20110804