Skip to content

Comments

New Recipe: VkDCT v1.3.4#13049

Open
liuyxpp wants to merge 14 commits intoJuliaPackaging:masterfrom
liuyxpp:add-vkdct
Open

New Recipe: VkDCT v1.3.4#13049
liuyxpp wants to merge 14 commits intoJuliaPackaging:masterfrom
liuyxpp:add-vkdct

Conversation

@liuyxpp
Copy link

@liuyxpp liuyxpp commented Feb 2, 2026

This PR adds a new recipe for VkDCT, a C++ shim library that wraps VkFFT to expose high-performance 3D DCT-I transforms for CUDA backends.

This library is a binary dependency for AcceleratedDCTs.jl. It enables users to perform GPU-accelerated Discrete Cosine Transforms without requiring a manual CUDA compilation step.

@liuyxpp liuyxpp changed the title New Recipe: VkDCT v0.1.0 New Recipe: VkDCT v1.3.4 Feb 2, 2026
@ViralBShah
Copy link
Member

It would be better to have the patches in the standard way rather than in the build_tarballs.jl.

@liuyxpp
Copy link
Author

liuyxpp commented Feb 18, 2026

the standard way

Sorry, but I am not quite familiar with BinaryBuilder. May I ask what is the "standard way"? Where can I find the source to learn about it? Thanks!

@ViralBShah
Copy link
Member

ViralBShah commented Feb 18, 2026

If you look inside the Yggdrasil repo, you will see that patches are in bundled/patches. As an example see the D/DecFP recipe.

- Extract inline sed patch to bundled/patches/fix_log2_ambiguity.patch
- Extract heredoc dct_shim.cu to bundled/dct_shim.cu
- Use DirectorySource and atomic_patch following Yggdrasil conventions
@liuyxpp
Copy link
Author

liuyxpp commented Feb 19, 2026

Done.

@ViralBShah
Copy link
Member

I just noticed this is a GPU package. Take a look at S/SuiteSparse/SuiteSparse_GPU@7 to see how the GPU libraries need to be built.

You need newer GCC, and an agumented platform block. It would be good to build the JLLs locally and test them.

You can git grep in the repo for CUDA.augment to see how recipes build for GPUs.

@liuyxpp
Copy link
Author

liuyxpp commented Feb 22, 2026

Done. Thanks for pointing the idiomatic way.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants