Skip to content

Convenience utilities for running compute shaders with Vulkan in Julia

License

Notifications You must be signed in to change notification settings

LCSB-BioCore/VkComputeUtils.jl

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

27 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

VkComputeUtils.jl

Convenience utilities for running compute shaders with Vulkan.jl.

Build status Documentation
CI status stable documentation dev 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.

Acknowledgements

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.

Uni.lu logo   LCSB logo   PerMedCoE logo

About

Convenience utilities for running compute shaders with Vulkan in Julia

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages