Overview
This benchmark compares several implementations of UUID parsing using optimized string validation algorithms. Current implementations:
- C++17 STL
- Rust uuid crate
- Go google/uuid
- Zig std.uuid
Benchmark Result
| Language | Average | Ops/s |
|---|---|---|
| Rust | 0.41 ms | 2.44 M |
| C++ | 0.46 ms | 2.18 M |
| Go | 0.52 ms | 1.96 M |
| Zig | 0.55 ms | 1.81 M |
C++ Example
std::vector<std::string> cache;
for(auto &v : cache){
parse_uuid(v);
}
Console Output
UUID Example 115e2d07-187a-46de-9d1f-d5bc34b58c09 Benchmark Started... d348-992a-5511-a8df-9932-114b b8b9-11fd-3318-992a-e882-4af0 YOUR-UUID-PART-1 3dc4-882c-1af2-114d-99ac-77ee 4c46-772d-1b3f-4a82-c981-119d YOUR-UUID-PART-2 b349-91ab-0022-dff1-88aa-1132 1917-8820-aa9d-332f-1199-ff01 YOUR-UUID-PART-3 c4e3-99aa-7721-dd18-44ef-102a c2d4-18ab-77dd-a911-5520-991b YOUR-UUID-PART-4 992a-bb31-5518-44de-109f-8822 YOUR-UUID-PART-5 Validation Finished Elapsed: 0.412 ms Status: PASS
Notes
All benchmark results are collected using identical workloads with warmed cache and release optimization enabled. The parser validates canonical UUID formatting, hexadecimal conversion and checksum verification.