| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204 |
- \input texinfo @c -*-texinfo-*-
- @c %**start of header
- @setfilename starpu.info
- @settitle StarPU
- @c %**end of header
- @setchapternewpage odd
- @titlepage
- @title StarPU
- @page
- @vskip 0pt plus 1filll
- @comment For the @value{version-GCC} Version*
- @end titlepage
- @summarycontents
- @contents
- @page
- @node Top
- @top Preface
- @cindex Preface
- This manual documents the usage of StarPU
- @comment
- @comment When you add a new menu item, please keep the right hand
- @comment aligned to the same column. Do not use tabs. This provides
- @comment better formatting.
- @comment
- @menu
- * Introduction:: A basic introduction to using StarPU.
- * Installing StarPU:: How to configure, build and install StarPU
- * StarPU API:: The API to use StarPU
- * A Basic Example:: A basic example of the use of StarPU
- @end menu
- @c ---------------------------------------------------------------------
- @c Introduction to StarPU
- @c ---------------------------------------------------------------------
- @node Introduction
- @chapter Introduction to StarPU
- @c ---------------------------------------------------------------------
- @c Installing StarPU
- @c ---------------------------------------------------------------------
- @node Installing StarPU
- @chapter Installing StarPU
- StarPU can be built and install by the standard means of the GNU autotools. The
- following chapter is intended to briefly remind how these tools can be used to
- install StarPU.
- @section Configuring StarPU
- @subsection Generating Makefiles and configuration scripts
- This step is not necessary when using the tarball releases of StarPU. If you
- are using the source code from the svn repository, you first need to generate
- the configure scripts and the Makefiles.
- @example
- $ autoreconf -i
- @end example
- @subsection Configuring StarPU
- @example
- $ configure
- @end example
- @c TODO enumerate the list of interesting options
- @section Building and Installing StarPU
- @subsection Building
- @example
- $ make
- @end example
- @subsection Sanity Checks
- In order to make sure that StarPU is working properly on the system, it is also
- possible to run a test suite.
- @example
- $ make check
- @end example
- @subsection Installing
- In order to install StarPU at the location that was specified during
- configuration:
- @example
- $ make install
- @end example
- @subsection pkg-config configuration
- It is possible that compiling and linking an application against StarPU
- requires to use specific flags or libraries (for instance @code{CUDA} or
- @code{libspe2}). Therefore, it is possible to use the @code{pkg-config} tool.
- If StarPU was not installed at some standard location, the path of StarPU's
- library must be specified in the @code{PKG_CONFIG_PATH} environment variable so
- that @code{pkg-config} can find it. So if StarPU was installed in
- @code{$(prefix_dir)}:
- @example
- $ PKG_CONFIG_PATH = @{PKG_CONFIG_PATH@}:$(prefix_dir)/lib/
- @end example
- The flags required to compiled or linked against StarPU are then
- accessible with the following commands:
- @example
- $ pkg-config --cflags libstarpu # options for the compiler
- $ pkg-config --libs libstarpu # options for the linker
- @end example
- @c ---------------------------------------------------------------------
- @c StarPU API
- @c ---------------------------------------------------------------------
- @node StarPU API
- @chapter StarPU API
- @menu
- * Initialization and Termination:: Initialization and Termination methods
- * Data Library:: Methods to manipulate data
- * Codelets and Tasks:: Methods to construct tasks
- @end menu
- @node Initialization and Termination
- @section Initialization and Termination
- @menu
- * starpu_init:: Initialize StarPU
- * starpu_shutdown:: Terminate StarPU
- @end menu
- @node starpu_init
- @subsection @code{starpu_init} -- Initialize StarPU
- @table @asis
- @item @emph{Description}:
- This is StarPU initialization method, which must be called prior to any other
- StarPU call. It is possible to specify StarPU's configuration (eg. scheduling
- policy, number of cores, ...) by passing a non-null argument. Default
- configuration is used if the passed argument is @code{NULL}.
- @item @emph{Prototype}:
- @code{void starpu_init(struct starpu_conf *conf);}
- @end table
- @node starpu_shutdown
- @subsection @code{starpu_shutdown} -- Terminate StarPU
- @table @asis
- @item @emph{Description}:
- This is StarPU termination method. It must be called at the end of the
- application: statistics and other post-mortem debugging information are not
- garanteed to be available until this method has been called.
- @item @emph{Prototype}:
- @code{void starpu_shutdown(void);}
- @end table
- @node Data Library
- @section Data Library
- @node Codelets and Tasks
- @section Codelets and Tasks
- @section Extensions
- @subsection CUDA extensions
- @subsection Cell extensions
- @c ---------------------------------------------------------------------
- @c A basic Example
- @c ---------------------------------------------------------------------
- @node A Basic Example
- @chapter A Basic Example
- @section Compiling and linking
- @bye
|