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.1-cp310-cp310-win_amd64.whl (721.5 kB view details)

Uploaded CPython 3.10 Windows x86-64

cumm_cu113-0.2.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.0 MB view details)

Uploaded CPython 3.10 manylinux: glibc 2.17+ x86-64

cumm_cu113-0.2.1-cp39-cp39-win_amd64.whl (717.5 kB view details)

Uploaded CPython 3.9 Windows x86-64

cumm_cu113-0.2.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.0 MB view details)

Uploaded CPython 3.9 manylinux: glibc 2.17+ x86-64

cumm_cu113-0.2.1-cp38-cp38-win_amd64.whl (721.4 kB view details)

Uploaded CPython 3.8 Windows x86-64

cumm_cu113-0.2.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.0 MB view details)

Uploaded CPython 3.8 manylinux: glibc 2.17+ x86-64

cumm_cu113-0.2.1-cp37-cp37m-win_amd64.whl (721.6 kB view details)

Uploaded CPython 3.7m Windows x86-64

cumm_cu113-0.2.1-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

File details

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

File metadata

  • Download URL: cumm_cu113-0.2.1-cp310-cp310-win_amd64.whl
  • Upload date:
  • Size: 721.5 kB
  • Tags: CPython 3.10, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.5.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.10.0

File hashes

Hashes for cumm_cu113-0.2.1-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 1cd61d285e793a36a0370d3c61794bb3ba4a25df2268fe3db47f07b6512fb654
MD5 8c5cbf281a17a228ff380102fb0feaea
BLAKE2b-256 f5402832efac92d2f44223cc59bdc8326980b203fd9345693c456dccbbf617a8

See more details on using hashes here.

Provenance

File details

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

File metadata

File hashes

Hashes for cumm_cu113-0.2.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 08c6680e55e05b76d66c12324809454c8499edc69c4716583ab66faf69247a1a
MD5 c6f9c44d2721e31941046e506a6b4eed
BLAKE2b-256 57aba99abb3cd8518bd7313fe257d7559dd95de3ffb009eb9856137178a624db

See more details on using hashes here.

Provenance

File details

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

File metadata

  • Download URL: cumm_cu113-0.2.1-cp39-cp39-win_amd64.whl
  • Upload date:
  • Size: 717.5 kB
  • Tags: CPython 3.9, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.5.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.9.7

File hashes

Hashes for cumm_cu113-0.2.1-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 4e196ba104259d893b73f73c2e2b639e47cef9f0f7ac35bf139b0abefc4dba05
MD5 f047196bdba9c7dcfec14da52ea2dee0
BLAKE2b-256 3ff634f7c16d2cad9f958b52a74fa28e6b365fbd0f59e99cb3bf46a4c4acba74

See more details on using hashes here.

Provenance

File details

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

File metadata

File hashes

Hashes for cumm_cu113-0.2.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 6653ec152dc8edfd3d6dffc771da5e1fa4152d22c3f30539681d633d50b62868
MD5 8fafc2b5f4a3884dc7e09e4f95a7dd22
BLAKE2b-256 3ce108da19cb578e1edf40108a68a47324f1b38306c6f0f579bdd3dd7bc8d4c2

See more details on using hashes here.

Provenance

File details

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

File metadata

  • Download URL: cumm_cu113-0.2.1-cp38-cp38-win_amd64.whl
  • Upload date:
  • Size: 721.4 kB
  • Tags: CPython 3.8, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.5.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.8.10

File hashes

Hashes for cumm_cu113-0.2.1-cp38-cp38-win_amd64.whl
Algorithm Hash digest
SHA256 6b51fbb0cb5ecb008d527b23f23b233f5e494b09a93a1b102a7610312218ad7d
MD5 f759d8fe38d45afb81c401ceafc30927
BLAKE2b-256 31679765a36c7bc59f7c6d540cce8e90a196481d5cf018e565f35274d228262e

See more details on using hashes here.

Provenance

File details

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

File metadata

File hashes

Hashes for cumm_cu113-0.2.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 8c4b181b4a2723364a1b437e405a1134ac5ce399edddb77e757d9a41df01b206
MD5 7ebe1f28d9fb21bfcea65ab46dfafa4b
BLAKE2b-256 185628287a1a5360d654d20f85faca67f9d6d949c007c558a98bac73dad81baf

See more details on using hashes here.

Provenance

File details

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

File metadata

  • Download URL: cumm_cu113-0.2.1-cp37-cp37m-win_amd64.whl
  • Upload date:
  • Size: 721.6 kB
  • Tags: CPython 3.7m, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.5.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.1-cp37-cp37m-win_amd64.whl
Algorithm Hash digest
SHA256 dee3744e541bb393e2a07756970f8fb7baef9f36f04080c25d4f6bd1d95d6d6e
MD5 d0cf596ad5c0eba179efd5992f6bcebe
BLAKE2b-256 413ba8b69982bfd90d5fe21ad144e8e50ce204e46049753fd6d29749281cc94c

See more details on using hashes here.

Provenance

File details

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

File metadata

File hashes

Hashes for cumm_cu113-0.2.1-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 ec1786324adb4adbc630f21ed50a7128170c82274cdd0bb2da7d076a6f63633a
MD5 228b4b34d170ebdabcc51f6e75b02aee
BLAKE2b-256 2d2b8b6782cbc8cfbf4124ef276d413580d1fb09a23a81ca265d0343a7ccd089

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