Skip to content

Commit 943f4cc

Browse files
committed
update README
1 parent a6cf03a commit 943f4cc

1 file changed

Lines changed: 61 additions & 0 deletions

File tree

README.md

Lines changed: 61 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,61 @@
1+
# Simple GPU Benchmarking Project
2+
3+
A GPU benchmarking project using **OpenCL** and **C++** with **Python** automation.
4+
Demonstrates low-level GPU programming, kernel execution, and automation for performance testing.
5+
6+
## Requirements
7+
8+
- **C++ compiler** supporting C++17 (MSVC, GCC, Clang)
9+
- **CMake** ≥ 3.10
10+
- **OpenCL SDK** (AMD, NVIDIA, Intel, or generic)
11+
- **Python** 3.x (for automation scripts)
12+
- **Windows** 11
13+
14+
## Building and Running
15+
16+
### 1. Build the C++ Benchmark
17+
18+
Open a terminal in the project root. Create and navigate to the build directory:
19+
20+
```bash
21+
mkdir build
22+
cd build
23+
```
24+
### 2. Configure the project with CMake:
25+
26+
```bash
27+
cmake ..
28+
```
29+
### 3. Build the executable:
30+
```bash
31+
cmake --build .
32+
```
33+
34+
The executable will be created in `build/` as `benchmark.exe`.
35+
36+
### 4. Running
37+
#### From Terminal:
38+
```bash
39+
./build/benchmark [device_index] [vector_size]
40+
```
41+
42+
43+
- `device_index` (optional, default 0): GPU device to use
44+
45+
- `vector_size` (optional, default 2^26): Number of elements in the vectors
46+
47+
Example:
48+
49+
```bash
50+
./build/benchmark 0 8192
51+
```
52+
53+
#### From Python Automation Script:
54+
55+
Navigate to the automation/ folder. Run the script:
56+
57+
```bash
58+
python run_benchmarks.py
59+
```
60+
61+
Results saved to `automation\benchmark_results.csv`

0 commit comments

Comments
 (0)