[libc-commits] [libc] [libc] Polish GPU benchmarking (PR #153900)

Leandro Lacerda via libc-commits libc-commits at lists.llvm.org
Fri Aug 15 16:20:11 PDT 2025


leandrolcampos wrote:

Here's what I get on my *NVIDIA GeForce RTX 4070 Laptop GPU*

```bash
[1/4] Running hermetic test libc.benchmarks.gpu.src.ctype.isalnum_benchmark
Running Suite: LlvmLibcIsAlNumGpuBenchmark
Benchmark                |  Cycles (Mean) |   Stddev |     Min |     Max |     Iterations |  Threads |
------------------------------------------------------------------------------------------------------
IsAlnum                  |             53 |        0 |      53 |      53 |          11904 |       64 |
IsAlnumSingleThread      |             53 |        0 |      53 |      53 |            186 |        1 |
IsAlnumSingleWave        |             53 |        0 |      53 |      53 |           5952 |       32 |
IsAlnumCapital           |             53 |        0 |      53 |      53 |          11904 |       64 |
IsAlnumNotAlnum          |             43 |        0 |      43 |      43 |          11904 |       64 |
[2/4] Running hermetic test libc.benchmarks.gpu.src.ctype.isalpha_benchmark
Running Suite: LlvmLibcIsAlphaGpuBenchmark
Benchmark                |  Cycles (Mean) |   Stddev |     Min |     Max |     Iterations |  Threads |
------------------------------------------------------------------------------------------------------
IsAlpha                  |             53 |        0 |      53 |      53 |            186 |        1 |
[3/4] Running hermetic test libc.benchmarks.gpu.src.math.sin_benchmark
Running Suite: LlvmLibcSinGpuBenchmark
Benchmark                |  Cycles (Mean) |   Stddev |     Min |     Max |     Iterations |  Threads |
------------------------------------------------------------------------------------------------------
Sin_1                    |           3120 |      153 |    2934 |    3610 |        2735008 |       32 |
Sin_128                  |            364 |        6 |     346 |     382 |          12032 |       32 |
Sin_1024                 |            354 |        2 |     348 |     359 |           5952 |       32 |
Sin_4096                 |            361 |        1 |     358 |     363 |           4160 |       32 |
SinTwoPi_1               |           2217 |       11 |    2204 |    2494 |          24032 |       32 |
SinTwoPi_128             |            262 |        2 |     258 |     268 |          24032 |       32 |
SinTwoPi_1024            |            271 |        1 |     271 |     276 |          24032 |       32 |
SinTwoPi_4096            |            282 |        0 |     281 |     282 |           1984 |       32 |
SinTwoPow30_1            |           3133 |       11 |    3116 |    3177 |           1984 |       32 |
SinTwoPow30_128          |            348 |        2 |     345 |     352 |           1344 |       32 |
SinTwoPow30_1024         |            359 |        1 |     358 |     361 |           1984 |       32 |
SinTwoPow30_4096         |            368 |        0 |     367 |     368 |            576 |       32 |
SinVeryLarge_1           |           2855 |       15 |    2821 |    3082 |           8480 |       32 |
SinVeryLarge_128         |            316 |        2 |     310 |     324 |          17024 |       32 |
SinVeryLarge_1024        |            317 |        1 |     316 |     320 |           1344 |       32 |
SinVeryLarge_4096        |            325 |        0 |     325 |     326 |            896 |       32 |
NvSin_1                  |           2521 |       69 |    2264 |    2876 |           5952 |       32 |
NvSin_128                |           1860 |        2 |    1857 |    1865 |            576 |       32 |
NvSin_1024               |           2069 |        1 |    2068 |    2071 |            352 |       32 |
NvSin_4096               |           2087 |        0 |    2087 |    2088 |            352 |       32 |
NvSinTwoPi_1             |           1106 |        1 |    1104 |    1108 |           1344 |       32 |
NvSinTwoPi_128           |            925 |        0 |     925 |     925 |            352 |       32 |
NvSinTwoPi_1024          |           1136 |        0 |    1136 |    1136 |            352 |       32 |
NvSinTwoPi_4096          |           1155 |        0 |    1155 |    1155 |            352 |       32 |
NvSinTwoPow30_1          |           1106 |        1 |    1104 |    1107 |           1984 |       32 |
NvSinTwoPow30_128        |            925 |        0 |     925 |     927 |            576 |       32 |
NvSinTwoPow30_1024       |           1136 |        0 |    1136 |    1136 |            352 |       32 |
NvSinTwoPow30_4096       |           1155 |        0 |    1155 |    1155 |            352 |       32 |
NvSinVeryLarge_1         |           2496 |       23 |    2251 |    2840 |          12032 |       32 |
NvSinVeryLarge_128       |           1827 |        1 |    1826 |    1829 |            576 |       32 |
NvSinVeryLarge_1024      |           2034 |        0 |    2034 |    2035 |            352 |       32 |
NvSinVeryLarge_4096      |           2052 |        0 |    2052 |    2052 |            352 |       32 |
Sinf_1                   |           2200 |      170 |    1521 |    2397 |         507776 |       32 |
Sinf_128                 |            240 |        5 |     218 |     255 |          47616 |       32 |
Sinf_1024                |            240 |        2 |     235 |     248 |           5952 |       32 |
Sinf_4096                |            259 |        1 |     257 |     261 |            896 |       32 |
SinfTwoPi_1              |           1441 |       11 |    1425 |    1760 |          33856 |       32 |
SinfTwoPi_128            |            147 |        1 |     146 |     150 |          12032 |       32 |
SinfTwoPi_1024           |            147 |        0 |     145 |     148 |           4160 |       32 |
SinfTwoPi_4096           |            165 |        0 |     165 |     167 |           4160 |       32 |
SinfTwoPow30_1           |           1087 |       10 |    1078 |    1160 |           1984 |       32 |
SinfTwoPow30_128         |            102 |        1 |     101 |     104 |            576 |       32 |
SinfTwoPow30_1024        |            102 |        0 |     100 |     103 |           2880 |       32 |
SinfTwoPow30_4096        |            121 |        0 |     121 |     122 |           4160 |       32 |
SinfVeryLarge_1          |           1924 |       14 |    1867 |    2277 |          24032 |       32 |
SinfVeryLarge_128        |            205 |        1 |     205 |     207 |            896 |       32 |
SinfVeryLarge_1024       |            206 |        0 |     204 |     206 |           5952 |       32 |
SinfVeryLarge_4096       |            225 |        0 |     224 |     226 |           8480 |       32 |
NvSinf_1                 |           1023 |        6 |    1018 |    1036 |           2880 |       32 |
NvSinf_128               |            786 |        0 |     786 |     788 |            576 |       32 |
NvSinf_1024              |            975 |        1 |     970 |     975 |           2880 |       32 |
NvSinf_4096              |           1010 |        0 |    1010 |    1010 |            352 |       32 |
NvSinfTwoPi_1            |            162 |        3 |     162 |     509 |         362464 |       32 |
NvSinfTwoPi_128          |            141 |        0 |     141 |     143 |           2880 |       32 |
NvSinfTwoPi_1024         |            331 |        0 |     330 |     331 |            896 |       32 |
NvSinfTwoPi_4096         |            366 |        0 |     366 |     366 |            352 |       32 |
NvSinfTwoPow30_1         |           1025 |       10 |    1018 |    1280 |          47616 |       32 |
NvSinfTwoPow30_128       |            776 |        0 |     776 |     777 |            352 |       32 |
NvSinfTwoPow30_1024      |            966 |        0 |     966 |     967 |            352 |       32 |
NvSinfTwoPow30_4096      |           1000 |        0 |    1000 |    1000 |            352 |       32 |
NvSinfVeryLarge_1        |           1002 |        2 |    1000 |    1023 |           4160 |       32 |
NvSinfVeryLarge_128      |            757 |        0 |     757 |     758 |            576 |       32 |
NvSinfVeryLarge_1024     |            948 |        0 |     948 |     948 |            352 |       32 |
NvSinfVeryLarge_4096     |            981 |        0 |     981 |     981 |            352 |       32 |
[4/4] Running hermetic test libc.benchmarks.gpu.src.math.atan2_benchmark
Running Suite: LlvmLibcAtan2GpuBenchmark
Benchmark                |  Cycles (Mean) |   Stddev |     Min |     Max |     Iterations |  Threads |
------------------------------------------------------------------------------------------------------
Atan2_1                  |           4081 |      954 |    1892 |    5264 |          24032 |       32 |
Atan2_128                |           2505 |       37 |    2346 |    2601 |          33856 |       32 |
Atan2_1024               |           2747 |       13 |    2708 |    2783 |           2880 |       32 |
Atan2_4096               |           2749 |        6 |    2737 |    2759 |            576 |       32 |
Atan2TwoPi_1             |           2737 |       16 |    2728 |    3156 |          24032 |       32 |
Atan2TwoPi_128           |           1068 |        3 |    1064 |    1109 |           8480 |       32 |
Atan2TwoPi_1024          |           1301 |        1 |    1300 |    1303 |            576 |       32 |
Atan2TwoPi_4096          |           1302 |        0 |    1302 |    1303 |            576 |       32 |
Atan2TwoPow30_1          |           2733 |       16 |    2722 |    3157 |          24032 |       32 |
Atan2TwoPow30_128        |           1072 |        3 |    1065 |    1108 |           5952 |       32 |
Atan2TwoPow30_1024       |           1302 |        1 |    1301 |    1304 |            896 |       32 |
Atan2TwoPow30_4096       |           1303 |        0 |    1302 |    1303 |            352 |       32 |
Atan2Large_1             |           3569 |      382 |    1125 |    3878 |         131648 |       32 |
Atan2Large_128           |           1811 |       17 |    1766 |    1839 |           1984 |       32 |
Atan2Large_1024          |           2050 |        4 |    2043 |    2059 |            576 |       32 |
Atan2Large_4096          |           2049 |        2 |    2046 |    2053 |            352 |       32 |
NvAtan2_1                |           2909 |       38 |    2866 |    3341 |          17024 |       32 |
NvAtan2_128              |           2836 |        3 |    2830 |    2853 |           2880 |       32 |
NvAtan2_1024             |           3075 |        1 |    3074 |    3076 |            352 |       32 |
NvAtan2_4096             |           3075 |        1 |    3074 |    3076 |            352 |       32 |
NvAtan2TwoPi_1           |           2032 |       13 |    2032 |    2383 |          24032 |       32 |
NvAtan2TwoPi_128         |           1979 |        3 |    1979 |    1999 |           1984 |       32 |
NvAtan2TwoPi_1024        |           2218 |        0 |    2217 |    2218 |            352 |       32 |
NvAtan2TwoPi_4096        |           2218 |        0 |    2218 |    2218 |            352 |       32 |
NvAtan2TwoPow30_1        |           2032 |        8 |    2032 |    2184 |          12032 |       32 |
NvAtan2TwoPow30_128      |           1979 |        2 |    1979 |    1998 |           1984 |       32 |
NvAtan2TwoPow30_1024     |           2218 |        0 |    2217 |    2218 |            352 |       32 |
NvAtan2TwoPow30_4096     |           2218 |        0 |    2218 |    2219 |            576 |       32 |
NvAtan2Large_1           |           2032 |       12 |    2032 |    2354 |          24032 |       32 |
NvAtan2Large_128         |           1979 |        2 |    1979 |    1997 |           1984 |       32 |
NvAtan2Large_1024        |           2218 |        0 |    2217 |    2218 |            352 |       32 |
NvAtan2Large_4096        |           2219 |        0 |    2218 |    2219 |            352 |       32 |
```

https://github.com/llvm/llvm-project/pull/153900


More information about the libc-commits mailing list