diff --git a/README.md b/README.md index 612c10c5..13973baf 100644 --- a/README.md +++ b/README.md @@ -178,17 +178,17 @@ Output on a modern terminal with Unicode support: | Library | Method | Run Time, s | |-------------------|---------------|-------------| -| libc | printf | 0.91 | -| libc++ | std::ostream | 2.49 | -| {fmt} 9.1 | fmt::print | 0.74 | -| Boost Format 1.80 | boost::format | 6.26 | -| Folly Format | folly::format | 1.87 | +| libc | printf | 0.66 | +| libc++ | std::ostream | 1.63 | +| {fmt} 12.1 | fmt::print | 0.44 | +| Boost Format 1.88 | boost::format | 3.89 | +| Folly Format | folly::format | 1.28 | -{fmt} is the fastest of the benchmarked methods, \~20% faster than +{fmt} is the fastest of the benchmarked methods, \~50% faster than `printf`. The above results were generated by building `tinyformat_test.cpp` on -macOS 12.6.1 with `clang++ -O3 -DNDEBUG -DSPEED_TEST -DHAVE_FORMAT`, and +macOS 15.6.1 with `clang++ -O3 -DNDEBUG -DSPEED_TEST -DHAVE_FORMAT`, and taking the best of three runs. In the test, the format string `"%0.10f:%04d:%+g:%s:%p:%c:%%\n"` or equivalent is filled 2,000,000 times with output sent to `/dev/null`; for further details refer to the