While I was working on something else, I stumbled across a PR in Trilinos that referenced a problem in how Kokkos Kernels handles cuSPARSE.
The basic problem is that the cuSPARSE version does not necessarily match the CUDA release version. This means that the cuSPARSE API sometimes changes on a patch release of CUDA. Furthermore, the cuSPARSE release that comes with each CUDA release is not documented anywhere, as far as I can tell. In Kokkos Kernels, we were using the CUDA release version to detect whether certain cuSPARSE APIs were available, which is wrong, and we were also setting the wrong release threshold.
I made two PRs to fix the problem for cusparseSpMV and cusparseSpMM functions.
For future reference, here are the cuSPARSE versions that correspond to each CUDA release:
CUDA Release | cuSPARSE | cuBLAS | cuSOLVER | cuFFT |
---|---|---|---|---|
12.4.1 | 12.3.1.170 | 12.4.5.8 | 11.6.1.9 | 11.2.1.3 |
12.3.2 | 12.2.0.103 | 12.3.4.1 | 11.5.4.101 | 11.0.12.1 |
12.3.1 | 12.2.0.103 | 12.3.4.1 | 11.5.4.101 | 11.0.12.1 |
12.3.0 | 12.1.3.153 | 12.3.2.9 | 11.5.3.52 | 11.0.11.19 |
12.2.2 | 12.1.2.141 | 12.2.5.6 | 11.5.2.141 | 11.0.8.103 |
12.2.1 | 12.1.2.129 | 12.2.4.5 | 11.5.1.129 | 11.0.8.91 |
12.2.0 | 12.1.1.53 | 12.2.1.16 | 11.5.0.53 | 11.0.8.15 |
12.1.1 | 12.1.0.106 | 12.1.3.1 | 11.4.5.107 | 11.0.2.54 |
12.1.0 | 12.0.2.55 | 12.1.0.26 | 11.4.4.55 | 11.0.2.4 |
12.0.1 | 12.0.1.140 | 12.0.2.224 | 11.4.3.1 | 11.0.1.95 |
12.0.0 | 12.0.0.76 | 12.0.1.189 | 11.4.2.57 | 11.0.0.21 |
CUDA Release | cuSPARSE | cuBLAS | cuSOLVER | cuFFT |
---|---|---|---|---|
11.0.1 | 11.0.0.191 | 11.0.0.191 | 10.4.0.191 | 10.1.3.191 |
11.0.2 | 11.1.0.218 | 11.1.0.229 | 10.5.0.218 | 10.2.0.218 |
11.0.3 | 11.1.1.245 | 11.2.0.252 | 10.6.0.245 | 10.2.1.245 |
11.1.0 | 11.2.0.275 | 11.2.1.74 | 11.0.0.74 | 10.3.0.74 |
11.1.1 | 11.3.0.10 | 11.3.0.106 | 11.0.1.105 | 10.3.0.105 |
11.2.0 | 11.3.1.68 | 11.3.1.68 | 11.0.2.68 | 10.4.0.72 |
11.2.1 | 11.4.0.135 | 11.4.1.1026 | 11.1.0.135 | 10.4.0.135 |
11.2.2 | 11.4.1.1152 | 11.4.1.1043 | 11.1.0.152 | 10.4.1.152 |
11.2.0 | 11.3.1.68 | 11.3.1.68 | 11.0.2.68 | 10.4.0.72 |
11.2.1 | 11.4.0.135 | 11.4.1.1026 | 11.1.0.135 | 10.4.0.135 |
11.3.0 | 11.5.0.58 | 11.4.2.10064 | 11.1.1.58 | 10.4.2.58 |
11.3.1 | 11.6.0.109 | 11.5.1.109 | 11.1.2.109 | 10.4.2.109 |
11.4.0 | 11.6.0.43 | 11.5.2.43 | 11.2.0.43 | 10.5.0.43 |
11.4.1 | 11.6.0.100 | 11.5.4.8 | 11.2.0.100 | 10.5.1.100 |
11.4.2 | 11.6.0.120 | 11.6.1.51 | 11.2.0.120 | 10.5.2.100 |
11.4.3 | 11.6.0.120 | 11.6.5.2 | 11.2.0.120 | 10.5.2.100 |
11.4.4 | 11.6.0.120 | 11.6.5.2 | 11.2.0.120 | 10.5.2.100 |
11.5.0 | 11.7.0.31 | 11.7.3.1 | 11.2.1.48 | 10.6.0.54 |
11.5.1 | 11.7.0.107 | 11.7.4.6 | 11.3.2.107 | 10.6.0.107 |
11.5.2 | 11.7.0.107 | 11.7.4.6 | 11.3.2.107 | 10.6.0.107 |
11.6.0 | 11.7.1.55 | 11.8.1.74 | 11.3.2.55 | 10.7.0.55 |
11.6.1 | 11.7.2.112 | 11.8.1.74 | 11.3.3.112 | 10.7.1.112 |
11.6.2 | 11.7.2.124 | 11.9.2.110 | 11.3.4.124 | 10.7.2.124 |
11.7.0 | 11.7.3.50 | 11.10.1.25 | 11.3.5.50 | 10.7.2.50 |
11.7.1 | 11.7.4.91 | 11.10.3.66 | 11.4.0.1 | 10.7.2.91 |
11.8.0 | 11.7.5.86 | 11.11.3.6 | 11.4.1.48 | 10.9.0.58 |
In the CUDA 10 releases, the versions are programmatically accessible through a library call rather than being defined in the headers, so I couldn't just grep them out of the installation.
Since I had to download every single CUDA release to extract this information, I was curious about how the releases have evolved over time.
nvcc
size: the size of the actual nvcc
binary.so
files for that library, or the size of the component directory in the installCUDA Release | Size (K) | cuSPARSE Size | cuBLAS Size | nvcc Size | cuFFT Size | cuRAND Size | cuSOLVER Size | npp Size | Nsight Compute | Nsight Systems | cuPTI Size | CUDA GDB Size | cudart Size | nvrtc Size | nsight Size | driver Size |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
12.4.1 | 7588644 | 582172 (7.67%) | 1396132 (18.39%) | 22144 (.29%) | 921144 (12.13%) | 190708 (2.51%) | 352052 (4.63%) | 497568 (6.55%) | 1395692 (10.41%) | 790260 (18.39%) | 115456 (1.52%) | 57108 (.75%) | 7696 (.10%) | 151244 (1.99%) | 115900 (1.52%) | 299672 (3.94%) |
12.3.2 | 7482692 | 554300 (7.40%) | 1540360 (20.58%) | 21276 (.28%) | 564224 (7.54%) | 190192 (2.54%) | 343268 (4.58%) | 504648 (6.74%) | 1535344 (10.49%) | 785304 (20.51%) | 111948 (1.49%) | 79564 (1.06%) | 7624 (.10%) | 145820 (1.94%) | 115904 (1.54%) | 317220 (4.23%) |
12.3.1 | 7482712 | 554304 (7.40%) | 1540360 (20.58%) | 21276 (.28%) | 564228 (7.54%) | 190192 (2.54%) | 343268 (4.58%) | 504648 (6.74%) | 1535352 (10.49%) | 785304 (20.51%) | 111948 (1.49%) | 79564 (1.06%) | 7624 (.10%) | 145820 (1.94%) | 115904 (1.54%) | 317224 (4.23%) |
12.3.0 | 7458604 | 548472 (7.35%) | 1537560 (20.61%) | 21280 (.28%) | 564228 (7.56%) | 190192 (2.54%) | 343272 (4.60%) | 489568 (6.56%) | 1534960 (10.52%) | 785308 (20.57%) | 111932 (1.50%) | 79552 (1.06%) | 7624 (.10%) | 145820 (1.95%) | 115908 (1.55%) | 317220 (4.25%) |
12.2.2 | 7394064 | 551892 (7.46%) | 1536844 (20.78%) | 20784 (.28%) | 562828 (7.61%) | 191372 (2.58%) | 342780 (4.63%) | 489096 (6.61%) | 1503072 (10.36%) | 766144 (20.32%) | 110996 (1.50%) | 79356 (1.07%) | 7456 (.10%) | 134212 (1.81%) | 115896 (1.56%) | 332952 (4.50%) |
12.2.1 | 7372660 | 551892 (7.48%) | 1516656 (20.57%) | 20784 (.28%) | 562828 (7.63%) | 191372 (2.59%) | 342932 (4.65%) | 489096 (6.63%) | 1503036 (10.39%) | 766116 (20.38%) | 110968 (1.50%) | 79376 (1.07%) | 7456 (.10%) | 134136 (1.81%) | 115900 (1.57%) | 332580 (4.51%) |
12.2.0 | 7444556 | 556224 (7.47%) | 1584144 (21.27%) | 20784 (.27%) | 562832 (7.56%) | 191376 (2.57%) | 341372 (4.58%) | 482728 (6.48%) | 1502952 (10.29%) | 766116 (20.18%) | 110724 (1.48%) | 79372 (1.06%) | 7284 (.09%) | 134992 (1.81%) | 115824 (1.55%) | 338980 (4.55%) |
12.1.1 | 7326380 | 558904 (7.62%) | 1584144 (21.62%) | 15680 (.21%) | 581476 (7.93%) | 191048 (2.60%) | 336516 (4.59%) | 485968 (6.63%) | 1431064 (9.93%) | 727968 (19.53%) | 110344 (1.50%) | 79404 (1.08%) | 7064 (.09%) | 141692 (1.93%) | 115828 (1.58%) | 336084 (4.58%) |
12.1.0 | 7808004 | 539064 (6.90%) | 1604572 (20.55%) | 15676 (.20%) | 581472 (7.44%) | 191048 (2.44%) | 819524 (10.49%) | 485968 (6.22%) | 1430572 (9.32%) | 727968 (18.32%) | 110336 (1.41%) | 79384 (1.01%) | 7064 (.09%) | 141692 (1.81%) | 115828 (1.48%) | 336084 (4.30%) |
12.0.1 | 7707864 | 539280 (6.99%) | 1604612 (20.81%) | 14908 (.19%) | 466724 (6.05%) | 191052 (2.47%) | 819584 (10.63%) | 485940 (6.30%) | 1408372 (9.16%) | 706688 (18.27%) | 107428 (1.39%) | 79408 (1.03%) | 6972 (.09%) | 140244 (1.81%) | 115828 (1.50%) | 404788 (5.25%) |
12.0.0 | 7592228 | 450292 (5.93%) | 1581884 (20.83%) | 14908 (.19%) | 466720 (6.14%) | 191020 (2.51%) | 819440 (10.79%) | 485740 (6.39%) | 1407216 (9.30%) | 706684 (18.53%) | 107396 (1.41%) | 79376 (1.04%) | 6972 (.09%) | 140208 (1.84%) | 115828 (1.52%) | 403668 (5.31%) |
CUDA Release | Size (K) | cuSPARSE Size | cuBLAS Size | nvcc Size | cuFFT Size | cuRAND Size | cuSOLVER Size | npp Size | Nsight Compute | Nsight Systems | cuPTI Size | CUDA GDB Size | cudart Size | nvrtc Size | nsight Size | driver Size |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
11.0.1 | 5473984 | 282904 (5.16%) | 506536 (9.25%) | 236 (0%) | 480532 (8.77%) | 140688 (2.57%) | 913816 (16.69%) | 296768 (5.42%) | 688368 (16.01%) | 876460 (12.57%) | 61680 (1.12%) | 52144 (.95%) | 19716 (.36%) | 27140 (.49%) | 115796 (2.11%) | 138812 (2.53%) |
11.0.2 | 5414976 | 321716 (5.94%) | 593940 (10.96%) | 240 (0%) | 487528 (9.00%) | 140688 (2.59%) | 982344 (18.14%) | 299232 (5.52%) | 689688 (11.20%) | 606528 (12.73%) | 62468 (1.15%) | 52380 (.96%) | 19744 (.36%) | 27148 (.50%) | 115800 (2.13%) | 137728 (2.54%) |
11.0.3 | 5468600 | 320552 (5.86%) | 608352 (11.12%) | 240 (0%) | 487396 (8.91%) | 140696 (2.57%) | 1021264 (18.67%) | 299124 (5.46%) | 689836 (11.09%) | 606520 (12.61%) | 62520 (1.14%) | 52368 (.95%) | 19744 (.36%) | 27148 (.49%) | 115804 (2.11%) | 139756 (2.55%) |
11.1.0 | 5950748 | 462280 (7.76%) | 745224 (12.52%) | 4992 (.08%) | 654456 (10.99%) | 148380 (2.49%) | 1273416 (21.39%) | 400244 (6.72%) | 645872 (10.25%) | 610260 (10.85%) | 65584 (1.10%) | 49072 (.82%) | 20276 (.34%) | 37388 (.62%) | 115800 (1.94%) | 164864 (2.77%) |
11.1.1 | 6022572 | 477860 (7.93%) | 796912 (13.23%) | 5004 (.08%) | 654448 (10.86%) | 148372 (2.46%) | 1276128 (21.18%) | 400200 (6.64%) | 646288 (10.13%) | 610244 (10.73%) | 65712 (1.09%) | 49108 (.81%) | 20276 (.33%) | 37400 (.62%) | 115804 (1.92%) | 166012 (2.75%) |
11.2.0 | 5373772 | 367400 (6.83%) | 704464 (13.10%) | 5344 (.09%) | 530992 (9.88%) | 148632 (2.76%) | 956780 (17.80%) | 339212 (6.31%) | 657048 (11.22%) | 603380 (12.22%) | 71228 (1.32%) | 49104 (.91%) | 20092 (.37%) | 86976 (1.61%) | 115800 (2.15%) | 167828 (3.12%) |
11.2.1 | 5350528 | 472788 (8.83%) | 707684 (13.22%) | 5348 (.09%) | 532240 (9.94%) | 164396 (3.07%) | 789948 (14.76%) | 351252 (6.56%) | 656588 (11.27%) | 603380 (12.27%) | 71380 (1.33%) | 49092 (.91%) | 20096 (.37%) | 86988 (1.62%) | 115800 (2.16%) | 173916 (3.25%) |
11.2.2 | 5350552 | 472744 (8.83%) | 707692 (13.22%) | 5352 (.10%) | 532232 (9.94%) | 164396 (3.07%) | 789924 (14.76%) | 351252 (6.56%) | 656604 (11.27%) | 603380 (12.27%) | 71412 (1.33%) | 49104 (.91%) | 20092 (.37%) | 86996 (1.62%) | 115804 (2.16%) | 173916 (3.25%) |
11.2.0 | 5373772 | 367400 (6.83%) | 704464 (13.10%) | 5344 (.09%) | 530992 (9.88%) | 148632 (2.76%) | 956780 (17.80%) | 339212 (6.31%) | 657048 (11.22%) | 603380 (12.22%) | 71228 (1.32%) | 49104 (.91%) | 20092 (.37%) | 86976 (1.61%) | 115800 (2.15%) | 167828 (3.12%) |
11.2.1 | 5350528 | 472788 (8.83%) | 707684 (13.22%) | 5348 (.09%) | 532240 (9.94%) | 164396 (3.07%) | 789948 (14.76%) | 351252 (6.56%) | 656588 (11.27%) | 603380 (12.27%) | 71380 (1.33%) | 49092 (.91%) | 20096 (.37%) | 86988 (1.62%) | 115800 (2.16%) | 173916 (3.25%) |
11.3.0 | 5343924 | 467992 (8.75%) | 707076 (13.23%) | 5548 (.10%) | 533512 (9.98%) | 164600 (3.08%) | 614128 (11.49%) | 361148 (6.75%) | 666900 (12.40%) | 663088 (12.47%) | 74220 (1.38%) | 49040 (.91%) | 6116 (.11%) | 88832 (1.66%) | 115820 (2.16%) | 253768 (4.74%) |
11.3.1 | 5616324 | 484072 (8.61%) | 930724 (16.57%) | 5552 (.09%) | 533516 (9.49%) | 164608 (2.93%) | 641976 (11.43%) | 361152 (6.43%) | 667192 (11.80%) | 663084 (11.87%) | 78440 (1.39%) | 49048 (.87%) | 6116 (.10%) | 88852 (1.58%) | 115812 (2.06%) | 253768 (4.51%) |
11.4.0 | 6355576 | 482848 (7.59%) | 951192 (14.96%) | 5720 (.08%) | 1111808 (17.49%) | 164744 (2.59%) | 663456 (10.43%) | 371800 (5.84%) | 700748 (10.89%) | 692204 (11.02%) | 83444 (1.31%) | 76672 (1.20%) | 6268 (.09%) | 89788 (1.41%) | 115820 (1.82%) | 265420 (4.17%) |
11.4.1 | 6347244 | 482544 (7.60%) | 999180 (15.74%) | 5728 (.09%) | 1111820 (17.51%) | 164748 (2.59%) | 669904 (10.55%) | 383696 (6.04%) | 700788 (10.90%) | 692200 (11.04%) | 83444 (1.31%) | 76716 (1.20%) | 6272 (.09%) | 50436 (.79%) | 115828 (1.82%) | 266824 (4.20%) |
11.4.2 | 6446744 | 482544 (7.48%) | 1074584 (16.66%) | 5732 (.08%) | 1111812 (17.24%) | 164744 (2.55%) | 669904 (10.39%) | 375700 (5.82%) | 701776 (11.21%) | 723104 (10.88%) | 83444 (1.29%) | 76680 (1.18%) | 6272 (.09%) | 50436 (.78%) | 115820 (1.79%) | 266820 (4.13%) |
11.4.3 | 6445656 | 482540 (7.48%) | 1074892 (16.67%) | 5736 (.08%) | 1111808 (17.24%) | 164744 (2.55%) | 669904 (10.39%) | 375700 (5.82%) | 701776 (11.21%) | 723100 (10.88%) | 83444 (1.29%) | 76676 (1.18%) | 6280 (.09%) | 50444 (.78%) | 115824 (1.79%) | 265408 (4.11%) |
11.4.4 | 6445708 | 482544 (7.48%) | 1074892 (16.67%) | 5736 (.08%) | 1111812 (17.24%) | 164748 (2.55%) | 669896 (10.39%) | 375700 (5.82%) | 701784 (11.21%) | 723108 (10.88%) | 83444 (1.29%) | 76676 (1.18%) | 6280 (.09%) | 50440 (.78%) | 115820 (1.79%) | 265412 (4.11%) |
11.5.0 | 5959068 | 481936 (8.08%) | 1108280 (18.59%) | 5860 (.09%) | 452552 (7.59%) | 144268 (2.42%) | 590112 (9.90%) | 394936 (6.62%) | 818388 (12.42%) | 740408 (13.73%) | 83248 (1.39%) | 76700 (1.28%) | 6420 (.10%) | 126300 (2.11%) | 115828 (1.94%) | 275476 (4.62%) |
11.5.1 | 6060672 | 457072 (7.54%) | 1144676 (18.88%) | 5860 (.09%) | 451424 (7.44%) | 173720 (2.86%) | 638772 (10.53%) | 394932 (6.51%) | 826820 (12.21%) | 740404 (13.64%) | 87660 (1.44%) | 76716 (1.26%) | 6420 (.10%) | 126348 (2.08%) | 115828 (1.91%) | 275476 (4.54%) |
11.5.2 | 6060640 | 457072 (7.54%) | 1144672 (18.88%) | 5860 (.09%) | 451424 (7.44%) | 173716 (2.86%) | 638768 (10.53%) | 394928 (6.51%) | 826816 (12.21%) | 740404 (13.64%) | 87660 (1.44%) | 76716 (1.26%) | 6420 (.10%) | 126348 (2.08%) | 115828 (1.91%) | 275472 (4.54%) |
11.6.0 | 6160404 | 492708 (7.99%) | 1144824 (18.58%) | 6324 (.10%) | 451416 (7.32%) | 173664 (2.81%) | 695876 (11.29%) | 398216 (6.46%) | 835516 (9.63%) | 593560 (13.56%) | 88844 (1.44%) | 76852 (1.24%) | 6488 (.10%) | 390672 (6.34%) | 115828 (1.88%) | 320644 (5.20%) |
11.6.1 | 6214020 | 538324 (8.66%) | 1144828 (18.42%) | 6324 (.10%) | 451420 (7.26%) | 173664 (2.79%) | 694916 (11.18%) | 406204 (6.53%) | 835964 (9.55%) | 593568 (13.45%) | 88860 (1.42%) | 76952 (1.23%) | 6488 (.10%) | 390676 (6.28%) | 115824 (1.86%) | 321120 (5.16%) |
11.6.2 | 5995104 | 538328 (8.97%) | 1174688 (19.59%) | 6328 (.10%) | 451416 (7.52%) | 173664 (2.89%) | 708628 (11.82%) | 406216 (6.77%) | 835976 (9.90%) | 593544 (13.94%) | 88860 (1.48%) | 76960 (1.28%) | 6488 (.10%) | 127100 (2.12%) | 115824 (1.93%) | 321120 (5.35%) |
11.7.0 | 6063180 | 500564 (8.25%) | 1170468 (19.30%) | 6388 (.10%) | 450500 (7.43%) | 173740 (2.86%) | 738160 (12.17%) | 405324 (6.68%) | 864656 (10.08%) | 611760 (14.26%) | 91980 (1.51%) | 77016 (1.27%) | 6544 (.10%) | 128084 (2.11%) | 115828 (1.91%) | 350344 (5.77%) |
11.7.1 | 6096648 | 510704 (8.37%) | 1130248 (18.53%) | 6392 (.10%) | 450500 (7.38%) | 173740 (2.84%) | 642528 (10.53%) | 438192 (7.18%) | 859920 (10.03%) | 611776 (14.10%) | 92008 (1.50%) | 77032 (1.26%) | 6544 (.10%) | 128088 (2.10%) | 115828 (1.89%) | 355652 (5.83%) |
11.8.0 | 7672492 | 589240 (7.67%) | 1716472 (22.37%) | 14656 (.19%) | 862456 (11.24%) | 200124 (2.60%) | 821540 (10.70%) | 503032 (6.55%) | 939560 (9.12%) | 700068 (12.24%) | 103548 (1.34%) | 77088 (1.00%) | 6880 (.08%) | 138016 (1.79%) | 115828 (1.50%) | 395384 (5.15%) |
CUDA Release | Size (K) | cuSPARSE | cuBLAS | nvcc | cuFFT | cuRAND | cuSOLVER | npp | Nsight Compute | Nsight Systems | cuPTI | CUDA GDB | cudart | nvrtc | nsight | driver |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
10.0 | 3313556 | 57696 (1.74%) | 69140 (2.08%) | 192 (0%) | 101312 (3.05%) | 59384 (1.79%) | 135996 (4.10%) | 127476 (3.84%) | 463024 (0%) | 0 (13.97%) | 6064 (.18%) | 9260 (.27%) | 488 (.01%) | 24364 (.73%) | 187804 (5.66%) | 0 (0%) |
10.1 | 3779732 | 88212 (2.33%) | 112672 (2.98%) | 192 (0%) | 114536 (3.03%) | 58412 (1.54%) | 178280 (4.71%) | 133128 (3.52%) | 478952 (6.11%) | 230992 (12.67%) | 5552 (.14%) | 9260 (.24%) | 496 (.01%) | 25896 (.68%) | 185344 (4.90%) | 0 (0%) |
10.1 | 3948192 | 119212 (3.01%) | 92892 (2.35%) | 192 (0%) | 135444 (3.43%) | 58412 (1.47%) | 178196 (4.51%) | 132240 (3.34%) | 472972 (7.68%) | 303228 (11.97%) | 5512 (.13%) | 9260 (.23%) | 496 (.01%) | 25916 (.65%) | 185348 (4.69%) | 0 (0%) |
10.1 | 3900648 | 115200 (2.95%) | 90292 (2.31%) | 196 (0%) | 135412 (3.47%) | 58412 (1.49%) | 173012 (4.43%) | 133356 (3.41%) | 615852 (8.06%) | 314420 (15.78%) | 5568 (.14%) | 9260 (.23%) | 496 (.01%) | 25924 (.66%) | 185396 (4.75%) | 0 (0%) |
10.2 | 3895664 | 125308 (3.21%) | 95452 (2.45%) | 228 (0%) | 150160 (3.85%) | 58676 (1.50%) | 186048 (4.77%) | 142932 (3.66%) | 486324 (8.46%) | 329748 (12.48%) | 5628 (.14%) | 9256 (.23%) | 500 (.01%) | 26272 (.67%) | 183124 (4.70%) | 0 (0%) |
This section counts the external dynamic symbols present in the libraries for a particular component.
CUDA Release | cuSPARSE | cuBLAS | cuSOLVER | cuFFT | cuRAND | cudart | cupti | npp |
---|---|---|---|---|---|---|---|---|
12.4.1 | 1278 | 3237 | 3426 | 399 | 90 | 1473 | 676 | 41097 |
12.3.2 | 1272 | 3225 | 3486 | 393 | 90 | 1446 | 706 | 41097 |
12.3.1 | 1272 | 3225 | 3486 | 393 | 90 | 1446 | 706 | 41097 |
12.3.0 | 1272 | 3111 | 3486 | 393 | 90 | 1446 | 706 | 40067 |
12.2.2 | 1272 | 3111 | 3486 | 402 | 90 | 1403 | 717 | 40067 |
12.2.1 | 1272 | 3111 | 3486 | 402 | 90 | 1403 | 717 | 40067 |
12.2.0 | 1272 | 3111 | 3519 | 402 | 90 | 1403 | 717 | 39893 |
12.1.1 | 1272 | 3111 | 3525 | 402 | 90 | 1385 | 653 | 39691 |
12.1.0 | 1254 | 3111 | 3525 | 402 | 90 | 1385 | 653 | 39691 |
12.0.1 | 1254 | 3111 | 3525 | 402 | 90 | 1372 | 652 | 39787 |
12.0.0 | 1254 | 3111 | 3525 | 402 | 90 | 1372 | 652 | 39787 |
CUDA Release | cuSPARSE | cuBLAS | cuSOLVER | cuFFT | cuRAND | cudart | cupti | npp |
---|---|---|---|---|---|---|---|---|
11.0.1 | 1314 | 1731 | 3426 | 408 | 90 | 1328 | 414 | 37831 |
11.0.2 | 1332 | 1731 | 3444 | 408 | 90 | 1328 | 414 | 38084 |
11.0.3 | 1332 | 1752 | 3444 | 408 | 90 | 1328 | 414 | 38084 |
11.1.0 | 1332 | 1752 | 3456 | 399 | 90 | 1375 | 460 | 38084 |
11.1.1 | 1356 | 1752 | 3456 | 399 | 90 | 1375 | 460 | 38084 |
11.2.0 | 1356 | 2088 | 3501 | 399 | 90 | 1470 | 461 | 38299 |
11.2.1 | 1371 | 2088 | 3501 | 399 | 90 | 1470 | 461 | 38313 |
11.2.2 | 1371 | 2088 | 3501 | 399 | 90 | 1470 | 461 | 38313 |
11.2.0 | 1356 | 2088 | 3501 | 399 | 90 | 1470 | 461 | 38299 |
11.2.1 | 1371 | 2088 | 3501 | 399 | 90 | 1470 | 461 | 38313 |
11.3.0 | 1392 | 2088 | 3525 | 399 | 90 | 1538 | 517 | 38313 |
11.3.1 | 1419 | 2094 | 3489 | 399 | 90 | 1538 | 517 | 38313 |
11.4.0 | 1419 | 2094 | 3525 | 399 | 90 | 1571 | 468 | 38233 |
11.4.1 | 1419 | 2094 | 3525 | 399 | 90 | 1571 | 468 | 38233 |
11.4.2 | 1419 | 2106 | 3525 | 399 | 90 | 1571 | 468 | 38233 |
11.4.3 | 1419 | 2106 | 3525 | 399 | 90 | 1571 | 468 | 38233 |
11.4.4 | 1419 | 2106 | 3525 | 399 | 90 | 1571 | 468 | 38233 |
11.5.0 | 1422 | 2106 | 3525 | 399 | 90 | 1571 | 487 | 38329 |
11.5.1 | 1449 | 2106 | 3525 | 399 | 90 | 1571 | 487 | 38329 |
11.5.2 | 1449 | 2106 | 3525 | 399 | 90 | 1571 | 487 | 38329 |
11.6.0 | 1449 | 2106 | 3525 | 399 | 90 | 1583 | 489 | 38335 |
11.6.1 | 1449 | 2106 | 3525 | 399 | 90 | 1583 | 489 | 38748 |
11.6.2 | 1449 | 2154 | 3525 | 399 | 90 | 1583 | 489 | 38748 |
11.7.0 | 1452 | 2154 | 3525 | 399 | 90 | 1599 | 538 | 38748 |
11.7.1 | 1452 | 2154 | 3525 | 399 | 90 | 1599 | 538 | 39407 |
11.8.0 | 1452 | 2424 | 3525 | 402 | 90 | 1615 | 550 | 39407 |
CUDA Release | cuSPARSE | cuBLAS | cuSOLVER | cuFFT | cuRAND | cudart | cupti | npp |
---|---|---|---|---|---|---|---|---|
10.0 | 808 | 477 | 673 | 61 | 28 | 289 | 95 | 6229 |
10.1 | 832 | 489 | 717 | 61 | 28 | 289 | 112 | 12528 |
10.1 | 857 | 487 | 741 | 61 | 28 | 289 | 114 | 12538 |
10.1 | 546 | 487 | 736 | 61 | 28 | 289 | 114 | 12637 |
10.2 | 546 | 487 | 830 | 61 | 28 | 295 | 116 | 12637 |
The code to download the CUDA releases and extract the data are available here cwpearson/cusparse-versions. I used the Linux runfiles - these self-extracting CUDA installers seem to run a built-in binary, and since I'm using the x86 versions of CUDA, this needs to be run on an x86 machine.
How the sizes are measured varies a bit between CUDA 11/12 and CUDA 10.
For CUDA 11/12, the --extract
flag to the runfile creates a single nice, neat directory for each component. That directory includes all the binaries, headers, libraries, and whatever else Nvidia ships for that component. For these releases, the measured size is the size of this complete directory.
For CUDA 10, the --extract
flag only creates 3 additional runfiles - one for the driver, one for the samples, and one for the toolkit.
I found interacting with those files difficult, so I just completed the CUDA 10 install, and the sizes of the components is the size of only the binary or the libraries, not including the headers and whatever else.
I still used the --extract
flag just to get the driver on its own to determine the driver size for CUDA 10.
Component symbols are the number of defined dynamic symbols in the libraries for a component (nm -D --defined-only
).