Researcher

Ian Henriksen

Also known as Ian Daniel Henriksen, insertinterestingnamehere

Ian Henriksen works on parallel runtime software at Sandia National Laboratories, and his earlier code lives in SciPy, the Python library on which scikit-learn is built. As a mathematics master's student at Brigham Young University, he wrote SciPy's Cython API for BLAS and LAPACK; after finishing his thesis in 2015, he spent a Google Summer of Code on a Cython API for DyND, a C++ library with a NumPy-like data structure. He coauthored the 2020 SciPy 1.0 paper in Nature Methods, which notes that SciPy is used by 47% of all machine learning projects on GitHub. At the University of Texas at Austin, he worked on derivative grammars and parallel Eikonal solvers with Keshav Pingali, and on Parla, a Python library for orchestrating kernel calls and data movement across devices. His recent Sandia work includes a sender interface for the Qthreads threading library in 2025 and a 2026 study of the Chapel language on RISC-V hardware.

Timeline

  1. 2015

    A mathematics master's at BYU

    In March 2015, he is a mathematics master's student at Brigham Young University, where his research is in isogeometric analysis, finite element analysis on spline curves. He completes an MS in mathematics at BYU in 2015 with the thesis "Evaluation and Refinement of Generalized B-splines".

  2. 2015

    Cython wrappers for SciPy

    By March 2015, he has written SciPy's Cython API for BLAS and LAPACK, wrappers that SciPy adds in 2015. In July 2015, he presents "Circumventing the Linker: Using SciPy's BLAS and LAPACK within Cython" at the SciPy 2015 conference.

  3. 2015–2016

    A Cython API for DyND

    In May 2015, after finishing his master's thesis, he starts a Google Summer of Code project on a Cython API for DyND, a library that offers a NumPy-like data structure in C++. By August 2015, the work yields Cython bug fixes and restructured DyND Python bindings. In March 2016, he writes about DyND's callable objects for the Continuum Developer Blog.

  4. 2019

    Derivative grammars at OOPSLA

    At the University of Texas at Austin, he coauthors "Derivative Grammars: A Symbolic Approach to Parsing with Derivatives" with Gianfranco Bilardi and Keshav Pingali, presented at OOPSLA in Athens in October 2019. The paper builds a sequence of derivative grammars from a context-free grammar and an input string and connects the approach to the Earley parser.

  5. February 2020

    The SciPy 1.0 paper

    As one of the SciPy core developers, he coauthors "SciPy 1.0: fundamental algorithms for scientific computing in Python," published in Nature Methods in February 2020 with his affiliations at Anaconda Inc., BYU's Department of Mathematics and UT Austin's Oden Institute for Computational Engineering and Sciences. The paper notes that scikit-learn is built on SciPy and that SciPy is used by 47% of all machine learning projects on GitHub.

  6. 2021

    Parallel Eikonal solvers

    At the Oden Institute, he extends the Galois parallel graph processing library to problems in computational science, including an asynchronous parallel variant of the fast marching method. A 2021 paper with Bozhi You and Keshav Pingali applies concurrent priority scheduling to Eikonal solvers and shows good parallel performance on a problem from seismology.

  7. 2022

    The Parla Python library

    He works on Parla, a Python library that lets users orchestrate device-level kernel calls and cross-device data movement, and a central part of the new PSAAP3 center at UT Austin. His role covers solving technical problems and building consensus around project direction. In November 2022, he and 14 coauthors present "Parla: A Python Orchestration System for Heterogeneous Architectures" at SC 2022.

  8. As of October 2026

    Runtime systems at Sandia

    With Jan Ciesko and Stephen L. Olivier of Sandia National Laboratories, he presents a sender-based interface for the Qthreads user-level threading library at the ROSS 2025 workshop of SC25. In August 2026, he coauthors a study with colleagues from Los Alamos and Hewlett Packard Enterprise on porting the Chapel programming language to RISC-V hardware. He works at Sandia National Laboratories in Albuquerque, New Mexico.

Sources and credits

Photo: We have no published photo of Ian Henriksen yet. Send us a free-licensed photo.

  1. "Evaluation and Refinement of Generalized B-splines" by Ian Daniel Henriksen scholarsarchive.byu.edu. Checked 19 October 2026.
  2. [SciPy-Dev] GSOC 2015 projects python.org. Checked 19 October 2026.
  3. PyVideo.org · Ian Henriksen pyvideo.org. Checked 19 October 2026.
  4. SciPy 1.0: fundamental algorithms for scientific computing in Python | Nature Methods nature.com. Checked 19 October 2026.
  5. First Impressions And Overcoming Compilation Errors | Ian's Blog insertinterestingnamehere.github.io. Checked 19 October 2026.
  6. GSOC Concluding Thoughts | Ian's Blog insertinterestingnamehere.github.io. Checked 19 October 2026.
  7. DyND Callables: Speed and Flexibility | Ian's Blog insertinterestingnamehere.github.io. Checked 19 October 2026.
  8. Derivative Grammars: A Symbolic Approach to Parsing with Derivatives (SPLASH 2019 - OOPSLA) - SPLASH 2019 2019.splashcon.org. Checked 19 October 2026.
  9. [2103.05694] Exploiting Asynchronous Priority Scheduling in Parallel Eikonal Solvers arxiv.org. Checked 19 October 2026.
  10. Ian Henriksen | PECOS pecos.oden.utexas.edu. Checked 19 October 2026.
  11. PECOS | Web site pecos.oden.utexas.edu. Checked 19 October 2026.
  12. SC25 Proceedings: Extending the C++ Execution Control Library to Support Dynamic Parallel Runtime Systems sc25.supercomputing.org. Checked 19 October 2026.
  13. Porting and Benchmarking Chapel on Emerging RISC-V Hardware: an HPC Viability Study arxiv.org. Checked 19 October 2026.