• DocumentCode
    3199193
  • Title

    Addressing Fairness in SMT Multicores with a Progress-Aware Scheduler

  • Author

    Feliu, Josue ; Sahuquillo, Julio ; Petit, Salvador ; Duato, Jose

  • Author_Institution
    Dept. of Comput. Eng. (DISCA), Univ. Politec. de Valencia, Valencia, Spain
  • fYear
    2015
  • fDate
    25-29 May 2015
  • Firstpage
    187
  • Lastpage
    196
  • Abstract
    Current SMT (simultaneous multithreading) processors co-schedule jobs on the same core, thus sharing core resources like L1 caches. In SMT multicores, threads also compete among themselves for uncore resources like the LLC (last level cache) and DRAM modules. Per process performance degradation over isolated execution mainly depends on process resource requirements and the resource contention induced by co-runners. Consequently, the running processes progress at different pace. If schedulers are not progress aware, the unpredictable execution time caused by unfairness can introduce undesirable behaviors on the system such as difficulties to keep priority-based scheduling. This work proposes a job scheduler for SMT multicores that provides fairness to the execution of multi programmed workloads. To this end, the scheduler estimates per-process standalone performance by periodically creating low-contention co-schedules. These estimates are used to compute the per process progress. Then, those processes with less progress are prioritized to enhance fairness. Experimental results on a Intel Xeon with six dual-threaded SMT cores show that the proposed scheduler reduces unfairness, on average, by 3× over Linux OS. Moreover, thanks to the tread to core allocation policy, the scheduler slightly improves throughput and turnaround time.
  • Keywords
    Linux; cache storage; multi-threading; multiprocessing systems; processor scheduling; resource allocation; DRAM modules; Intel Xeon; L1 caches; LLC; Linux OS; SMT multicores; core allocation policy; core resources sharing; dual-threaded SMT cores; execution fairness; job scheduler; jobs co-scheduling; last level cache; low-contention co-schedules; multiprogrammed workloads; per-process standalone performance; priority-based scheduling; process performance degradation; process progress; process resource requirements; progress-aware scheduler; resource contention; simultaneous multithreading processors; throughput time; turnaround time; uncore resources; Bandwidth; Benchmark testing; Degradation; Estimation; Hardware; Multicore processing; Radiation detectors; SMT; fairness; multicore; performance estimation; scheduling;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Parallel and Distributed Processing Symposium (IPDPS), 2015 IEEE International
  • Conference_Location
    Hyderabad
  • ISSN
    1530-2075
  • Type

    conf

  • DOI
    10.1109/IPDPS.2015.48
  • Filename
    7161508