diff options
author | David Robillard <d@drobilla.net> | 2022-06-12 19:26:04 -0400 |
---|---|---|
committer | David Robillard <d@drobilla.net> | 2022-06-12 21:04:21 -0400 |
commit | d124ac405cfa08152d1f440e8dbe479084a3d23e (patch) | |
tree | 7e42c9a36005ed9341c4d79d854cc2e32c3b9104 /README.md | |
parent | 7b4298638cdc7cc8f359587cf47e37655b6eb309 (diff) | |
download | serd-d124ac405cfa08152d1f440e8dbe479084a3d23e.tar.gz serd-d124ac405cfa08152d1f440e8dbe479084a3d23e.tar.bz2 serd-d124ac405cfa08152d1f440e8dbe479084a3d23e.zip |
Update benchmarks
Diffstat (limited to 'README.md')
-rw-r--r-- | README.md | 14 |
1 files changed, 8 insertions, 6 deletions
@@ -18,8 +18,8 @@ Features than the C standard library. It is known to compile with GCC, Clang, and MSVC (as C++), and is tested on GNU/Linux, MacOS, and Windows. - * **Small:** Serd is implemented in a few thousand lines of C. It typically - compiles to about 100 KiB, or about 50 KiB stripped with size optimizations. + * **Small:** Serd is implemented in a few thousand lines of C. When optimized, + it compiles to well under 100 KiB. * **Fast and Lightweight:** Serd can stream abbreviated Turtle, unlike many tools which must first build an internal model. This makes it particularly @@ -33,15 +33,16 @@ Features specification, and includes many additional tests which were written manually or discovered with fuzz testing. The test suite is run continuously on many platforms, has 100% code coverage by line, and runs - with zero memory errors or leaks. + with zero memory errors or leaks. Code quality is continuously checked + statically by [clang-tidy][], and dynamically by various clang sanitizers. Performance ----------- The benchmarks below compare `serdi`, [rapper][], and [riot][] re-serialising -Turtle data generated by [sp2b][] on an i7-4980HQ running Debian 9. Of the -three, `serdi` is the fastest by a wide margin, and the only one that uses a -constant amount of memory (a single page) for all input sizes. +Turtle data generated by [sp2b][] on an AMD 1950x. Of the three, `serdi` is +the fastest by a wide margin, and the only one that uses a constant amount of +memory for all input sizes. ![Time](doc/serdi-time.svg) ![Throughput](doc/serdi-throughput.svg) @@ -74,6 +75,7 @@ should preserve). To build against serd, use the pkg-config package `serd-0`: [NQuads]: https://www.w3.org/TR/n-quads/ [Free Software]: http://www.gnu.org/philosophy/free-sw.html [ISC license]: http://opensource.org/licenses/isc +[clang-tidy]: https://clang.llvm.org/extra/clang-tidy/ [rapper]: http://librdf.org/raptor/ [riot]: https://jena.apache.org/ [sp2b]: http://www2.informatik.uni-freiburg.de/~mschmidt/docs/sp2b.pdf |