浏览代码

Merge branch 'master' into fpga2

Nathalie Furmento 5 年之前
父节点
当前提交
72f63a5d50
共有 44 个文件被更改,包括 136 次插入248 次删除
  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>
 Beauchamp Guillaume, Inria, <guillaume.beauchamp@inria.fr>
 Bramas Berenger, Inria, <berenger.bramas@inria.fr>
 Buttari Alfredo, Enseeiht, <alfredo.buttari@enseeiht.fr>
 Cassagne Adrien, Inria, <adrien.cassagne@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>
 Danjean Vincent, University Grenoble Alpes, <Vincent.Danjean@ens-lyon.org>
 Denis Alexandre, Inria, <alexandre.denis@inria.fr>
 Eyraud-Dubois Lionel, Inria, <lionel.eyraud-dubois@inria.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>
 Khorsi Yanis, Inria, <yanis.khorsi@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>
 Makni Mariem, Inria, <mariem.makni@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>
 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>
 Quôc-Dinh Nguyen, IT Sud-Paris, <nguyen.quocdinh@gmail.com>
 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>
 Schnorr Lucas Mello, Federal University of Rio Grande do Sul (UFRGS), <schnorr@inf.ufrgs.br>
 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>
 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>
-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.
 #
-# 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
 # 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.
 #
 # See the GNU Lesser General Public License in COPYING.LGPL for more details.
-
+#
 Contents
 =========
 

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

@@ -1,7 +1,7 @@
 #!groovy
 // 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
 // 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
 // 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
 // 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
 // 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
 // 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
-#
 # 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
 # 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.
 #
 # See the GNU Lesser General Public License in COPYING.LGPL for more details.
-
+#
 handle.refcnt usage
 ===================
 

+ 2 - 4
doc/devel/replicate_refcnt

@@ -1,9 +1,7 @@
 #!/bin/bash
-#
 # 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
 # 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.
 #
 # See the GNU Lesser General Public License in COPYING.LGPL for more details.
-
+#
 replicate.refcnt usage
 ======================
 

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

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

+ 1 - 5
doc/doxygen/foreword.html

@@ -1,10 +1,6 @@
 <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/>

+ 1 - 5
doc/doxygen/refman.tex

@@ -35,11 +35,7 @@ Generated by Doxygen.
 This manual documents the usage of StarPU version \STARPUVERSION. Its contents
 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
 

+ 1 - 5
doc/doxygen_dev/foreword.html

@@ -1,10 +1,6 @@
 <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/>

+ 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
 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
 

+ 8 - 6
examples/Makefile.am

@@ -146,13 +146,15 @@ noinst_HEADERS = 				\
 
 examplebin_PROGRAMS 	+=	$(STARPU_EXAMPLES)
 
-TESTS			=	$(STARPU_EXAMPLES)
+TESTS			=	$(SHELL_TESTS) $(STARPU_EXAMPLES)
+
+SHELL_TESTS =
 
 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
-TESTS			+=	mult/sgemm.sh
+SHELL_TESTS			+=	mult/sgemm.sh
 endif
 endif
 
@@ -325,7 +327,7 @@ STARPU_EXAMPLES +=				\
 	pipeline/pipeline
 
 if !STARPU_USE_MPI_MASTER_SLAVE
-TESTS += \
+SHELL_TESTS += \
 	heat/heat.sh				\
 	lu/lu.sh
 
@@ -335,7 +337,7 @@ endif
 
 if STARPU_SIMGRID
 if !STARPU_QUICK_CHECK
-TESTS += \
+SHELL_TESTS += \
 	 cholesky/cholesky.sh
 endif
 endif

+ 2 - 3
examples/audio/Makefile

@@ -1,7 +1,6 @@
 # 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
 # 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.
 #
 # See the GNU Lesser General Public License in COPYING.LGPL for more details.
-
+#
 CFLAGS += -Wall -g3 -gdwarf-2 -O3 
 
 LIBS+=$$(pkg-config --libs libstarpu) -lcufft

+ 6 - 7
examples/fortran/Makefile

@@ -1,19 +1,18 @@
 # 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
 # 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.
-
+#
 FC=gfortran
 CFLAGS+= -g -Wall
 FFLAGS+= -g -Wall

+ 3 - 3
examples/fortran90/Makefile

@@ -1,7 +1,7 @@
 # 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
 # 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.
 #
 # See the GNU Lesser General Public License in COPYING.LGPL for more details.
-
+#
 PROG = f90_example
 
 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));
 	RefArrayBack = malloc(DIM*sizeof(int));
 	Bformer = malloc(DIM*sizeof(float));
-	result = malloc(DIM*sizeof(float));
+	result = calloc(DIM, sizeof(float));
 
 	build_mesh(pmesh);
 

+ 2 - 2
examples/lu/lu_example.c

@@ -348,13 +348,13 @@ int main(int argc, char **argv)
 		nblocks = 8*power_cbrt;
 #endif
 
+	parse_args(argc, argv);
+
 #ifdef STARPU_HAVE_VALGRIND_H
 	if (RUNNING_ON_VALGRIND)
 		size = 16;
 #endif
 
-	parse_args(argc, argv);
-
 	starpu_cublas_init();
 
 	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.
  *

+ 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.
  *

+ 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.
  *

+ 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.
  *

+ 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.
  *

+ 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.
  *

+ 2 - 4
examples/stencil/README

@@ -1,8 +1,6 @@
-
 # 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
 # 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.
 #
 # 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.
 

+ 2 - 4
examples/stencil/run

@@ -1,9 +1,7 @@
 #!/bin/bash
-
 # 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
 # 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.
 #
 # See the GNU Lesser General Public License in COPYING.LGPL for more details.
-
+#
 [ -z "$N" ] && N=1
 export N
 [ -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.
 #
-# 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
 # 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.
 #
 # 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
 

+ 2 - 2
mpi/examples/matrix_mult/environment

@@ -1,6 +1,6 @@
 # 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
 # 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.
 #
 # 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
 

+ 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);
 	double min = DBL_MAX;
 	unsigned i;
+	double ends[component->nchildren];
 	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)
 			min = tmp;
 	}
@@ -695,8 +696,7 @@ double starpu_sched_component_estimated_end_min_add(struct starpu_sched_componen
 			card = 1;
 		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;
 	}

+ 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))
 		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. */
 	starpu_worker_lock_self();
 	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();
 }
 
-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 ! */
 	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))
 	{
 		starpu_worker_lock(best_workerid);
-		task->predicted = exp_end_predicted - worker_exp_end[best_workerid];
+		task->predicted = exp_end_predicted - exp_start_predicted;
 		/* TODO */
 		task->predicted_transfer = 0;
 		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;
 }
 
-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))
 	{
 		double res;
 		/* 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;
 	}
@@ -204,15 +201,10 @@ static double compute_expected_end(int workerid, double length)
 
 		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;
 		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);
 		}
 
@@ -283,6 +275,7 @@ static int _parallel_heft_push_task(struct starpu_task *task, unsigned prio, uns
 
 	int skip_worker[nworkers_ctx][STARPU_MAXIMPLEMENTATIONS];
 
+	double best_exp_start;
 	double best_exp_end = DBL_MAX;
 	//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;
 
 	double now = starpu_timing_now();
+	double _worker_exp_end[nworkers_ctx];
 
 	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))
 		{
+			/* 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 */
-			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)
 				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]);
 
@@ -460,19 +455,20 @@ static int _parallel_heft_push_task(struct starpu_task *task, unsigned prio, uns
 		best_id_ctx = forced_best_ctx;
 		nimpl_best = forced_nimpl;
 		//penality_best = 0.0;
-		best_exp_end = compute_expected_end(best, 0);
+		best_exp_end = compute_expected_end(_worker_exp_end, best, 0);
 	}
 	else
 	{
 		//penality_best = local_data_penalty[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_task_set_implementation(task, nimpl_best);
 	/* we should now have the best workerid in variable "best" */
 	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)

+ 2 - 2
starpurm/examples/Makefile.example

@@ -1,6 +1,6 @@
 # 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
 # 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.
 #
 # See the GNU Lesser General Public License in COPYING.LGPL for more details.
-
+#
 # Example Makefile showing how to build examples from outside the StarPURM
 # tree.
 

+ 9 - 7
tests/Makefile.am

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

+ 6 - 7
tests/experiments/bandwidth_cuda/Makefile

@@ -1,19 +1,18 @@
 # 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
 # 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.
-
+#
 CUDASDKDIR=/home/gonnet/NVIDIA_CUDA_SDK/
 CUDAINSTALLDIR=/usr/local/cuda/
 

+ 6 - 7
tests/experiments/latency/Makefile

@@ -1,19 +1,18 @@
 # 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
 # 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.
-
+#
 CUDASDKDIR?=/home/gonnet/NVIDIA_CUDA_SDK/
 CUDAINSTALLDIR=/usr/local/cuda/
 

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

@@ -1,9 +1,7 @@
 #!/bin/bash
-#
 # 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
 # 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.
 #
 # See the GNU Lesser General Public License in COPYING.LGPL for more details.
-
+#
 CFLAGS += $(shell pkg-config --cflags 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.
 #
-# 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
 # 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.
 #
 # See the GNU Lesser General Public License in COPYING.LGPL for more details.
-
+#
 STARPU=../../
 CPPFLAGS=-I$(STARPU)/src -I$(STARPU)/include -I.
 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.
 #
 # 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.
 #
-# 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
 # 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.
 #
 # See the GNU Lesser General Public License in COPYING.LGPL for more details.
-
+#
 # To set a breakpoint when starting gdb with option "-ex run",
 # here what you need to do:
 #set breakpoint pending on

+ 2 - 3
tools/release/Makefile

@@ -1,7 +1,6 @@
 # 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
 # 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.
 #
 # See the GNU Lesser General Public License in COPYING.LGPL for more details.
-
+#
 STARPU		?=	undefined
 EXAMPLE		?= 	undefined
 

+ 2 - 2
tools/release/README

@@ -1,6 +1,6 @@
 # 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
 # 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.
 #
 # 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.
 
 For example, if StarPU is installed in

+ 2 - 0
tools/starpu_mpi_comm_matrix.py.in

@@ -1,4 +1,6 @@
 #!/usr/bin/env python3
+# coding=utf-8
+#
 # StarPU --- Runtime system for heterogeneous multicore architectures.
 #
 # 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
+# coding=utf-8
+#
 # StarPU --- Runtime system for heterogeneous multicore architectures.
 #
 # 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">

+ 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.
 #
 # Copyright (C) 2016-2020  Université de Bordeaux, CNRS (LaBRI UMR 5800), Inria