Selaa lähdekoodia

socl: check return values for starpu_pthread functions

Nathalie Furmento 8 vuotta sitten
vanhempi
commit
51362a41c3
4 muutettua tiedostoa jossa 12 lisäystä ja 12 poistoa
  1. 3 3
      socl/src/cl_enqueuendrangekernel.c
  2. 2 2
      socl/src/command.c
  3. 3 3
      socl/src/command_queue.c
  4. 4 4
      socl/src/gc.c

+ 3 - 3
socl/src/cl_enqueuendrangekernel.c

@@ -160,7 +160,7 @@ soclEnqueueNDRangeKernel(cl_command_queue cq,
 		cl_event *       event) CL_API_SUFFIX__VERSION_1_1
 {
 
-   if (kernel->split_func != NULL && !starpu_pthread_mutex_trylock(&kernel->split_lock)) {
+   if (kernel->split_func != NULL && !STARPU_PTHREAD_MUTEX_TRYLOCK(&kernel->split_lock)) {
 
       cl_event beforeEvent, afterEvent, totalEvent;
 
@@ -200,7 +200,7 @@ soclEnqueueNDRangeKernel(cl_command_queue cq,
 
          kernel->split_perfs[iter] = end-start;
 
-         starpu_pthread_mutex_unlock(&kernel->split_lock);
+         STARPU_PTHREAD_MUTEX_UNLOCK(&kernel->split_lock);
 
          event_complete(totalEvent);
 
@@ -211,7 +211,7 @@ soclEnqueueNDRangeKernel(cl_command_queue cq,
 
          RETURN_EVENT(totalEvent,event);
       } else {
-         starpu_pthread_mutex_unlock(&kernel->split_lock);
+         STARPU_PTHREAD_MUTEX_UNLOCK(&kernel->split_lock);
          soclReleaseEvent(totalEvent);
       }
 

+ 2 - 2
socl/src/command.c

@@ -45,7 +45,7 @@ static void command_release_callback(void *a) {
   cl_command_queue cq = cmd->event->cq;
   if (cq != NULL) {
     /* Lock command queue */
-    starpu_pthread_mutex_lock(&cq->mutex);
+    STARPU_PTHREAD_MUTEX_LOCK(&cq->mutex);
 
     /* Remove barrier if applicable */
     if (cq->barrier == cmd)
@@ -55,7 +55,7 @@ static void command_release_callback(void *a) {
     cq->commands = command_list_remove(cq->commands, cmd);
 
     /* Unlock command queue */
-    starpu_pthread_mutex_unlock(&cq->mutex);
+    STARPU_PTHREAD_MUTEX_UNLOCK(&cq->mutex);
   }
 
   // Events may survive to commands that created them

+ 3 - 3
socl/src/command_queue.c

@@ -1,7 +1,7 @@
 /* StarPU --- Runtime system for heterogeneous multicore architectures.
  *
  * Copyright (C) 2010-2012 University of Bordeaux
- * Copyright (C) 2012 CNRS
+ * Copyright (C) 2012, 2017 CNRS
  * Copyright (C) 2012 Vincent Danjean <Vincent.Danjean@ens-lyon.org>
  *
  * StarPU is free software; you can redistribute it and/or modify
@@ -40,7 +40,7 @@ void command_queue_enqueue_ex(cl_command_queue cq, cl_command cmd, cl_uint num_e
 	gc_entity_store(&cmd->event->cq, cq);
 
 	/* Lock command queue */
-	starpu_pthread_mutex_lock(&cq->mutex);
+	STARPU_PTHREAD_MUTEX_LOCK(&cq->mutex);
 
 	/*** Number of dependencies ***/
 	int ndeps = num_events;
@@ -105,7 +105,7 @@ void command_queue_enqueue_ex(cl_command_queue cq, cl_command cmd, cl_uint num_e
 	command_submit_ex(cmd);
 
 	/* Unlock command queue */
-	starpu_pthread_mutex_unlock(&cq->mutex);
+	STARPU_PTHREAD_MUTEX_UNLOCK(&cq->mutex);
 
 	gc_entity_release(cmd);
 }

+ 4 - 4
socl/src/gc.c

@@ -37,10 +37,10 @@ static starpu_pthread_cond_t  gc_cond = STARPU_PTHREAD_COND_INITIALIZER;
 /* Set to 1 to stop release thread execution */
 static volatile int gc_stop_required = 0;
 
-#define GC_LOCK starpu_pthread_mutex_lock(&gc_mutex)
-#define GC_UNLOCK { starpu_pthread_cond_signal(&gc_cond); \
-                    starpu_pthread_mutex_unlock(&gc_mutex);}
-#define GC_UNLOCK_NO_SIGNAL starpu_pthread_mutex_unlock(&gc_mutex)
+#define GC_LOCK STARPU_PTHREAD_MUTEX_LOCK(&gc_mutex)
+#define GC_UNLOCK { STARPU_PTHREAD_COND_SIGNAL(&gc_cond); \
+                    STARPU_PTHREAD_MUTEX_UNLOCK(&gc_mutex);}
+#define GC_UNLOCK_NO_SIGNAL STARPU_PTHREAD_MUTEX_UNLOCK(&gc_mutex)
 
 /* Thread routine */
 static void * gc_thread_routine(void *UNUSED(arg)) {