Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
45 changes: 45 additions & 0 deletions esdk-performance-testing/benchmarks/go/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
# ESDK Go Benchmark

Performance benchmark suite for the AWS Encryption SDK (ESDK) Go implementation.

## Quick Start

```bash
# Run quick benchmark
go run . --config ../../config/test-scenarios.yaml --quick

# Run full benchmark
go run . --config ../../config/test-scenarios.yaml
```

## Build

```bash
# Build release binary
go build -o esdk-benchmark .

# Run built binary
./esdk-benchmark --quick
```

## Configuration

The benchmark uses YAML configuration files. See `../../config/test-scenarios.yaml` for the full configuration format.

### Quick Mode

Quick mode runs a subset of tests with reduced iterations:

- Only runs test types specified in `quick_config.test_types`
- Uses smaller data sizes from `quick_config.data_sizes.small`
- Fewer iterations: `quick_config.iterations.measurement`

## Test Types

- **throughput**: Measures operations per second and latency
- **memory**: Measures peak memory usage during operations
- **concurrency**: Tests performance under concurrent load

## Output

Results are saved to JSON format in `../../results/raw-data/go_results.json` by default.
Loading
Loading