浏览代码

Add starpu_worker_get_type_as_short_string

Samuel Thibault 4 年之前
父节点
当前提交
a140fb0c13
共有 2 个文件被更改,包括 30 次插入10 次删除
  1. 6 1
      include/starpu_worker.h
  2. 24 9
      src/core/workers.c

+ 6 - 1
include/starpu_worker.h

@@ -313,7 +313,12 @@ unsigned starpu_worker_is_slave_somewhere(int workerid);
 /**
    Return worker \p type as a string.
 */
-char *starpu_worker_get_type_as_string(enum starpu_worker_archtype type);
+const char *starpu_worker_get_type_as_string(enum starpu_worker_archtype type);
+
+/**
+   Return worker \p type as a trivial string (CPU, CUDA, etc.)
+*/
+const char *starpu_worker_get_type_as_short_string(enum starpu_worker_archtype type);
 
 int starpu_bindid_get_workerids(int bindid, int **workerids);
 

+ 24 - 9
src/core/workers.c

@@ -2555,15 +2555,30 @@ unsigned starpu_worker_get_sched_ctx_list(int workerid, unsigned **sched_ctxs)
 	return nsched_ctxs;
 }
 
-char *starpu_worker_get_type_as_string(enum starpu_worker_archtype type)
-{
-	if (type == STARPU_CPU_WORKER) return "STARPU_CPU_WORKER";
-	if (type == STARPU_CUDA_WORKER) return "STARPU_CUDA_WORKER";
-	if (type == STARPU_OPENCL_WORKER) return "STARPU_OPENCL_WORKER";
-	if (type == STARPU_MIC_WORKER) return "STARPU_MIC_WORKER";
-        if (type == STARPU_MPI_MS_WORKER) return "STARPU_MPI_MS_WORKER";
-	if (type == STARPU_ANY_WORKER) return "STARPU_ANY_WORKER";
-	return "STARPU_unknown_WORKER";
+const char *starpu_worker_get_type_as_string(enum starpu_worker_archtype type)
+{
+	switch (type) {
+		case STARPU_CPU_WORKER: return "STARPU_CPU_WORKER";
+		case STARPU_CUDA_WORKER: return "STARPU_CUDA_WORKER";
+		case STARPU_OPENCL_WORKER: return "STARPU_OPENCL_WORKER";
+		case STARPU_MIC_WORKER: return "STARPU_MIC_WORKER";
+		case STARPU_MPI_MS_WORKER: return "STARPU_MPI_MS_WORKER";
+		case STARPU_ANY_WORKER: return "STARPU_ANY_WORKER";
+		default: return "STARPU_unknown_WORKER";
+	}
+}
+
+const char *starpu_worker_get_type_as_short_string(enum starpu_worker_archtype type)
+{
+	switch (type) {
+		case STARPU_CPU_WORKER: return "CPU";
+		case STARPU_CUDA_WORKER: return "CUDA";
+		case STARPU_OPENCL_WORKER: return "OPENCL";
+		case STARPU_MIC_WORKER: return "MIC";
+		case STARPU_MPI_MS_WORKER: return "MPI_MS";
+		case STARPU_ANY_WORKER: return "ANY";
+		default: return "STARPU_unknown_WORKER";
+	}
 }
 
 void _starpu_worker_set_stream_ctx(unsigned workerid, struct _starpu_sched_ctx *sched_ctx)