sched_ctx_hypervisor_intern.h 713 B

12345678910111213141516171819202122232425262728
  1. #include <sched_ctx_hypervisor.h>
  2. struct sched_ctx_wrapper {
  3. unsigned sched_ctx;
  4. void *config;
  5. double current_idle_time[STARPU_NMAXWORKERS];
  6. int tasks[STARPU_NMAXWORKERS];
  7. int poped_tasks[STARPU_NMAXWORKERS];
  8. };
  9. struct sched_ctx_hypervisor {
  10. struct sched_ctx_wrapper sched_ctx_w[STARPU_NMAX_SCHED_CTXS];
  11. int sched_ctxs[STARPU_NMAX_SCHED_CTXS];
  12. unsigned nsched_ctxs;
  13. unsigned resize;
  14. int min_tasks;
  15. struct hypervisor_policy policy;
  16. struct starpu_htbl32_node_s *configurations[STARPU_NMAX_SCHED_CTXS];
  17. struct starpu_htbl32_node_s *advices[STARPU_NMAX_SCHED_CTXS];
  18. };
  19. struct sched_ctx_hypervisor_advice {
  20. int workerids[STARPU_NMAXWORKERS];
  21. int nworkers;
  22. };
  23. struct sched_ctx_hypervisor hypervisor;