Effective Extensible Programming: Unleashing Julia on GPUs
Not on the map. Why?
Abstract (arXiv)
GPUs and other accelerators are popular devices for accelerating compute-intensive, parallelizable applications. However, programming these devices is a difficult task. Writing efficient device code is challenging, and is typically done in a low-level programming language. High-level languages are rarely supported, or do not integrate with the rest of the high-level language ecosystem. To overcome this, we propose compiler infrastructure to efficiently add support for new hardware or environments to an existing programming language. We evaluate our approach by adding support for NVIDIA GPUs to the Julia programming language. By integrating with the existing compiler, we significantly lower the cost to implement and maintain the new compiler, and facilitate reuse of existing application code. Moreover, use of the high-level Julia programming language enables new and dynamic approaches for GPU programming. This greatly improves programmer productivity, while maintaining application performance similar to that of the official NVIDIA CUDA toolkit.
Key facts. Cited by 16 papers in the map (data through 7 Oct 2026). First posted on arXiv 8 Dec 2017.
Builds on
No reference list yet.
Built on by
Citing papers per year: 2021: 3; 2022: 3; 2023: 5; 2024: 3; 2025: 1; 2026: 1.
16 papers.
Sort:
By area:
- 2023Comparing Llama-2 and GPT-3 LLMs for HPC kernels generationcited by 30
- 2023Evaluation of OpenAI Codex for HPC Parallel Programming Models Kernel Generationcited by 22
- 2024Provably Scalable Black-Box Variational Inference with Structured Variational Familiescited by 4
- 2025Branching Flows: Discrete, Continuous, and Manifold Flow Matching with Splits and Deletionscited by 4
- 2023Generalizing Adam to Manifolds for Efficiently Training Transformerscited by 3
- 2023Volume-Preserving Transformers for Learning Time Series Data with Structurecited by 3
- 2021AbstractDifferentiation.jl: Backend-Agnostic Differentiable Programming in Juliacited by 2
- 2021GPU-Accelerated Forward-Backward algorithm with Application to Lattice-Free MMIcited by 2
- 2022Machines of finite depth: towards a formalization of neural networkscited by 2
- 2022Training neural network ensembles via trajectory samplingcited by 2
- 2024Dirac--Bianconi Graph Neural Networks -- Enabling Non-Diffusive Long-Range Graph Predictionscited by 1
- 2021EBIC.JL -- an Efficient Implementation of Evolutionary Biclustering Algorithm in Juliacited by 0
4 more
- 2022A High Throughput Generative Vector Autoregression Model for Stochastic Synapsescited by 0
- 2023Minibatch training of neural network ensembles via trajectory samplingcited by 0
- 2024GraphNeuralNetworks.jl: Deep Learning on Graphs with Juliacited by 0
- 2026JLIR: A Julia-Native MLIR-Inspired Intermediate Representation with Automatic JACC Kernel Extractioncited by 0
- 2026JLIR: A Julia-Native MLIR-Inspired Intermediate Representation with Automatic JACC Kernel Extraction4 Sep 2026
- 2025Branching Flows: Discrete, Continuous, and Manifold Flow Matching with Splits and Deletions12 Nov 2025
- 2024GraphNeuralNetworks.jl: Deep Learning on Graphs with Julia9 Dec 2024
- 2024Dirac--Bianconi Graph Neural Networks -- Enabling Non-Diffusive Long-Range Graph Predictions17 Jul 2024
- 2024Provably Scalable Black-Box Variational Inference with Structured Variational Families19 Jan 2024
- 2023Volume-Preserving Transformers for Learning Time Series Data with Structure18 Dec 2023
- 2023Comparing Llama-2 and GPT-3 LLMs for HPC kernels generation12 Sep 2023
- 2023Evaluation of OpenAI Codex for HPC Parallel Programming Models Kernel Generation27 Jun 2023
- 2023Minibatch training of neural network ensembles via trajectory sampling23 Jun 2023
- 2023Generalizing Adam to Manifolds for Efficiently Training Transformers26 May 2023
- 2022Training neural network ensembles via trajectory sampling22 Sep 2022
- 2022A High Throughput Generative Vector Autoregression Model for Stochastic Synapses10 May 2022
4 more
- 2022Machines of finite depth: towards a formalization of neural networks27 Apr 2022
- 2021GPU-Accelerated Forward-Backward algorithm with Application to Lattice-Free MMI22 Oct 2021
- 2021AbstractDifferentiation.jl: Backend-Agnostic Differentiable Programming in Julia25 Sep 2021
- 2021EBIC.JL -- an Efficient Implementation of Evolutionary Biclustering Algorithm in Julia3 May 2021
- 2023Comparing Llama-2 and GPT-3 LLMs for HPC kernels generationcited by 30
- 2023Evaluation of OpenAI Codex for HPC Parallel Programming Models Kernel Generationcited by 22
- 2024Provably Scalable Black-Box Variational Inference with Structured Variational Familiescited by 4
- 2023Generalizing Adam to Manifolds for Efficiently Training Transformerscited by 3
- 2023Volume-Preserving Transformers for Learning Time Series Data with Structurecited by 3
- 2021AbstractDifferentiation.jl: Backend-Agnostic Differentiable Programming in Juliacited by 2
- 2021GPU-Accelerated Forward-Backward algorithm with Application to Lattice-Free MMIcited by 2
- 2022Machines of finite depth: towards a formalization of neural networkscited by 2
- 2022Training neural network ensembles via trajectory samplingcited by 2
- 2024Dirac--Bianconi Graph Neural Networks -- Enabling Non-Diffusive Long-Range Graph Predictionscited by 1
- 2021EBIC.JL -- an Efficient Implementation of Evolutionary Biclustering Algorithm in Juliacited by 0
- 2022A High Throughput Generative Vector Autoregression Model for Stochastic Synapsescited by 0
12 most cited of 15 All 15 (JSON)
- 2026JLIR: A Julia-Native MLIR-Inspired Intermediate Representation with Automatic JACC Kernel Extraction4 Sep 2026
- 2024GraphNeuralNetworks.jl: Deep Learning on Graphs with Julia9 Dec 2024
- 2024Dirac--Bianconi Graph Neural Networks -- Enabling Non-Diffusive Long-Range Graph Predictions17 Jul 2024
- 2024Provably Scalable Black-Box Variational Inference with Structured Variational Families19 Jan 2024
- 2023Volume-Preserving Transformers for Learning Time Series Data with Structure18 Dec 2023
- 2023Comparing Llama-2 and GPT-3 LLMs for HPC kernels generation12 Sep 2023
- 2023Evaluation of OpenAI Codex for HPC Parallel Programming Models Kernel Generation27 Jun 2023
- 2023Minibatch training of neural network ensembles via trajectory sampling23 Jun 2023
- 2023Generalizing Adam to Manifolds for Efficiently Training Transformers26 May 2023
- 2022Training neural network ensembles via trajectory sampling22 Sep 2022
- 2022A High Throughput Generative Vector Autoregression Model for Stochastic Synapses10 May 2022
- 2022Machines of finite depth: towards a formalization of neural networks27 Apr 2022
12 newest of 15 All 15 (JSON)