Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
85 commits
Select commit Hold shift + click to select a range
2fbce88
changing to faster math in CUDA code
sharhar Feb 22, 2026
d4d1e3e
Better CUDA trig support
sharhar Feb 22, 2026
dc0b2bd
Better vector wrappers in CUDA
sharhar Feb 23, 2026
dd3b48e
Proper single-precision constant floats emitted in code output
sharhar Feb 23, 2026
0e75126
Added dummy backend for headless codegen
sharhar Feb 23, 2026
058f3e7
Got dummy context working on webpage
sharhar Feb 23, 2026
2a027c8
Fixedf subgroups in CUDA
sharhar Feb 23, 2026
7e4b164
better get_src functions for shaders
sharhar Feb 23, 2026
3e23d0d
added FFT src functions
sharhar Feb 24, 2026
e6ac2a7
Made dummy context codegen-only to avoid confusion
sharhar Feb 24, 2026
40e7c93
package split
sharhar Feb 24, 2026
4515d0c
v0.0.32
sharhar Feb 24, 2026
2196768
v0.0.32 actions hotfix
sharhar Feb 24, 2026
3179d7d
removed buffer shape in UBO when not used
sharhar Feb 24, 2026
1e62ed0
UBO is now omitted when not used
sharhar Feb 24, 2026
816b0b4
Only emit uint3 when needed, not just for threadIdx access
sharhar Feb 24, 2026
4ddff5f
v0.0.34
sharhar Feb 24, 2026
10a6294
updates
sharhar Feb 24, 2026
04843de
Working on CUDA interop
sharhar Feb 24, 2026
b58761a
Working towards more dtypes
sharhar Feb 24, 2026
a801597
GLSL mixed precision works
sharhar Feb 24, 2026
d7f1367
Fixed mixed precision on CUDA
sharhar Feb 24, 2026
9f4321d
Fixed hole in dtypes
sharhar Feb 24, 2026
7425820
Adding cuda-python backend
sharhar Feb 24, 2026
fda5619
pytorch interop example
sharhar Feb 24, 2026
43c361b
Adding mixed precision ffts
sharhar Feb 24, 2026
719fb16
Mixed precision FFTs
sharhar Feb 24, 2026
0efb322
CommandGraph lifecycle bug fix
sharhar Feb 24, 2026
562d8a5
cuda-python backend passing all tests
sharhar Feb 24, 2026
2e17f06
Fixed async test for cuda-python
sharhar Feb 24, 2026
5357332
Removing PC stuff from cuda backend
sharhar Feb 24, 2026
109d08e
backend reorg
sharhar Feb 24, 2026
67545aa
renamed backend
sharhar Feb 25, 2026
dd8f058
cuda cleanup
sharhar Feb 25, 2026
ee7d005
removed numpy from codegen module
sharhar Feb 25, 2026
ffbc1de
OpenCL codegen backend
sharhar Feb 25, 2026
d65a30e
Added opencl backend
sharhar Feb 25, 2026
d383107
graph capture on cuda works
sharhar Feb 25, 2026
8378b4a
cuda code cleanup
sharhar Feb 25, 2026
b4dab4f
cuda UBO as kernel arg
sharhar Feb 25, 2026
c81d506
Fixed control flow bugs
sharhar Feb 25, 2026
7650991
atomic add implementation
sharhar Feb 25, 2026
a7cb3a7
Added mat mul in GLSL (and hopefully other backends)
sharhar Feb 25, 2026
aaf7c2b
fixed some fft stuff
sharhar Feb 25, 2026
c9115d8
fixed some more fft stuff
sharhar Feb 25, 2026
8d9d7a5
fixed more reduction stuff
sharhar Feb 25, 2026
1d2627d
Merge branch 'dev' of github.com:sharhar/vkdispatch into dev
sharhar Feb 25, 2026
6b35724
fix
sharhar Feb 26, 2026
9db9dc4
fixed things
sharhar Feb 26, 2026
3a7bf35
fixed some cuda codegen
sharhar Feb 26, 2026
d59cce3
Added basic push constant support to CUDA
sharhar Feb 26, 2026
930f2ee
Removed uneeded prints from opencl backend
sharhar Feb 26, 2026
3d079b7
OpenCL fixes
sharhar Feb 26, 2026
4c6a228
more opencl fixes
sharhar Feb 26, 2026
d23a593
reorg subgroup codegen
sharhar Feb 26, 2026
631d2d9
fixed opencl subgroups and reduction code
sharhar Feb 26, 2026
9db390d
push constants in opencl backend
sharhar Feb 26, 2026
4c49b36
more opencl stuff
sharhar Feb 26, 2026
6891d47
Added proper shader names to help with debugging
sharhar Feb 26, 2026
6b424d7
v0.0.34
sharhar Feb 27, 2026
b3b65b8
opencl updates
sharhar Feb 27, 2026
08865e1
cuda backend reorg
sharhar Feb 27, 2026
5eb6412
more cuda changes
sharhar Feb 27, 2026
0c67fda
removed underscores
sharhar Feb 27, 2026
6a11115
cuda signal rewritew
sharhar Feb 27, 2026
ae4774b
image and fft stubs rename
sharhar Feb 27, 2026
6de0e59
added handle base class
sharhar Feb 27, 2026
eb37013
more cuda reorg
sharhar Feb 27, 2026
ef50401
code reorg
sharhar Feb 27, 2026
4456fd9
more fixes
sharhar Feb 27, 2026
92beca0
fixed some reduction stuff
sharhar Feb 27, 2026
0402276
Fixed pow operator for cuda
sharhar Mar 9, 2026
fc44db9
Fixed opencl IRFFT
sharhar Mar 9, 2026
d33842f
opencl queue submit backpressure fix
sharhar Mar 9, 2026
0ab8abe
reduction fixes
sharhar Mar 9, 2026
769dda7
fixed opencl block sync
sharhar Mar 9, 2026
f5fccb9
fixed opencl math
sharhar Mar 10, 2026
1fbc4d7
fixed opencl subgroup size on mac
sharhar Mar 10, 2026
1ee162b
improved fft plan selection logic
sharhar Mar 10, 2026
d9132f6
fft stage hueristic optimizations
sharhar Mar 10, 2026
7d8fddf
fixed nvidia fft register allocation
sharhar Mar 11, 2026
a3bb362
Merge pull request #35 from sharhar/dev
sharhar Mar 12, 2026
500cf6a
fixed shader decorators so they use the shader context API
sharhar Mar 20, 2026
9ea0712
renamed shader playground
sharhar Mar 21, 2026
9d260f9
Added OpenCL codegen option in docs shader playground
sharhar Mar 21, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
44 changes: 31 additions & 13 deletions .github/workflows/python-publish.yml
Original file line number Diff line number Diff line change
Expand Up @@ -15,28 +15,30 @@ on:

jobs:

build_wheels:
name: Build wheels on ${{ matrix.os }}
build_native_wheels:
name: Build native wheels on ${{ matrix.os }}
runs-on: ${{ matrix.os }}
strategy:
matrix:
os: [ubuntu-latest, windows-latest, macos-13, macos-14]
os: [ubuntu-latest, windows-latest, macos-15-intel, macos-15]

steps:
- uses: actions/checkout@v4

# Used to host cibuildwheel
- uses: actions/setup-python@v5

- name: Install cibuildwheel
- name: Install cibuildwheel and native deps
run: |
python -m pip install --upgrade pip
python -m pip install cibuildwheel==3.2.1
python fetch_dependencies.py

- name: Build wheels
- name: Build native wheels
env:
CIBW_SKIP: 'pp* manylinux_i686 musllinux*'
VKDISPATCH_BUILD_TARGET: native
CIBW_ENVIRONMENT: VKDISPATCH_BUILD_TARGET=native
run: python -m cibuildwheel --output-dir wheelhouse

# to supply options, put them in 'env', like:
Expand All @@ -47,28 +49,44 @@ jobs:
with:
name: cibw-wheels-${{ matrix.os }}-${{ strategy.job-index }}
path: ./wheelhouse/*.whl
build_sdist:
name: Build source distribution
build_python_dists:
name: Build native/core/meta sdists and pure wheels
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4

- name: Install dependencies
- uses: actions/setup-python@v5

- name: Install build tooling
run: |
python -m pip install --upgrade pip
python -m pip install build

- name: Build native source distribution
env:
VKDISPATCH_BUILD_TARGET: native
run: |
python fetch_dependencies.py
python -m build --sdist --outdir dist

- name: Build core wheel and source distribution
env:
VKDISPATCH_BUILD_TARGET: core
run: python -m build --wheel --sdist --outdir dist

- name: Build sdist
run: pipx run build --sdist
- name: Build meta wheel and source distribution
env:
VKDISPATCH_BUILD_TARGET: meta
run: python -m build --wheel --sdist --outdir dist

- uses: actions/upload-artifact@v4
with:
name: cibw-sdist
path: dist/*.tar.gz
name: cibw-python-dists
path: dist/*
publish-to-pypi:
name: Publish Python package to PyPI
# if: startsWith(github.ref, 'refs/tags/') # only publish to PyPI on tag pushes
needs: [build_wheels, build_sdist]
needs: [build_native_wheels, build_python_dists]
runs-on: ubuntu-latest
environment:
name: pypi
Expand Down
2 changes: 0 additions & 2 deletions docs/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -27,11 +27,9 @@ bundle_lib:
@rm -rf "$(LIB_DEST)/vkdispatch"
@mkdir -p "$(LIB_DEST)"
@rm -f "$(LIB_DEST)/$(LIB_BUNDLE)"
@rm -f "$(LIB_DEST)/vkdispatch_native.brython.js"
@rm -rf "$(LIB_STAGE)"
@mkdir -p "$(LIB_STAGE)"
@cp -r ../vkdispatch "$(LIB_STAGE)/vkdispatch"
@cp -r special_pages/libs/vkdispatch_native "$(LIB_STAGE)/vkdispatch_native"
@cd "$(LIB_STAGE)" && $(PYTHON) -m brython make_package vkdispatch \
--src-dir . \
--output-path "$(CURDIR)/$(LIB_DEST)/$(LIB_BUNDLE)"
Expand Down
16 changes: 0 additions & 16 deletions docs/special/brython_shader_lab.rst

This file was deleted.

2 changes: 1 addition & 1 deletion docs/special/index.rst
Original file line number Diff line number Diff line change
Expand Up @@ -6,4 +6,4 @@ Standalone pages integrated into the docs navigation.
.. toctree::
:maxdepth: 1

brython_shader_lab
shader_playground
16 changes: 16 additions & 0 deletions docs/special/shader_playground.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
Shader Playground
==================

This page redirects to a standalone HTML app page.

.. raw:: html

<meta http-equiv="refresh" content="0; url=../shader_playground.html">
<script>
window.location.replace("../shader_playground.html");
</script>
<p>
Redirecting to the shader playground page.
If you are not redirected, open
<a href="../shader_playground.html">the standalone HTML page</a>.
</p>
Loading
Loading