Samuel Thibault 3ebbf095cc Replace starpu_set_iteration/subiteration with starpu_iteration_push/pop, to make it nested 8 jaren geleden
..
.gitignore 27eaf1ca36 Add `.gitignore'. 14 jaren geleden
0.5.out 58330fd908 Add stencil example 14 jaren geleden
0.out 58330fd908 Add stencil example 14 jaren geleden
1.out 58330fd908 Add stencil example 14 jaren geleden
2.out 58330fd908 Add stencil example 14 jaren geleden
3.out 58330fd908 Add stencil example 14 jaren geleden
4.out 58330fd908 Add stencil example 14 jaren geleden
6.out 58330fd908 Add stencil example 14 jaren geleden
Makefile.am cb947e77e8 Do not run stencil examples when it is built with MPI support and MPI check is disabled 8 jaren geleden
README c79e7c2d23 examples/stencil: add an implicit distributed flavour of the stencil example 8 jaren geleden
implicit-stencil-blocks.c 44a2c4e852 Set coordinates of tiles 8 jaren geleden
implicit-stencil-kernels.c 10ddd00907 minor fixes for gcc warnings 8 jaren geleden
implicit-stencil-tasks.c d481159bd7 Update vibility of STARPU_USE_MPI_MASTER_SLAVE to use it in applications + fix bugs in stencils when using Master-Slave 8 jaren geleden
implicit-stencil.c d481159bd7 Update vibility of STARPU_USE_MPI_MASTER_SLAVE to use it in applications + fix bugs in stencils when using Master-Slave 8 jaren geleden
implicit-stencil.h d481159bd7 Update vibility of STARPU_USE_MPI_MASTER_SLAVE to use it in applications + fix bugs in stencils when using Master-Slave 8 jaren geleden
life.c 4b1a16edde Fix University name after the fusion.. 10 jaren geleden
life_cuda.cu 68658f16bf Add --enable-coverity flag to configure, to avoid building .cu files with nvcc which produces millions of lines of code we don't want to analyze 9 jaren geleden
life_opencl.c a6993f6e69 fixes for minor warning detected by cppcheck 8 jaren geleden
loader-cross.sh.in 999afbb767 Fix cross-loader for the examples/stencil directory 9 jaren geleden
mpi.out 58330fd908 Add stencil example 14 jaren geleden
results 58330fd908 Add stencil example 14 jaren geleden
run bb61f3808d update cnrs copyright 10 jaren geleden
shadow.cu 68658f16bf Add --enable-coverity flag to configure, to avoid building .cu files with nvcc which produces millions of lines of code we don't want to analyze 9 jaren geleden
shadow.h 4b1a16edde Fix University name after the fusion.. 10 jaren geleden
shadow_opencl.c 4b0182bdb0 examples: fixes for cppcheck warnings 8 jaren geleden
stencil-blocks.c 44a2c4e852 Set coordinates of tiles 8 jaren geleden
stencil-kernels.c a4530061c2 merge from trunk 8 jaren geleden
stencil-tasks.c 3ebbf095cc Replace starpu_set_iteration/subiteration with starpu_iteration_push/pop, to make it nested 8 jaren geleden
stencil.c 3ebbf095cc Replace starpu_set_iteration/subiteration with starpu_iteration_push/pop, to make it nested 8 jaren geleden
stencil.h d481159bd7 Update vibility of STARPU_USE_MPI_MASTER_SLAVE to use it in applications + fix bugs in stencils when using Master-Slave 8 jaren geleden

README


# StarPU --- Runtime system for heterogeneous multicore architectures.
#
# Copyright (C) 2010 Université de Bordeaux
# Copyright (C) 2010, 2011 CNRS
#
# StarPU is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License as published by
# the Free Software Foundation; either version 2.1 of the License, or (at
# your option) any later version.
#
# StarPU is distributed in the hope that it will be useful, but
# WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
#
# See the GNU Lesser General Public License in COPYING.LGPL for more details.

This is a sample 3D stencil application (here just using the game of life rules
for simplicity), split on the z axis.

This is a suggest order of read:

life.c
life.cu: Heart of the stencil computation: compute a new state from an old one.

shadow.cu
shadow.h: Perform replication of data on X and Y edges, to fold the domain on
itself through mere replication of the source state.

stencil.h: Declarations

stencil-kernels.c: Computation Kernels

stencil-blocks.c: Manage block and tags allocation

stencil-tasks.c: Schedule tasks for updates and saves

stencil.c: Main application

*.out: various results according to beta value (communication vs computation
penalty ratio), run make pics or make view to get pictures.
mpi.out: results on MPI.

results: a few results

You can also use the implicit distributed flavour of this application (e.g.
with communications between processes automatically inferred by StarPU-MPI),
which is called implicit_stencil.