When confronted with nested loops, the granularity of the computations that are assigned to threads will directly affect performance. Loop transformations such as splitting and merging nested loops can make parallelization easier and more productive.
多线程开发
Implement Threading in a Data-Decomposition Problem
Challenge
Apply threading to data-decomposition problems in the Implementation Phase of application development. Data-decomposition problems are situations where multiple threads need to be assigned to perform the same functionality on different data.
The serial code shown below computes the value of pi.
Resolve Memory Conflicts in Data-Decomposition Problems
Challenge
Identify memory conflicts in a data-decomposition problem to identify data-restructuring requirements. This procedure is part of the design phase for threaded applications that is necessary in order to identify issues that could cause performance degradation.
The Serial On-Ramp to the Multicore Highway: Preparing to Parallelize Code
This article discusses how coding and optimization on-the-fly are opposed and how performance experts approach performance improvement. It explains how they systematically prepare their code for optimization and how the optimization process is done.
Optimizing Game Architectures with Intel® Threading Building Blocks
This article describes techniques of optimizing game architectures that already have some threading and shows how Intel TBB can enhance the performance of these architectures with relatively small amounts of coding effort.
Granularity and Parallel Performance
One key to attaining good parallel performance is choosing the right granularity for the application. Granularity is the amount of real work in the parallel task. If granularity is too fine, then performance can suffer from communication overhead.
Intel Guide for Developing Multithreaded Applications
The Intel® Guide for Developing Multithreaded Applications covers topics ranging from general advice applicable to any multithreading method to usage guidelines for Intel® software products to API-specific issues.
Configuring Intel® MKL in Microsoft* Visual Studio*
Intel MKL in Microsoft Visual Studio
