Skip to content

Commit b073f15

Browse files
committed
benchmark: clarify reference
1 parent 26e40ac commit b073f15

1 file changed

Lines changed: 11 additions & 11 deletions

File tree

benchmark/README.md

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,19 +1,19 @@
11
# Benchmark
22

3-
This directory benchmarks multiple S3 client implementations by lowering them all to a shared C ABI and loading them as shared libraries at runtime
4-
5-
The idea is:
6-
7-
- each implementation exports the same symbols, currently `initClient` and `get_object`
8-
- each implementation is compiled into its own shared library in `build/`
9-
- the host test/benchmark code loads those libraries with `dlopen`/`dlsym`
10-
- once everything looks the same at the ABI boundary, the host can exercise all implementations uniformly
11-
12-
This keeps the benchmark harness language-agnostic. The host does not need to know whether the underlying implementation was written in C++, Go, or something else. It only cares that the shared library exports the expected symbols with the expected ABI.
3+
This directory benchmarks multiple AWS S3 SDKs by lowering implementations to a tiny C ABI and loading them as shared libraries at runtime
134

145
## Prerequisite
156

16-
A local MinIO instance is expected to be running already. The current `test.cpp` uses `s3cpp` itself as a preamble to create basic scaffolding for the tests before calling each shared library implementation.
7+
A local MinIO instance is expected to be running already. The current `test.cpp` uses `s3cpp` itself as a preamble to create basic scaffolding for the tests before calling each shared library implementation
8+
9+
```bash
10+
$ docker build -t s3cpp-minio:latest ..
11+
$ docker run -d -p 9000:9000 -p 9001:9001 \
12+
-e "MINIO_ROOT_USER=minio_access" \
13+
-e "MINIO_ROOT_PASSWORD=minio_secret" \
14+
s3cpp-minio:latest \
15+
server /data --console-address ":9001"
16+
```
1717

1818
## Usage
1919

0 commit comments

Comments
 (0)