sponsored byACMIEEE The International Conference for High Performance 
Computing, Networking, Storage and Analysis
FacebookTwitterGoogle PlusLinkedInYouTubeFlickr

SCHEDULE: NOV 15-20, 2015

When viewing the Technical Program schedule, on the far righthand side is a column labeled "PLANNER." Use this planner to build your own schedule. Once you select an event and want to add it to your personal schedule, just click on the calendar icon of your choice (outlook calendar, ical calendar or google calendar) and that event will be stored there. As you select events in this manner, you will have your own schedule to guide you through the week.

Kokkos: Enabling Manycore Performance Portability for C++ Applications and Domain Specific Libraries/Languages

SESSION: Kokkos: Enabling Manycore Performance Portability for C++ Applications and Domain Specific Libraries/Languages

EVENT TYPE: Tutorials

EVENT TAG(S): Programming Systems, Accelerators, Algorithms

TIME: 1:30PM - 5:00PM

Presenter(s):H. Carter Edwards, Jeff Amelang, Christian Trott, Mark Hoemmen



The Kokkos library enables applications and domain specific libraries/libraries to implement intra-node thread scalable algorithms that are performance portable across diverse manycore architectures. Kokkos uses C++ template meta-programming, as opposed to compiler extensions or source-to-source translators, to map user code onto architecture-targeted mechanisms such as OpenMP, Pthreads, and CUDA. Kokkos’ execution mapping inserts users’ parallel code bodies into well-defined parallel patterns and then uses an architecture-appropriate scheduling to execute the computation. Kokkos’ data mapping implements polymorphic layout multidimensional arrays that are allocated in architecture-abstracted memory spaces with a layout (e.g., row-major, column-major, tiled) appropriate for that architecture. By integrating execution and data mapping into a single programming model Kokkos eliminates the contemporary array-of-structures versus structure-of-arrays dilemma from user code. Kokkos’ programming model consists of the following extensible abstractions: execution spaces where computations execute, execution policies for scheduling computations, parallel patterns, memory spaces where data is allocated, array layouts mapping multi-indices onto memory, and data access intent traits to portably map data accesses to architecture-specific mechanisms such as GPU texture cache. Tutorial participants will learn Kokkos’ programming model through lectures, hands on exercises, and presented examples.

Chair/Presenter Details:

H. Carter Edwards - Sandia National Laboratories

Jeff Amelang - Harvey Mudd College

Christian Trott - Sandia National Laboratories

Mark Hoemmen - Sandia National Laboratories

Add to iCal  Click here to download .ics calendar file

Add to Outlook  Click here to download .vcs calendar file

Add to Google Calendarss  Click here to add event to your Google Calendar