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:20260522T150119Z
LOCATION:D175
DTSTART;TZID=America/Chicago:20181112T120000
DTEND;TZID=America/Chicago:20181112T123000
UID:submissions.supercomputing.org_SC18_sess176_ws_llvmf106@linklings.com
SUMMARY:LLVM and the Automatic Vectorization of Loops Invoking Math Routin
 es: -fsimdmath
DESCRIPTION:Francesco Petrogalli and Paul Walker (ARM Ltd)\n\nThe vectoriz
 ation of loops invoking math function is an important optimization that is
  available in most commercial compilers. This paper describes a new comman
 d line option, -fsimdmath, available in Arm Compiler for HPC, that enables
  auto-vectorization of math functions in C and C++ code, and that will als
 o be applicable to Fortran code in a future version.\n\nThe design of -fsi
 mdath is based on open standards and public architectural specifications. 
 The library that provides the vector implementation of the math routines, 
 libsimdmath.so, is shipped with the compiler and based on the SLEEF librar
 y libsleefgnuabi.so. SLEEF is a project that aims to provide a vector impl
 ementation of all C99 math functions, for a wide variety of vector extensi
 ons and architectures, across multiple platforms.\n\nThis feature is very 
 important for HPC programmers, because the vector units of new CPUs are ge
 tting wider. Whether you are targeting Intel architectures with the AVX512
  vector extension, or Arm architectures with the Scalable Vector Extension
 , good quality auto-vectorization is of increasing importance.\n\nAlthough
  -fsimdmath has been implemented in a commercial compiler, it has been des
 igned with portability and compatibility in mind, so that its use is not l
 imited only to the vector extensions of the Arm architectures, but can be 
 easily introduced as a major optimization for all the vector extensions th
 at LLVM supports.\n\nIf accepted upstream, this new feature will enlarge t
 he set of loops that LLVM will be able to auto-vectorize.\n\nTag: Program 
 Transformation, Programming Systems\n\nRegistration Category: Workshop Reg
  Pass\n\n
END:VEVENT
END:VCALENDAR
