Hal Finkel

Hal Finkel

Lead, Compiler Technology and Programming Languages


Argonne National Laboratory
9700 S. Cass Avenue
Building 240 - Rm. 2128
Lemont, IL 60439

Hal Finkel graduated from Yale University in 2011 with a Ph.D. in theoretical physics focusing on numerical simulation of early-universe cosmology. He’s now the Lead for Compiler Technology and Programming Languages at the ALCF. Hal has contributed to the LLVM compiler infrastructure project for many years and is currently the code owner of the PowerPC backend and the pointer-aliasing-analysis subsystem, among others. He is the lead developer on the bgclang project, which provides LLVM/Clang on the IBM Blue Gene/Q supercomputer, and represents Argonne on the C++ Standards Committee. Hal also helps develop the Hardware/Hybrid Accelerated Cosmology Code (HACC), a two-time IEEE/ACM Gordon Bell Prize finalist. He has designed and implemented a tree-based force evaluation scheme and the I/O subsystem and contributed to many other HACC components.

Some of my open-source projects:

  • bgclang - LLVM/Clang for the BG/Q
  • GenericIO - GenericIO is a write-optimized library for writing self-describing scientific data files on large-scale parallel file systems (used by HACC).
  • hpcrc64 - ALCF's High-Performance CRC64 Library
  • HACCKernels - A benchmark for HACC's particle force kernels
  • memlog - This tool attempts to help you answer the question: Why is my application using so much memory?
  • trackdeps - An LD_PRELOAD module to track dependencies of an executable on its inputs