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:20260522T150125Z
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:Victor Lomuller (Codeplay Software Ltd)\n\nThe C++ Direction G
 roup has set a future direction for C++ and includes a guidance towards He
 terogeneous C++. The introduction of the executors TS means for the first 
 time in C++ there will be a standard platform for writing applications whi
 ch can execute across a wide range of architectures including multi-core a
 nd many-core CPUs, GPUs, DSPs, and FPGAs. \n\nThe SYCL standard from the K
 hronos Group is a strong candidate to implement this upcoming C++ standard
  as are many other C++ frameworks from DOE, and HPX for the distributed ca
 se. One of SYCL's main strength is the capability to support constraint ac
 celerator systems as it only requires OpenCL 1.2. One of the core ideas of
  the standard is that everything must be standard C++, the only exception 
 being that some feature of C++ cannot be used in places that can be execut
 ed on an OpenCL device, often due to hardware limitation.\n\nThis paper pr
 esents some of the challenges and solutions to implement a Heterogeneous C
 ++ standard in clang based on our implementation of Khrono's SYCL language
  with Codeplay's ComputeCpp compiler, with the fast growth of C++ and clan
 g being a platform of choice to prototype many of the new C++ features.\n\
 nWe describe the major issues with ABI for separate compilation tool chain
  that comes from non-standard layout type of lambdas, as well as the issue
 s of data addressing that comes from non-flat and possibly non-coherent ad
 dress space. \n\nWe also describe various papers which are being proposed 
 to ISO C++ to move towards standardizing heterogeneous and distributed com
 puting in C++. The introduction of a unified interface for execution acros
 s a wide range of different hardware, extensions to this to support concur
 rent exception handling and affinity queries, and an approach to improve t
 he capability of the parallel algorithms through composability. All of thi
 s adds up to a future C++ which is much more aware of heterogeneity and ca
 pable of taking advantage of it to improve parallelism and performance.\n\
 nTag: Program Transformation, Programming Systems\n\nRegistration Category
 : Workshop Reg Pass\n\n
END:VEVENT
END:VCALENDAR
