• DocumentCode
    1564723
  • Title

    Architectural support for enhanced SMT job scheduling

  • Author

    Settle, Alex ; Kihm, Joshua ; Janiszewski, Andrew ; Connors, Dan

  • Author_Institution
    Dept. of Electr. & Comput. Eng., Colorado Univ., Boulder, CO, USA
  • fYear
    2004
  • Firstpage
    63
  • Lastpage
    73
  • Abstract
    By converting thread-level parallelism to instruction level parallelism, simultaneous multithreaded (SMT) processors are emerging as effective ways to utilize the resources of modern superscalar architectures. However, the full potential of SMT has not yet been reached as most modern operating systems use existing single-thread or multiprocessor algorithms to schedule threads, neglecting contention for resources between threads. To date, even the best SMT scheduling algorithms simply try to group threads for co-residency based on each thread´s expected resource utilization but do not take into account variance in thread behavior. As such, we introduce architectural support that enables new thread scheduling algorithms to group threads for co-residency based on fine-grain memory system activity information. The proposed memory monitoring framework centers on the concept of a cache activity vector, which exposes runtime cache resource information to the operating system to improve job scheduling. Using this scheduling technique, we experimentally evaluate the overall performance improvement of workloads on an SMT machine compared against the most recent Linux job scheduler. This work is first motivated with experiments in a simulated environment, then validated on a hyperthreading-enabled Intel Pentium-4 Xeon microprocessor running a modified version of the latest Linux kernel.
  • Keywords
    Linux; cache storage; instruction sets; multi-threading; parallel architectures; performance evaluation; processor scheduling; resource allocation; Intel Pentium-4 Xeon microprocessor; cache activity vector; cache resource information; instruction level parallelism; memory monitoring framework; multiprocessor algorithms; simultaneous multithreaded job scheduling; superscalar architectures; thread-level parallelism; Linux; Microprocessors; Monitoring; Operating systems; Processor scheduling; Resource management; Runtime; Scheduling algorithm; Surface-mount technology; Yarn;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Parallel Architecture and Compilation Techniques, 2004. PACT 2004. Proceedings. 13th International Conference on
  • ISSN
    1089-795X
  • Print_ISBN
    0-7695-2229-7
  • Type

    conf

  • DOI
    10.1109/PACT.2004.1342542
  • Filename
    1342542