77 lines
2.6 KiB
Markdown
77 lines
2.6 KiB
Markdown
<!--
|
|
TEMPLATE - copy this to docs/optimization_<your_name>.md before editing.
|
|
|
|
Workflow:
|
|
1. cp docs/optimization_template.md docs/optimization_<your_name>.md
|
|
2. Fill in the fields below.
|
|
3. Add a row to the summary tables in docs/OPTIMIZATIONS.md that links to your file.
|
|
4. Delete this HTML comment block before committing.
|
|
-->
|
|
|
|
# Optimization: <name>
|
|
|
|
- **Author**: <your name>
|
|
- **Predecessor**: variant_baseline.cpp
|
|
- **File(s)**: variants/variant_<your_name>.cpp
|
|
- **Status**: <not benchmarked / negative / partial / positive>
|
|
|
|
## What this changes
|
|
|
|
<2-3 sentences. What did you change and what is the high-level idea?
|
|
No full code paste here - just a description.>
|
|
|
|
## Code (relevant snippet)
|
|
|
|
```cpp
|
|
// the part that differs from the predecessor
|
|
```
|
|
|
|
## Benchmark
|
|
|
|
Conditions: min of <N> runs, N_ITER=1000, -O3 -march=native -flto.
|
|
|
|
### x86
|
|
|
|
**Machine**:
|
|
|
|
```
|
|
<paste machine info here, e.g. CPU model, core count, RAM, manufacturer, system version>
|
|
```
|
|
|
|
**Frequency**: <e.g., 2 GHz>
|
|
|
|
| N | W(n) [Flops] | T(n) [Cycles] | Performance [Flops/Cycle] | Diff vs Predecessor |
|
|
| ---- | ------------ | ------------- | ------------------------- | ------------------- |
|
|
| 50 | | | | |
|
|
| 100 | | | | |
|
|
| 200 | | | | |
|
|
| 500 | | | | |
|
|
| 1000 | | | | |
|
|
|
|
### ARM (Apple)
|
|
|
|
**Machine**:
|
|
|
|
```
|
|
<paste machine info here, e.g. Apple M1/M2/M3/M4, chip cores, RAM>
|
|
```
|
|
|
|
**Frequency**: <e.g., 3.2 GHz>
|
|
|
|
| N | W(n) [Flops] | T(n) [Cycles] | Performance [Flops/Cycle] | Diff vs Predecessor |
|
|
| ---- | ------------ | ------------- | ------------------------- | ------------------- |
|
|
| 50 | | | | |
|
|
| 100 | | | | |
|
|
| 200 | | | | |
|
|
| 500 | | | | |
|
|
| 1000 | | | | |
|
|
|
|
## Analysis
|
|
|
|
<Why it worked or did not. What surprised you. What bottleneck this hits
|
|
or moves. Mention generated assembly or a profile if relevant.>
|
|
|
|
## Takeaway
|
|
|
|
<One short paragraph that could be lifted straight into the report.>
|