<feed xmlns='http://www.w3.org/2005/Atom'>
<title>llvm-project.git/libc/benchmarks/gpu/LibcGpuBenchmark.cpp, branch users/nico/python-1</title>
<subtitle>Unnamed repository; edit this file 'description' to name the repository.
</subtitle>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/'/>
<entry>
<title>[libc][gpu] Add Atan2 Benchmarks (#104708)</title>
<updated>2024-08-18T17:50:30+00:00</updated>
<author>
<name>jameshu15869</name>
<email>55058507+jameshu15869@users.noreply.github.com</email>
</author>
<published>2024-08-18T17:50:30+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=deb6b45c32687275a6d4e24326ffc9700f8ae52c'/>
<id>deb6b45c32687275a6d4e24326ffc9700f8ae52c</id>
<content type='text'>
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.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
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.</pre>
</div>
</content>
</entry>
<entry>
<title>[libc] [gpu] Fix Minor Benchmark UI Issues (#102529)</title>
<updated>2024-08-08T20:32:20+00:00</updated>
<author>
<name>jameshu15869</name>
<email>55058507+jameshu15869@users.noreply.github.com</email>
</author>
<published>2024-08-08T20:32:20+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=1248698e9bb2a0232eee53a72679ed5077190a90'/>
<id>1248698e9bb2a0232eee53a72679ed5077190a90</id>
<content type='text'>
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.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
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.</pre>
</div>
</content>
</entry>
<entry>
<title>[libc] [gpu] Change Time To Be Per Iteration (#101919)</title>
<updated>2024-08-05T13:27:31+00:00</updated>
<author>
<name>jameshu15869</name>
<email>55058507+jameshu15869@users.noreply.github.com</email>
</author>
<published>2024-08-05T13:27:31+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=39826b10306ea05fe79d7af3420ffd4a93718ec4'/>
<id>39826b10306ea05fe79d7af3420ffd4a93718ec4</id>
<content type='text'>
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.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
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.</pre>
</div>
</content>
</entry>
<entry>
<title>[libc] Add Generic and NVPTX Sin Benchmark (#99795)</title>
<updated>2024-07-30T03:09:11+00:00</updated>
<author>
<name>jameshu15869</name>
<email>55058507+jameshu15869@users.noreply.github.com</email>
</author>
<published>2024-07-30T03:09:11+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=677796cab327409012bab0e374e743602435edaf'/>
<id>677796cab327409012bab0e374e743602435edaf</id>
<content type='text'>
This PR adds sin benchmarking for a range of values and on a
pregenerated random distribution.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This PR adds sin benchmarking for a range of values and on a
pregenerated random distribution.</pre>
</div>
</content>
</entry>
<entry>
<title>[libc] Add Minimum Time and Iterations, Reduce Epsilon (#100838)</title>
<updated>2024-07-27T01:30:19+00:00</updated>
<author>
<name>jameshu15869</name>
<email>55058507+jameshu15869@users.noreply.github.com</email>
</author>
<published>2024-07-27T01:30:19+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=a09c0f676d3c61ba8f74a24172543c1e44d70628'/>
<id>a09c0f676d3c61ba8f74a24172543c1e44d70628</id>
<content type='text'>
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.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
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.</pre>
</div>
</content>
</entry>
<entry>
<title>[libc] Fix invalid format specifier in benchmark</title>
<updated>2024-07-22T16:21:22+00:00</updated>
<author>
<name>Joseph Huber</name>
<email>huberjn@outlook.com</email>
</author>
<published>2024-07-22T16:18:53+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=6911f823ad0e1471f523205daf976c3cf6f96bfd'/>
<id>6911f823ad0e1471f523205daf976c3cf6f96bfd</id>
<content type='text'>
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.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
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.
</pre>
</div>
</content>
</entry>
<entry>
<title>[libc] Add N Threads Benchmark Helper (#99834)</title>
<updated>2024-07-22T02:56:40+00:00</updated>
<author>
<name>jameshu15869</name>
<email>55058507+jameshu15869@users.noreply.github.com</email>
</author>
<published>2024-07-22T02:56:40+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=197b14223238716a84b423315242f8b10d8922dd'/>
<id>197b14223238716a84b423315242f8b10d8922dd</id>
<content type='text'>
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.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
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.</pre>
</div>
</content>
</entry>
<entry>
<title>[libc] Improve Benchmark UI (#99796)</title>
<updated>2024-07-21T21:40:01+00:00</updated>
<author>
<name>jameshu15869</name>
<email>55058507+jameshu15869@users.noreply.github.com</email>
</author>
<published>2024-07-21T21:40:01+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=a964f2e8a1e98d5ac1fa379ec52b6713ae5cb48a'/>
<id>a964f2e8a1e98d5ac1fa379ec52b6713ae5cb48a</id>
<content type='text'>
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 |
```</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
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 |
```</pre>
</div>
</content>
</entry>
<entry>
<title>[libc] Add Multithreaded GPU Benchmarks (#98964)</title>
<updated>2024-07-18T12:18:23+00:00</updated>
<author>
<name>jameshu15869</name>
<email>55058507+jameshu15869@users.noreply.github.com</email>
</author>
<published>2024-07-18T12:18:23+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=8badfccefeaff2c05ef71a8d2fd6d803a1b4e129'/>
<id>8badfccefeaff2c05ef71a8d2fd6d803a1b4e129</id>
<content type='text'>
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.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
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.</pre>
</div>
</content>
</entry>
<entry>
<title>[libc] Use Atomics in GPU Benchmarks (#98842)</title>
<updated>2024-07-15T12:08:23+00:00</updated>
<author>
<name>jameshu15869</name>
<email>55058507+jameshu15869@users.noreply.github.com</email>
</author>
<published>2024-07-15T12:08:23+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=b42c332d734319c8a522fa3a24642550bac5d653'/>
<id>b42c332d734319c8a522fa3a24642550bac5d653</id>
<content type='text'>
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.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
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.</pre>
</div>
</content>
</entry>
</feed>
