BEGIN:VCALENDAR
VERSION:2.0
PRODID:Linklings LLC
BEGIN:VTIMEZONE
TZID:America/New_York
X-LIC-LOCATION:America/New_York
BEGIN:DAYLIGHT
TZOFFSETFROM:-0500
TZOFFSETTO:-0400
TZNAME:EDT
DTSTART:19700308T020000
RRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=2SU
END:DAYLIGHT
BEGIN:STANDARD
TZOFFSETFROM:-0400
TZOFFSETTO:-0500
TZNAME:EST
DTSTART:19701101T020000
RRULE:FREQ=YEARLY;BYMONTH=11;BYDAY=1SU
END:STANDARD
END:VTIMEZONE
BEGIN:VEVENT
DTSTAMP:20210402T160552Z
LOCATION:Track 1
DTSTART;TZID=America/New_York:20201113T123000
DTEND;TZID=America/New_York:20201113T130000
UID:submissions.supercomputing.org_SC20_sess220_ws_exampi103@linklings.com
SUMMARY:Implementing Flexible Threading Support in Open MPI
DESCRIPTION:Workshop\n\nImplementing Flexible Threading Support in Open MP
 I\n\nEvans, Ciesko, Olivier, Pritchard, Iwasaki...\n\nMultithreaded MPI ap
 plications are gaining popularity in scientific and high-performance compu
 ting. While the combination of programming models is suited to support cur
 rent parallel hardware, it moves threading models and their interaction wi
 th MPI into focus. With the advent of new threading libraries, the flexibi
 lity to select threading implementations of choice is becoming an importan
 t usability feature. Open MPI has traditionally avoided componentizing its
  threading model, relying on code inlining and static initialization to mi
 nimize potential impacts on runtime fast paths and synchronization. This p
 aper describes the implementation of a generic threading runtime support i
 n Open MPI using the Opal Modular Component Architecture. This architectur
 e allows the programmer to select a threading library at compile- or run-t
 ime, providing both static initialization of threading primitives as well 
 as dynamic instantiation of threading objects. In this work, we present th
 e implementation, define required interfaces and discuss trade-offs of dyn
 amic and static initialization.\n\nRegistration Category: Workshop Reg Pas
 s
END:VEVENT
END:VCALENDAR

