-
Notifications
You must be signed in to change notification settings - Fork 18
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Remove use of notty for formatting benchmark results #71
Conversation
8654596
to
06dcedb
Compare
A couple of the new test platforms fail with:
I think we can remove this once #70 is merged, since liburing.h pulls it in correctly (cc @bikallem). Also, it appears that #37 is fixed now! |
Yes, "liburing.h" defines I originally intended to just use "liburing.h" with dune configurator but wasn't successful. So #70 should make "<linux/time_types.h>" redundant and can be removed. EDIT: I have added some comments on the #70 itself. |
OK, I merged #70 and rebased on that, which has fixed the errors. |
It prevents uring from being tested on OCaml 5.
CHANGES: New features: - Add `Uring.timeout` (@bikallem ocaml-multicore/ocaml-uring#59). - Add `Uring.read` and `Uring.write` (@haesbaert ocaml-multicore/ocaml-uring#62). These are simple wrappers for read(2) and write(2). - Add `Uring.unlink` (@talex5 ocaml-multicore/ocaml-uring#65). This uses unlinkat(2), and so can also be used to remove directories. - Add support for uring probes (@talex5 ocaml-multicore/ocaml-uring#70). Allows checking whether a feature is supported by the kernel at runtime. - Rename `peek` to `get_cqe_nonblocking` (@talex5 ocaml-multicore/ocaml-uring#67). The old name was confusing because it does remove the item from the ring. - Update to liburing 2.2 (@talex5 ocaml-multicore/ocaml-uring#56). - Add `Uring.active_ops` (@talex5 ocaml-multicore/ocaml-uring#68). Avoids needing to track the value returned by `submit`, which is important as it is sometimes called automatically. - Add `Uring.iov_max` constant (@talex5 ocaml-multicore/ocaml-uring#76). - Add `Uring.get_debug_stats` (@talex5 ocaml-multicore/ocaml-uring#64). This should make it easier to check that the uring is behaving as expected. Performance: - Introduce a Sketch buffer per Uring (@haesbaert ocaml-multicore/ocaml-uring#63). The main motivation of this change is to avoid having one malloc per packet in readv(2), writev(2) and friends. - Use `submit_and_wait` where appropriate (@haesbaert ocaml-multicore/ocaml-uring#69). - Add a `readv` benchmark (@talex5 ocaml-multicore/ocaml-uring#64). - Avoid unnecessary use of `CAMLparam` in the C stubs (@haesbaert ocaml-multicore/ocaml-uring#61). Bug fixes: - Prevent ring from being used after exit (@talex5 ocaml-multicore/ocaml-uring#78). Build changes: - Remove use of notty for formatting benchmark results (@talex5 ocaml-multicore/ocaml-uring#71). It prevented uring from being tested on OCaml 5. - Use MDX for README (@talex5 ocaml-multicore/ocaml-uring#57). - Convert tests to MDX (@talex5 ocaml-multicore/ocaml-uring#58 ocaml-multicore/ocaml-uring#73). - Use opam-repository syntax for license (@kit-ty-kate ocaml-multicore/ocaml-uring#72). - Remove internal `is_dirty` flag (@talex5 ocaml-multicore/ocaml-uring#77).
The dependency on notty prevents uring from being tested on OCaml 5.
Old output:
New output:
The units have gone, but on the plus side you can now graph it as CSV data.
The results do seem to be slightly different, though, which is odd. Hmm. Restoring the
List.iter (fun v -> Bechamel_notty.Unit.add v (Measure.unit v)) metrics;
line affects things:@dinosaure: is this the right way to do this?