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.9-cp314-cp314t-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (5.1 MB view details)

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

pytart-0.0.9-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (5.1 MB view details)

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

pytart-0.0.9-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (5.1 MB view details)

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

pytart-0.0.9-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (5.1 MB view details)

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

pytart-0.0.9-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (5.1 MB view details)

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

pytart-0.0.9-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (5.1 MB view details)

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

pytart-0.0.9-cp39-cp39-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (5.1 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.9-cp314-cp314t-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for pytart-0.0.9-cp314-cp314t-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 2fc4424da4f93c597d2ddf3a5dad9c912c28f049e0e33bb1dbdbc9e1bc53b280
MD5 9a54194371a0caaf1a8758cff191d31d
BLAKE2b-256 d0f38db2759d195b51da53862da10e9fcb555affd3142cf4120836f7ae029f6e

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pytart-0.0.9-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 e184aac935ab8d8908f5871f4c30711a8660043d5b2d08726c9a2cbb310aab61
MD5 5ffd804e2e30b2076dae7b86a951dbd9
BLAKE2b-256 8cc2d79fe95b48fbe9a4e820b248b36ac9fc413f64cadaf6d4e567a4b7afd9ed

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pytart-0.0.9-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 e18eec98316fdf887ff3040210936e3bb787c9e55061fc3427b2f0d22858874c
MD5 d28d02f780057a03bb84d235ad886810
BLAKE2b-256 8cb6764c7770791f426060267070cf1b30ffeea93bf33c8cb9d280089a91649f

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pytart-0.0.9-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 ad1e52fbb4a09f7ce7c3c865ea1eeb5d0e8643c95497b1b0ffae623a66713813
MD5 8658416d241fc806163f7e400ef7c3cc
BLAKE2b-256 926aa8c05d8ba4ca5677087ebcfeee984b01562f70a65708cb04c43dc7ef8fea

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pytart-0.0.9-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 a8401eaf033a15260b2c2eb4fbc0804385e6230a8605d823b5845051814edbf2
MD5 0d29b0f1c8c761d493a598fe24332f91
BLAKE2b-256 62035e4bef990438f2af3f3e8a21ce4c44f0145e59db15928bb2e2e52417738b

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pytart-0.0.9-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 152ee32aee38c45e64aefcccadd7c55665f0b22ccdfc6684415c0313038f9469
MD5 74fbdbc12a78e41ec7b443aed6f48d8b
BLAKE2b-256 b57d86be25367a3002beb6257635576f402a7958c13232cf82c615402ee89248

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pytart-0.0.9-cp39-cp39-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 bea3237437e46d26cd6ad414f6223861e86d74799a44e2f0ab2a6b4b5619467d
MD5 0776dd11e434f1d089f8417b2d3068eb
BLAKE2b-256 9c6beb91a792cc78f82d1ebc40231f2e9e9f8667292313614804a358f3048563

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