<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=Windows-1252">
<style type="text/css" style="display:none;"> P {margin-top:0;margin-bottom:0;} </style>
</head>
<body dir="ltr">
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);">
<br>
</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);">
<p dir="ltr" style="line-height:1.38;margin-top:0pt;margin-bottom:0pt"><span style="font-size:11pt;font-family:Arial;color:#000000">The Illinois LLVM compiler research group is excited to announce the open-source release of
</span><a href="http://hpvm.cs.illinois.edu"><span style="font-size:11pt;font-family:Arial;color:#1155cc;text-decoration:underline;text-decoration-skip-ink:none">HPVM</span></a><span style="font-size:11pt;font-family:Arial;color:#000000"> (version 1.0). HPVM
 is a retargetable compiler infrastructure that targets CPUs, GPUs, FPGAs and accelerators (this release does not include FPGA and accelerator support) [1]. HPVM uses a target-independent compiler IR that extends the LLVM 9.0.0 compiler IR with an explicit,
 hierarchical data flow representation that captures task, data, and pipelined parallelism.</span></p>
<br>
<p dir="ltr" style="line-height:1.38;margin-top:0pt;margin-bottom:0pt"><span style="font-size:11pt;font-family:Arial;color:#000000">This release is a major addition to our first release (version 0.5), adding support for linear algebra tensor operations, Pytorch
 and Keras frontends, approximations for convolution operators, and an efficient and flexible framework for approximation tuning. Our novel approximation-tuner [2] automatically selects approximation knobs for individual tensor operations and selects configurations
 that maximize a (configurable) performance objective.</span></p>
<br>
<p dir="ltr" style="line-height:1.38;margin-top:0pt;margin-bottom:0pt"><span style="font-size:11pt;font-family:Arial;color:#000000">HPVM includes backends for CPUs and NVIDIA GPUs (using cuDNN for tensor ops and OpenCL for non-tensor computations). HPVM comes
 with an easy-to-use install script that automates the process of installing and patching LLVM 9.0, and automatically installs the necessary python packages. The release includes multiple benchmarks (10 CNN benchmarks and 5 non-tensor benchmarks) as well as
 unit tests and regression tests.</span></p>
<br>
<p dir="ltr" style="line-height:1.38;margin-top:0pt;margin-bottom:0pt"><span style="font-size:11pt;font-family:Arial;color:#000000">HPVM can be downloaded from our public
</span><a href="https://gitlab.engr.illinois.edu/llvm/hpvm-release"><span style="font-size:11pt;font-family:Arial;color:#1155cc;text-decoration:underline;text-decoration-skip-ink:none">GitLab repository</span></a><span style="font-size:11pt;font-family:Arial;color:#000000">.
 Read our</span><a href="https://hpvm.readthedocs.io/en/latest/"><span style="font-size:11pt;font-family:Arial;color:#000000"> </span><span style="font-size:11pt;font-family:Arial;color:#1155cc;text-decoration:underline;text-decoration-skip-ink:none">online
 documentation</span></a><span style="font-size:11pt;font-family:Arial;color:#000000"> for how to build, install, and use HPVM. HPVM is provided under the Apache 2.0 License with LLVM Extensions (the same as used by the LLVM infrastructure). Any questions or
 suggestions can be directed to: </span><a href="mailto:hpvm-dev@lists.cs.illinois.edu"><span style="font-size:11pt;font-family:Arial;color:#1155cc;text-decoration:underline;text-decoration-skip-ink:none">hpvm-dev at lists.cs.illinois.edu</span></a><span style="font-size:11pt;font-family:Arial;color:#000000">.</span></p>
<br>
<p dir="ltr" style="line-height:1.38;margin-top:0pt;margin-bottom:0pt"><span style="font-size:11pt;font-family:Arial;color:#000000">The intended audience for HPVM includes researchers and developers interested in heterogeneous parallel computing, including
 those working in the areas of compilers, programming languages, approximate computing, software optimization, static and dynamic program analysis, autotuning, and systems for machine learning.</span></p>
<br>
<p dir="ltr" style="line-height:1.38;margin-top:0pt;margin-bottom:0pt"><span style="font-size:11pt;font-family:Arial;color:#000000">The following people led the effort in creating this release:</span></p>
<br>
<ul style="margin-top:0;margin-bottom:0;padding-inline-start:48px">
<li dir="ltr" style="font-size:11pt;font-family:Arial;color:#000000">
<p dir="ltr" style="line-height:1.38;margin-top:0pt;margin-bottom:0pt"><a href="https://www.hashimsharif.com/"><span style="color:#1155cc;text-decoration:underline;text-decoration-skip-ink:none">Hashim Sharif
</span></a><span>(hsharif3 at illinois.edu)</span></p>
</li><li dir="ltr" style="font-size:11pt;font-family:Arial;color:#000000">
<p dir="ltr" style="line-height:1.38;margin-top:0pt;margin-bottom:0pt"><a href="https://evzh.net/"><span style="color:#1155cc;text-decoration:underline;text-decoration-skip-ink:none">Yifan Zhao</span></a><span> (yifanz16 at illinois.edu)</span></p>
</li><li dir="ltr" style="font-size:11pt;font-family:Arial;color:#000000">
<p dir="ltr" style="line-height:1.38;margin-top:0pt;margin-bottom:0pt"><a href="https://www.linkedin.com/in/akash-kothari-007/"><span style="color:#1155cc;text-decoration:underline;text-decoration-skip-ink:none">Akash Kothari</span></a><span> (akashk4 at illinois.edu)</span></p>
</li><li dir="ltr" style="font-size:11pt;font-family:Arial;color:#000000">
<p dir="ltr" style="line-height:1.38;margin-top:0pt;margin-bottom:0pt"><a href="https://github.com/RafaeNoor"><span style="color:#1155cc;text-decoration:underline;text-decoration-skip-ink:none">Abdul Rafae Noor</span></a><span> (arnoor2 at illinois.edu)</span></p>
</li><li dir="ltr" style="font-size:11pt;font-family:Arial;color:#000000">
<p dir="ltr" style="line-height:1.38;margin-top:0pt;margin-bottom:0pt"><a href="https://www.linkedin.com/in/nathan-zhao-58410917a?trk=public_profile_samename_mini-profile_title"><span style="color:#1155cc;text-decoration:underline;text-decoration-skip-ink:none">Nathan
 Zhao</span></a><span> (nz11 at illinois.edu)</span></p>
</li><li dir="ltr" style="font-size:11pt;font-family:Arial;color:#000000">
<p dir="ltr" style="line-height:1.38;margin-top:0pt;margin-bottom:0pt"><span>Peter Pao-Huang (ytp2 at illinois.edu)</span></p>
</li><li dir="ltr" style="font-size:11pt;font-family:Arial;color:#000000">
<p dir="ltr" style="line-height:1.38;margin-top:0pt;margin-bottom:0pt"><span>Leon Medvinsky (leonkm2 at illinois.edu)</span></p>
</li><li dir="ltr" style="font-size:11pt;font-family:Arial;color:#000000">
<p dir="ltr" style="line-height:1.38;margin-top:0pt;margin-bottom:0pt"><span>Adel Ejjeh (aejjeh at illinois.edu)</span></p>
</li></ul>
<br>
<br>
<p dir="ltr" style="line-height:1.38;margin-top:0pt;margin-bottom:0pt"><span style="font-size:11pt;font-family:Arial;color:#000000">[1] Maria Kotsifakou, Prakalp Srivastava, Matthew D. Sinclair, Rakesh Komuravelli, Vikram Adve, and Sarita Adve. 2018.
</span><a href="https://hpvm.cs.illinois.edu/publications/"><span style="font-size:11pt;font-family:Arial;color:#1155cc;text-decoration:underline;text-decoration-skip-ink:none">HPVM: Heterogeneous Parallel Virtual Machine</span></a><span style="font-size:11pt;font-family:Arial;color:#000000">.
 In </span><span style="font-size:11pt;font-family:Arial;color:#000000;font-style:italic">Proceedings of the 23rd ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming</span><span style="font-size:11pt;font-family:Arial;color:#000000"> (PPoPP
 '18). Association for Computing Machinery, New York, NY, USA.</span></p>
<br>
<p dir="ltr" style="line-height:1.38;margin-top:0pt;margin-bottom:0pt"><span style="font-size:11pt;font-family:Arial;color:#000000">[2] Hashim Sharif, Yifan Zhao, Maria Kotsifakou, Akash Kothari, Benjamin Schreiber, Elizabeth Wang, Yasmin Sarita, Nathan Zhao,
 Keyur Joshi, Vikram Adve, Sasa Misailovic, Sarita Adve, “</span><a href="https://hpvm.cs.illinois.edu/publications/"><span style="font-size:11pt;font-family:Arial;color:#1155cc;text-decoration:underline;text-decoration-skip-ink:none">ApproxTuner: A Compiler
 and Runtime System for Adaptive Approximations</span></a><span style="font-size:11pt;font-family:Arial;color:#000000">,” In
</span><span style="font-size:11pt;font-family:Arial;color:#000000;font-style:italic">Proceedings of Principles and Practice of Parallel Programming</span><span style="font-size:11pt;font-family:Arial;color:#000000"> (PPoPP), Feb-Mar 2021, Virtual Conference,
 Seoul, South Korea.</span></p>
<br>
<p dir="ltr" style="line-height:1.38;margin-top:0pt;margin-bottom:0pt"><span style="font-size:11pt;font-family:Arial;color:#000000">Thanks,</span></p>
<p dir="ltr" style="line-height:1.38;margin-top:0pt;margin-bottom:0pt"><span style="font-size:11pt;font-family:Arial;color:#000000">Hashim Sharif</span></p>
<p dir="ltr" style="line-height:1.38;margin-top:0pt;margin-bottom:0pt"><span style="font-size:11pt;font-family:Arial;color:#000000">University of Illinois </span></p>
<br>
</div>
</body>
</html>