Skip to main content

CUda Matrix Multiply library

Project description

cumm

CUda Matrix Multiply library.

Build Status

cumm is developed during learning of CUTLASS, which use too much c++ template and make code unmaintainable. So I develop pccm, use python as meta programming language, to replace c++ template meta programming. Now pccm become a foundational framework of cumm and my other c++ project such as spconv. cumm also contains a python asyncio-based gemm simulator that share same meta program with CUDA code, enable gemm visualization and easy debug experience.

Install

Prebuilt

We offer python 3.7-3.10 and cuda 10.2/11.1/11.3/11.4 prebuilt binaries for linux (manylinux).

We offer python 3.7-3.10 and cuda 10.2/11.1/11.3/11.4 prebuilt binaries for windows 10/11.

We will offer prebuilts for CUDA versions supported by latest pytorch release. For example, pytorch 1.9 support cuda 10.2 and 11.1, so we support them too.

pip install cumm-cu102 for CUDA 10.2

pip install cumm-cu111 for CUDA 11.1

pip install cumm-cu113 for CUDA 11.3

pip install cumm-cu114 for CUDA 11.4

Build from source

Linux

  1. install build-essential, install CUDA
  2. run export CUMM_DISABLE_JIT="1"
  3. run python setup.py install/pip install -e ./python setup.py bdist_wheel+pip install dists/xxx.whl

Windows 10/11

  1. install visual studio 2019 or newer. make sure C++ development package is installed. install CUDA
  2. set powershell script execution policy
  3. start a new powershell, run tools/msvc_setup.ps1
  4. run $Env:CUMM_DISABLE_JIT = "1"
  5. run python setup.py install/pip install -e ./python setup.py bdist_wheel+pip install dists/xxx.whl

Note

The work is done when the author is an employee at Tusimple.

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

cumm_cu113-0.2.3-cp310-cp310-win_amd64.whl (737.7 kB view details)

Uploaded CPython 3.10 Windows x86-64

cumm_cu113-0.2.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.1 MB view details)

Uploaded CPython 3.10 manylinux: glibc 2.17+ x86-64

cumm_cu113-0.2.3-cp39-cp39-win_amd64.whl (733.0 kB view details)

Uploaded CPython 3.9 Windows x86-64

cumm_cu113-0.2.3-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.1 MB view details)

Uploaded CPython 3.9 manylinux: glibc 2.17+ x86-64

cumm_cu113-0.2.3-cp38-cp38-win_amd64.whl (737.5 kB view details)

Uploaded CPython 3.8 Windows x86-64

cumm_cu113-0.2.3-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.1 MB view details)

Uploaded CPython 3.8 manylinux: glibc 2.17+ x86-64

cumm_cu113-0.2.3-cp37-cp37m-win_amd64.whl (737.3 kB view details)

Uploaded CPython 3.7m Windows x86-64

cumm_cu113-0.2.3-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.1 MB view details)

Uploaded CPython 3.7m manylinux: glibc 2.17+ x86-64

cumm_cu113-0.2.3-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.1 MB view details)

Uploaded CPython 3.6m manylinux: glibc 2.17+ x86-64

File details

Details for the file cumm_cu113-0.2.3-cp310-cp310-win_amd64.whl.

File metadata

  • Download URL: cumm_cu113-0.2.3-cp310-cp310-win_amd64.whl
  • Upload date:
  • Size: 737.7 kB
  • Tags: CPython 3.10, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.6.0 importlib_metadata/4.8.2 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.10.0

File hashes

Hashes for cumm_cu113-0.2.3-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 525183a85c5bf27d589d373bcdd8801609f56768df93fe8c6d81a254e36f56af
MD5 e48e1c019d28a8e734cf74997997bf25
BLAKE2b-256 ecc9da837ff39a54902eead777ac543e0ef7026a3bf66af3ea0ceca2aacc809a

See more details on using hashes here.

Provenance

File details

Details for the file cumm_cu113-0.2.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for cumm_cu113-0.2.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 978d4bcb0a84993a40a9aa0945b6d0d4ef14e7ae4ce1732c3d7c7f7b5e4f4471
MD5 6482fd2d22fcf496ff116281703ebc30
BLAKE2b-256 5ef7bad1e0dc6734f01f17e1b278f4e6178530ff85b0deb66610d0a3dd3aa314

See more details on using hashes here.

Provenance

File details

Details for the file cumm_cu113-0.2.3-cp39-cp39-win_amd64.whl.

File metadata

  • Download URL: cumm_cu113-0.2.3-cp39-cp39-win_amd64.whl
  • Upload date:
  • Size: 733.0 kB
  • Tags: CPython 3.9, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.6.0 importlib_metadata/4.8.2 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.7

File hashes

Hashes for cumm_cu113-0.2.3-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 039873fedbfed5046d44b5cd3db8d39fd1f2200e2c5b89a848325db9758f7516
MD5 dcdf05669c6bd227dca4715555b200fd
BLAKE2b-256 44882616ff3dd61318260fa48bcc7470305995bfb3980c895c399080e4e4d8fc

See more details on using hashes here.

Provenance

File details

Details for the file cumm_cu113-0.2.3-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for cumm_cu113-0.2.3-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 e1a3c98474195c5e8fe716ea901d9dc2d37b4cc7c592a138824b87e3a613a1a0
MD5 a1057356ce12c451a32f447922b117d5
BLAKE2b-256 845136c01d0d686413023cf16f48159f329ebae713f453bac36b6ca3480b7c0d

See more details on using hashes here.

Provenance

File details

Details for the file cumm_cu113-0.2.3-cp38-cp38-win_amd64.whl.

File metadata

  • Download URL: cumm_cu113-0.2.3-cp38-cp38-win_amd64.whl
  • Upload date:
  • Size: 737.5 kB
  • Tags: CPython 3.8, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.6.0 importlib_metadata/4.8.2 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.8.10

File hashes

Hashes for cumm_cu113-0.2.3-cp38-cp38-win_amd64.whl
Algorithm Hash digest
SHA256 760e5c43d60036a1d8975595e6be7cb94a30cd92afc0d4d17cfd73844df544ab
MD5 3ab169e4fac34203f9944f019d210cb1
BLAKE2b-256 f5cc046d9d444bb0c3b5fddc0f35c7c5415613006b75355e18af2cf9b48a6ee3

See more details on using hashes here.

Provenance

File details

Details for the file cumm_cu113-0.2.3-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for cumm_cu113-0.2.3-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 ec8fe82cfda5c19d9ffb372ef45a055dcb2c5473cb41dd9281f8d81a5947aa7c
MD5 809adaf8117478d3eb954e57747c116b
BLAKE2b-256 eeb6dd42bcefd52306e3b838b80ebda311b2c026c46b147bb8af6ab5e4255ebb

See more details on using hashes here.

Provenance

File details

Details for the file cumm_cu113-0.2.3-cp37-cp37m-win_amd64.whl.

File metadata

  • Download URL: cumm_cu113-0.2.3-cp37-cp37m-win_amd64.whl
  • Upload date:
  • Size: 737.3 kB
  • Tags: CPython 3.7m, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.6.0 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.7.9

File hashes

Hashes for cumm_cu113-0.2.3-cp37-cp37m-win_amd64.whl
Algorithm Hash digest
SHA256 b250de557ac9e86da49df052917f3d541a49b57e2170100af5d70dbbbc10fe90
MD5 8f1b12f3d395cecf27c9f9526f97db61
BLAKE2b-256 cf0be6fe033565ea47c9bd876c489864135626c17c3fa3703663315bce5f255b

See more details on using hashes here.

Provenance

File details

Details for the file cumm_cu113-0.2.3-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for cumm_cu113-0.2.3-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 a320560ec9590d894693cdcb3db5e2b137b5781c811c7ab2721ced3a7936c59d
MD5 56afba540ea281dece4983d2b5561756
BLAKE2b-256 faeae46fc26864e857f5e8932ded406190e626213313040233d99d1a9b401b58

See more details on using hashes here.

Provenance

File details

Details for the file cumm_cu113-0.2.3-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for cumm_cu113-0.2.3-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 fd5db324ed69231409196afe3ac1d93e9db9d054631cb0d04891ac43b190afab
MD5 38ea6f8fda1175bb721b3fef5bf36e90
BLAKE2b-256 c24ff24a36873956ea6fecfa36d33e06c4cdd1b003ac5c8fc30b56d4a78fce55

See more details on using hashes here.

Provenance

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