Browse Source

Merge branch 'master' into fpga2

Nathalie Furmento 5 years ago
parent
commit
72f63a5d50
44 changed files with 136 additions and 248 deletions
  1. 16 15
      AUTHORS
  2. 2 3
      INSTALL
  3. 1 1
      contrib/ci.inria.fr/Jenkinsfile-basic
  4. 1 1
      contrib/ci.inria.fr/Jenkinsfile-bsd
  5. 1 1
      contrib/ci.inria.fr/Jenkinsfile-windows
  6. 2 3
      doc/devel/handle_refcnt
  7. 2 4
      doc/devel/replicate_refcnt
  8. 2 0
      doc/doxygen/dev/starpu_check_documented.py
  9. 1 5
      doc/doxygen/foreword.html
  10. 1 5
      doc/doxygen/refman.tex
  11. 1 5
      doc/doxygen_dev/foreword.html
  12. 1 5
      doc/doxygen_dev/refman.tex
  13. 8 6
      examples/Makefile.am
  14. 2 3
      examples/audio/Makefile
  15. 6 7
      examples/fortran/Makefile
  16. 3 3
      examples/fortran90/Makefile
  17. 1 1
      examples/heat/heat.c
  18. 2 2
      examples/lu/lu_example.c
  19. 0 15
      examples/pi/SobolQRNG/sobol.h
  20. 0 15
      examples/pi/SobolQRNG/sobol_gold.c
  21. 0 15
      examples/pi/SobolQRNG/sobol_gold.h
  22. 0 15
      examples/pi/SobolQRNG/sobol_gpu.h
  23. 0 15
      examples/pi/SobolQRNG/sobol_primitives.c
  24. 0 15
      examples/pi/SobolQRNG/sobol_primitives.h
  25. 2 4
      examples/stencil/README
  26. 2 4
      examples/stencil/run
  27. 2 2
      mpi/examples/matrix_mult/Makefile
  28. 2 2
      mpi/examples/matrix_mult/environment
  29. 3 3
      src/sched_policies/component_sched.c
  30. 19 23
      src/sched_policies/parallel_heft.c
  31. 2 2
      starpurm/examples/Makefile.example
  32. 9 7
      tests/Makefile.am
  33. 6 7
      tests/experiments/bandwidth_cuda/Makefile
  34. 6 7
      tests/experiments/latency/Makefile
  35. 2 4
      tests/main/combined_workers/bfs/Makefile
  36. 2 2
      tests/model-checking/Makefile
  37. 3 1
      tools/dev/experimental/modes/fix_cocci_output.py
  38. 2 4
      tools/gdbinit
  39. 2 3
      tools/release/Makefile
  40. 2 2
      tools/release/README
  41. 2 0
      tools/starpu_mpi_comm_matrix.py.in
  42. 2 0
      tools/starpu_send_recv_data_use.py
  43. 10 10
      tools/starpu_smpi.xslt
  44. 3 1
      tools/starpu_trace_state_stats.py

+ 16 - 15
AUTHORS

@@ -1,32 +1,33 @@
-Archipoff Simon, University of Bordeaux, <simon.archipoff@etu.u-bordeaux1.fr>
-Augonnet Cédric, University of Bordeaux, <cedric.augonnet@inria.fr>
+Archipoff Simon, Université de Bordeaux, <simon.archipoff@etu.u-bordeaux1.fr>
+Augonnet Cédric, Université de Bordeaux, <cedric.augonnet@inria.fr>
 Aumage Olivier, Inria, <olivier.aumage@inria.fr>
 Aumage Olivier, Inria, <olivier.aumage@inria.fr>
 Beauchamp Guillaume, Inria, <guillaume.beauchamp@inria.fr>
 Beauchamp Guillaume, Inria, <guillaume.beauchamp@inria.fr>
 Bramas Berenger, Inria, <berenger.bramas@inria.fr>
 Bramas Berenger, Inria, <berenger.bramas@inria.fr>
 Buttari Alfredo, Enseeiht, <alfredo.buttari@enseeiht.fr>
 Buttari Alfredo, Enseeiht, <alfredo.buttari@enseeiht.fr>
 Cassagne Adrien, Inria, <adrien.cassagne@inria.fr>
 Cassagne Adrien, Inria, <adrien.cassagne@inria.fr>
 Clet-Ortega Jérôme, Inria, <jerome.clet-ortega@inria.fr>
 Clet-Ortega Jérôme, Inria, <jerome.clet-ortega@inria.fr>
-Cojean Terry, University of Bordeaux, <terry.cojean@inria.fr>
+Cojean Terry, Université de Bordeaux, <terry.cojean@inria.fr>
 Collin Nicolas, Inria, <nicolas.collin@inria.fr>
 Collin Nicolas, Inria, <nicolas.collin@inria.fr>
 Danjean Vincent, University Grenoble Alpes, <Vincent.Danjean@ens-lyon.org>
 Danjean Vincent, University Grenoble Alpes, <Vincent.Danjean@ens-lyon.org>
 Denis Alexandre, Inria, <alexandre.denis@inria.fr>
 Denis Alexandre, Inria, <alexandre.denis@inria.fr>
 Eyraud-Dubois Lionel, Inria, <lionel.eyraud-dubois@inria.fr>
 Eyraud-Dubois Lionel, Inria, <lionel.eyraud-dubois@inria.fr>
 Furmento Nathalie, CNRS, <nathalie.furmento@labri.fr>
 Furmento Nathalie, CNRS, <nathalie.furmento@labri.fr>
-Henry Sylvain, University of Bordeaux, <sylvain.henry@inria.fr>
-Hugo Andra, University of Bordeaux/Inria, <andra.hugo@inria.fr>
-Juhoor Mehdi, University of Bordeaux, <mjuhoor@gmail.com>
-Juven Alexis, Inria, <alexis.juven@enseirb-matmeca.fr>
+Guilbaud Adrien, Inria, <adrien.guilbaud@inria.fr>
+Henry Sylvain, Université de Bordeaux, <sylvain.henry@inria.fr>
+Hugo Andra, Université de Bordeaux/Inria, <andra.hugo@inria.fr>
+Juhoor Mehdi, Université de Bordeaux, <mjuhoor@gmail.com>
+Juven Alexis, Inria, <alexis.juven@inria.fr>
 Keryell-Even Maël, Inria, <mael.keryell@inria.fr>
 Keryell-Even Maël, Inria, <mael.keryell@inria.fr>
 Khorsi Yanis, Inria, <yanis.khorsi@inria.fr>
 Khorsi Yanis, Inria, <yanis.khorsi@inria.fr>
 Lambert Thibaut, Inria, <thibaud.lambert@inria.fr>
 Lambert Thibaut, Inria, <thibaud.lambert@inria.fr>
-Leria Erwan, University of Bordeaux, <erwan.leria@etu.u-bordeaux.fr>
+Leria Erwan, Université de Bordeaux, <erwan.leria@etu.u-bordeaux.fr>
 Lizé Benoît, Airbus, <benoit.lize@gmail.com>
 Lizé Benoît, Airbus, <benoit.lize@gmail.com>
 Makni Mariem, Inria, <mariem.makni@inria.fr>
 Makni Mariem, Inria, <mariem.makni@inria.fr>
 Nakov Stojce, Inria, <stojce.nakov@inria.fr>
 Nakov Stojce, Inria, <stojce.nakov@inria.fr>
-Namyst Raymond, University of Bordeaux, <raymond.namyst@labri.fr>
+Namyst Raymond, Université de Bordeaux, <raymond.namyst@labri.fr>
 Nesi Lucas Leandro, Federal University of Rio Grande do Sul (UFRGS), <llnesi@inf.ufrgs.br>
 Nesi Lucas Leandro, Federal University of Rio Grande do Sul (UFRGS), <llnesi@inf.ufrgs.br>
 Pablo Joris, Inria, <joris.pablo@orange.fr>
 Pablo Joris, Inria, <joris.pablo@orange.fr>
-Pasqualinotto Damien, University of Bordeaux, <dam.pasqualinotto@wanadoo.fr>
+Pasqualinotto Damien, Université de Bordeaux, <dam.pasqualinotto@wanadoo.fr>
 Pitoiset Samuel, Inria, <samuel.pitoiset@inria.fr>
 Pitoiset Samuel, Inria, <samuel.pitoiset@inria.fr>
 Quôc-Dinh Nguyen, IT Sud-Paris, <nguyen.quocdinh@gmail.com>
 Quôc-Dinh Nguyen, IT Sud-Paris, <nguyen.quocdinh@gmail.com>
 Roelandt Cyril, Inria, <cyril.roelandt@inria.fr>
 Roelandt Cyril, Inria, <cyril.roelandt@inria.fr>
@@ -34,12 +35,12 @@ Sakka Chiheb, Inria, <chiheb.sakka@inria.fr>
 Salingue Corentin, Inria, <corentin.salingue@inria.fr>
 Salingue Corentin, Inria, <corentin.salingue@inria.fr>
 Schnorr Lucas Mello, Federal University of Rio Grande do Sul (UFRGS), <schnorr@inf.ufrgs.br>
 Schnorr Lucas Mello, Federal University of Rio Grande do Sul (UFRGS), <schnorr@inf.ufrgs.br>
 Sergent Marc, CEA/Inria, <marc.sergent@inria.fr>
 Sergent Marc, CEA/Inria, <marc.sergent@inria.fr>
-Simonet Anthony, University of Bordeaux, <anthony.simonet@etu.u-bordeaux.fr>
+Simonet Anthony, Université de Bordeaux, <anthony.simonet@etu.u-bordeaux.fr>
 Stanisic Luka, Inria, <luka.stanisic@inria.fr>
 Stanisic Luka, Inria, <luka.stanisic@inria.fr>
 Bérangère Subervie, Inria, <berangere.subervie@inria.fr>
 Bérangère Subervie, Inria, <berangere.subervie@inria.fr>
-Tessier François, University of Bordeaux, <francois.tessier@inria.fr>
-Thibault Samuel, University of Bordeaux, <samuel.thibault@ens-lyon.org>
+Tessier François, Université de Bordeaux, <francois.tessier@inria.fr>
+Thibault Samuel, Université de Bordeaux, <samuel.thibault@ens-lyon.org>
 Brice Videau, University Grenoble Alpes, <brice.videau@imag.fr>
 Brice Videau, University Grenoble Alpes, <brice.videau@imag.fr>
-Villeveygoux Leo, University of Bordeaux, <leo.villeveygoux@inria.fr>
-Wacrenier Pierre-André, University of Bordeaux, <wacrenier@labri.fr>
+Villeveygoux Leo, Université de Bordeaux, <leo.villeveygoux@inria.fr>
+Wacrenier Pierre-André, Université de Bordeaux, <wacrenier@labri.fr>
 
 

+ 2 - 3
INSTALL

@@ -1,7 +1,6 @@
 # StarPU --- Runtime system for heterogeneous multicore architectures.
 # StarPU --- Runtime system for heterogeneous multicore architectures.
 #
 #
-# Copyright (C) 2009-2012  Université de Bordeaux
-# Copyright (C) 2010, 2011, 2013, 2014  CNRS
+# Copyright (C) 2009-2020  Université de Bordeaux, CNRS (LaBRI UMR 5800), Inria
 #
 #
 # StarPU is free software; you can redistribute it and/or modify
 # 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
 # it under the terms of the GNU Lesser General Public License as published by
@@ -13,7 +12,7 @@
 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
 #
 #
 # See the GNU Lesser General Public License in COPYING.LGPL for more details.
 # See the GNU Lesser General Public License in COPYING.LGPL for more details.
-
+#
 Contents
 Contents
 =========
 =========
 
 

+ 1 - 1
contrib/ci.inria.fr/Jenkinsfile-basic

@@ -1,7 +1,7 @@
 #!groovy
 #!groovy
 // StarPU --- Runtime system for heterogeneous multicore architectures.
 // StarPU --- Runtime system for heterogeneous multicore architectures.
 //
 //
-// Copyright (C) 2018, 2019                          CNRS
+// Copyright (C) 2018-2020  Université de Bordeaux, CNRS (LaBRI UMR 5800), Inria
 //
 //
 // StarPU is free software; you can redistribute it and/or modify
 // 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
 // it under the terms of the GNU Lesser General Public License as published by

+ 1 - 1
contrib/ci.inria.fr/Jenkinsfile-bsd

@@ -1,7 +1,7 @@
 #!groovy
 #!groovy
 // StarPU --- Runtime system for heterogeneous multicore architectures.
 // StarPU --- Runtime system for heterogeneous multicore architectures.
 //
 //
-// Copyright (C) 2018, 2019                          CNRS
+// Copyright (C) 2018-2020  Université de Bordeaux, CNRS (LaBRI UMR 5800), Inria
 //
 //
 // StarPU is free software; you can redistribute it and/or modify
 // 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
 // it under the terms of the GNU Lesser General Public License as published by

+ 1 - 1
contrib/ci.inria.fr/Jenkinsfile-windows

@@ -1,7 +1,7 @@
 #!groovy
 #!groovy
 // StarPU --- Runtime system for heterogeneous multicore architectures.
 // StarPU --- Runtime system for heterogeneous multicore architectures.
 //
 //
-// Copyright (C) 2018, 2019                          CNRS
+// Copyright (C) 2018-2020  Université de Bordeaux, CNRS (LaBRI UMR 5800), Inria
 //
 //
 // StarPU is free software; you can redistribute it and/or modify
 // 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
 // it under the terms of the GNU Lesser General Public License as published by

+ 2 - 3
doc/devel/handle_refcnt

@@ -1,8 +1,7 @@
 #!/bin/bash
 #!/bin/bash
-#
 # StarPU --- Runtime system for heterogeneous multicore architectures.
 # StarPU --- Runtime system for heterogeneous multicore architectures.
 #
 #
-# Copyright (C) 2012 Inria
+# Copyright (C) 2012-2020  Université de Bordeaux, CNRS (LaBRI UMR 5800), Inria
 #
 #
 # StarPU is free software; you can redistribute it and/or modify
 # 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
 # it under the terms of the GNU Lesser General Public License as published by
@@ -14,7 +13,7 @@
 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
 #
 #
 # See the GNU Lesser General Public License in COPYING.LGPL for more details.
 # See the GNU Lesser General Public License in COPYING.LGPL for more details.
-
+#
 handle.refcnt usage
 handle.refcnt usage
 ===================
 ===================
 
 

+ 2 - 4
doc/devel/replicate_refcnt

@@ -1,9 +1,7 @@
 #!/bin/bash
 #!/bin/bash
-#
 # StarPU --- Runtime system for heterogeneous multicore architectures.
 # StarPU --- Runtime system for heterogeneous multicore architectures.
 #
 #
-# Copyright (C) 2015 Université de Bordeaux
-# Copyright (C) 2012 Inria
+# Copyright (C) 2012-2020  Université de Bordeaux, CNRS (LaBRI UMR 5800), Inria
 #
 #
 # StarPU is free software; you can redistribute it and/or modify
 # 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
 # it under the terms of the GNU Lesser General Public License as published by
@@ -15,7 +13,7 @@
 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
 #
 #
 # See the GNU Lesser General Public License in COPYING.LGPL for more details.
 # See the GNU Lesser General Public License in COPYING.LGPL for more details.
-
+#
 replicate.refcnt usage
 replicate.refcnt usage
 ======================
 ======================
 
 

+ 2 - 0
doc/doxygen/dev/starpu_check_documented.py

@@ -1,4 +1,6 @@
 #!/usr/bin/env python3
 #!/usr/bin/env python3
+# coding=utf-8
+#
 # StarPU --- Runtime system for heterogeneous multicore architectures.
 # StarPU --- Runtime system for heterogeneous multicore architectures.
 #
 #
 # Copyright (C) 2013-2020  Université de Bordeaux, CNRS (LaBRI UMR 5800), Inria
 # Copyright (C) 2013-2020  Université de Bordeaux, CNRS (LaBRI UMR 5800), Inria

+ 1 - 5
doc/doxygen/foreword.html

@@ -1,10 +1,6 @@
 <br/>
 <br/>
 <br/>
 <br/>
-Copyright &copy; 2009-2018 Université de Bordeaux
-<br/>
-Copyright &copy; 2010-2018 CNRS
-<br/>
-Copyright &copy; 2011-2018 Inria
+Copyright &copy; 2009-2020 Université de Bordeaux, CNRS (LaBRI UMR 5800), Inria
 <br/>
 <br/>
 <br/>
 <br/>
 <br/>
 <br/>

+ 1 - 5
doc/doxygen/refman.tex

@@ -35,11 +35,7 @@ Generated by Doxygen.
 This manual documents the usage of StarPU version \STARPUVERSION. Its contents
 This manual documents the usage of StarPU version \STARPUVERSION. Its contents
 was last updated on \STARPUUPDATED.\\
 was last updated on \STARPUUPDATED.\\
 
 
-Copyright © 2009–2019 Université de Bordeaux
-
-Copyright © 2010-2019 CNRS
-
-Copyright © 2011-2019 Inria
+Copyright © 2009–2020 Université de Bordeaux, CNRS (LaBRI UMR 5800), Inria
 
 
 \medskip
 \medskip
 
 

+ 1 - 5
doc/doxygen_dev/foreword.html

@@ -1,10 +1,6 @@
 <br/>
 <br/>
 <br/>
 <br/>
-Copyright &copy; 2009-2018 Université de Bordeaux
-<br/>
-Copyright &copy; 2010-2018 CNRS
-<br/>
-Copyright &copy; 2011-2018 Inria
+Copyright &copy; 2009-2020 Université de Bordeaux, CNRS (LaBRI UMR 5800), Inria
 <br/>
 <br/>
 <br/>
 <br/>
 <br/>
 <br/>

+ 1 - 5
doc/doxygen_dev/refman.tex

@@ -34,11 +34,7 @@ Generated by Doxygen.
 This manual documents the internal usage of StarPU version \STARPUVERSION. Its contents
 This manual documents the internal usage of StarPU version \STARPUVERSION. Its contents
 was last updated on \STARPUUPDATED.\\
 was last updated on \STARPUUPDATED.\\
 
 
-Copyright © 2009–2019 Université de Bordeaux
-
-Copyright © 2010-2019 CNRS
-
-Copyright © 2011-2019 Inria
+Copyright © 2009–2020 Université de Bordeaux, CNRS (LaBRI UMR 5800), Inria
 
 
 \medskip
 \medskip
 
 

+ 8 - 6
examples/Makefile.am

@@ -146,13 +146,15 @@ noinst_HEADERS = 				\
 
 
 examplebin_PROGRAMS 	+=	$(STARPU_EXAMPLES)
 examplebin_PROGRAMS 	+=	$(STARPU_EXAMPLES)
 
 
-TESTS			=	$(STARPU_EXAMPLES)
+TESTS			=	$(SHELL_TESTS) $(STARPU_EXAMPLES)
+
+SHELL_TESTS =
 
 
 if !STARPU_USE_MPI_MASTER_SLAVE
 if !STARPU_USE_MPI_MASTER_SLAVE
-TESTS			+=	scheduler/schedulers.sh
-TESTS			+=	scheduler/schedulers_context.sh
+SHELL_TESTS			+=	scheduler/schedulers.sh
+SHELL_TESTS			+=	scheduler/schedulers_context.sh
 if !NO_BLAS_LIB
 if !NO_BLAS_LIB
-TESTS			+=	mult/sgemm.sh
+SHELL_TESTS			+=	mult/sgemm.sh
 endif
 endif
 endif
 endif
 
 
@@ -325,7 +327,7 @@ STARPU_EXAMPLES +=				\
 	pipeline/pipeline
 	pipeline/pipeline
 
 
 if !STARPU_USE_MPI_MASTER_SLAVE
 if !STARPU_USE_MPI_MASTER_SLAVE
-TESTS += \
+SHELL_TESTS += \
 	heat/heat.sh				\
 	heat/heat.sh				\
 	lu/lu.sh
 	lu/lu.sh
 
 
@@ -335,7 +337,7 @@ endif
 
 
 if STARPU_SIMGRID
 if STARPU_SIMGRID
 if !STARPU_QUICK_CHECK
 if !STARPU_QUICK_CHECK
-TESTS += \
+SHELL_TESTS += \
 	 cholesky/cholesky.sh
 	 cholesky/cholesky.sh
 endif
 endif
 endif
 endif

+ 2 - 3
examples/audio/Makefile

@@ -1,7 +1,6 @@
 # StarPU --- Runtime system for heterogeneous multicore architectures.
 # StarPU --- Runtime system for heterogeneous multicore architectures.
 #
 #
-# Copyright (C) 2009, 2010-2011  Université de Bordeaux
-# Copyright (C) 2010, 2011  CNRS
+# Copyright (C) 2009-2020  Université de Bordeaux, CNRS (LaBRI UMR 5800), Inria
 #
 #
 # StarPU is free software; you can redistribute it and/or modify
 # 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
 # it under the terms of the GNU Lesser General Public License as published by
@@ -13,7 +12,7 @@
 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
 #
 #
 # See the GNU Lesser General Public License in COPYING.LGPL for more details.
 # See the GNU Lesser General Public License in COPYING.LGPL for more details.
-
+#
 CFLAGS += -Wall -g3 -gdwarf-2 -O3 
 CFLAGS += -Wall -g3 -gdwarf-2 -O3 
 
 
 LIBS+=$$(pkg-config --libs libstarpu) -lcufft
 LIBS+=$$(pkg-config --libs libstarpu) -lcufft

+ 6 - 7
examples/fortran/Makefile

@@ -1,19 +1,18 @@
 # StarPU --- Runtime system for heterogeneous multicore architectures.
 # StarPU --- Runtime system for heterogeneous multicore architectures.
-# 
-# Copyright (C) 2009  Université de Bordeaux
-# Copyright (C) 2010  CNRS
-# 
+#
+# Copyright (C) 2009-2020  Université de Bordeaux, CNRS (LaBRI UMR 5800), Inria
+#
 # StarPU is free software; you can redistribute it and/or modify
 # 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
 # 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
 # the Free Software Foundation; either version 2.1 of the License, or (at
 # your option) any later version.
 # your option) any later version.
-# 
+#
 # StarPU is distributed in the hope that it will be useful, but
 # StarPU is distributed in the hope that it will be useful, but
 # WITHOUT ANY WARRANTY; without even the implied warranty of
 # WITHOUT ANY WARRANTY; without even the implied warranty of
 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
-# 
+#
 # See the GNU Lesser General Public License in COPYING.LGPL for more details.
 # See the GNU Lesser General Public License in COPYING.LGPL for more details.
-
+#
 FC=gfortran
 FC=gfortran
 CFLAGS+= -g -Wall
 CFLAGS+= -g -Wall
 FFLAGS+= -g -Wall
 FFLAGS+= -g -Wall

+ 3 - 3
examples/fortran90/Makefile

@@ -1,7 +1,7 @@
 # StarPU --- Runtime system for heterogeneous multicore architectures.
 # StarPU --- Runtime system for heterogeneous multicore architectures.
 #
 #
-# Copyright (C) 2015  ONERA
-# Copyright (C) 2015  Inria
+# Copyright (C) 2015-2020  Université de Bordeaux, CNRS (LaBRI UMR 5800), Inria
+# Copyright (C) 2015       ONERA
 #
 #
 # StarPU is free software; you can redistribute it and/or modify
 # 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
 # it under the terms of the GNU Lesser General Public License as published by
@@ -13,7 +13,7 @@
 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
 #
 #
 # See the GNU Lesser General Public License in COPYING.LGPL for more details.
 # See the GNU Lesser General Public License in COPYING.LGPL for more details.
-
+#
 PROG = f90_example
 PROG = f90_example
 
 
 STARPU_MOD = $(shell pkg-config --cflags-only-I starpu-1.3|sed -e 's/^-I//;s/  *//g')/starpu_mod.f90
 STARPU_MOD = $(shell pkg-config --cflags-only-I starpu-1.3|sed -e 's/^-I//;s/  *//g')/starpu_mod.f90

+ 1 - 1
examples/heat/heat.c

@@ -711,7 +711,7 @@ int main(int argc, char **argv)
 	RefArray = malloc(DIM*sizeof(int));
 	RefArray = malloc(DIM*sizeof(int));
 	RefArrayBack = malloc(DIM*sizeof(int));
 	RefArrayBack = malloc(DIM*sizeof(int));
 	Bformer = malloc(DIM*sizeof(float));
 	Bformer = malloc(DIM*sizeof(float));
-	result = malloc(DIM*sizeof(float));
+	result = calloc(DIM, sizeof(float));
 
 
 	build_mesh(pmesh);
 	build_mesh(pmesh);
 
 

+ 2 - 2
examples/lu/lu_example.c

@@ -348,13 +348,13 @@ int main(int argc, char **argv)
 		nblocks = 8*power_cbrt;
 		nblocks = 8*power_cbrt;
 #endif
 #endif
 
 
+	parse_args(argc, argv);
+
 #ifdef STARPU_HAVE_VALGRIND_H
 #ifdef STARPU_HAVE_VALGRIND_H
 	if (RUNNING_ON_VALGRIND)
 	if (RUNNING_ON_VALGRIND)
 		size = 16;
 		size = 16;
 #endif
 #endif
 
 
-	parse_args(argc, argv);
-
 	starpu_cublas_init();
 	starpu_cublas_init();
 
 
 	init_matrix();
 	init_matrix();

+ 0 - 15
examples/pi/SobolQRNG/sobol.h

@@ -1,18 +1,3 @@
-/* StarPU --- Runtime system for heterogeneous multicore architectures.
- *
- * Copyright (C) 2010  Université de Bordeaux
- *
- * 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.
- */
 /*
 /*
  * Copyright 1993-2009 NVIDIA Corporation.  All rights reserved.
  * Copyright 1993-2009 NVIDIA Corporation.  All rights reserved.
  *
  *

+ 0 - 15
examples/pi/SobolQRNG/sobol_gold.c

@@ -1,18 +1,3 @@
-/* StarPU --- Runtime system for heterogeneous multicore architectures.
- *
- * Copyright (C) 2010-2011, 2014-2015  Université de Bordeaux
- *
- * 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.
- */
 /*
 /*
  * Copyright 1993-2009 NVIDIA Corporation.  All rights reserved.
  * Copyright 1993-2009 NVIDIA Corporation.  All rights reserved.
  *
  *

+ 0 - 15
examples/pi/SobolQRNG/sobol_gold.h

@@ -1,18 +1,3 @@
-/* StarPU --- Runtime system for heterogeneous multicore architectures.
- *
- * Copyright (C) 2010  Université de Bordeaux
- *
- * 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.
- */
 /*
 /*
  * Copyright 1993-2009 NVIDIA Corporation.  All rights reserved.
  * Copyright 1993-2009 NVIDIA Corporation.  All rights reserved.
  *
  *

+ 0 - 15
examples/pi/SobolQRNG/sobol_gpu.h

@@ -1,18 +1,3 @@
-/* StarPU --- Runtime system for heterogeneous multicore architectures.
- *
- * Copyright (C) 2010  Université de Bordeaux
- *
- * 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.
- */
 /*
 /*
  * Copyright 1993-2009 NVIDIA Corporation.  All rights reserved.
  * Copyright 1993-2009 NVIDIA Corporation.  All rights reserved.
  *
  *

+ 0 - 15
examples/pi/SobolQRNG/sobol_primitives.c

@@ -1,18 +1,3 @@
-/* StarPU --- Runtime system for heterogeneous multicore architectures.
- *
- * Copyright (C) 2010, 2014  Université de Bordeaux
- *
- * 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.
- */
 /*
 /*
  * Copyright 1993-2009 NVIDIA Corporation.  All rights reserved.
  * Copyright 1993-2009 NVIDIA Corporation.  All rights reserved.
  *
  *

+ 0 - 15
examples/pi/SobolQRNG/sobol_primitives.h

@@ -1,18 +1,3 @@
-/* StarPU --- Runtime system for heterogeneous multicore architectures.
- *
- * Copyright (C) 2010  Université de Bordeaux
- *
- * 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.
- */
 /*
 /*
  * Copyright 1993-2009 NVIDIA Corporation.  All rights reserved.
  * Copyright 1993-2009 NVIDIA Corporation.  All rights reserved.
  *
  *

+ 2 - 4
examples/stencil/README

@@ -1,8 +1,6 @@
-
 # StarPU --- Runtime system for heterogeneous multicore architectures.
 # StarPU --- Runtime system for heterogeneous multicore architectures.
 #
 #
-# Copyright (C) 2010  Université de Bordeaux
-# Copyright (C) 2010, 2011  CNRS
+# Copyright (C) 2010-2020  Université de Bordeaux, CNRS (LaBRI UMR 5800), Inria
 #
 #
 # StarPU is free software; you can redistribute it and/or modify
 # 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
 # it under the terms of the GNU Lesser General Public License as published by
@@ -14,7 +12,7 @@
 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
 #
 #
 # See the GNU Lesser General Public License in COPYING.LGPL for more details.
 # 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
 This is a sample 3D stencil application (here just using the game of life rules
 for simplicity), split on the z axis.
 for simplicity), split on the z axis.
 
 

+ 2 - 4
examples/stencil/run

@@ -1,9 +1,7 @@
 #!/bin/bash
 #!/bin/bash
-
 # StarPU --- Runtime system for heterogeneous multicore architectures.
 # StarPU --- Runtime system for heterogeneous multicore architectures.
 #
 #
-# Copyright (C) 2010  Université de Bordeaux
-# Copyright (C) 2010, 2011  CNRS
+# Copyright (C) 2010-2020  Université de Bordeaux, CNRS (LaBRI UMR 5800), Inria
 #
 #
 # StarPU is free software; you can redistribute it and/or modify
 # 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
 # it under the terms of the GNU Lesser General Public License as published by
@@ -15,7 +13,7 @@
 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
 #
 #
 # See the GNU Lesser General Public License in COPYING.LGPL for more details.
 # See the GNU Lesser General Public License in COPYING.LGPL for more details.
-
+#
 [ -z "$N" ] && N=1
 [ -z "$N" ] && N=1
 export N
 export N
 [ -z "$STARPU_SCHED_BETA" ] && STARPU_SCHED_BETA="2"
 [ -z "$STARPU_SCHED_BETA" ] && STARPU_SCHED_BETA="2"

+ 2 - 2
mpi/examples/matrix_mult/Makefile

@@ -1,6 +1,6 @@
 # StarPU --- Runtime system for heterogeneous multicore architectures.
 # StarPU --- Runtime system for heterogeneous multicore architectures.
 #
 #
-# Copyright (C) 2016  Inria
+# Copyright (C) 2016-2020  Université de Bordeaux, CNRS (LaBRI UMR 5800), Inria
 #
 #
 # StarPU is free software; you can redistribute it and/or modify
 # 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
 # it under the terms of the GNU Lesser General Public License as published by
@@ -12,7 +12,7 @@
 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
 #
 #
 # See the GNU Lesser General Public License in COPYING.LGPL for more details.
 # See the GNU Lesser General Public License in COPYING.LGPL for more details.
-
+#
 
 
 # This makefile gives an example on how to build the testcase outside StarPU
 # This makefile gives an example on how to build the testcase outside StarPU
 
 

+ 2 - 2
mpi/examples/matrix_mult/environment

@@ -1,6 +1,6 @@
 # StarPU --- Runtime system for heterogeneous multicore architectures.
 # StarPU --- Runtime system for heterogeneous multicore architectures.
 #
 #
-# Copyright (C) 2016  Inria
+# Copyright (C) 2016-2020  Université de Bordeaux, CNRS (LaBRI UMR 5800), Inria
 #
 #
 # StarPU is free software; you can redistribute it and/or modify
 # 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
 # it under the terms of the GNU Lesser General Public License as published by
@@ -12,7 +12,7 @@
 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
 #
 #
 # See the GNU Lesser General Public License in COPYING.LGPL for more details.
 # See the GNU Lesser General Public License in COPYING.LGPL for more details.
-
+#
 
 
 # This script gives an example on how to set environment variables to build and run the testcase outside StarPU
 # This script gives an example on how to set environment variables to build and run the testcase outside StarPU
 
 

+ 3 - 3
src/sched_policies/component_sched.c

@@ -678,9 +678,10 @@ double starpu_sched_component_estimated_end_min_add(struct starpu_sched_componen
 	STARPU_ASSERT(component);
 	STARPU_ASSERT(component);
 	double min = DBL_MAX;
 	double min = DBL_MAX;
 	unsigned i;
 	unsigned i;
+	double ends[component->nchildren];
 	for(i = 0; i < component->nchildren; i++)
 	for(i = 0; i < component->nchildren; i++)
 	{
 	{
-		double tmp = component->children[i]->estimated_end(component->children[i]);
+		double tmp = ends[i] = component->children[i]->estimated_end(component->children[i]);
 		if(tmp < min)
 		if(tmp < min)
 			min = tmp;
 			min = tmp;
 	}
 	}
@@ -695,8 +696,7 @@ double starpu_sched_component_estimated_end_min_add(struct starpu_sched_componen
 			card = 1;
 			card = 1;
 		for(i = 0; i < component->nchildren; i++)
 		for(i = 0; i < component->nchildren; i++)
 		{
 		{
-			double tmp = component->children[i]->estimated_end(component->children[i]);
-			exp_len += tmp - min;
+			exp_len += ends[i] - min;
 		}
 		}
 		min += exp_len / card;
 		min += exp_len / card;
 	}
 	}

+ 19 - 23
src/sched_policies/parallel_heft.c

@@ -88,7 +88,7 @@ static void parallel_heft_pre_exec_hook(struct starpu_task *task, unsigned sched
 	if (isnan(transfer_model))
 	if (isnan(transfer_model))
 		transfer_model = 0.0;
 		transfer_model = 0.0;
 
 
-	/* Once we have executed the task, we can update the predicted amount
+	/* Once we have started the task, we can update the predicted amount
 	 * of work. */
 	 * of work. */
 	starpu_worker_lock_self();
 	starpu_worker_lock_self();
 	worker_exp_len[workerid] -= model + transfer_model;
 	worker_exp_len[workerid] -= model + transfer_model;
@@ -98,7 +98,7 @@ static void parallel_heft_pre_exec_hook(struct starpu_task *task, unsigned sched
 	starpu_worker_unlock_self();
 	starpu_worker_unlock_self();
 }
 }
 
 
-static int push_task_on_best_worker(struct starpu_task *task, int best_workerid, double exp_end_predicted, int prio, unsigned sched_ctx_id)
+static int push_task_on_best_worker(struct starpu_task *task, int best_workerid, double exp_start_predicted, double exp_end_predicted, int prio, unsigned sched_ctx_id)
 {
 {
 	/* make sure someone coule execute that task ! */
 	/* make sure someone coule execute that task ! */
 	STARPU_ASSERT(best_workerid != -1);
 	STARPU_ASSERT(best_workerid != -1);
@@ -113,7 +113,7 @@ static int push_task_on_best_worker(struct starpu_task *task, int best_workerid,
 	if (!starpu_worker_is_combined_worker(best_workerid))
 	if (!starpu_worker_is_combined_worker(best_workerid))
 	{
 	{
 		starpu_worker_lock(best_workerid);
 		starpu_worker_lock(best_workerid);
-		task->predicted = exp_end_predicted - worker_exp_end[best_workerid];
+		task->predicted = exp_end_predicted - exp_start_predicted;
 		/* TODO */
 		/* TODO */
 		task->predicted_transfer = 0;
 		task->predicted_transfer = 0;
 		worker_exp_len[best_workerid] += task->predicted;
 		worker_exp_len[best_workerid] += task->predicted;
@@ -181,17 +181,14 @@ static int push_task_on_best_worker(struct starpu_task *task, int best_workerid,
 	return ret;
 	return ret;
 }
 }
 
 
-static double compute_expected_end(int workerid, double length)
+static double compute_expected_end(double *_worker_exp_end, int workerid, double length)
 {
 {
 	if (!starpu_worker_is_combined_worker(workerid))
 	if (!starpu_worker_is_combined_worker(workerid))
 	{
 	{
 		double res;
 		double res;
 		/* This is a basic worker */
 		/* This is a basic worker */
 
 
-		/* Here helgrind would shout that this is unprotected, but we
-		 * are fine with getting outdated values, this is just an
-		 * estimation */
-		res = worker_exp_start[workerid] + worker_exp_len[workerid] + length;
+		res = _worker_exp_end[workerid] + length;
 
 
 		return res;
 		return res;
 	}
 	}
@@ -204,15 +201,10 @@ static double compute_expected_end(int workerid, double length)
 
 
 		double exp_end = DBL_MIN;
 		double exp_end = DBL_MIN;
 
 
-		/* Here helgrind would shout that this is unprotected, but we
-		 * are fine with getting outdated values, this is just an
-		 * estimation */
 		int i;
 		int i;
 		for (i = 0; i < worker_size; i++)
 		for (i = 0; i < worker_size; i++)
 		{
 		{
-			double local_exp_start = worker_exp_start[combined_workerid[i]];
-			double local_exp_len = worker_exp_len[combined_workerid[i]];
-			double local_exp_end = local_exp_start + local_exp_len + length;
+			double local_exp_end = _worker_exp_end[combined_workerid[i]] + length;
 			exp_end = STARPU_MAX(exp_end, local_exp_end);
 			exp_end = STARPU_MAX(exp_end, local_exp_end);
 		}
 		}
 
 
@@ -283,6 +275,7 @@ static int _parallel_heft_push_task(struct starpu_task *task, unsigned prio, uns
 
 
 	int skip_worker[nworkers_ctx][STARPU_MAXIMPLEMENTATIONS];
 	int skip_worker[nworkers_ctx][STARPU_MAXIMPLEMENTATIONS];
 
 
+	double best_exp_start;
 	double best_exp_end = DBL_MAX;
 	double best_exp_end = DBL_MAX;
 	//double penality_best = 0.0;
 	//double penality_best = 0.0;
 
 
@@ -295,6 +288,7 @@ static int _parallel_heft_push_task(struct starpu_task *task, unsigned prio, uns
 	struct starpu_sched_ctx_iterator it;
 	struct starpu_sched_ctx_iterator it;
 
 
 	double now = starpu_timing_now();
 	double now = starpu_timing_now();
+	double _worker_exp_end[nworkers_ctx];
 
 
 	memset(skip_worker, 0, nworkers_ctx*STARPU_MAXIMPLEMENTATIONS*sizeof(int));
 	memset(skip_worker, 0, nworkers_ctx*STARPU_MAXIMPLEMENTATIONS*sizeof(int));
 
 
@@ -305,13 +299,14 @@ static int _parallel_heft_push_task(struct starpu_task *task, unsigned prio, uns
 
 
 		if(!starpu_worker_is_combined_worker(workerid))
 		if(!starpu_worker_is_combined_worker(workerid))
 		{
 		{
+			/* Here helgrind would shout that this is unprotected, but we
+			 * are fine with getting outdated values, this is just an
+			 * estimation */
 			/* Sometimes workers didn't take the tasks as early as we expected */
 			/* Sometimes workers didn't take the tasks as early as we expected */
-			starpu_worker_lock(workerid);
-			worker_exp_start[workerid] = STARPU_MAX(worker_exp_start[workerid], now);
-			worker_exp_end[workerid] = worker_exp_start[workerid] + worker_exp_len[workerid];
-			if (worker_exp_end[workerid] > max_exp_end)
-				max_exp_end = worker_exp_end[workerid];
-			starpu_worker_unlock(workerid);
+			double exp_start = STARPU_MAX(worker_exp_start[workerid], now);
+			_worker_exp_end[workerid] = exp_start + worker_exp_len[workerid];
+			if (_worker_exp_end[workerid] > max_exp_end)
+				max_exp_end = _worker_exp_end[workerid];
 		}
 		}
 	}
 	}
 
 
@@ -378,7 +373,7 @@ static int _parallel_heft_push_task(struct starpu_task *task, unsigned prio, uns
 			if (unknown)
 			if (unknown)
 				continue;
 				continue;
 
 
-			local_exp_end[worker_ctx][nimpl] = compute_expected_end(workerid, local_task_length[worker_ctx][nimpl]);
+			local_exp_end[worker_ctx][nimpl] = compute_expected_end(_worker_exp_end, workerid, local_task_length[worker_ctx][nimpl]);
 
 
 			//fprintf(stderr, "WORKER %d -> length %e end %e\n", workerid, local_task_length[worker_ctx][nimpl], local_exp_end[workerid][nimpl]);
 			//fprintf(stderr, "WORKER %d -> length %e end %e\n", workerid, local_task_length[worker_ctx][nimpl], local_exp_end[workerid][nimpl]);
 
 
@@ -460,19 +455,20 @@ static int _parallel_heft_push_task(struct starpu_task *task, unsigned prio, uns
 		best_id_ctx = forced_best_ctx;
 		best_id_ctx = forced_best_ctx;
 		nimpl_best = forced_nimpl;
 		nimpl_best = forced_nimpl;
 		//penality_best = 0.0;
 		//penality_best = 0.0;
-		best_exp_end = compute_expected_end(best, 0);
+		best_exp_end = compute_expected_end(_worker_exp_end, best, 0);
 	}
 	}
 	else
 	else
 	{
 	{
 		//penality_best = local_data_penalty[best_id_ctx][nimpl_best];
 		//penality_best = local_data_penalty[best_id_ctx][nimpl_best];
 		best_exp_end = local_exp_end[best_id_ctx][nimpl_best];
 		best_exp_end = local_exp_end[best_id_ctx][nimpl_best];
 	}
 	}
+	best_exp_start = _worker_exp_end[best];
 
 
 	//_STARPU_DEBUG("Scheduler parallel heft: kernel (%u)\n", nimpl_best);
 	//_STARPU_DEBUG("Scheduler parallel heft: kernel (%u)\n", nimpl_best);
 	starpu_task_set_implementation(task, nimpl_best);
 	starpu_task_set_implementation(task, nimpl_best);
 	/* we should now have the best workerid in variable "best" */
 	/* we should now have the best workerid in variable "best" */
 	starpu_sched_task_break(task);
 	starpu_sched_task_break(task);
-	return push_task_on_best_worker(task, best, best_exp_end, prio, sched_ctx_id);
+	return push_task_on_best_worker(task, best, best_exp_start, best_exp_end, prio, sched_ctx_id);
 }
 }
 
 
 static int parallel_heft_push_task(struct starpu_task *task)
 static int parallel_heft_push_task(struct starpu_task *task)

+ 2 - 2
starpurm/examples/Makefile.example

@@ -1,6 +1,6 @@
 # StarPURM --- StarPU Resource Management Layer.
 # StarPURM --- StarPU Resource Management Layer.
 #
 #
-# Copyright (C) 2017 Inria
+# Copyright (C) 2017-2020  Université de Bordeaux, CNRS (LaBRI UMR 5800), Inria
 #
 #
 # StarPU is free software; you can redistribute it and/or modify
 # 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
 # it under the terms of the GNU Lesser General Public License as published by
@@ -12,7 +12,7 @@
 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
 #
 #
 # See the GNU Lesser General Public License in COPYING.LGPL for more details.
 # See the GNU Lesser General Public License in COPYING.LGPL for more details.
-
+#
 # Example Makefile showing how to build examples from outside the StarPURM
 # Example Makefile showing how to build examples from outside the StarPURM
 # tree.
 # tree.
 
 

+ 9 - 7
tests/Makefile.am

@@ -127,10 +127,12 @@ TESTS_ENVIRONMENT   =   $(MPI_RUN_ARGS) top_builddir="$(abs_top_builddir)" top_s
 endif
 endif
 endif
 endif
 
 
-TESTS = $(myPROGRAMS)
+TESTS = $(SHELL_TESTS) $(myPROGRAMS)
+
+SHELL_TESTS =
 
 
 if STARPU_COVERAGE_ENABLED
 if STARPU_COVERAGE_ENABLED
-TESTS	+=	coverage/coverage.sh
+SHELL_TESTS	+=	coverage/coverage.sh
 endif
 endif
 
 
 XFAIL_TESTS	=				\
 XFAIL_TESTS	=				\
@@ -404,7 +406,7 @@ examplebin_SCRIPTS = \
 	microbenchs/tasks_size_overhead.sh
 	microbenchs/tasks_size_overhead.sh
 if !STARPU_SIMGRID
 if !STARPU_SIMGRID
 if !STARPU_USE_MPI_MASTER_SLAVE
 if !STARPU_USE_MPI_MASTER_SLAVE
-TESTS += \
+SHELL_TESTS += \
 	microbenchs/tasks_data_overhead.sh \
 	microbenchs/tasks_data_overhead.sh \
 	microbenchs/sync_tasks_data_overhead.sh \
 	microbenchs/sync_tasks_data_overhead.sh \
 	microbenchs/async_tasks_data_overhead.sh \
 	microbenchs/async_tasks_data_overhead.sh \
@@ -421,11 +423,11 @@ noinst_PROGRAMS = $(myPROGRAMS)
 noinst_PROGRAMS += $(MICROBENCHS)
 noinst_PROGRAMS += $(MICROBENCHS)
 
 
 if STARPU_SIMGRID
 if STARPU_SIMGRID
-TESTS += $(MICROBENCHS:=.sh)
+SHELL_TESTS += $(MICROBENCHS:=.sh)
 endif
 endif
 
 
 if !STARPU_USE_MPI_MASTER_SLAVE
 if !STARPU_USE_MPI_MASTER_SLAVE
-TESTS += \
+SHELL_TESTS += \
 	datawizard/locality.sh \
 	datawizard/locality.sh \
 	overlap/overlap.sh
 	overlap/overlap.sh
 endif
 endif
@@ -439,14 +441,14 @@ model_checking_prio_list_LDADD =
 model_checking_prio_list_LDFLAGS = 
 model_checking_prio_list_LDFLAGS = 
 noinst_PROGRAMS += model-checking/prio_list
 noinst_PROGRAMS += model-checking/prio_list
 if !STARPU_QUICK_CHECK
 if !STARPU_QUICK_CHECK
-TESTS += model-checking/prio_list.sh
+SHELL_TESTS += model-checking/prio_list.sh
 endif
 endif
 
 
 model_checking_starpu_barrier_LDADD = 
 model_checking_starpu_barrier_LDADD = 
 model_checking_starpu_barrier_LDFLAGS = 
 model_checking_starpu_barrier_LDFLAGS = 
 noinst_PROGRAMS += model-checking/starpu_barrier
 noinst_PROGRAMS += model-checking/starpu_barrier
 if !STARPU_QUICK_CHECK
 if !STARPU_QUICK_CHECK
-#TESTS += model-checking/barrier.sh
+#SHELL_TESTS += model-checking/barrier.sh
 endif
 endif
 endif
 endif
 
 

+ 6 - 7
tests/experiments/bandwidth_cuda/Makefile

@@ -1,19 +1,18 @@
 # StarPU --- Runtime system for heterogeneous multicore architectures.
 # StarPU --- Runtime system for heterogeneous multicore architectures.
-# 
-# Copyright (C) 2009  Université de Bordeaux
-# Copyright (C) 2010  CNRS
-# 
+#
+# Copyright (C) 2009-2020  Université de Bordeaux, CNRS (LaBRI UMR 5800), Inria
+#
 # StarPU is free software; you can redistribute it and/or modify
 # 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
 # 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
 # the Free Software Foundation; either version 2.1 of the License, or (at
 # your option) any later version.
 # your option) any later version.
-# 
+#
 # StarPU is distributed in the hope that it will be useful, but
 # StarPU is distributed in the hope that it will be useful, but
 # WITHOUT ANY WARRANTY; without even the implied warranty of
 # WITHOUT ANY WARRANTY; without even the implied warranty of
 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
-# 
+#
 # See the GNU Lesser General Public License in COPYING.LGPL for more details.
 # See the GNU Lesser General Public License in COPYING.LGPL for more details.
-
+#
 CUDASDKDIR=/home/gonnet/NVIDIA_CUDA_SDK/
 CUDASDKDIR=/home/gonnet/NVIDIA_CUDA_SDK/
 CUDAINSTALLDIR=/usr/local/cuda/
 CUDAINSTALLDIR=/usr/local/cuda/
 
 

+ 6 - 7
tests/experiments/latency/Makefile

@@ -1,19 +1,18 @@
 # StarPU --- Runtime system for heterogeneous multicore architectures.
 # StarPU --- Runtime system for heterogeneous multicore architectures.
-# 
-# Copyright (C) 2010  Université de Bordeaux
-# Copyright (C) 2010  CNRS
-# 
+#
+# Copyright (C) 2010-2020  Université de Bordeaux, CNRS (LaBRI UMR 5800), Inria
+#
 # StarPU is free software; you can redistribute it and/or modify
 # 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
 # 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
 # the Free Software Foundation; either version 2.1 of the License, or (at
 # your option) any later version.
 # your option) any later version.
-# 
+#
 # StarPU is distributed in the hope that it will be useful, but
 # StarPU is distributed in the hope that it will be useful, but
 # WITHOUT ANY WARRANTY; without even the implied warranty of
 # WITHOUT ANY WARRANTY; without even the implied warranty of
 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
-# 
+#
 # See the GNU Lesser General Public License in COPYING.LGPL for more details.
 # See the GNU Lesser General Public License in COPYING.LGPL for more details.
-
+#
 CUDASDKDIR?=/home/gonnet/NVIDIA_CUDA_SDK/
 CUDASDKDIR?=/home/gonnet/NVIDIA_CUDA_SDK/
 CUDAINSTALLDIR=/usr/local/cuda/
 CUDAINSTALLDIR=/usr/local/cuda/
 
 

+ 2 - 4
tests/main/combined_workers/bfs/Makefile

@@ -1,9 +1,7 @@
 #!/bin/bash
 #!/bin/bash
-#
 # StarPU --- Runtime system for heterogeneous multicore architectures.
 # StarPU --- Runtime system for heterogeneous multicore architectures.
 #
 #
-# Copyright (C) 2014, 2017 Université de Bordeaux
-# Copyright (C) 2012 Inria
+# Copyright (C) 2012-2020  Université de Bordeaux, CNRS (LaBRI UMR 5800), Inria
 #
 #
 # StarPU is free software; you can redistribute it and/or modify
 # 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
 # it under the terms of the GNU Lesser General Public License as published by
@@ -15,7 +13,7 @@
 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
 #
 #
 # See the GNU Lesser General Public License in COPYING.LGPL for more details.
 # See the GNU Lesser General Public License in COPYING.LGPL for more details.
-
+#
 CFLAGS += $(shell pkg-config --cflags starpu-1.0) -g -O0 -Wall
 CFLAGS += $(shell pkg-config --cflags starpu-1.0) -g -O0 -Wall
 LDFLAGS += $(shell pkg-config --libs starpu-1.0) -g -O0 -Wall
 LDFLAGS += $(shell pkg-config --libs starpu-1.0) -g -O0 -Wall
  
  

+ 2 - 2
tests/model-checking/Makefile

@@ -1,6 +1,6 @@
 # StarPU --- Runtime system for heterogeneous multicore architectures.
 # StarPU --- Runtime system for heterogeneous multicore architectures.
 #
 #
-# Copyright (C) 2017, 2019  Université de Bordeaux
+# Copyright (C) 2017-2020  Université de Bordeaux, CNRS (LaBRI UMR 5800), Inria
 #
 #
 # StarPU is free software; you can redistribute it and/or modify
 # 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
 # it under the terms of the GNU Lesser General Public License as published by
@@ -12,7 +12,7 @@
 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
 #
 #
 # See the GNU Lesser General Public License in COPYING.LGPL for more details.
 # See the GNU Lesser General Public License in COPYING.LGPL for more details.
-
+#
 STARPU=../../
 STARPU=../../
 CPPFLAGS=-I$(STARPU)/src -I$(STARPU)/include -I.
 CPPFLAGS=-I$(STARPU)/src -I$(STARPU)/include -I.
 CFLAGS+=-Wall -Wextra -g -DNOCONFIG
 CFLAGS+=-Wall -Wextra -g -DNOCONFIG

+ 3 - 1
tools/dev/experimental/modes/fix_cocci_output.py

@@ -1,4 +1,6 @@
-#!/usr/bin/env python
+#!/usr/bin/env python3
+# coding=utf-8
+#
 # StarPU --- Runtime system for heterogeneous multicore architectures.
 # StarPU --- Runtime system for heterogeneous multicore architectures.
 #
 #
 # Copyright (C) 2012-2020  Université de Bordeaux, CNRS (LaBRI UMR 5800), Inria
 # Copyright (C) 2012-2020  Université de Bordeaux, CNRS (LaBRI UMR 5800), Inria

+ 2 - 4
tools/gdbinit

@@ -1,8 +1,6 @@
-
 # StarPU --- Runtime system for heterogeneous multicore architectures.
 # StarPU --- Runtime system for heterogeneous multicore architectures.
 #
 #
-# Copyright (C) 2010-2019  Université de Bordeaux
-# Copyright (C) 2010, 2011, 2012, 2013, 2014, 2015, 2016, 2017, 2018  CNRS
+# Copyright (C) 2010-2020  Université de Bordeaux, CNRS (LaBRI UMR 5800), Inria
 #
 #
 # StarPU is free software; you can redistribute it and/or modify
 # 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
 # it under the terms of the GNU Lesser General Public License as published by
@@ -14,7 +12,7 @@
 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
 #
 #
 # See the GNU Lesser General Public License in COPYING.LGPL for more details.
 # See the GNU Lesser General Public License in COPYING.LGPL for more details.
-
+#
 # To set a breakpoint when starting gdb with option "-ex run",
 # To set a breakpoint when starting gdb with option "-ex run",
 # here what you need to do:
 # here what you need to do:
 #set breakpoint pending on
 #set breakpoint pending on

+ 2 - 3
tools/release/Makefile

@@ -1,7 +1,6 @@
 # StarPU --- Runtime system for heterogeneous multicore architectures.
 # StarPU --- Runtime system for heterogeneous multicore architectures.
 #
 #
-# Copyright (C) 2009-2011  Université de Bordeaux
-# Copyright (C) 2010-2013  CNRS
+# Copyright (C) 2009-2020  Université de Bordeaux, CNRS (LaBRI UMR 5800), Inria
 #
 #
 # StarPU is free software; you can redistribute it and/or modify
 # 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
 # it under the terms of the GNU Lesser General Public License as published by
@@ -13,7 +12,7 @@
 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
 #
 #
 # See the GNU Lesser General Public License in COPYING.LGPL for more details.
 # See the GNU Lesser General Public License in COPYING.LGPL for more details.
-
+#
 STARPU		?=	undefined
 STARPU		?=	undefined
 EXAMPLE		?= 	undefined
 EXAMPLE		?= 	undefined
 
 

+ 2 - 2
tools/release/README

@@ -1,6 +1,6 @@
 # StarPU --- Runtime system for heterogeneous multicore architectures.
 # StarPU --- Runtime system for heterogeneous multicore architectures.
 #
 #
-# Copyright (C) 2013, 2014  CNRS
+# Copyright (C) 2013-2020  Université de Bordeaux, CNRS (LaBRI UMR 5800), Inria
 #
 #
 # StarPU is free software; you can redistribute it and/or modify
 # 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
 # it under the terms of the GNU Lesser General Public License as published by
@@ -12,7 +12,7 @@
 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
 #
 #
 # See the GNU Lesser General Public License in COPYING.LGPL for more details.
 # See the GNU Lesser General Public License in COPYING.LGPL for more details.
-
+#
 The makefile in this directory should be used to test the compilation and execution of StarPU examples against an installed version of StarPU.
 The makefile in this directory should be used to test the compilation and execution of StarPU examples against an installed version of StarPU.
 
 
 For example, if StarPU is installed in
 For example, if StarPU is installed in

+ 2 - 0
tools/starpu_mpi_comm_matrix.py.in

@@ -1,4 +1,6 @@
 #!/usr/bin/env python3
 #!/usr/bin/env python3
+# coding=utf-8
+#
 # StarPU --- Runtime system for heterogeneous multicore architectures.
 # StarPU --- Runtime system for heterogeneous multicore architectures.
 #
 #
 # Copyright (C) 2019-2020  Université de Bordeaux, CNRS (LaBRI UMR 5800), Inria
 # Copyright (C) 2019-2020  Université de Bordeaux, CNRS (LaBRI UMR 5800), Inria

+ 2 - 0
tools/starpu_send_recv_data_use.py

@@ -1,4 +1,6 @@
 #!/usr/bin/env python3
 #!/usr/bin/env python3
+# coding=utf-8
+#
 # StarPU --- Runtime system for heterogeneous multicore architectures.
 # StarPU --- Runtime system for heterogeneous multicore architectures.
 #
 #
 # Copyright (C) 2019-2020  Université de Bordeaux, CNRS (LaBRI UMR 5800), Inria
 # Copyright (C) 2019-2020  Université de Bordeaux, CNRS (LaBRI UMR 5800), Inria

+ 10 - 10
tools/starpu_smpi.xslt

@@ -1,18 +1,18 @@
 <!--
 <!--
-StarPU   Runtime system for heterogeneous multicore architectures.
+ StarPU --- Runtime system for heterogeneous multicore architectures.
 
 
-Copyright (C) 2014-2015  Université de Bordeaux
+ Copyright (C) 2014-2020  Université de Bordeaux, CNRS (LaBRI UMR 5800), Inria
 
 
-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 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.
+ 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.
+ See the GNU Lesser General Public License in COPYING.LGPL for more details.
 -->
 -->
 
 
 <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
 <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">

+ 3 - 1
tools/starpu_trace_state_stats.py

@@ -1,4 +1,6 @@
-#!/usr/bin/env python
+#!/usr/bin/env python3
+# coding=utf-8
+#
 # StarPU --- Runtime system for heterogeneous multicore architectures.
 # StarPU --- Runtime system for heterogeneous multicore architectures.
 #
 #
 # Copyright (C) 2016-2020  Université de Bordeaux, CNRS (LaBRI UMR 5800), Inria
 # Copyright (C) 2016-2020  Université de Bordeaux, CNRS (LaBRI UMR 5800), Inria