Tools For Creating Multithreaded Applications - Intel ARCHITECTURE IA-32 Reference Manual

Architecture optimization
Table of Contents

Advertisement

IA-32 Intel® Architecture Optimization

Tools for Creating Multithreaded Applications

Programming directly to a multithreading application programming
interface (API) is not the only method for creating multithreaded
applications. New tools such as the Intel
available with capabilities that make the challenge of creating
multithreaded application easier.
Two features available in the latest Intel Compilers are:
generating multithreaded code using OpenMP* directives
generating multithreaded code automatically from unmodified
high-level code
Programming with OpenMP Directives. OpenMP provides a
standardized, non-proprietary, portable set of Fortran and C++ compiler
directives supporting shared memory parallelism in applications.
OpenMP supports directive-based processing. This uses special
preprocessors or modified compilers to interpret parallelism expressed
in Fortran comments or C/C++ pragmas. Benefits of directive-based
processing include:
The original source can be compiled unmodified.
It is possible to make incremental code changes. This preserves
algorithms in the original code and enables rapid debugging.
Incremental code changes help programmers maintain serial
consistency. When the code is run on one processor, it gives the
same result as the unmodified source code.
Offering directives to fine tune thread scheduling imbalance.
Intel's implementation of OpenMP runtime can add minimal
threading overhead relative to hand-coded multi-threading.
4.
Intel Compiler 5.0 and later supports OpenMP directives. Visit
http://developer.intel.com/software/products
5.
Intel Compiler 6.0 supports auto-parallelization.
7-14
5
for details.
®
Compiler have become
4

Advertisement

Table of Contents
loading

Table of Contents