Many-to-many mapping models for user- to kernel-level threads (or “M:N threads”) have been extensively studied for decades as a lightweight substitute for current Pthreads implementations that provide a simple one-to-one mapping (“1:1 threads”). M:N threads derive performance from their ability to allow users to context switch between threads and control their scheduling entirely in user space with no kernel involvement. This same ability, however, causes M:N threads to lose the kernel-provided ability of implicit OS preemption—threads have to explicitly yield control for other threads to be scheduled. Hence, programs over nonpreemptive M:N threads can cause core starvation, loss of prioritization, and, sometimes, deadlock unless programs are written to explicitly yield in proper places. This paper explores two techniques for M:N threads to efficiently achieve implicit preemption similar to 1:1 threads: signal-yield and KLT-switching. Overheads of these techniques, with our optimizations, can be less than 1% compared with nonpreemptive M:N threads. Our evaluation with three applications demonstrates that our preemption techniques for M:N threads improve core utilization and enhance the performance by utilizing lightweight context switching and flexible scheduling of M:N threads.
Wed 3 MarDisplayed time zone: Eastern Time (US & Canada) change
11:10 - 12:10 | Session 9. Tasks, Threads, and Fault ToleranceMain Conference Chair(s): Pascal Felber University of Neuchâtel | ||
11:10 15mTalk | Advanced Synchronization Techniques for Task-based Runtime Systems Main Conference David Álvarez Barcelona Supercomputing Center, Kevin Sala Barcelona Supercomputing Center, Marcos Maroñas Barcelona Supercomputing Center, Aleix Roca Barcelona Supercomputing Center, Vicenç Beltran Barcelona Supercomputing Center Link to publication | ||
11:25 15mTalk | An Ownership Policy and Deadlock Detector for Promises Main Conference Link to publication | ||
11:40 15mTalk | Understanding a Program's Resiliency Through Error Propagation Main Conference zhimin li , Harshitha Menon Lawrence Livermore National Laboratory, Kathryn Mohror Lawrence Livermore National Laboratory, Peer-Timo Bremer Lawrence Livermore National Laboratory, Yarden Livant University of Utah, Valerio Pascucci University of Utah Link to publication | ||
11:55 15mTalk | Lightweight Preemptive User-Level Threads Main Conference Shumpei Shiina The University of Tokyo, Shintaro Iwasaki Argonne National Laboratory, Kenjiro Taura The University of Tokyo, Pavan Balaji Argonne National Laboratory Link to publication |