blob: 2ab25dc961811c795dc5460fee748b400d504966 [file] [log] [blame]
<HTML>
<BODY>
<H2>Overview</H2>
This directory contains a simple example that finds all solutions to a
Sudoku board. It uses a straightforward state-space search algorithm
that exhibits OR-parallelism. It can be optionally run until it
obtains just the first solution. The point of the example is to teach
how to use the task_group interface.
<H2>Files</H2>
<DL>
<DT><A HREF="sudoku.cpp">sudoku.cpp</A>
<DD>Driver.
<DT><A HREF="input1">input1</A>
<DD>Sample input file with modest number of solutions.
<DT><A HREF="input2">input2</A>
<DD>Sample input file with small number of solutions.
<DT><A HREF="input3">input3</A>
<DD>Sample input file with larger number of solutions.
<DT><A HREF="input4">input4</A>
<DD>Sample input file with very large number of solutions.
<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* 2008 workspace for building and running the example with the Intel&reg; C++ compiler.
</DL>
<H2>To Build</H2>
General build directions can be found <A HREF=../../index.html#build>here</A>.
<P></P>
<H2>Usage</H2>
<DL>
<DT><TT>sudoku <I>inputfile</I> <I>N</I> <I>S</I> [<I>-p</I>]</TT>
<DD><I>N</I> is the number of threads to be used.
<I>S</I> is the number of solutions to find: 1 finds the first, any other number will find all solutions.
<I>-p</I> prints the first solution (optional argument)
<DT>To run a short version of this example, e.g., for use with Intel&reg; 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 a small problem size and the desired number of threads, e.g., <TT>sudoku input2 4</TT>.
</DL>
<HR>
<A HREF="../index.html">Up to parent directory</A>
<p></p>
Copyright &copy; 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>