History log of /llvm-project/libc/benchmarks/gpu/LibcGpuBenchmark.cpp (Results 1 – 16 of 16)
Revision (<<< Hide revision tags) (Show revision tags >>>) Date Author Comments
Revision tags: llvmorg-21-init, llvmorg-19.1.7, llvmorg-19.1.6, llvmorg-19.1.5, llvmorg-19.1.4, llvmorg-19.1.3, llvmorg-19.1.2, llvmorg-19.1.1, llvmorg-19.1.0, llvmorg-19.1.0-rc4, llvmorg-19.1.0-rc3
# deb6b45c 18-Aug-2024 jameshu15869 <55058507+jameshu15869@users.noreply.github.com>

[libc][gpu] Add Atan2 Benchmarks (#104708)

This PR adds benchmarking for `atan2()`, `__nv_atan2()`, and
`__ocml_atan2_f64()` using the same setup as `sin()`. This PR also adds
support for througho

[libc][gpu] Add Atan2 Benchmarks (#104708)

This PR adds benchmarking for `atan2()`, `__nv_atan2()`, and
`__ocml_atan2_f64()` using the same setup as `sin()`. This PR also adds
support for throughout bencmarking for functions with 2 inputs.

show more ...


# 1248698e 08-Aug-2024 jameshu15869 <55058507+jameshu15869@users.noreply.github.com>

[libc] [gpu] Fix Minor Benchmark UI Issues (#102529)

Previously, `AmdgpuSinTwoPow_128` and others were too large for their
table cells. This PR shortens the name to `AmdSin...`

There were also s

[libc] [gpu] Fix Minor Benchmark UI Issues (#102529)

Previously, `AmdgpuSinTwoPow_128` and others were too large for their
table cells. This PR shortens the name to `AmdSin...`

There were also some `-` missing in the separator. This PR instead
creates the separator string using the length of the headers.

show more ...


# 39826b10 05-Aug-2024 jameshu15869 <55058507+jameshu15869@users.noreply.github.com>

[libc] [gpu] Change Time To Be Per Iteration (#101919)

Previously, the time field was the total time take to run all iterations
of the benchmark. This PR changes the value displayed to be the avera

[libc] [gpu] Change Time To Be Per Iteration (#101919)

Previously, the time field was the total time take to run all iterations
of the benchmark. This PR changes the value displayed to be the average
time take by each iteration.

show more ...


Revision tags: llvmorg-19.1.0-rc2
# 677796ca 30-Jul-2024 jameshu15869 <55058507+jameshu15869@users.noreply.github.com>

[libc] Add Generic and NVPTX Sin Benchmark (#99795)

This PR adds sin benchmarking for a range of values and on a
pregenerated random distribution.


# a09c0f67 27-Jul-2024 jameshu15869 <55058507+jameshu15869@users.noreply.github.com>

[libc] Add Minimum Time and Iterations, Reduce Epsilon (#100838)

This PR adds minimums (50 iterations, 500 us, and epsilon of 0.0001) to
ensure that all benchmarks run at least a set number of time

[libc] Add Minimum Time and Iterations, Reduce Epsilon (#100838)

This PR adds minimums (50 iterations, 500 us, and epsilon of 0.0001) to
ensure that all benchmarks run at least a set number of times before
outputting a final measurement.

show more ...


Revision tags: llvmorg-19.1.0-rc1, llvmorg-20-init
# 6911f823 22-Jul-2024 Joseph Huber <huberjn@outlook.com>

[libc] Fix invalid format specifier in benchmark

Summary:
This value is a uint32_t but is printed as a uint64_t, leading to
invalid offsets when done on AMDGPU due to its packed format extending
pas

[libc] Fix invalid format specifier in benchmark

Summary:
This value is a uint32_t but is printed as a uint64_t, leading to
invalid offsets when done on AMDGPU due to its packed format extending
past the buffer.

show more ...


# 197b1422 22-Jul-2024 jameshu15869 <55058507+jameshu15869@users.noreply.github.com>

[libc] Add N Threads Benchmark Helper (#99834)

This PR adds a `BENCHMARK_N_THREADS()` helper to register benchmarks
with a specific number of threads. This PR replaces the flags used
originally to

[libc] Add N Threads Benchmark Helper (#99834)

This PR adds a `BENCHMARK_N_THREADS()` helper to register benchmarks
with a specific number of threads. This PR replaces the flags used
originally to allow any amount of threads.

show more ...


# a964f2e8 21-Jul-2024 jameshu15869 <55058507+jameshu15869@users.noreply.github.com>

[libc] Improve Benchmark UI (#99796)

This PR changes the output to resemble Google Benchmark. e.g.

```
Running Suite: LlvmLibcIsAlNumGpuBenchmark
Benchmark | Cycles | Min |

[libc] Improve Benchmark UI (#99796)

This PR changes the output to resemble Google Benchmark. e.g.

```
Running Suite: LlvmLibcIsAlNumGpuBenchmark
Benchmark | Cycles | Min | Max | Iterations | Time (ns) | Stddev | Threads |
-----------------------------------------------------------------------------------------------------
IsAlnum | 92 | 76 | 482 | 23 | 86500 | 76 | 64 |
IsAlnumSingleThread | 87 | 76 | 302 | 20 | 72000 | 49 | 1 |
IsAlnumSingleWave | 87 | 76 | 302 | 20 | 72000 | 49 | 32 |
IsAlnumCapital | 89 | 76 | 299 | 17 | 78500 | 52 | 64 |
IsAlnumNotAlnum | 87 | 76 | 303 | 20 | 76000 | 49 | 64 |
```

show more ...


# 8badfcce 18-Jul-2024 jameshu15869 <55058507+jameshu15869@users.noreply.github.com>

[libc] Add Multithreaded GPU Benchmarks (#98964)

This PR runs benchmarks on a 32 threads (A single warp on NVPTX) by
default, adding the option for single threaded benchmarks. We can
specify that

[libc] Add Multithreaded GPU Benchmarks (#98964)

This PR runs benchmarks on a 32 threads (A single warp on NVPTX) by
default, adding the option for single threaded benchmarks. We can
specify that a benchmark should be run on a single thread using the
`SINGLE_THREADED_BENCHMARK()` macro.

I chose to use a flag here so that other options could be added in the
future.

show more ...


# b42c332d 15-Jul-2024 jameshu15869 <55058507+jameshu15869@users.noreply.github.com>

[libc] Use Atomics in GPU Benchmarks (#98842)

This PR replaces our old method of reducing the benchmark results by
using an array to using atomics instead. This should help us implement
single thr

[libc] Use Atomics in GPU Benchmarks (#98842)

This PR replaces our old method of reducing the benchmark results by
using an array to using atomics instead. This should help us implement
single threaded benchmarks.

show more ...


# 5ff3ff33 12-Jul-2024 Petr Hosek <phosek@google.com>

[libc] Migrate to using LIBC_NAMESPACE_DECL for namespace declaration (#98597)

This is a part of #97655.


# ce9035f5 12-Jul-2024 Mehdi Amini <joker.eph@gmail.com>

Revert "[libc] Migrate to using LIBC_NAMESPACE_DECL for namespace declaration" (#98593)

Reverts llvm/llvm-project#98075

bots are broken


# 3f30effe 11-Jul-2024 Petr Hosek <phosek@google.com>

[libc] Migrate to using LIBC_NAMESPACE_DECL for namespace declaration (#98075)

This is a part of #97655.


# eeed5896 11-Jul-2024 jameshu15869 <55058507+jameshu15869@users.noreply.github.com>

[libc] Correctly Run Multiple Benchmarks in the Same File (#98467)

There was previously an issue where registering multiple benchmarks in
the same file would only give the results for the last benc

[libc] Correctly Run Multiple Benchmarks in the Same File (#98467)

There was previously an issue where registering multiple benchmarks in
the same file would only give the results for the last benchmark to run.
This PR fixes the issue.

@jhuber6

show more ...


# f4e6ddbc 06-Jul-2024 jameshu15869 <55058507+jameshu15869@users.noreply.github.com>

[libc] Fix Cppcheck Issues (#96999)

This PR fixes linting issues discovered by `cppcheck`.

Fixes: https://github.com/llvm/llvm-project/issues/96863


# 02b57ded 26-Jun-2024 jameshu15869 <55058507+jameshu15869@users.noreply.github.com>

[libc] NVPTX Profiling (#92009)

PR for adding microbenchmarking infrastructure for NVPTX. `nvlink`
cannot perform LTO, so we cannot inline `libc` functions and this
function call overhead is not a

[libc] NVPTX Profiling (#92009)

PR for adding microbenchmarking infrastructure for NVPTX. `nvlink`
cannot perform LTO, so we cannot inline `libc` functions and this
function call overhead is not adjusted for during microbenchmarking.

show more ...