porting work to Maxeler DFE

Samuel Thibault 865c2a86f5 TODO %!s(int64=15) %!d(string=hai) anos
build-aux 6cefcf8c2b revert r1973 (it seems like build-aux is a 'standard' name) %!s(int64=15) %!d(string=hai) anos
doc 44c809c603 - typo %!s(int64=15) %!d(string=hai) anos
examples f8617a97b9 no need to pass the multiplier as a buffer %!s(int64=15) %!d(string=hai) anos
include 0f9bbf7ee1 The starpu_data_{set,get}_default_sequential_consistency_flag functions make it %!s(int64=15) %!d(string=hai) anos
m4 f7bad4ed84 Add a pkg.m4 file for autogen.sh to successfully generate the configure file on machines which have a crappy version of autotools and pkgconfig %!s(int64=15) %!d(string=hai) anos
mpi 5c4864f8d5 Factorize some code %!s(int64=15) %!d(string=hai) anos
src 7f2a7c8108 Properly handle the case of memory chunks associated to a handle that was %!s(int64=15) %!d(string=hai) anos
tests 3bf9c2f5f6 Provide the CUDA implementation of the codelet in the mpi_like(_async) tests. %!s(int64=15) %!d(string=hai) anos
tools dec83d29d2 Display task dependencies (ie. not only tag dependencies) in the graph %!s(int64=15) %!d(string=hai) anos
AUTHORS 65931ca292 Welcome to our recent contributors :) %!s(int64=16) %!d(string=hai) anos
COPYING.LGPL fc22dad676 create a trunk/, branches/ and a tags/ directory %!s(int64=17) %!d(string=hai) anos
ChangeLog f58ca0920e Renaming of public StarPU functions to provide a more consistent API. %!s(int64=15) %!d(string=hai) anos
Makefile.am f7bad4ed84 Add a pkg.m4 file for autogen.sh to successfully generate the configure file on machines which have a crappy version of autotools and pkgconfig %!s(int64=15) %!d(string=hai) anos
README bff693c1ae README: Update svn checkout commands %!s(int64=15) %!d(string=hai) anos
acinclude.m4 788110e7fc fix SYNC_VAL_COMPARE_AND_SWAP name confusion %!s(int64=16) %!d(string=hai) anos
autogen.sh 6444979fdf create autogen.sh to call autoreconf with the proper parameters %!s(int64=16) %!d(string=hai) anos
configure.ac 865c2a86f5 TODO %!s(int64=15) %!d(string=hai) anos
libstarpu.pc.in 9d25e11734 libstarpu.pc.in: only make public the CUDA flags %!s(int64=15) %!d(string=hai) anos

README

++=================++
|| I. Introduction ||
++=================++

+---------------------
| I.a. What is StarPU?

StarPU is a runtime system that offers support for heterogeneous multicore
machines. While many efforts are devoted to design efficient computation kernels
for those architectures (e.g. to implement BLAS kernels on GPUs or on Cell's
SPUs), StarPU not only takes care of offloading such kernels (and implementing
data coherency across the machine), but it also makes sure the kernels are
executed as efficiently as possible.

+------------------------
| I.b. What StarPU is not

StarPU is not a new language, and it does not extends existing languages either.
StarPU does not help to write computation kernels.

+---------------------------------
| I.c. (How) Could StarPU help me?

While StarPU will not make it easier to write computation kernels, it does
simplify their actual offloading as StarPU handle most low level aspects
transparently.

Obviously, it is crucial to have efficient kernels, but it must be noted that
the way those kernels are mapped and scheduled onto the computational resources
also affect the overall performance to a great extent.

StarPU is especially helpful when considering multiple heterogeneous processing
resources: statically mapping and synchronizing tasks in such a heterogeneous
environment is already very difficult, making it in a portable way is virtually
impossible. On the other hand, the scheduling capabilities of StarPU makes it
possible to easily exploit all processors at the same time while taking
advantage of their specificities in a portable fashion.

++==================++
|| II. Requirements ||
++==================++

* make
* gcc (version >= 4.1)
* if CUDA support is enabled
* CUDA (version >= 2.2)
* CUBLAS (version >= 2.2)
* extra requirements for the svn version
* autoconf (version >= 2.60)
* automake

* Remark: It is strongly recommanded that you also install the hwloc library
before installing StarPU. This permits StarPU to actually map the processing
units according to the machine topology. For more details on hwloc, see
http://www.open-mpi.org/projects/hwloc/ .

++=====================++
|| III. Getting StarPU ||
++=====================++

StarPU is available on https://gforge.inria.fr/projects/starpu/.

The project's SVN repository can be checked out through anonymous
access with the following command(s).

$ svn checkout svn://scm.gforge.inria.fr/svn/starpu/trunk
$ svn checkout --username anonsvn https://scm.gforge.inria.fr/svn/starpu/trunk

The password is 'anonsvn'

++=============================++
|| IV. Building and Installing ||
++=============================++

+---------------------------
| IV.a. For svn version only

$ ./autogen.sh

+-----------------------
| IV.b. For all versions

$ ./configure
$ make
$ make install

++============++
|| V. Contact ||
++============++

For any questions regarding StarPU, please contact the starpu-devel
mailing-list at starpu-devel@lists.gforge.inria.fr .