BEGIN:VCALENDAR
VERSION:2.0
PRODID:Linklings LLC
BEGIN:VTIMEZONE
TZID:America/Chicago
X-LIC-LOCATION:America/Chicago
BEGIN:DAYLIGHT
TZOFFSETFROM:-0600
TZOFFSETTO:-0500
TZNAME:CDT
DTSTART:19700308T020000
RRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=2SU
END:DAYLIGHT
BEGIN:STANDARD
TZOFFSETFROM:-0500
TZOFFSETTO:-0600
TZNAME:CST
DTSTART:19701101T020000
RRULE:FREQ=YEARLY;BYMONTH=11;BYDAY=1SU
END:STANDARD
END:VTIMEZONE
BEGIN:VEVENT
DTSTAMP:20181221T160728Z
LOCATION:D175
DTSTART;TZID=America/Chicago:20181112T171400
DTEND;TZID=America/Chicago:20181112T172100
UID:submissions.supercomputing.org_SC18_sess176_pec435@linklings.com
SUMMARY:Challenges of C++ Heterogeneous Programming Using SYCL Implementat
 ion Experience: the Four Horsemen of the Apocalypse
DESCRIPTION:Workshop\nProgram Transformation, Programming Systems, Worksho
 p Reg Pass\n\nChallenges of C++ Heterogeneous Programming Using SYCL Imple
 mentation Experience: the Four Horsemen of the Apocalypse\n\nLomuller\n\nT
 he C++ Direction Group has set a future direction for C++ and includes a g
 uidance towards Heterogeneous C++. The introduction of the executors TS me
 ans for the first time in C++ there will be a standard platform for writin
 g applications which can execute across a wide range of architectures incl
 uding multi-core and many-core CPUs, GPUs, DSPs, and FPGAs. \n\nThe SYCL s
 tandard from the Khronos Group is a strong candidate to implement this upc
 oming C++ standard as are many other C++ frameworks from DOE, and HPX for 
 the distributed case. One of SYCL's main strength is the capability to sup
 port constraint accelerator systems as it only requires OpenCL 1.2. One of
  the core ideas of the standard is that everything must be standard C++, t
 he only exception being that some feature of C++ cannot be used in places 
 that can be executed on an OpenCL device, often due to hardware limitation
 .\n\nThis paper presents some of the challenges and solutions to implement
  a Heterogeneous C++ standard in clang based on our implementation of Khro
 no's SYCL language with Codeplay's ComputeCpp compiler, with the fast grow
 th of C++ and clang being a platform of choice to prototype many of the ne
 w C++ features.\n\nWe describe the major issues with ABI for separate comp
 ilation tool chain that comes from non-standard layout type of lambdas, as
  well as the issues of data addressing that comes from non-flat and possib
 ly non-coherent address space. \n\nWe also describe various papers which a
 re being proposed to ISO C++ to move towards standardizing heterogeneous a
 nd distributed computing in C++. The introduction of a unified interface f
 or execution across a wide range of different hardware, extensions to this
  to support concurrent exception handling and affinity queries, and an app
 roach to improve the capability of the parallel algorithms through composa
 bility. All of this adds up to a future C++ which is much more aware of he
 terogeneity and capable of taking advantage of it to improve parallelism a
 nd performance.
URL:https://sc18.supercomputing.org/presentation/?id=pec435&sess=sess176
END:VEVENT
END:VCALENDAR

