BEGIN:VCALENDAR
VERSION:2.0
PRODID:Linklings LLC
BEGIN:VTIMEZONE
TZID:Europe/Stockholm
X-LIC-LOCATION:Europe/Stockholm
BEGIN:DAYLIGHT
TZOFFSETFROM:+0100
TZOFFSETTO:+0200
TZNAME:CEST
DTSTART:19700308T020000
RRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=-1SU
END:DAYLIGHT
BEGIN:STANDARD
TZOFFSETFROM:+0200
TZOFFSETTO:+0100
TZNAME:CET
DTSTART:19701101T020000
RRULE:FREQ=YEARLY;BYMONTH=10;BYDAY=-1SU
END:STANDARD
END:VTIMEZONE
BEGIN:VEVENT
DTSTAMP:20191206T142451Z
LOCATION:Analog 1\, 2
DTSTART;TZID=Europe/Stockholm:20180625T131700
DTEND;TZID=Europe/Stockholm:20180625T132100
UID:isc_hpc_ISC High Performance 2018_sess103_phd126@linklings.com
SUMMARY:(PhD04) Global Task Data Dependencies for PGAS Applications
DESCRIPTION:PhD Forum\n\n(PhD04) Global Task Data Dependencies for PGAS Ap
 plications\n\nSchuchart, Gracia, Resch\n\nThe poster introduces our approa
 ch towards fine-grained synchronization of tasks in applications using the
  Partitioned Global Address Space (PGAS) programming paradigm. We propose 
 to extend the concept of task data dependencies known from OpenMP v4.0 and
  later to the global address space in order to coordinate task execution o
 n a global scale. We believe that data dependencies are an elegant way to 
 express the data flow between tasks accessing globally shared memory.\n\nT
 he PGAS programming model promises an improvement in both efficiency and p
 rogrammer productivity by decoupling communication and synchronization. Ho
 wever, the implicit synchronization of traditional two-sided MPI communica
 tion has to be replaced by explicit synchronization operations to ensure c
 orrect memory access.\n\nThe DASH project provides an implementation of th
 e PGAS programming paradigm through distributed data structures with rando
 m access capabilities, e.g., single- and multi-dimensional arrays. In its 
 communication back-end, DASH uses the MPI-3 RMA interface and relies heavi
 ly on collective operations to ensure happens-before relations between dis
 tributed global memory accesses, most commonly barriers (Figure 1).\n\nDif
 ferent approaches have been proposed, ranging from hierarchical task creat
 ion and explicit synchronization using synchronization objects (futures in
  HPX, events in UPC) over the use of synchronization variables (Chapel, CA
 F) to replicated task graphs combined with affinity tags (PaRSEC DTD). In 
 contrast, we propose an implicit synchronization scheme (avoiding synchron
 ization objects) that supports distributed task creation to avoid scalabil
 ity bottlenecks.\n\nThe challenge with distributed task creation is the ab
 sence of ordering information to reliably match input and output dependenc
 ies across process boundaries. In contrast to OpenMP, we cannot rely on th
 e order in which tasks have been created but instead need to restore parti
 al ordering of tasks from additional information provided by the user. We 
 thus introduce the concept of task phases, which can be seen as a logical 
 clock for tasks and allow us to restore happens-before relations. In our m
 odel, output dependencies always refer to the current phase while input de
 pendencies refer to a matching output dependency in a previous phase.\n\nT
 he scheduler instances on different processes communicate all encountered 
 remote dependencies to the scheduler owning the referenced memory. In a de
 dicated step, all schedulers match their local tasks against the received 
 remote dependencies and resolve possible write-after-read hazards. As soon
  as all additional dependencies have been communicated, the task execution
  starts and schedulers communicate dependency releases if necessary (Figur
 e 3). \n\nFigure 4 demonstrates the use of our proposed C++ interface for 
 implementing the Blocked Cholesky Factorization. The async function create
 s a task that executes the given lambda after all specified dependencies h
 ave been satisfied, regardless of whether they refer to local or remote me
 mory. Figures 5 and 6 show the performance on both the Cray XC40 Hazel Hen
  and Oakforest PACS, a KNL-based system. These early results are encouragi
 ng and demonstrate the viability of our approach, which yields mostly comp
 arable performance to PaRSEC DTD. On Oakforest PACS, our approach potentia
 lly outperforms PaRSEC DTD due to limited scalability of its replicated ta
 sk graph.\n\nPasses: Conference Pass, Exhibition Pass, MPI, Programming Mo
 dels & Languages, Scheduling, System Software & Runtime Systems\n\nTag: Co
 nference Pass, Exhibition Pass, MPI, Programming Models & Languages, Sched
 uling, System Software & Runtime Systems
URL:https://2018.isc-program.com/presentation/?id=phd126&sess=sess103
END:VEVENT
END:VCALENDAR

