Futhark Vulkan Backend

Steffen Holst Larsen
Department of Computer Science, University of Copenhagen
University of Copenhagen, 2019


   title={Futhark Vulkan Backend},

   author={Larsen, Steffen Holst},



Download Download (PDF)   View View   Source Source   Source codes Source codes



This paper describes the effort, challenges, and limitations involved in the implementation of a Futhark compiler variant using the Vulkan API version 1.1 for compiling Futhark programs targeting GPUs. Compared to the existing OpenCL backend with the same purpose, the more modern Vulkan API could offer some performance benefits and may extend the scope of supported hardware for the Futhark programming language. The Futhark Vulkan backend comes as an extension upon the Futhark compiler pipeline with no changes to the structure, implementing both a host-todevice host code backend using the Vulkan API as well as an almost complete compiler from the intermediate kernel representation to SPIR-V shaders. Though most Futhark programs compile and run correctly using the Futhark Vulkan backend, there are still bugs and limitations residing in the implementation as well as volatile performance relative to that of the Futhark OpenCL backend tending towards a slowdown. However, now that the base implementation in place, with more work put into the Futhark Vulkan backend and potentially by giving the Vulkan API more time to further mature, the Futhark Vulkan backend may prove a valid alternative to the Futhark OpenCL backend in the future.
Rating: 1.0/5. From 1 vote.
Please wait...

* * *

* * *

HGPU group © 2010-2021 hgpu.org

All rights belong to the respective authors

Contact us: