Convenience utilities for running compute shaders with Vulkan.jl.
Build status | Documentation |
---|---|
Vulkan API is an extremely powerful and portable way to run code on a wide range of GPUs, unfortunately it comes with a large amount of boilerplate that the programmers need to go through before becoming productive. This package provides a small library of functions that implement a large portion of the required boilerplate.
Most importantly, there are convenience functions for:
- reasonable discovery of suitable physical devices, queue families and memory types
- easy compilation of compute shader code into working pipelines
- simplified work with specialization and push constants
The package will be extended by need when developing other projects, more functionality may appear.
VkComputeUtils.jl
was developed at the Luxembourg Centre for Systems
Biomedicine of the University of Luxembourg
(uni.lu/lcsb). The development
was supported by European Union's Horizon 2020 Programme under PerMedCoE
project (permedcoe.eu) agreement no. 951773.