Skip to main content

Hephaistos

Hephaistos is a framework for creating GPGPU appllication running on top of the Vulkan API, allowing it to run on all major OS and on a wide range of hardware such as all modern AMD, Intel and NVIDIA GPUs.

The library aims to reduce the amount of boiler plate code, albeit in doing so it might hide optimization possibility Vulkan provides.

Dependency

To ease the building process, all external dependency are stored inside the external directory. Check there for more information.

Mac OS

Mac OS does not support Vulkan on its own, but requires a translation layer called MoltenVK and can be installed for example via Homebrew:

brew install molten-vk

Since future updates to MoltenVK may enable more features without rebuilding hephaistos, it is not included in the library itself.

Install

There exist pre-built python packages on PyPI and may be easily installed via pip:

pip install hephaistos

For some rare platforms you might need to build from sources.

There are also no pre-built libraries for C++, as the API depends on the STL and thus has no stable ABI (i.e. you would need to create a build for each compiler).

Building

C++

For building the C++ library you require:

  • C++20 compatible compiler
  • CMake at least version 3.18

The dependencies are located in the external directory. In there is a readme file for more information.

The debug build requires the validation layers, which are part of the Vulkan SDK.

Hephaistos expects the kernel/shader code to be already compiled into SPIR-V bytecode, so you must likely also need an compiler for that. The most popular ones are:

See the readme inside the examples folder for a hint on how to use them.

Python

There are also python bindings using nanobind and scikit-build.

To build the python package you can simply run from the project's root directory:

pip install .

Note that the binding relies on the C++ library and thus has the same dependencies. The dependencies on the Python side are handled by pip.

Learning

There are some examples provided in the examples directory for C++ and in notebooks for Python.

License

Hephaistos is licensed under the MIT license. See LICENSE. External libraries are distributed under their own license. The ones located in external are always acompanied by a copy of their license.

Download files

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

Source Distribution

hephaistos-0.13.0.tar.gz (1.6 MB view details)

Uploaded Source

Built Distributions

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

hephaistos-0.13.0-cp314-cp314-win_amd64.whl (1.3 MB view details)

Uploaded CPython 3.14Windows x86-64

hephaistos-0.13.0-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (2.1 MB view details)

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

hephaistos-0.13.0-cp313-cp313-win_amd64.whl (1.2 MB view details)

Uploaded CPython 3.13Windows x86-64

hephaistos-0.13.0-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (2.1 MB view details)

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

hephaistos-0.13.0-cp312-cp312-win_amd64.whl (1.2 MB view details)

Uploaded CPython 3.12Windows x86-64

hephaistos-0.13.0-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (2.1 MB view details)

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

hephaistos-0.13.0-cp311-cp311-win_amd64.whl (1.2 MB view details)

Uploaded CPython 3.11Windows x86-64

hephaistos-0.13.0-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (2.1 MB view details)

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

hephaistos-0.13.0-cp310-cp310-win_amd64.whl (1.2 MB view details)

Uploaded CPython 3.10Windows x86-64

hephaistos-0.13.0-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (2.1 MB view details)

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

File details

Details for the file hephaistos-0.13.0.tar.gz.

File metadata

  • Download URL: hephaistos-0.13.0.tar.gz
  • Upload date:
  • Size: 1.6 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for hephaistos-0.13.0.tar.gz
Algorithm Hash digest
SHA256 57f29ade090ef5be8189edc85042cc2d3049c389e4e36335c13f579954dc5a4a
MD5 dda12166e3f501264c99c747488bb39c
BLAKE2b-256 662af35144c56e295eaa844a271ca831cf4c184f890efaea9ca6c1fb2808a484

See more details on using hashes here.

Provenance

The following attestation bundles were made for hephaistos-0.13.0.tar.gz:

Publisher: wheels.yml on tkerscher/hephaistos

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file hephaistos-0.13.0-cp314-cp314-win_amd64.whl.

File metadata

File hashes

Hashes for hephaistos-0.13.0-cp314-cp314-win_amd64.whl
Algorithm Hash digest
SHA256 25b69a8fe26e402b21aaca3d7954cdca844ce1541f9c0a52283ae21c8fd49a46
MD5 22fef182c84267b5d9e7cb398f41a143
BLAKE2b-256 4e36b4f8334df20422c37acc0d9b20096ffdd153db2e9ddc1379733c28dc3dd4

See more details on using hashes here.

Provenance

The following attestation bundles were made for hephaistos-0.13.0-cp314-cp314-win_amd64.whl:

Publisher: wheels.yml on tkerscher/hephaistos

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file hephaistos-0.13.0-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for hephaistos-0.13.0-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 1531855683a24474258fea318a4f12456e91ce63cb43801d3de3c73d350b91f4
MD5 9ed093e408f507ebb8a8aa678bc98ed2
BLAKE2b-256 474be583a11543375847e0438f57b34682f0901806ca798a84ce63193f32eb80

See more details on using hashes here.

Provenance

The following attestation bundles were made for hephaistos-0.13.0-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl:

Publisher: wheels.yml on tkerscher/hephaistos

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file hephaistos-0.13.0-cp313-cp313-win_amd64.whl.

File metadata

File hashes

Hashes for hephaistos-0.13.0-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 d3a8c16d384bc966e0c38694dd3315c2a8b085de928a43343d12c2f375af721a
MD5 1de79ada9c5288ea52bde0e62b8d5459
BLAKE2b-256 c7d7941833d60a09141d913d7452815722c153010b56fe787e6d8bf4341a9543

See more details on using hashes here.

Provenance

The following attestation bundles were made for hephaistos-0.13.0-cp313-cp313-win_amd64.whl:

Publisher: wheels.yml on tkerscher/hephaistos

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file hephaistos-0.13.0-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for hephaistos-0.13.0-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 f919733589dfe8ed2d60313e394caa48ca71e3485e23b5c3be9928970d1b8a8e
MD5 6696399f601a70dd91d45a8456248701
BLAKE2b-256 0f83e3f4943bc9d4adbd279028b29af594cff5a7c04e91a1b09c7a0e5ef98649

See more details on using hashes here.

Provenance

The following attestation bundles were made for hephaistos-0.13.0-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl:

Publisher: wheels.yml on tkerscher/hephaistos

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file hephaistos-0.13.0-cp312-cp312-win_amd64.whl.

File metadata

File hashes

Hashes for hephaistos-0.13.0-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 00faa9efed3e53453a78a94677f4a16f62498b413c0c2b31590aa08aa0141464
MD5 3eb581c2a437e85b74368aadbd323e5d
BLAKE2b-256 ca34f23d925be39222cfc6599bf34d96f66e8e065afa17b6d9004c19159023a4

See more details on using hashes here.

Provenance

The following attestation bundles were made for hephaistos-0.13.0-cp312-cp312-win_amd64.whl:

Publisher: wheels.yml on tkerscher/hephaistos

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file hephaistos-0.13.0-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for hephaistos-0.13.0-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 7d4d1fdf0e1f9eabcf4f40fd131aecc2173449be0aeebaf8dd93195bd48da341
MD5 81db8d759e780b656e17104f583741e4
BLAKE2b-256 b11bcdc7c46afa7d3109b5ace1da466b46fbb0a828621523f44abb218df9107c

See more details on using hashes here.

Provenance

The following attestation bundles were made for hephaistos-0.13.0-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl:

Publisher: wheels.yml on tkerscher/hephaistos

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file hephaistos-0.13.0-cp311-cp311-win_amd64.whl.

File metadata

File hashes

Hashes for hephaistos-0.13.0-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 b9988e198ee6386f7cb60afaa10815d70e365e70357a14b12a209b0a49837fea
MD5 108085caeb499ea60c0ce92eb06f74d2
BLAKE2b-256 b73f2ef66a746c406cd6a42ed9cd70b607cf9becf48e7fe092bdcb9d61deae15

See more details on using hashes here.

Provenance

The following attestation bundles were made for hephaistos-0.13.0-cp311-cp311-win_amd64.whl:

Publisher: wheels.yml on tkerscher/hephaistos

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file hephaistos-0.13.0-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for hephaistos-0.13.0-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 9fcd992e3c2b294347f186bf603e399a33b2ed6995537d6c7882aa8866874d10
MD5 eaa0c3d88b1f86b5badd5912cee5e497
BLAKE2b-256 22c854a89efad2faa28dd19ac7901e63615204ce80e48b1546c43efaa46fe5f4

See more details on using hashes here.

Provenance

The following attestation bundles were made for hephaistos-0.13.0-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl:

Publisher: wheels.yml on tkerscher/hephaistos

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file hephaistos-0.13.0-cp310-cp310-win_amd64.whl.

File metadata

File hashes

Hashes for hephaistos-0.13.0-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 a73cf5c5c04450d9f7b0a8e918d91d32028153a035d1aa4775eb539aa05021dc
MD5 e184cf93683b94c551cb262035ac446c
BLAKE2b-256 7dd608400266d188ed14a5567b6fd212c5d7d0187a2eb801f7fe97b4e01619c8

See more details on using hashes here.

Provenance

The following attestation bundles were made for hephaistos-0.13.0-cp310-cp310-win_amd64.whl:

Publisher: wheels.yml on tkerscher/hephaistos

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file hephaistos-0.13.0-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for hephaistos-0.13.0-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 9f5825a87f9d351534b0551104092bedbc2e643f14baf43ffc0d6fbc6e9633f7
MD5 35c73d3f309538c03a969dcf7d05fb02
BLAKE2b-256 d880895b75ff5b8717cb396e27daea107f6acb7585210f6c846dcfdac83831a9

See more details on using hashes here.

Provenance

The following attestation bundles were made for hephaistos-0.13.0-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl:

Publisher: wheels.yml on tkerscher/hephaistos

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Release history Release notifications | RSS feed

This release

0.13.0 This release

11 files

0.12.0

11 files

0.11.0

11 files

0.10.1

9 files

0.10.0

9 files

0.9.0

9 files

0.8.2

9 files

0.8.1

9 files

0.8.0

9 files

0.7.1

9 files

0.7.0

17 files

0.6.0

17 files

0.5.1

17 files

0.5.0

16 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page