Skip to main content

Vulkan-based GPGPU engine

Project description

Tart

Tart is a GPGPU framework written in Vulkan. It is designed to reduce the required boilerplate for harnessing Vulkan's compute capabilities, while still not compromising in flexibility or feature set.

Building

Regardless of interface, you will need gcc, g++, python3 headers, a vulkan driver, and CMake. On Ubuntu and other Debian-based distros, these can be installed by running:

sudo apt install build-essential python3-dev 

The vulkan driver will depend on your device, but most should be accessible through mesa:

sudo apt install mesa-vulkan-drivers

For NVIDIA GPUs, driver install will depend on your GPU architecture. I do not yet have instructions for that.

Python bindings

To install the python bindings, ensure GCC and CMake are installed. Then do the following to install and run the python unit tests.:

git clone https://codeberg.org/softcookiepp/tart.git --recurse-submodules
pip install ".[test]"

C++ library

To build tart with no statically linked compilers:

mkdir build
cd build
cmake ..
make

To build tart with compilers included (currently only glslang):

mkdir build
cd build
cmake -DTART_ENABLE_SHADER_COMPILERS=1 -DCMAKE_BUILD_TYPE=Release
make

Testing

Unit tests are built along with everything else by default. Simply execute the following to run them:

./run-tests

Roadmap

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

pytart-0.0.1-cp314-cp314t-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (16.8 MB view details)

Uploaded CPython 3.14tmanylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

pytart-0.0.1-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (16.8 MB view details)

Uploaded CPython 3.14manylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

pytart-0.0.1-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (16.8 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

pytart-0.0.1-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (16.8 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

pytart-0.0.1-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (16.7 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

pytart-0.0.1-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (16.7 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

pytart-0.0.1-cp39-cp39-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (16.7 MB view details)

Uploaded CPython 3.9manylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

File details

Details for the file pytart-0.0.1-cp314-cp314t-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for pytart-0.0.1-cp314-cp314t-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 5f40683580abfe7b16dc5fc5222faaea397a21ed60e4f244ec54eb685d37fb58
MD5 6f912764dc64c329670ff6c0657fd57b
BLAKE2b-256 e0e01e32bcc7793cd8130becd77457700f74f7b2e235aa5ad6b0ef0f867a3cf8

See more details on using hashes here.

File details

Details for the file pytart-0.0.1-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for pytart-0.0.1-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 dd61179b905e46849023ab6d3fadc91b2c473bc09e5138c82f0a7246385b5a70
MD5 8f1f512594671a27d24ddf5a8841c09b
BLAKE2b-256 b0dc777673057b0e931c15bb98e19d70a417f05bc316e5abb4649567e968da50

See more details on using hashes here.

File details

Details for the file pytart-0.0.1-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for pytart-0.0.1-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 c28c85fd366bb787e99b9add7c7aec0f4375c5db20f3a10487396b6ce0389f92
MD5 b0e5b1f222e4689129e554c2d4780bdb
BLAKE2b-256 1f6138ab730897dab78f97ea32d026d93d86996d4e869158db7f0977b1f709c5

See more details on using hashes here.

File details

Details for the file pytart-0.0.1-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for pytart-0.0.1-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 fbe6100308d449ade56f5dfa3aa06630fb3dc27a4d247adc04f8da9cf6fa952d
MD5 73afeaff71be0238f540924cf9598755
BLAKE2b-256 183ad0e7dfcbd6bf0865c6a1b8b9969d2e289b6976ef1262e57ce0f8bf5ae106

See more details on using hashes here.

File details

Details for the file pytart-0.0.1-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for pytart-0.0.1-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 40e8a91d7ee16e16732ab3700d46c2cfaddc0aee9282edcdf51543ad8eb37208
MD5 3e8673233ee8751f755dad5e0060c894
BLAKE2b-256 a0da17c7ce2e1927f85191ecaa9196bd6435a51fd00939afcbebd062322156e3

See more details on using hashes here.

File details

Details for the file pytart-0.0.1-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for pytart-0.0.1-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 6f85017bfe89e512c45236f92d66eae3bdaabbe5b86ee06b4bbc66c2cdea790b
MD5 d91ce96db362a30ffdc255477a5cf3f4
BLAKE2b-256 97375c4ce6cc4446e6e7ddd75008af1322d603f635d60719a64972c0600d023f

See more details on using hashes here.

File details

Details for the file pytart-0.0.1-cp39-cp39-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for pytart-0.0.1-cp39-cp39-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 a4d52168fcaf7854563ad73583761cdf6cb2bc6eabae3e396e32f8e24c86dffc
MD5 7c3f31aca1a6ddedd3a3d6a46538a24a
BLAKE2b-256 839381ddf781c5a2f2ef4741a49aaf22adbc1a728bd7763900d68e0f8992f08c

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page