Forráskód Böngészése

merge from trunk : in particular -r21324

Corentin Salingue 8 éve
szülő
commit
394cf028ae

+ 8 - 1
configure.ac

@@ -1481,7 +1481,14 @@ AC_ARG_WITH(host-param)
 AC_MSG_CHECKING(maximum number of MIC devices)
 AC_ARG_ENABLE(maxmicdev, [AS_HELP_STRING([--enable-maxmicdev=<number>],
 			[maximum number of MIC devices])],
-			nmaxmicdev=$enableval, nmaxmicdev=4)
+			nmaxmicdev=$enableval,
+            [
+             if test x$enable_mic = xyes; then
+                 nmaxmicdev=4
+             else
+                 nmaxmicdev=0
+             fi
+            ])
 AC_MSG_RESULT($nmaxmicdev)
 
 AC_DEFINE_UNQUOTED(STARPU_MAXMICDEVS, [$nmaxmicdev],

+ 7 - 7
examples/cholesky/cholesky_models.c

@@ -1,7 +1,7 @@
 /* StarPU --- Runtime system for heterogeneous multicore architectures.
  *
  * Copyright (C) 2009, 2010-2011, 2015  Université de Bordeaux
- * Copyright (C) 2010, 2011, 2012, 2013, 2014, 2015  CNRS
+ * Copyright (C) 2010, 2011, 2012, 2013, 2014, 2015, 2017  CNRS
  * Copyright (C) 2011  Télécom-SudParis
  *
  * StarPU is free software; you can redistribute it and/or modify
@@ -51,7 +51,7 @@ double cpu_chol_task_11_cost(struct starpu_task *task, struct starpu_perfmodel_a
 	double cost = (((double)(n)*n*n)/1000.0f*0.894/0.79176);
 
 #ifdef STARPU_MODEL_DEBUG
-	FPRINTF(stdout, "cpu_chol_task_11_cost n %d cost %e\n", n, cost);
+	FPRINTF(stdout, "cpu_chol_task_11_cost n %u cost %e\n", n, cost);
 #endif
 
 	return PERTURBATE(cost);
@@ -66,7 +66,7 @@ double cuda_chol_task_11_cost(struct starpu_task *task, struct starpu_perfmodel_
 	double cost = (((double)(n)*n*n)/50.0f/10.75/5.088633/0.9883);
 
 #ifdef STARPU_MODEL_DEBUG
-	FPRINTF(stdout, "cuda_chol_task_11_cost n %d cost %e\n", n, cost);
+	FPRINTF(stdout, "cuda_chol_task_11_cost n %u cost %e\n", n, cost);
 #endif
 
 	return PERTURBATE(cost);
@@ -81,7 +81,7 @@ double cpu_chol_task_21_cost(struct starpu_task *task, struct starpu_perfmodel_a
 	double cost = (((double)(n)*n*n)/7706.674/0.95/0.9965);
 
 #ifdef STARPU_MODEL_DEBUG
-	FPRINTF(stdout, "cpu_chol_task_21_cost n %d cost %e\n", n, cost);
+	FPRINTF(stdout, "cpu_chol_task_21_cost n %u cost %e\n", n, cost);
 #endif
 
 	return PERTURBATE(cost);
@@ -96,7 +96,7 @@ double cuda_chol_task_21_cost(struct starpu_task *task, struct starpu_perfmodel_
 	double cost = (((double)(n)*n*n)/50.0f/10.75/87.29520);
 
 #ifdef STARPU_MODEL_DEBUG
-	FPRINTF(stdout, "cuda_chol_task_21_cost n %d cost %e\n", n, cost);
+	FPRINTF(stdout, "cuda_chol_task_21_cost n %u cost %e\n", n, cost);
 #endif
 
 	return PERTURBATE(cost);
@@ -111,7 +111,7 @@ double cpu_chol_task_22_cost(struct starpu_task *task, struct starpu_perfmodel_a
 	double cost = (((double)(n)*n*n)/50.0f/10.75/8.0760);
 
 #ifdef STARPU_MODEL_DEBUG
-	FPRINTF(stdout, "cpu_chol_task_22_cost n %d cost %e\n", n, cost);
+	FPRINTF(stdout, "cpu_chol_task_22_cost n %u cost %e\n", n, cost);
 #endif
 
 	return PERTURBATE(cost);
@@ -126,7 +126,7 @@ double cuda_chol_task_22_cost(struct starpu_task *task, struct starpu_perfmodel_
 	double cost = (((double)(n)*n*n)/50.0f/10.75/76.30666);
 
 #ifdef STARPU_MODEL_DEBUG
-	FPRINTF(stdout, "cuda_chol_task_22_cost n %d cost %e\n", n, cost);
+	FPRINTF(stdout, "cuda_chol_task_22_cost n %u cost %e\n", n, cost);
 #endif
 
 	return PERTURBATE(cost);

+ 1 - 0
mpi/tests/datatypes.c

@@ -164,6 +164,7 @@ void send_recv_and_check(int rank, int node, starpu_data_handle_t handle_s, int
 		ret = starpu_mpi_recv(handle_r, node, tag_r, MPI_COMM_WORLD, &status);
 		STARPU_CHECK_RETURN_VALUE(ret, "starpu_mpi_recv");
 
+		assert(func);
 		func(handle_s, handle_r, error);
 	}
 	else if (rank == 1)

+ 1 - 1
mpi/tests/insert_task_recv_cache.c

@@ -153,7 +153,7 @@ int main(int argc, char **argv)
 	if (rank == 1)
 	{
 		result = (comm_amount_with_cache[0] == comm_amount_without_cache[0] * 2);
-		FPRINTF_MPI(stderr, "Communication cache mechanism is %sworking (with cache: %ld) (without cache: %ld)\n", result?"":"NOT ", comm_amount_with_cache[0], comm_amount_without_cache[0]);
+		FPRINTF_MPI(stderr, "Communication cache mechanism is %sworking (with cache: %ld) (without cache: %ld)\n", result?"":"NOT ", (long)comm_amount_with_cache[0], (long)comm_amount_without_cache[0]);
 	}
 	else
 	{

+ 3 - 4
src/core/dependencies/data_arbiter_concurrency.c

@@ -542,16 +542,15 @@ void _starpu_notify_arbitered_dependencies(starpu_data_handle_t handle)
 	/* Since the request has been posted the handle may have been proceed and released */
 	if (_starpu_data_requester_list_empty(&handle->arbitered_req_list))
 	{
-#ifndef LOCK_OR_DELEGATE
-		STARPU_PTHREAD_MUTEX_UNLOCK(&arbiter->mutex);
-#endif
-
 		/* No waiter, just remove our reference */
 		_starpu_spin_lock(&handle->header_lock);
 		STARPU_ASSERT(handle->refcnt > 0);
 		handle->refcnt--;
 		STARPU_ASSERT(handle->busy_count > 0);
 		handle->busy_count--;
+#ifndef LOCK_OR_DELEGATE
+		STARPU_PTHREAD_MUTEX_UNLOCK(&arbiter->mutex);
+#endif
 		if (_starpu_data_check_not_busy(handle))
 			/* Handle was even destroyed, don't unlock it.  */
 			return;

+ 0 - 1
src/core/sched_ctx_list.c

@@ -141,7 +141,6 @@ void _starpu_sched_ctx_elt_remove(struct _starpu_sched_ctx_list *list,
 		list->head = elt->next;
 
 	free(elt);
-	elt = NULL;
 	return;
 }
 

+ 1 - 1
tests/datawizard/locality.sh

@@ -22,7 +22,7 @@ set -e
 
 PREFIX=$(dirname $0)
 test -x $PREFIX/../../tools/starpu_fxt_tool || exit 77
-STARPU_FXT_PREFIX=$PREFIX/ $PREFIX/locality
+STARPU_SCHED=modular-eager STARPU_FXT_PREFIX=$PREFIX/ $PREFIX/locality
 $PREFIX/../../tools/starpu_fxt_tool -i $PREFIX/prof_file_${USER}_0
 
 # Check that they are approved by Grenoble :)

+ 2 - 2
tests/datawizard/reclaim.c

@@ -116,7 +116,7 @@ int main(int argc, char **argv)
 		mb = 1;
 #endif
 
-	FPRINTF(stderr, "Allocate %d buffers of size %d and create %u tasks\n", mb, BLOCK_SIZE, ntasks);
+	FPRINTF(stderr, "Allocate %u buffers of size %d and create %u tasks\n", mb, BLOCK_SIZE, ntasks);
 
 	float **host_ptr_array;
 	starpu_data_handle_t *handle_array;
@@ -133,7 +133,7 @@ int main(int argc, char **argv)
 		if (host_ptr_array[j] == NULL)
 		{
 			mb = j;
-			FPRINTF(stderr, "Cannot allocate more than %d buffers\n", mb);
+			FPRINTF(stderr, "Cannot allocate more than %u buffers\n", mb);
 			break;
 		}
 		starpu_variable_data_register(&handle_array[j], STARPU_MAIN_RAM, (uintptr_t)host_ptr_array[j], BLOCK_SIZE);