Skip to main content

Real-time PyTorch Tensor Visualisation in CUDA, Eliminating CPU Transfer

Project description

Buy Me A Coffee Twitter Twitter PyPI version Downloads

cudacanvas

CudaCanvas: Real-time PyTorch Tensor Image Visualisation in CUDA, Eliminating CPU Transfer

CudaCanvas is a simple Python module that eliminates CPU transfer for Pytorch tensors for displaying and rendering images in the training or evaluation phase, ideal for machine learning scientists and engineers.

Simplified version that directly displays the image without explicit window creation (cudacanvas >= v1.0.1)

import torch
import cudacanvas


#REPLACE THIS with you training loop
while (True):

    #REPLACE THIS with you training code and generation of data
    noise_image = torch.rand((4, 500, 500), device="cuda")

    #Visualise your data in real-time
    cudacanvas.im_show(noise_image)

    #OPTIONAL: Terminate training when the window is closed
    if cudacanvas.should_close():
        #end process if the window is closed
        break

And with explicit window creation

import torch
import cudacanvas

noise_image = torch.rand((4, 500, 500), device="cuda")

cudacanvas.set_image(noise_image)
cudacanvas.create_window()

#replace this with you training loop
while (True):

    cudacanvas.render()

    if cudacanvas.should_close():
        #end process if the window is closed
        break

Installation

Before instllation make sure you have torch with cuda support already installed on your machine

We aligned pytorch and cuda version with our package the supporting packages are torch (2.0.1, 2.1.2 and 2.2.2) and (11.8 and 12.1)

Identify your current torch and cuda version

import torch
torch.__version__

Depending on your torch and cuda you can install the relevant cudacanvas package, for the latest 2.2.2+cu121 you can simply download the latest package

pip install cudacanvas

For other torch and cuda packages put the torch and cuda version after that cudacanvas version for example for 2.1.2+cu181 the Cudacanvas package you require is 1.0.1.post212181

pip install cudacanvas==1.0.1.post212181 --force-reinstall

Support

Also support my channel ☕ ☕ : https://www.buymeacoffee.com/outofai

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

cudacanvas-1.0.1.post201118-cp311-cp311-win_amd64.whl (99.4 kB view details)

Uploaded CPython 3.11 Windows x86-64

cudacanvas-1.0.1.post201118-cp310-cp310-win_amd64.whl (99.0 kB view details)

Uploaded CPython 3.10 Windows x86-64

cudacanvas-1.0.1.post201118-cp39-cp39-win_amd64.whl (101.6 kB view details)

Uploaded CPython 3.9 Windows x86-64

cudacanvas-1.0.1.post201118-cp38-cp38-win_amd64.whl (101.4 kB view details)

Uploaded CPython 3.8 Windows x86-64

File details

Details for the file cudacanvas-1.0.1.post201118-cp311-cp311-win_amd64.whl.

File metadata

File hashes

Hashes for cudacanvas-1.0.1.post201118-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 02068b77037ff66d0793b6ab911f32912c9e09c67a6fed8d13c76d50ae48c7df
MD5 09926bacce4cf3a97e5cde05d6c78a6e
BLAKE2b-256 f6bd3ca74459b862bc0520cb037e5546cc3f52a191d33f1417338b16d2b0c4fd

See more details on using hashes here.

File details

Details for the file cudacanvas-1.0.1.post201118-cp311-cp311-manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for cudacanvas-1.0.1.post201118-cp311-cp311-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 1350c5e6bdf5afc36174b92678ee2cf8ad6cc25b0a6cb1e19fbb6a4239535467
MD5 36184dcc5885b02924af0cbf0fd37b7d
BLAKE2b-256 d630e87ce4b04cd4041b43f356daa91ebbc38a0833eba94fba2ae35636833117

See more details on using hashes here.

File details

Details for the file cudacanvas-1.0.1.post201118-cp310-cp310-win_amd64.whl.

File metadata

File hashes

Hashes for cudacanvas-1.0.1.post201118-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 039b63cb6c93de667d20271adc556ab6f2a3832f4325278c567574c6b2ab4660
MD5 ab5dc6e2c2f73ed14a0e842140e88f1e
BLAKE2b-256 1f1181ea1c322cedb15d8992f53cccc5d22cef9f73587af9a1878d030034ff32

See more details on using hashes here.

File details

Details for the file cudacanvas-1.0.1.post201118-cp310-cp310-manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for cudacanvas-1.0.1.post201118-cp310-cp310-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 7a38782878c4f592a00673d6a76b7a9f42ec7f28021a7a0f746c5a20f362d153
MD5 e71505459c18b083d3e51f6ff9ff6db5
BLAKE2b-256 1975f8910c1a28d954301ae425ea7a872a0701a5bfda6edf8f757335c132d496

See more details on using hashes here.

File details

Details for the file cudacanvas-1.0.1.post201118-cp39-cp39-win_amd64.whl.

File metadata

File hashes

Hashes for cudacanvas-1.0.1.post201118-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 43e2eaab8b1718d7b4c2807a39380c0673ec7a3e2ea8bc91eba4a0bd244495c1
MD5 239412b552203f3e66381e46c0a24a0b
BLAKE2b-256 4380d9d8962f336912dbfcc504c14f68224876bd29ad1304594e88ff1d88cb63

See more details on using hashes here.

File details

Details for the file cudacanvas-1.0.1.post201118-cp39-cp39-manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for cudacanvas-1.0.1.post201118-cp39-cp39-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 931c017920cf9ae7faa7a407db90360fc87a7157f32f57bf39d037cebbafb48f
MD5 bea4872f711be5652f3227fc3a04cb1a
BLAKE2b-256 fa3bb94a79db99e6f0e8792cbc97d5d88159f219e74a83beb6ea8683c18238ad

See more details on using hashes here.

File details

Details for the file cudacanvas-1.0.1.post201118-cp38-cp38-win_amd64.whl.

File metadata

File hashes

Hashes for cudacanvas-1.0.1.post201118-cp38-cp38-win_amd64.whl
Algorithm Hash digest
SHA256 01cdc48d6267157413517bf0cb9db1a297c8b18fe7a87fdb86222f4db7c93c68
MD5 ee7fda2e31cbcfdad60bfb741aee1466
BLAKE2b-256 3fc786ac1e486556deb5c6730336bc3b415ce5b67af12da7443792b8ac208bee

See more details on using hashes here.

File details

Details for the file cudacanvas-1.0.1.post201118-cp38-cp38-manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for cudacanvas-1.0.1.post201118-cp38-cp38-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 0343a36cec158fc4683067cb151e08b90a55447c07fa079317da3f5ab0fb95ca
MD5 d2941e07cd73e0150bbd08ac1f285457
BLAKE2b-256 afb3210f6eb853f426e4cfdf8481536c139499b74fd3320fa4cf95942574afce

See more details on using hashes here.

Supported by

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