瀏覽代碼

Add more missing notification that schedulers handle any priority

Samuel Thibault 7 年之前
父節點
當前提交
055c5374be

+ 6 - 0
src/sched_policies/modular_prio.c

@@ -34,6 +34,12 @@ void starpu_initialize_prio_center_policy(unsigned sched_ctx_id)
 
 
 	starpu_sched_tree_update_workers(t);
 	starpu_sched_tree_update_workers(t);
 	starpu_sched_ctx_set_policy_data(sched_ctx_id, (void*)t);
 	starpu_sched_ctx_set_policy_data(sched_ctx_id, (void*)t);
+
+	/* The application may use any integer */
+	if (starpu_sched_ctx_min_priority_is_set(sched_ctx_id) == 0)
+		starpu_sched_ctx_set_min_priority(sched_ctx_id, INT_MIN);
+	if (starpu_sched_ctx_max_priority_is_set(sched_ctx_id) == 0)
+		starpu_sched_ctx_set_max_priority(sched_ctx_id, INT_MAX);
 }
 }
 
 
 static void deinitialize_prio_center_policy(unsigned sched_ctx_id)
 static void deinitialize_prio_center_policy(unsigned sched_ctx_id)

+ 6 - 0
src/sched_policies/modular_prio_prefetching.c

@@ -48,6 +48,12 @@ static void initialize_prio_prefetching_center_policy(unsigned sched_ctx_id)
 	}
 	}
 	starpu_sched_tree_update_workers(t);
 	starpu_sched_tree_update_workers(t);
 	starpu_sched_ctx_set_policy_data(sched_ctx_id, (void*)t);
 	starpu_sched_ctx_set_policy_data(sched_ctx_id, (void*)t);
+
+	/* The application may use any integer */
+	if (starpu_sched_ctx_min_priority_is_set(sched_ctx_id) == 0)
+		starpu_sched_ctx_set_min_priority(sched_ctx_id, INT_MIN);
+	if (starpu_sched_ctx_max_priority_is_set(sched_ctx_id) == 0)
+		starpu_sched_ctx_set_max_priority(sched_ctx_id, INT_MAX);
 }
 }
 
 
 static void deinitialize_prio_prefetching_center_policy(unsigned sched_ctx_id)
 static void deinitialize_prio_prefetching_center_policy(unsigned sched_ctx_id)

+ 6 - 0
src/sched_policies/modular_random.c

@@ -80,6 +80,12 @@ static void initialize_random_prio_center_policy(unsigned sched_ctx_id)
 
 
 	starpu_sched_tree_update_workers(t);
 	starpu_sched_tree_update_workers(t);
 	starpu_sched_ctx_set_policy_data(sched_ctx_id, (void*)t);
 	starpu_sched_ctx_set_policy_data(sched_ctx_id, (void*)t);
+
+	/* The application may use any integer */
+	if (starpu_sched_ctx_min_priority_is_set(sched_ctx_id) == 0)
+		starpu_sched_ctx_set_min_priority(sched_ctx_id, INT_MIN);
+	if (starpu_sched_ctx_max_priority_is_set(sched_ctx_id) == 0)
+		starpu_sched_ctx_set_max_priority(sched_ctx_id, INT_MAX);
 }
 }
 
 
 static void deinitialize_random_prio_center_policy(unsigned sched_ctx_id)
 static void deinitialize_random_prio_center_policy(unsigned sched_ctx_id)

+ 6 - 0
src/sched_policies/modular_random_prefetching.c

@@ -105,6 +105,12 @@ static void initialize_random_prio_prefetching_center_policy(unsigned sched_ctx_
 	}
 	}
 	starpu_sched_tree_update_workers(t);
 	starpu_sched_tree_update_workers(t);
 	starpu_sched_ctx_set_policy_data(sched_ctx_id, (void*)t);
 	starpu_sched_ctx_set_policy_data(sched_ctx_id, (void*)t);
+
+	/* The application may use any integer */
+	if (starpu_sched_ctx_min_priority_is_set(sched_ctx_id) == 0)
+		starpu_sched_ctx_set_min_priority(sched_ctx_id, INT_MIN);
+	if (starpu_sched_ctx_max_priority_is_set(sched_ctx_id) == 0)
+		starpu_sched_ctx_set_max_priority(sched_ctx_id, INT_MAX);
 }
 }
 
 
 static void deinitialize_random_prio_prefetching_center_policy(unsigned sched_ctx_id)
 static void deinitialize_random_prio_prefetching_center_policy(unsigned sched_ctx_id)