Cache-Aware Dynamic Classification and Scheduling for Linux

2019 IEEE Symposium in Low-Power and High-Speed Chips (COOL CHIPS)(2019)

引用 2|浏览17
暂无评分
摘要
Threads have varying needs for the on-chip caches during execution. The Completely Fair Scheduler (CFS) of Linux is oblivious to this and may make scheduling decisions that increase cache contention. Such contention is particularly pronounced in SMT (simultaneously multi-threaded or hyperthreaded) cores, and results in system throughput degradation. We present an extension to CFS, called CFS+, that detects and reduces cache contention based on the data collected from already-existing hardware instrumentation counters at run time, which is then used to dynamically determine and co-schedule threads that can share a physical core with lower cache contention. The extension evaluates cache access and performance metrics of running threads at scheduling points, and adjusts thread affinities to co-schedule them. CFS+ realizes an overall 4.56% improvement in system throughput for the applications studied, up to a 14.3% reduction of thread execution time at 70-80% core utilization, accompanied by a 2.4% overall energy savings.
更多
查看译文
关键词
Instruction sets,Context,Registers,Benchmark testing,Linux,Instruments,Processor scheduling
AI 理解论文
溯源树
样例
生成溯源树,研究论文发展脉络
Chat Paper
正在生成论文摘要