Nathalie Furmento %!s(int64=11) %!d(string=hai) anos
pai
achega
89f2cc2d1c

+ 7 - 1
examples/openmp/vector_scal_omp.c

@@ -1,6 +1,6 @@
 /* StarPU --- Runtime system for heterogeneous multicore architectures.
 /* StarPU --- Runtime system for heterogeneous multicore architectures.
  *
  *
- * Copyright (C) 2010, 2011, 2012, 2013  Centre National de la Recherche Scientifique
+ * Copyright (C) 2010, 2011, 2012, 2013, 2014  Centre National de la Recherche Scientifique
  * Copyright (C) 2010-2013  Université de Bordeaux 1
  * Copyright (C) 2010-2013  Université de Bordeaux 1
  *
  *
  * StarPU is free software; you can redistribute it and/or modify
  * StarPU is free software; you can redistribute it and/or modify
@@ -93,6 +93,7 @@ int main(int argc, char **argv)
 	conf.sched_policy_name = "pheft";
 	conf.sched_policy_name = "pheft";
 
 
 	ret = starpu_init(&conf);
 	ret = starpu_init(&conf);
+	if (ret == -ENODEV) return 77;
 	STARPU_CHECK_RETURN_VALUE(ret, "starpu_init");
 	STARPU_CHECK_RETURN_VALUE(ret, "starpu_init");
 
 
 	starpu_data_handle_t vector_handle;
 	starpu_data_handle_t vector_handle;
@@ -111,6 +112,7 @@ int main(int argc, char **argv)
 		task->cl_arg_size = sizeof(factor);
 		task->cl_arg_size = sizeof(factor);
 
 
 		ret = starpu_task_submit(task);
 		ret = starpu_task_submit(task);
+		if (ret == -ENODEV) goto enodev;
 		STARPU_CHECK_RETURN_VALUE(ret, "starpu_task_submit");
 		STARPU_CHECK_RETURN_VALUE(ret, "starpu_task_submit");
 	}
 	}
 
 
@@ -123,4 +125,8 @@ int main(int argc, char **argv)
 	FPRINTF(stderr, "AFTER: Last element is %f\n", vector[NX-1]);
 	FPRINTF(stderr, "AFTER: Last element is %f\n", vector[NX-1]);
 
 
 	return 0;
 	return 0;
+
+enodev:
+	starpu_shutdown();
+	return 77;
 }
 }

+ 5 - 0
src/datawizard/interfaces/data_interface.c

@@ -62,6 +62,11 @@ void _starpu_data_interface_shutdown()
 {
 {
 	struct handle_entry *entry, *tmp;
 	struct handle_entry *entry, *tmp;
 
 
+	if (registered_handles)
+	{
+		_STARPU_DISP("[warning] The application has not unregistered all data handles.\n");
+	}
+
 	_starpu_spin_destroy(&registered_handles_lock);
 	_starpu_spin_destroy(&registered_handles_lock);
 
 
 	HASH_ITER(hh, registered_handles, entry, tmp)
 	HASH_ITER(hh, registered_handles, entry, tmp)