SEMINAR NOTICE

Lock Contention Aware Thread Scheduling for Multicore Multiprocessor Systems

Dr Kishore Kumar P, Oracle Corp. USA.

DATE & TIME : 24 February 2015, 11.00 AM

VENUE: Semianr Room, SCIS


ABSTRACT

On a cache-coherent multicore multiprocessor system, the performance of a multithreaded application with high lock contention is very sensitive to the distribution of application threads across multiple processors (or Sockets). This is because the distribution of threads impacts the frequency of lock transfers between Sockets, which in turn impacts the frequency of last-level cache (LLC) misses that lie on the critical path of execution. Since the latency of a LLC miss is high, an increase of LLC misses on the critical path increases both lock acquisition latency and critical section processing time. However, thread schedulers for operating systems, such as Solaris and Linux, are oblivious of the lock contention among multiple threads belonging to an application and therefore fail to deliver high performance for multithreaded applications. To alleviate the above problem, in this paper, we propose a scheduling framework called Shuffling, which migrates threads of a multithreaded program across processors so that threads seeking locks are more likely to find the locks on the same Socket. Shuffling reduces the time threads spend on acquiring locks and speeds up the execution of shared data accesses in the critical section, ultimately reducing the execution time of the application.

BIO

Kishore received a PhD in Computer Science from University of California, Riverside and his dissertation research focused on developing operating systems and runtime techniques to achieve high performance for emerging multithreaded applications running on multicore systems. His research interests lie primarily in the area of Systems including cloud computing, virtualization, distributed systems, storage, and machine learning. He is the author of 16 peer-reviewed conference/journal publications and 3 patents. Currently he is working as a principal software engineer at Oracle Corporation and responsible for performance and scalability of distributed storage systems and operating systems.