| <HTML> |
| <BODY> |
| |
| <H2>Overview</H2> |
| Parallel seismic simulation that demonstrates use of parallel_for. |
| |
| <H2>Files</H2> |
| <DL> |
| <DT><A HREF="SeismicSimulation.cpp">SeismicSimulation.cpp</A> |
| <DD>Source code that does wave propagation. |
| <DT><A HREF="Makefile">Makefile</A> |
| <DD>Makefile for building example. |
| </DL> |
| |
| <H2>Directories</H2> |
| <DL> |
| <DT><A HREF="msvs">msvs</A> |
| <DD>Contains Microsoft* Visual Studio* 2005 workspace for building and running the example. |
| <DT><A HREF="xcode">xcode</A> |
| <DD>Contains Xcode* IDE workspace for building and running the example. |
| </DL> |
| |
| <H2>To Build</H2> |
| General build directions can be found <A HREF=../../index.html#build>here</A>. |
| The following additional options are supported: |
| <DL> |
| <DT><TT>make [(general targets: {release, debug} [test])] UI={con, gdi, dd, x, mac}</TT> |
| <DD>Build and run as usual, but build with the specified GUI driver: console, GDI+*, Direct Draw*, X11, or OpenGL* |
| (see the description of the <A HREF=../../common/index.html>common GUI code</A> |
| for more information on available graphics support). |
| For Linux* and Mac OS* X systems, the best available driver is detected automatically by the Makefile. |
| For Windows* systems, UI=gdi is the default GUI driver; compiling with UI=dd may offer superior |
| performance, but can only be used if the Microsoft* Direct Draw* SDK is installed on your system |
| and if overlay is supported by your graphics card. |
| Use UI=con to build without the GUI for use in making performance measurements |
| <I>(strongly recommended when measuring performance or scalability; see note below)</I>. |
| <DT><TT>make [(above options or targets)] XARCH=x64</TT> |
| <DD>Build and run as above, but also specify XARCH=x64 |
| (or XARCH=AMD64 for older compilers) when building the example on Windows* as a 64-bit binary. |
| <DT><TT>make [(above options or targets)] DDLIB_DIR=<<I>specify path to library directory of Direct Draw* SDK here</I>></TT> |
| <DD>If you experience ddraw.lib linking problems, specify the correct library directory via this option. |
| <DT><TT>make [(above options or targets)] CXXFLAGS=-DX_FULLSYNC</TT> |
| <DD>Build and run as above, but enable full X11 synchronization if you experience "tearing" of motion on slower video systems. |
| </DL> |
| |
| <H2>Usage</H2> |
| <DL> |
| <DT><TT>seismic [<I>M</I>[:<I>N</I>] [<I>F</I>]]</TT> |
| <DD>For non-interactive mode, <I>M</I> and <I>N</I> are a range of numbers of threads to be used. |
| For interactive mode, <I>N</I> is the number of threads to use while <I>M</I> indicates if |
| a separate thread will be used for the GUI (>0) or not (0). For example, |
| <TT>seismic 1:3</TT> will use 3 threads for computation and a separate thread for |
| processing GUI events; this option may give better visible performance on a 4-processor |
| system when using GDI+ graphics. |
| <DD><I>F</I> is the number of frames the example processes internally. Default value is 100; |
| reduce it to shorten example run time. |
| <DT>To run a short version of this example, e.g., for use with Intel® Threading Tools: |
| <DD>Build a <I>debug</I> version of the example |
| (see the <A HREF=../../index.html#build>build directions</A>). |
| <BR>Run it with the desired number of threads and smaller number of frames, e.g., <TT>seismic 4 5</TT>. |
| </DL> |
| |
| <H2>Hot keys</H2> |
| The following hot keys can be used in interactive execution mode when the example is compiled with the graphical |
| user interface: |
| <DL> |
| <dt><left mouse button> |
| <dd>Starts new seismic wave in place specified by mouse cursor. |
| <dt><space> |
| <dd>Toggles between parallel and serial execution modes. |
| <dt><p> |
| <dd>Enables parallel execution mode. |
| <dt><s> |
| <dd>Enables serial execution mode. |
| <dt><e> |
| <dd>Enables screen updates. |
| <dt><d> |
| <dd>Disables screen updates <I>(strongly recommended when measuring performance or scalability; see note below)</I>. |
| <dt><esc> |
| <dd>Stops execution. |
| </DL> |
| |
| <H2>Notes</H2> |
| <UL> |
| <LI>While running with the GUI display turned on should yield reasonable performance in most cases, <I>running with the GUI |
| display turned off is strongly recommended</I> in order to demonstrate the full performance and scalability of the example. |
| <LI>If using the X-windows (X11) GUI on Mac OS* X systems, X11 might not be installed on the system by default. |
| To install X11 on Mac OS* X systems, use the operating system install disk, choose "Optional installs" and select X11 from |
| the "Applications" list. Alternatively, if X11 is not available, build without the GUI (see build targets above). |
| </UL> |
| |
| <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> |