Просмотр исходного кода

Merge branch 'master' of gitlab.inria.fr:starpu/starpu into fpga

Samuel Thibault лет назад: 5
Родитель
Сommit
1879050699

+ 0 - 2
include/starpu_driver.h

@@ -61,8 +61,6 @@ struct starpu_driver
 		unsigned cuda_id;
 #if defined(STARPU_USE_OPENCL) && !defined(__CUDACC__)
 		cl_device_id opencl_id;
-#else
-		unsigned opencl_id;
 #endif
 	} id;
 };

+ 1 - 5
src/core/jobs.h

@@ -52,11 +52,7 @@ struct _starpu_worker;
 /** codelet function */
 typedef void (*_starpu_cl_func_t)(void **, void *);
 
-#define _STARPU_CPU_MAY_PERFORM(j)	((j)->task->where & STARPU_CPU)
-#define _STARPU_CUDA_MAY_PERFORM(j)      ((j)->task->where & STARPU_CUDA)
-#define _STARPU_OPENCL_MAY_PERFORM(j)	((j)->task->where & STARPU_OPENCL)
-#define _STARPU_FPGA_MAY_PERFORM(j)      ((j)->task->cl->where & STARPU_FPGA)
-#define _STARPU_MIC_MAY_PERFORM(j)	((j)->task->where & STARPU_MIC)
+#define _STARPU_MAY_PERFORM(j, arch)	((j)->task->where & STARPU_##arch)
 
 struct _starpu_data_descr
 {

+ 2 - 0
src/core/workers.c

@@ -650,10 +650,12 @@ static unsigned _starpu_may_launch_driver(struct starpu_conf *conf,
 			if (d->id.cuda_id == conf->not_launched_drivers[i].id.cuda_id)
 				return 0;
 			break;
+#ifdef STARPU_USE_OPENCL
 		case STARPU_OPENCL_WORKER:
 			if (d->id.opencl_id == conf->not_launched_drivers[i].id.opencl_id)
 				return 0;
 			break;
+#endif
 		default:
 			STARPU_ABORT();
 		}

+ 1 - 1
src/drivers/cpu/driver_cpu.c

@@ -380,7 +380,7 @@ int _starpu_cpu_driver_run_once(struct _starpu_worker *cpu_worker)
 	 * job. */
 
 	/* can a cpu perform that task ? */
-	if (!_STARPU_CPU_MAY_PERFORM(j))
+	if (!_STARPU_MAY_PERFORM(j, CPU))
 	{
 		/* put it and the end of the queue ... XXX */
 		_starpu_push_task_to_workers(task);

+ 1 - 1
src/drivers/cuda/driver_cuda.c

@@ -968,7 +968,7 @@ int _starpu_cuda_driver_run_once(struct _starpu_worker_set *worker_set)
 		j = _starpu_get_job_associated_to_task(task);
 
 		/* can CUDA do that task ? */
-		if (!_STARPU_CUDA_MAY_PERFORM(j))
+		if (!_STARPU_MAY_PERFORM(j, CUDA))
 		{
 			/* this is neither a cuda or a cublas task */
 			_starpu_worker_refuse_task(worker, task);

+ 1 - 1
src/drivers/max/driver_fpga.c

@@ -303,7 +303,7 @@ int _starpu_fpga_driver_run_once(struct _starpu_worker *fpga_worker)
 	j = _starpu_get_job_associated_to_task(task);
 
 	/* can a cpu perform that task ? */
-	if (!_STARPU_FPGA_MAY_PERFORM(j))
+	if (!_STARPU_MAY_PERFORM(j, FPGA))
 	{
 		/* put it and the end of the queue ... XXX */
 		_starpu_push_task_to_workers(task);

+ 1 - 1
src/drivers/opencl/driver_opencl.c

@@ -817,7 +817,7 @@ int _starpu_opencl_driver_run_once(struct _starpu_worker *worker)
 		worker->current_task = task;
 
 	/* can OpenCL do that task ? */
-	if (!_STARPU_OPENCL_MAY_PERFORM(j))
+	if (!_STARPU_MAY_PERFORM(j, OPENCL))
 	{
 		/* this is not a OpenCL task */
 		_starpu_worker_refuse_task(worker, task);

+ 1 - 5
tools/dev/checker/rename_internal.sed

@@ -128,11 +128,7 @@ s/\bSTARPU_TRACE_WORK_STEALING\b/_STARPU_TRACE_WORK_STEALING/g
 #s/\bstarpu_data_end_reduction_mode_terminate\b/_starpu_data_end_reduction_mode_terminate/g
 #s/\bcreate_request_to_fetch_data\b/_starpu_create_request_to_fetch_data/g
 #
-#s/\bSTARPU_CPU_MAY_PERFORM\b/_STARPU_CPU_MAY_PERFORM/g
-#s/\bSTARPU_CUDA_MAY_PERFORM\b/_STARPU_CUDA_MAY_PERFORM/g
-#s/\bSTARPU_SPU_MAY_PERFORM\b/_STARPU_SPU_MAY_PERFORM/g
-#s/\bSTARPU_GORDON_MAY_PERFORM\b/_STARPU_GORDON_MAY_PERFORM/g
-#s/\bSTARPU_OPENCL_MAY_PERFORM\b/_STARPU_OPENCL_MAY_PERFORM/g
+#s/\bSTARPU_MAY_PERFORM\b/_STARPU_MAY_PERFORM/g
 #
 #s/\bSTARPU_TAG_SIZE\b/_STARPU_TAG_SIZE/g
 #s/\bSTARPU_HTBL_NODE_SIZE\b/_STARPU_HTBL_NODE_SIZE/g