Pārlūkot izejas kodu

Fix alpha coefficient on MIC & SCC

Samuel Thibault 9 gadi atpakaļ
vecāks
revīzija
08a513257a
3 mainītis faili ar 6 papildinājumiem un 3 dzēšanām
  1. 3 1
      src/core/perfmodel/perfmodel.c
  2. 1 1
      src/core/topology.c
  3. 2 1
      src/starpu_parameters.h

+ 3 - 1
src/core/perfmodel/perfmodel.c

@@ -110,7 +110,9 @@ double starpu_worker_get_relative_speedup(struct starpu_perfmodel_arch* perf_arc
 		else if (perf_arch->devices[dev].type == STARPU_OPENCL_WORKER)
 			coef = _STARPU_OPENCL_ALPHA;
 		else if (perf_arch->devices[dev].type == STARPU_MIC_WORKER)
-			coef =  _STARPU_MIC_ALPHA;
+			coef = _STARPU_MIC_ALPHA;
+		else if (perf_arch->devices[dev].type == STARPU_SCC_WORKER)
+			coef = _STARPU_SCC_ALPHA;
 
 		speedup += coef * (perf_arch->devices[dev].ncores);
 	}

+ 1 - 1
src/core/topology.c

@@ -783,7 +783,7 @@ _starpu_init_mic_config (struct _starpu_machine_config *config,
 		config->workers[worker_idx].perf_arch.ndevices = 1;
 		config->workers[worker_idx].perf_arch.devices[0].type = STARPU_MIC_WORKER;
 		config->workers[worker_idx].perf_arch.devices[0].devid = mic_idx;
-		config->workers[worker_idx].perf_arch.devices[0].ncores = 0;
+		config->workers[worker_idx].perf_arch.devices[0].ncores = 1;
 		config->workers[worker_idx].devid = mic_idx;
 		config->workers[worker_idx].subworkerid = miccore_id;
 		config->workers[worker_idx].worker_mask = STARPU_MIC;

+ 2 - 1
src/starpu_parameters.h

@@ -25,5 +25,6 @@
 #define _STARPU_CPU_ALPHA	1.0f
 #define _STARPU_CUDA_ALPHA	13.33f
 #define _STARPU_OPENCL_ALPHA	12.22f
-#define _STARPU_MIC_ALPHA	11.11f
+#define _STARPU_MIC_ALPHA	0.5f
+#define _STARPU_SCC_ALPHA	1.0f
 #endif /* _STARPU_PARAMETERS_H */