Browse Source

We don't actually need to wait for data transfers when calibrating tasks. This was a remainder of a previous global cudaThreadSynchronize which was done before we required codelets to synchronize themselves

Samuel Thibault 12 years ago
parent
commit
062440a5df
1 changed files with 0 additions and 11 deletions
  1. 0 11
      src/drivers/cuda/driver_cuda.c

+ 0 - 11
src/drivers/cuda/driver_cuda.c

@@ -260,15 +260,11 @@ static int execute_job_on_cuda(struct _starpu_job *j, struct _starpu_worker *arg
 	struct timespec codelet_start, codelet_end;
 	struct timespec codelet_start, codelet_end;
 
 
 	int profiling = starpu_profiling_status_get();
 	int profiling = starpu_profiling_status_get();
-	unsigned calibrate_model = 0;
 
 
 	STARPU_ASSERT(task);
 	STARPU_ASSERT(task);
 	struct starpu_codelet *cl = task->cl;
 	struct starpu_codelet *cl = task->cl;
 	STARPU_ASSERT(cl);
 	STARPU_ASSERT(cl);
 
 
-	if (cl->model && cl->model->benchmarking)
-		calibrate_model = 1;
-
 	ret = _starpu_fetch_task_input(j, mask);
 	ret = _starpu_fetch_task_input(j, mask);
 	if (ret != 0)
 	if (ret != 0)
 	{
 	{
@@ -278,13 +274,6 @@ static int execute_job_on_cuda(struct _starpu_job *j, struct _starpu_worker *arg
 		return -EAGAIN;
 		return -EAGAIN;
 	}
 	}
 
 
-	if (calibrate_model)
-	{
-		cures = cudaStreamSynchronize(starpu_cuda_get_local_transfer_stream());
-		if (STARPU_UNLIKELY(cures))
-			STARPU_CUDA_REPORT_ERROR(cures);
-	}
-
 	_starpu_driver_start_job(args, j, &codelet_start, 0, profiling);
 	_starpu_driver_start_job(args, j, &codelet_start, 0, profiling);
 
 
 #ifdef HAVE_CUDA_MEMCPY_PEER
 #ifdef HAVE_CUDA_MEMCPY_PEER