| <HTML> |
| <BODY> |
| |
| <H2>Overview</H2> |
| This directory has example usages of Threading Building Blocks. |
| |
| <H2>Directories</H2> |
| <DL> |
| <DT><A HREF="GettingStarted/index.html">GettingStarted</A> |
| <DD>Examples from the Getting Started Guide. |
| <DT><A HREF="concurrent_hash_map/index.html">concurrent_hash_map</A> |
| <DD>Examples using <CODE>concurrent_hash_map</CODE>. |
| <DT><A HREF="parallel_do/index.html">parallel_do</A> |
| <DD>Examples using <CODE>parallel_do</CODE>. |
| <DT><A HREF="parallel_for/index.html">parallel_for</A> |
| <DD>Examples using <CODE>parallel_for</CODE>. |
| <DT><A HREF="parallel_reduce/index.html">parallel_reduce</A> |
| <DD>Examples using <CODE>parallel_reduce</CODE>. |
| <DT><A HREF="pipeline/index.html">pipeline</A> |
| <DD>Examples using <CODE>pipeline</CODE>. |
| <DT><A HREF="task/index.html">task</A> |
| <DD>Examples using raw <CODE>task</CODE> interface. |
| <DT><A HREF="test_all/index.html">test_all</A> |
| <DD>Examples that test all the parts of the package. |
| <DT><A HREF="common/index.html">common</A> |
| <DD>Common files for building various examples. Not used directly. |
| </DL> |
| |
| <A NAME=build><H2>To Build</H2></A> |
| Build each example by using one of the following methods. The specific directions for each |
| method can be found below. |
| <UL> |
| <LI>Build by using a <A HREF=#build_1>Microsoft* Visual Studio* project (Windows* systems only)</A>. |
| <LI>Build by using a <A HREF=#build_2>Xcode* IDE project (Mac OS* X systems only)</A>. |
| <LI>Build by using a <A HREF=#build_3>Makefile (Windows*, Linux* or Mac OS* X systems)</A>. |
| </UL> |
| |
| <P> |
| Some of the following directions refer to a shell window; this refers |
| to the command prompt environment/window normally used on your system. |
| A shell might be a cmd.exe command prompt window (Windows* systems), or a |
| sh, bash, csh, ksh, etc. (or compatible) shell window (Windows*, Linux* or Mac OS* X systems). |
| </P> |
| |
| <A NAME=build_1><H4>To build by using a Microsoft* Visual Studio* project (Windows* systems):</H4></A> |
| Perform the following steps: |
| <OL> |
| <LI>Identify the solution (*.sln) file for the example you wish to build and run.For Microsoft* Visual Studio* 2005, the *.sln file is in the example's msvs sub-directory. For other versions please use Microsoft* |
| Visual Studio* project converter |
| <UL> |
| <li><example_name>_cl.sln - Solution for Microsoft* Visual C++* compiler |
| </li> |
| <li><example_name>_icl.sln - Solution for Intel® C++ Compiler </li> |
| </UL> |
| <LI>Open the project by using one of the following methods: |
| <UL> |
| <LI>Navigate to the *.sln file from My Computer, by using Windows Explorer, or by using another file browser. |
| Double-click the *.sln file to invoke Microsoft* Visual Studio* and open the project. |
| <LI>Invoke Microsoft* Visual Studio* from the Start menu and use the "Open Project" dialog to navigate to |
| and open the project. |
| </UL> |
| <LI>Press <ctrl-F5> to build and run the example. |
| </OL> |
| |
| <A NAME=build_2><H4>To build by using a Xcode* IDE project (Mac OS* X systems):</H4></A> |
| Perform the following steps: |
| <OL> |
| <LI>Identify the project (*.xcodeproj) file for the example you wish to build and run. |
| <UL> |
| <LI>The *.xcodeproj file is in the example's xcode sub-directory. |
| </UL> |
| <LI>Open the project by using one of the following methods: |
| <UL> |
| <LI>Navigate to the *.xcodeproj file by using the Finder. |
| Double-click the *.xcodeproj file to invoke the Xcode* IDE and open the project. |
| <LI>Invoke the Xcode* IDE and use the "File ⇒ Open…" dialog to navigate to |
| and open the project. |
| </UL> |
| <LI>Press <Apple-R>, or press the "Build and Go" button in the toolbox, to build and run the example. |
| </OL> |
| |
| <A NAME=build_3><H4>To build by using a Makefile (Windows*, Linux* or Mac OS* X systems):</H4></A> |
| Perform the following steps: |
| <OL> |
| <LI>Open a shell window. For Windows* systems, make sure this shell window has the proper environment |
| defined for use with Microsoft* Visual Studio* (.NET 2003 or 2005); such a shell can be invoked |
| from the Start menu, under Visual Studio, Visual Studio Tools, Visual Studio Command Prompt. |
| <LI>Set up the environment in this shell window for use with Threading Building Blocks. |
| <BR>See below for how to set up the environment for |
| <A HREF=#env_1>Windows*</A>, <A HREF=#env_23>Linux*</A> or <A HREF=#env_23>Mac OS* X</A> systems. |
| <LI>Unless you installed Threading Building Blocks yourself, you may not have write permissions |
| to the directory containing the example. In this case, make a copy of the example, and use the copy |
| for the following steps. |
| <LI>In the shell window, navigate to the directory for the example |
| (or to the directory for the copy of the example if you made one in the previous step). |
| <LI>Use one or more of the following commands to build and run the example. |
| Here, make refers to the make command normally used on your system: this could be |
| nmake, gmake, or make on Windows* systems, or make or gmake on Linux* or Mac OS* X systems. |
| <DL> |
| <DT><TT>make</TT> |
| <DD>Default build and run. Equivalent to 'make release test'. |
| <DT><TT>make release</TT> |
| <DD>Compile and link against the release version of the Threading Building Blocks library. |
| The resulting executable is left in the directory for the example. |
| <DT><TT>make debug</TT> |
| <DD>Compile and link against the debug version of the Threading Building Blocks library. |
| The resulting executable is left in the directory for the example. |
| <DT><TT>make test</TT> |
| <DD>Run an executable previously produced by one of the above commands. |
| <DT><TT>make <B>[</B>(above options or targets)<B>]</B> CXX=<B>{</B>icl, icc<B>}</B></TT> |
| <DD>Build and run as above, but use Intel® compilers instead of default, native compilers |
| (e.g., icl instead of cl.exe on Windows* systems, or icc instead of g++ on Linux* or Mac OS* X systems). |
| <DT><TT>make clean</TT> |
| <DD>Remove any executables or intermediate files produced by the above commands. |
| </DL> |
| </OL> |
| |
| <A NAME=env_1><H4>To set up the environment (Windows* systems):</H4></A> |
| It is <B>strongly</B> recommended that the environment be set up when installing Threading Building Blocks. |
| Do this by selecting the appropriate check-box during the install. However, if the environment is not set up |
| during installation, or you wish to build for an alternate architecture or Microsoft* Visual Studio* version, |
| it may be set up, for a given type of shell window, by using one of the following commands: |
| <DL> |
| <DT>For cmd.exe (command prompt): |
| <DD><TT><<I>installdir</I>>\{ia32,intel64}\{vc8,vc9,vc_mt}\bin\tbbvars.bat</TT> |
| <DT>For sh, bash, ksh (or compatibles): |
| <DD><TT>. <<I>installdir</I>>\{ia32,intel64}\{vc8,vc9,vc_mt}\bin\tbbvars.sh</TT> |
| <DT>For csh (or compatibles): |
| <DD><TT>source <<I>installdir</I>>\{ia32,intel64}\{vc8,vc9,vc_mt}\bin\tbbvars.csh</TT> |
| <DT><I>Notes:</I> |
| <DD><I><SL> |
| <LI>Choose one of {ia32,intel64} depending on the architecture to be used. |
| <LI>Environment setup need only be performed once per shell window to be used. |
| <LI>Always source tbbvars.sh or tbbvars.csh rather than executing them directly. |
| </SL> |
| {<span style="font-family: Courier New">vc8,vc9,vc_mt</span>} |
| {<span style="font-family: Courier New">vc8,vc9,vc_mt</span>} depending on which |
| Microsoft* Visual Studio* </I> |
| </DL> |
| |
| <A NAME=env_23><H4>To set up the environment (Linux* or Mac OS* X systems):</H4></A> |
| The environment may be set up, for a given type of shell window, by using one of the following commands: |
| <DL> |
| <DT>For sh, bash, ksh (or compatibles): |
| <DD>. <<I>installdir</I>>/bin/tbbvars.sh |
| <DT>For csh (or compatibles): |
| <DD>source <<I>installdir</I>>/bin/tbbvars.csh |
| <DT>For sh, bash, ksh (or compatibles), when using an alternate architecture or platform: |
| <DD>. <<I>installdir</I>>/{ia32,intel64,ia64}/cc<<I>gccversion</I>>_libc<<I>libcversion</I>>_kernel<<I>kernelversion</I>>/bin/tbbvars.sh |
| <DT>For csh (or compatibles), when using an alternate architecture or platform: |
| <DD>source <<I>installdir</I>>/{ia32,intel64,ia64}/cc<<I>gccversion</I>>_libc<<I>libcversion</I>>_kernel<<I>kernelversion</I>>/bin/tbbvars.csh |
| <DT><I>Notes:</I> |
| <DD><I><SL> |
| <LI>Choose one of {ia32,intel64,ia64} depending on the architecture to be used. |
| <LI>Choose a cc<<I>gccversion</I>>_libc<<I>libcversion</I>>_kernel<<I>kernelversion</I>> |
| value, from among the available platforms installed with Threading Building Blocks |
| (for <A HREF=../ia32>ia32</A>, <A HREF=../intel64>intel64</A> or <A HREF=../ia64>ia64</A>), |
| depending on the platform to be used. |
| <LI>Environment setup need only be performed once per shell window to be used. |
| <LI>Always source tbbvars.sh or tbbvars.csh rather than executing them directly. |
| </SL></I> |
| </DL> |
| |
| <HR> |
| <A HREF="../index.html">Up to parent directory</A> |
| <p></p> |
| Copyright © 2005-2010 Intel Corporation. All Rights Reserved. |
| <p></p> |
| Intel, Pentium, Intel Xeon, Itanium, Intel XScale and VTune are |
| registered trademarks or trademarks of Intel Corporation or its |
| subsidiaries in the United States and other countries. |
| <p></p> |
| * Other names and brands may be claimed as the property of others. |
| </BODY> |
| </HTML> |