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:20260522T150116Z
LOCATION:D171/173
DTSTART;TZID=America/Chicago:20181116T104500
DTEND;TZID=America/Chicago:20181116T110000
UID:submissions.supercomputing.org_SC18_sess145_ws_p3hpc110@linklings.com
SUMMARY:Performance Portability Challenges for Fortran Applications
DESCRIPTION:Abigail Hsu (Stony Brook University, Los Alamos National Labor
 atory); David Howard Neill (Grinnell College, Los Alamos National Laborato
 ry); Joseph Schoonover (Fluid Numerics LLC); and Zach Jibben, Neil Carlson
 , and Robert Robey (Los Alamos National Laboratory)\n\nThis project invest
 igates how different approaches to parallel optimization impact the perfor
 mance portability for Fortran codes. In addition, we explore the productiv
 ity challenges due to the software tool-chain limitations unique to Fortra
 n. For this study, we build upon the Truchas software, a metal casting man
 ufacturing simulation code based on unstructured mesh methods and our init
 ial efforts for accelerating two key routines, the gradient and mimetic fi
 nite difference calculations. The acceleration methods include OpenMP, for
  CPU multi-threading and GPU offloading, and CUDA for GPU offloading. Thro
 ugh this study, we find that the best optimization approach is dependent o
 n the priorities of performance versus effort and the architectures that a
 re targeted. CUDA is the most attractive where performance is the main pri
 ority, whereas the OpenMP on CPU and GPU approaches are preferable when em
 phasizing productivity. Furthermore, OpenMP for the CPU is the most portab
 le across architectures. OpenMP for CPU multi-threading yields 3%-5% of ac
 hievable performance, whereas the GPU offloading generally results in roug
 hly 74%-90% of achievable performance. However, GPU offloading with OpenMP
  4.5 results in roughly 5% peak performance for the mimetic finite differe
 nce algorithm, suggesting further serial code optimization to tune this ke
 rnel. In general, these results imply low performance portability, below 1
 0% as estimated by the Pennycook metric. Though these specific results are
  particular to this application, we argue that this is typical of many cur
 rent scientific HPC applications and highlights the hurdles we will need t
 o overcome on the path to exascale.\n\nTag: Heterogeneous Systems, Perform
 ance\n\nRegistration Category: Workshop Reg Pass\n\nSession Chair: Rob Nee
 ly (Lawrence Livermore National Laboratory)\n\n
END:VEVENT
END:VCALENDAR
