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.1.1-cp314-cp314t-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (869.1 kB view details)

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

pytart-0.1.1-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (868.7 kB view details)

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

pytart-0.1.1-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (868.4 kB view details)

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

pytart-0.1.1-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (868.3 kB view details)

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

pytart-0.1.1-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (866.2 kB view details)

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

pytart-0.1.1-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (864.8 kB view details)

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

pytart-0.1.1-cp39-cp39-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (865.5 kB view details)

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

File details

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

File metadata

File hashes

Hashes for pytart-0.1.1-cp314-cp314t-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 32ccf60ac4b58d63effe561b297f3d5a549c569e65724bad44070f82c9cf0615
MD5 f584e5f5cfb2c48c0b35c97484e53145
BLAKE2b-256 e63a9761f27f479c2f56f9c61c2adfb1d7217a047979a8513381ce1b9af797a4

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pytart-0.1.1-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 cbd5262ff9e2e5d60e7d38ab834942aa2a89dfa0e859ad28ab289d06398277af
MD5 1d5661fd1b7fa8d6b5f7757c10bba6de
BLAKE2b-256 2caf60a55206f58c86ce4a9bf5d3468b3008b49e565f5a35d2ce589de7332a15

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pytart-0.1.1-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 b9f9ddef545ba0bb61bec93cce0d909bed4d3c5cae14cb8af896883e5bfaf2d8
MD5 500883fd20b9b4ecf570ce3c0d43dec5
BLAKE2b-256 5f2bff4f663b8a3e1adb1223a5c60af3e41392cd45883c36623e44621d9da5b8

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pytart-0.1.1-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 6afe11b64b51de670a617566b14ad92a2b56cd751dc9229b46b0bfe50979f515
MD5 69ed847a618e1df44beec52d5cfd5fd4
BLAKE2b-256 30b7c26843726f415940a6cfd36ea6d767f59773a47104b548c7f195b13eb6b2

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pytart-0.1.1-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 9aa3583cb75770871bdfee9e82aed7afe6536ecbfdaf4351ace7ff9b7f2ff565
MD5 13391ba2efa24088b3bf35ed2b1730b9
BLAKE2b-256 fdcbf4814812dafda11671526063e6ec2924add32e38465cbbd2b1e6ad01b0b3

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pytart-0.1.1-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 a62cb563667d9b7399b105166913d0275b4a6302a6ed571f33a146097e8b9974
MD5 9b4b1f6e4b7a7652e04956915ded2d4a
BLAKE2b-256 e99cebd27c7c0e6a37787cd7438213f28c23be258917bc41c9c444aa68366658

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pytart-0.1.1-cp39-cp39-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 3d7a878bf1e550484a7791d09f6ed042c6e79d13c3cbb93d9b17733711fc61ba
MD5 95beb16a136b364837f08f4fff237c52
BLAKE2b-256 2c986582e0c874cca1f7e7ea1498a859c3a9e0ded38f38447c73434cc3f3303e

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