Organisationsocaml-multicorepicos7434f8 (new-mpmc-queue)macos-homebrew-4.14_arm64_opam-2.3

macos-homebrew-4.14_arm64_opam-2.3

Link Copied
Code Copied

Logs

2025-06-12 14:21.41: New job: test ocaml-multicore/picos https://github.com/ocaml-multicore/picos.git#refs/heads/new-mpmc-queue (7434f839cd89c64d35902475ba6bf61c3f11e241) (macos-arm64:macos-homebrew-4.14_arm64_opam-2.3)
Base: macos-homebrew-ocaml-4.14
Opam project build


To reproduce locally:


git clone --recursive "https://github.com/ocaml-multicore/picos.git" -b "new-mpmc-queue" && cd "picos" && git reset --hard 7434f839
cat > Dockerfile <<'END-OF-DOCKERFILE'
FROM macos-homebrew-ocaml-4.14
# macos-homebrew-4.14_arm64_opam-2.3
USER 1000:1000
ENV CLICOLOR_FORCE="1"
ENV OPAMCOLOR="always"
RUN ln -f ~/local/bin/opam-2.3 ~/local/bin/opam
RUN opam init --reinit -ni
RUN uname -rs && opam exec -- ocaml -version && opam --version
RUN cd ~/opam-repository && (git cat-file -e a28eb8a148feb4fbc6466fa0791668993513dbde || git fetch origin master) && git reset -q --hard a28eb8a148feb4fbc6466fa0791668993513dbde && git log --no-decorate -n1 --oneline && opam update -u
COPY --chown=1000:1000 picos_std.opam picos_mux.opam picos_meta.opam picos_lwt.opam picos_io_cohttp.opam picos_io.opam picos_aux.opam picos.opam ./src/./
RUN opam pin add -yn picos_std.dev './src/./' && \
opam pin add -yn picos_mux.dev './src/./' && \
opam pin add -yn picos_meta.dev './src/./' && \
opam pin add -yn picos_lwt.dev './src/./' && \
opam pin add -yn picos_io_cohttp.dev './src/./' && \
opam pin add -yn picos_io.dev './src/./' && \
opam pin add -yn picos_aux.dev './src/./' && \
opam pin add -yn picos.dev './src/./'
RUN echo '(lang dune 3.0)' > './src/./dune-project'
ENV DEPS="alcotest.1.9.0 angstrom.0.16.1 asn1-combinators.0.3.2 astring.0.8.5 backoff.0.1.1 base.v0.16.4 base-bigarray.base base-bytes.base base-threads.base base-unix.base base64.3.5.1 bigstringaf.0.10.0 bos.0.2.1 ca-certs.1.0.1 camlp-streams.5.0.1 cmdliner.1.3.0 cohttp.6.1.1 cohttp-lwt.6.1.1 cohttp-lwt-unix.6.1.1 conduit.8.0.0 conduit-lwt.8.0.0 conduit-lwt-unix.8.0.0 conf-gmp.5 conf-gmp-powm-sec.4 conf-npm.1 conf-pkg-config.4 containers.3.16 cppo.1.8.0 csexp.1.5.2 digestif.1.3.0 domain-local-await.1.0.1 domain-name.0.4.1 domain_shims.0.1.0 dscheck.0.5.0 dune.3.19.1 dune-configurator.3.19.1 duration.0.2.1 either.1.0.0 eqaf.0.10 fmt.0.10.0 fpath.0.7.3 gen.1.1 gmap.0.3.0 http.6.1.1 ipaddr.5.6.0 ipaddr-sexp.5.6.0 js_of_ocaml.6.0.1 js_of_ocaml-compiler.6.0.1 kdf.1.0.0 logs.0.8.0 lwt.5.9.1 macaddr.5.6.0 magic-mime.1.3.1 mdx.2.5.0 menhir.20240715 menhirCST.20240715 menhirLib.20240715 menhirSdk.20240715 mirage-crypto.2.0.1 mirage-crypto-ec.2.0.1 mirage-crypto-pk.2.0.1 mirage-crypto-rng.2.0.1 mtime.2.1.0 multicore-bench.0.1.7 multicore-magic.2.3.1 multicore-magic-dscheck.2.3.1 ocaml.4.14.2 ocaml-base-compiler.4.14.2 ocaml-compiler-libs.v0.12.4 ocaml-config.2 ocaml-options-vanilla.1 ocaml-syntax-shims.1.0.0 ocaml-version.4.0.1 ocamlbuild.0.16.1 ocamlfind.1.9.8 ocplib-endian.1.2 ohex.0.2.0 oseq.0.5.1 ppx_derivers.1.2.1 ppx_sexp_conv.v0.16.0 ppxlib.0.35.0 psq.0.2.1 ptime.1.2.0 qcheck-core.0.25 qcheck-multicoretests-util.0.8 qcheck-stm.0.8 re.1.12.0 result.1.5 rresult.0.7.0 sedlex.3.6 seq.base sexplib0.v0.16.0 stdlib-shims.0.3.0 stringext.1.6.0 thread-local-storage.0.2 thread-table.1.0.0 topkg.1.0.8 tsort.2.2.0 uri.4.4.0 uri-sexp.4.4.0 uutf.1.0.4 x509.1.0.6 yojson.3.0.0 zarith.1.14"
ENV CI="true"
ENV OCAMLCI="true"
RUN opam update --depexts && opam install --cli=2.3 --depext-only -y picos_std.dev picos_mux.dev picos_meta.dev picos_lwt.dev picos_io_cohttp.dev picos_io.dev picos_aux.dev picos.dev $DEPS
RUN opam install $DEPS
COPY --chown=1000:1000 . ./src
RUN cd ./src && opam exec -- dune build @install @check @runtest && rm -rf _build


END-OF-DOCKERFILE
docker build .
END-REPRO-BLOCK


2025-06-12 14:21.41: Using cache hint "ocaml-multicore/picos-macos-homebrew-ocaml-4.14-macos-homebrew-4.14_arm64_opam-2.3-ee595c537a649331e4717df8755bc17e"
2025-06-12 14:21.41: Using OBuilder spec:
((from macos-homebrew-ocaml-4.14)
(comment macos-homebrew-4.14_arm64_opam-2.3)
(user (uid 1000) (gid 1000))
(env CLICOLOR_FORCE 1)
(env OPAMCOLOR always)
(run (shell "ln -f ~/local/bin/opam-2.3 ~/local/bin/opam"))
(run (shell "opam init --reinit -ni"))
(run (shell "uname -rs && opam exec -- ocaml -version && opam --version"))
(run (cache (opam-archives (target /Users/mac1000/.opam/download-cache)) (homebrew (target /Users/mac1000/Library/Caches/Homebrew)))
(network host)
(shell "cd ~/opam-repository && (git cat-file -e a28eb8a148feb4fbc6466fa0791668993513dbde || git fetch origin master) && git reset -q --hard a28eb8a148feb4fbc6466fa0791668993513dbde && git log --no-decorate -n1 --oneline && opam update -u"))
(copy (src picos_std.opam picos_mux.opam picos_meta.opam picos_lwt.opam picos_io_cohttp.opam picos_io.opam picos_aux.opam picos.opam)
(dst ./src/./))
(run (network host)
(shell  "opam pin add -yn picos_std.dev './src/./' && \
\nopam pin add -yn picos_mux.dev './src/./' && \
\nopam pin add -yn picos_meta.dev './src/./' && \
\nopam pin add -yn picos_lwt.dev './src/./' && \
\nopam pin add -yn picos_io_cohttp.dev './src/./' && \
\nopam pin add -yn picos_io.dev './src/./' && \
\nopam pin add -yn picos_aux.dev './src/./' && \
\nopam pin add -yn picos.dev './src/./'"))
(run (network host)
(shell "echo '(lang dune 3.0)' > './src/./dune-project'"))
(env DEPS "alcotest.1.9.0 angstrom.0.16.1 asn1-combinators.0.3.2 astring.0.8.5 backoff.0.1.1 base.v0.16.4 base-bigarray.base base-bytes.base base-threads.base base-unix.base base64.3.5.1 bigstringaf.0.10.0 bos.0.2.1 ca-certs.1.0.1 camlp-streams.5.0.1 cmdliner.1.3.0 cohttp.6.1.1 cohttp-lwt.6.1.1 cohttp-lwt-unix.6.1.1 conduit.8.0.0 conduit-lwt.8.0.0 conduit-lwt-unix.8.0.0 conf-gmp.5 conf-gmp-powm-sec.4 conf-npm.1 conf-pkg-config.4 containers.3.16 cppo.1.8.0 csexp.1.5.2 digestif.1.3.0 domain-local-await.1.0.1 domain-name.0.4.1 domain_shims.0.1.0 dscheck.0.5.0 dune.3.19.1 dune-configurator.3.19.1 duration.0.2.1 either.1.0.0 eqaf.0.10 fmt.0.10.0 fpath.0.7.3 gen.1.1 gmap.0.3.0 http.6.1.1 ipaddr.5.6.0 ipaddr-sexp.5.6.0 js_of_ocaml.6.0.1 js_of_ocaml-compiler.6.0.1 kdf.1.0.0 logs.0.8.0 lwt.5.9.1 macaddr.5.6.0 magic-mime.1.3.1 mdx.2.5.0 menhir.20240715 menhirCST.20240715 menhirLib.20240715 menhirSdk.20240715 mirage-crypto.2.0.1 mirage-crypto-ec.2.0.1 mirage-crypto-pk.2.0.1 mirage-crypto-rng.2.0.1 mtime.2.1.0 multicore-bench.0.1.7 multicore-magic.2.3.1 multicore-magic-dscheck.2.3.1 ocaml.4.14.2 ocaml-base-compiler.4.14.2 ocaml-compiler-libs.v0.12.4 ocaml-config.2 ocaml-options-vanilla.1 ocaml-syntax-shims.1.0.0 ocaml-version.4.0.1 ocamlbuild.0.16.1 ocamlfind.1.9.8 ocplib-endian.1.2 ohex.0.2.0 oseq.0.5.1 ppx_derivers.1.2.1 ppx_sexp_conv.v0.16.0 ppxlib.0.35.0 psq.0.2.1 ptime.1.2.0 qcheck-core.0.25 qcheck-multicoretests-util.0.8 qcheck-stm.0.8 re.1.12.0 result.1.5 rresult.0.7.0 sedlex.3.6 seq.base sexplib0.v0.16.0 stdlib-shims.0.3.0 stringext.1.6.0 thread-local-storage.0.2 thread-table.1.0.0 topkg.1.0.8 tsort.2.2.0 uri.4.4.0 uri-sexp.4.4.0 uutf.1.0.4 x509.1.0.6 yojson.3.0.0 zarith.1.14")
(env CI true)
(env OCAMLCI true)
(run (cache (opam-archives (target /Users/mac1000/.opam/download-cache)) (homebrew (target /Users/mac1000/Library/Caches/Homebrew)))
(network host)
(shell "opam update --depexts && opam install --cli=2.3 --depext-only -y picos_std.dev picos_mux.dev picos_meta.dev picos_lwt.dev picos_io_cohttp.dev picos_io.dev picos_aux.dev picos.dev $DEPS"))
(run (cache (opam-archives (target /Users/mac1000/.opam/download-cache)) (homebrew (target /Users/mac1000/Library/Caches/Homebrew)))
(network host)
(shell "opam install $DEPS"))
(copy (src .) (dst ./src))
(run (shell "cd ./src && opam exec -- dune build @install @check @runtest && rm -rf _build"))
)


2025-06-12 14:21.41: Waiting for resource in pool OCluster
2025-06-12 23:03.46: Waiting for worker…
2025-06-13 01:34.30: Got resource from pool OCluster
Building on m1-worker-04
All commits already cached
HEAD is now at 7434f83 New MPMC queue using cooperative pointer reversal


(from macos-homebrew-ocaml-4.14)
2025-06-13 01:39.32 ---> using "0c60f117aee57abea8364cb033d47bb1d63ff0f68e5ee97378e032498e8442af" from cache


/: (comment macos-homebrew-4.14_arm64_opam-2.3)


/: (user (uid 1000) (gid 1000))


/: (env CLICOLOR_FORCE 1)


/: (env OPAMCOLOR always)


/: (run (shell "ln -f ~/local/bin/opam-2.3 ~/local/bin/opam"))
2025-06-13 01:39.32 ---> using "d185bb362ab7a62e22c76fe28c4578fe7a4e17f7cc7bc09a3073972dfb5efd3b" from cache


/: (run (shell "opam init --reinit -ni"))
No configuration file found, using built-in defaults.
Checking for available remotes: rsync and local, git.
- you won't be able to use mercurial repositories unless you install the hg command on your system.
- you won't be able to use darcs repositories unless you install the darcs command on your system.


This version of opam requires an update to the layout of /Users/mac1000/.opam from version 2.1 to version 2.2, which can't be reverted.
You may want to back it up before going further.


Continue? [y/n] y
[NOTE] The 'jobs' option was reset, its value was 1 and its new value will vary according to the current number of cores on your machine. You can restore the fixed value using:
opam option jobs=1 --global
Format upgrade done.


<><> Updating repositories ><><><><><><><><><><><><><><><><><><><><><><><><><><>
[default] no changes from git+file:///Users/mac1000/opam-repository
2025-06-13 01:39.32 ---> using "1a239dab0512a5f76e4948de67b26faca67b4de935df003aa7f81d4e2d68958d" from cache


/: (run (shell "uname -rs && opam exec -- ocaml -version && opam --version"))
Darwin 23.4.0
The OCaml toplevel, version 4.14.2
2.3.0
2025-06-13 01:39.32 ---> using "f52eecff7be584d99550d2f8c42b8f22f9135c2276c46c827a485f089226c5ac" from cache


/: (run (cache (opam-archives (target /Users/mac1000/.opam/download-cache)) (homebrew (target /Users/mac1000/Library/Caches/Homebrew)))
(network host)
(shell "cd ~/opam-repository && (git cat-file -e a28eb8a148feb4fbc6466fa0791668993513dbde || git fetch origin master) && git reset -q --hard a28eb8a148feb4fbc6466fa0791668993513dbde && git log --no-decorate -n1 --oneline && opam update -u"))
From https://github.com/ocaml/opam-repository
* branch                  master     -> FETCH_HEAD
67e940587b..a28eb8a148  master     -> origin/master
a28eb8a148 Merge pull request #28017 from maiste/release-dune-3.19.1


<><> Updating package repositories ><><><><><><><><><><><><><><><><><><><><><><>
[default] synchronised from git+file:///Users/mac1000/opam-repository


Everything as up-to-date as possible (run with --verbose to show unavailable upgrades).


The following packages are not being upgraded because the new versions conflict with other installed packages:
- ocaml.5.5.0
- ocaml-config.3
However, you may "opam upgrade" these packages explicitly, which will ask permission to downgrade or uninstall the conflicting packages.
Nothing to do.
# To update the current shell environment, run: eval $(opam env)
2025-06-13 01:39.33 ---> using "cbe0def484142b57e323ed60e71b5ea1be1c62ce432e64083775819603125847" from cache


/: (copy (src picos_std.opam picos_mux.opam picos_meta.opam picos_lwt.opam picos_io_cohttp.opam picos_io.opam picos_aux.opam picos.opam)
(dst ./src/./))
2025-06-13 01:39.33 ---> using "34d3b9b06a6a0f0d869db63c956b25714498a0437cecf92c8576ff4dbe597c91" from cache


/: (run (network host)
(shell  "opam pin add -yn picos_std.dev './src/./' && \
\nopam pin add -yn picos_mux.dev './src/./' && \
\nopam pin add -yn picos_meta.dev './src/./' && \
\nopam pin add -yn picos_lwt.dev './src/./' && \
\nopam pin add -yn picos_io_cohttp.dev './src/./' && \
\nopam pin add -yn picos_io.dev './src/./' && \
\nopam pin add -yn picos_aux.dev './src/./' && \
\nopam pin add -yn picos.dev './src/./'"))
[picos_std.dev] synchronised (file:///Users/mac1000/src)
picos_std is now pinned to file:///Users/mac1000/src (version dev)
[picos_mux.dev] synchronised (file:///Users/mac1000/src)
picos_mux is now pinned to file:///Users/mac1000/src (version dev)
[picos_meta.dev] synchronised (file:///Users/mac1000/src)
picos_meta is now pinned to file:///Users/mac1000/src (version dev)
[picos_lwt.dev] synchronised (file:///Users/mac1000/src)
picos_lwt is now pinned to file:///Users/mac1000/src (version dev)
[picos_io_cohttp.dev] synchronised (file:///Users/mac1000/src)
picos_io_cohttp is now pinned to file:///Users/mac1000/src (version dev)
[picos_io.dev] synchronised (file:///Users/mac1000/src)
picos_io is now pinned to file:///Users/mac1000/src (version dev)
[picos_aux.dev] synchronised (file:///Users/mac1000/src)
picos_aux is now pinned to file:///Users/mac1000/src (version dev)
[picos.dev] synchronised (file:///Users/mac1000/src)
picos is now pinned to file:///Users/mac1000/src (version dev)
2025-06-13 01:39.33 ---> using "eb96bc95a553348a75a0e5613607aa5944e013b6ab38d2b2c6ded9b61c816394" from cache


/: (run (network host)
(shell "echo '(lang dune 3.0)' > './src/./dune-project'"))
2025-06-13 01:39.33 ---> using "40a1080d1dbcf496924de9c83fc35e77a22ade1a5f369bf2440237ba43ead39c" from cache


/: (env DEPS "alcotest.1.9.0 angstrom.0.16.1 asn1-combinators.0.3.2 astring.0.8.5 backoff.0.1.1 base.v0.16.4 base-bigarray.base base-bytes.base base-threads.base base-unix.base base64.3.5.1 bigstringaf.0.10.0 bos.0.2.1 ca-certs.1.0.1 camlp-streams.5.0.1 cmdliner.1.3.0 cohttp.6.1.1 cohttp-lwt.6.1.1 cohttp-lwt-unix.6.1.1 conduit.8.0.0 conduit-lwt.8.0.0 conduit-lwt-unix.8.0.0 conf-gmp.5 conf-gmp-powm-sec.4 conf-npm.1 conf-pkg-config.4 containers.3.16 cppo.1.8.0 csexp.1.5.2 digestif.1.3.0 domain-local-await.1.0.1 domain-name.0.4.1 domain_shims.0.1.0 dscheck.0.5.0 dune.3.19.1 dune-configurator.3.19.1 duration.0.2.1 either.1.0.0 eqaf.0.10 fmt.0.10.0 fpath.0.7.3 gen.1.1 gmap.0.3.0 http.6.1.1 ipaddr.5.6.0 ipaddr-sexp.5.6.0 js_of_ocaml.6.0.1 js_of_ocaml-compiler.6.0.1 kdf.1.0.0 logs.0.8.0 lwt.5.9.1 macaddr.5.6.0 magic-mime.1.3.1 mdx.2.5.0 menhir.20240715 menhirCST.20240715 menhirLib.20240715 menhirSdk.20240715 mirage-crypto.2.0.1 mirage-crypto-ec.2.0.1 mirage-crypto-pk.2.0.1 mirage-crypto-rng.2.0.1 mtime.2.1.0 multicore-bench.0.1.7 multicore-magic.2.3.1 multicore-magic-dscheck.2.3.1 ocaml.4.14.2 ocaml-base-compiler.4.14.2 ocaml-compiler-libs.v0.12.4 ocaml-config.2 ocaml-options-vanilla.1 ocaml-syntax-shims.1.0.0 ocaml-version.4.0.1 ocamlbuild.0.16.1 ocamlfind.1.9.8 ocplib-endian.1.2 ohex.0.2.0 oseq.0.5.1 ppx_derivers.1.2.1 ppx_sexp_conv.v0.16.0 ppxlib.0.35.0 psq.0.2.1 ptime.1.2.0 qcheck-core.0.25 qcheck-multicoretests-util.0.8 qcheck-stm.0.8 re.1.12.0 result.1.5 rresult.0.7.0 sedlex.3.6 seq.base sexplib0.v0.16.0 stdlib-shims.0.3.0 stringext.1.6.0 thread-local-storage.0.2 thread-table.1.0.0 topkg.1.0.8 tsort.2.2.0 uri.4.4.0 uri-sexp.4.4.0 uutf.1.0.4 x509.1.0.6 yojson.3.0.0 zarith.1.14")


/: (env CI true)


/: (env OCAMLCI true)


/: (run (cache (opam-archives (target /Users/mac1000/.opam/download-cache)) (homebrew (target /Users/mac1000/Library/Caches/Homebrew)))
(network host)
(shell "opam update --depexts && opam install --cli=2.3 --depext-only -y picos_std.dev picos_mux.dev picos_meta.dev picos_lwt.dev picos_io_cohttp.dev picos_io.dev picos_aux.dev picos.dev $DEPS"))
+ /opt/homebrew/bin/brew "update"
- ==> Updating Homebrew...
- Already up-to-date.


<><> Synchronising pinned packages ><><><><><><><><><><><><><><><><><><><><><><>
[picos.dev] synchronised (file:///Users/mac1000/src)
[picos_io.dev] synchronised (file:///Users/mac1000/src)
[picos_aux.dev] synchronised (file:///Users/mac1000/src)
[picos_io_cohttp.dev] synchronised (file:///Users/mac1000/src)
[picos_lwt.dev] synchronised (file:///Users/mac1000/src)
[picos_meta.dev] synchronised (file:///Users/mac1000/src)
[picos_mux.dev] synchronised (file:///Users/mac1000/src)
[picos_std.dev] synchronised (file:///Users/mac1000/src)


[NOTE] Package ocaml-options-vanilla is already installed (current version is 1).
[NOTE] Package ocaml-config is already installed (current version is 2).
[NOTE] Package ocaml-base-compiler is already installed (current version is 4.14.2).
[NOTE] Package ocaml is already installed (current version is 4.14.2).
[NOTE] Package base-unix is already installed (current version is base).
[NOTE] Package base-threads is already installed (current version is base).
[NOTE] Package base-bigarray is already installed (current version is base).


The following system packages will first need to be installed:
gmp node pkgconf


<><> Handling external dependencies <><><><><><><><><><><><><><><><><><><><><><>


+ /opt/homebrew/bin/brew "install" "gmp" "node" "pkgconf"
- ==> Downloading https://ghcr.io/v2/homebrew/core/gmp/manifests/6.3.0
- Already downloaded: /Users/mac1000/Library/Caches/Homebrew/downloads/70a72a71216843d66a953c06ff6337445ce9bc94fae9f0e301e2f59005274a8e--gmp-6.3.0.bottle_manifest.json
- ==> Fetching gmp
- ==> Downloading https://ghcr.io/v2/homebrew/core/gmp/blobs/sha256:6683d73d6677d28e1e8d1b92d6ebfbc068c1d33e19b79114a22a648a99ba5991
- Already downloaded: /Users/mac1000/Library/Caches/Homebrew/downloads/a0c4a56cc56ffac0cb3f0aa5deb1b3a614002dabf65a81e14d87129c89eb7bde--gmp--6.3.0.arm64_sequoia.bottle.tar.gz
- ==> Downloading https://ghcr.io/v2/homebrew/core/node/manifests/24.2.0
- Already downloaded: /Users/mac1000/Library/Caches/Homebrew/downloads/85134fbd5bb3c5cf8afbb6e48417f3c888b31b39227d5047b6ac94f95eb9a090--node-24.2.0.bottle_manifest.json
- ==> Fetching dependencies for node: brotli, c-ares, icu4c@77, libnghttp2, libuv, ca-certificates and openssl@3
- ==> Downloading https://ghcr.io/v2/homebrew/core/brotli/manifests/1.1.0-2
- Already downloaded: /Users/mac1000/Library/Caches/Homebrew/downloads/72b36368116298518fd66e638dfbe8cb541d8db2d33e279683bbdb4b79c73e0d--brotli-1.1.0-2.bottle_manifest.json
- ==> Fetching brotli
- ==> Downloading https://ghcr.io/v2/homebrew/core/brotli/blobs/sha256:64750425b7578860d8b6a75fdb187408667f7d6523169e8dc29528bbc15309f0
- Already downloaded: /Users/mac1000/Library/Caches/Homebrew/downloads/0f8955da5257a91013dddd4713b67b6b0128b25fa5ea35e9662f69d6f5eb0848--brotli--1.1.0.arm64_sequoia.bottle.2.tar.gz
- ==> Downloading https://ghcr.io/v2/homebrew/core/c-ares/manifests/1.34.5-1
- Already downloaded: /Users/mac1000/Library/Caches/Homebrew/downloads/c52b1c91460667312755a235f78ac192a45bff39befbba6da9aa72a17263c559--c-ares-1.34.5-1.bottle_manifest.json
- ==> Fetching c-ares
- ==> Downloading https://ghcr.io/v2/homebrew/core/c-ares/blobs/sha256:76858a7f6dd6df68f7e9d13aca30a299d5947b5b6d6ce979ee660dd4ecca2bb6
- Already downloaded: /Users/mac1000/Library/Caches/Homebrew/downloads/8c423bccd2411d4f32b51122f2a0699c6d83d73384cbef7a244a126426af124c--c-ares--1.34.5.arm64_sequoia.bottle.1.tar.gz
- ==> Downloading https://ghcr.io/v2/homebrew/core/icu4c/77/manifests/77.1
- Already downloaded: /Users/mac1000/Library/Caches/Homebrew/downloads/35ec2c3adb94255ba47424a4334da9616d97e1ec6d59ed907b368535018bed0a--icu4c@77-77.1.bottle_manifest.json
- ==> Fetching icu4c@77
- ==> Downloading https://ghcr.io/v2/homebrew/core/icu4c/77/blobs/sha256:19f6b5fef0cdf1dfc7f136ca103348ec8530ffdf8012273f6ee4a6159cdfaf75
- Already downloaded: /Users/mac1000/Library/Caches/Homebrew/downloads/925ec4df8e8aece0ebfb6b26320362f5303a72fe3b19162578809e42a6a64283--icu4c@77--77.1.arm64_sequoia.bottle.tar.gz
- ==> Downloading https://ghcr.io/v2/homebrew/core/libnghttp2/manifests/1.65.0
- Already downloaded: /Users/mac1000/Library/Caches/Homebrew/downloads/5a72fb9f57dd728c5d6d30917849ae15111c3b440595f5694738ec9434c12427--libnghttp2-1.65.0.bottle_manifest.json
- ==> Fetching libnghttp2
- ==> Downloading https://ghcr.io/v2/homebrew/core/libnghttp2/blobs/sha256:492e4dadaeb76e53e56b15180eb4ab33d8e726d5766f258f94d3628382e7a8e2
- Already downloaded: /Users/mac1000/Library/Caches/Homebrew/downloads/e1d249d733dd14b5d8be8f2eabcc80755413b97aace68fc219718b9c29482580--libnghttp2--1.65.0.arm64_sequoia.bottle.tar.gz
- ==> Downloading https://ghcr.io/v2/homebrew/core/libuv/manifests/1.51.0
- Already downloaded: /Users/mac1000/Library/Caches/Homebrew/downloads/25bd9f2f86d047011dc8ca247bea2e4e3e5a150e29648418d48dfca4c8c136ea--libuv-1.51.0.bottle_manifest.json
- ==> Fetching libuv
- ==> Downloading https://ghcr.io/v2/homebrew/core/libuv/blobs/sha256:916f444748e98c1e58083df123f6ff9d90d0b0af202f4da0862a5c456804d2f2
- Already downloaded: /Users/mac1000/Library/Caches/Homebrew/downloads/9dda892b347c505a5f7bb5d37e761da4bd18c61c265e65327dee429519b70b1c--libuv--1.51.0.arm64_sequoia.bottle.tar.gz
- ==> Downloading https://ghcr.io/v2/homebrew/core/ca-certificates/manifests/2025-05-20
- Already downloaded: /Users/mac1000/Library/Caches/Homebrew/downloads/bc18acc15e0abddc102f828b57a29cfdbec1b6b002db37ad12bad9dbf0e9d12f--ca-certificates-2025-05-20.bottle_manifest.json
- ==> Fetching ca-certificates
- ==> Downloading https://ghcr.io/v2/homebrew/core/ca-certificates/blobs/sha256:dda1100e7f994081a593d6a5e422451bfa20037e29667ed2b79f011ffc9288a7
- Already downloaded: /Users/mac1000/Library/Caches/Homebrew/downloads/eb391d8baa4587df71816793a3902ad39c85bce7b1d56e379da462314f8dfedf--ca-certificates--2025-05-20.all.bottle.tar.gz
- ==> Downloading https://ghcr.io/v2/homebrew/core/openssl/3/manifests/3.5.0
- Already downloaded: /Users/mac1000/Library/Caches/Homebrew/downloads/d3c8243df37f69247721b1d8a6c51e1a8afd6664b832423921ffd99bb2bb381a--openssl@3-3.5.0.bottle_manifest.json
- ==> Fetching openssl@3
- ==> Downloading https://ghcr.io/v2/homebrew/core/openssl/3/blobs/sha256:7bbac0e84510570ec550deee1dce185569917378411263a9d1329ae395f52d70
- Already downloaded: /Users/mac1000/Library/Caches/Homebrew/downloads/9efb94548b788dba2c10935d59a63024f5ea0900f183d4c4d9a10398e426a88f--openssl@3--3.5.0.arm64_sequoia.bottle.tar.gz
- ==> Fetching node
- ==> Downloading https://ghcr.io/v2/homebrew/core/node/blobs/sha256:e88d6ae68a2c5a0a23c69e79274d7ffb2f79a3bfa6ab65df494312bc6d00aedc
- Already downloaded: /Users/mac1000/Library/Caches/Homebrew/downloads/05fcacb5f85eb420b06a6fe0ea087412ab26722267dcbce6df3deac13cee8430--node--24.2.0.arm64_sequoia.bottle.tar.gz
- ==> Downloading https://ghcr.io/v2/homebrew/core/pkgconf/manifests/2.4.3-1
- Already downloaded: /Users/mac1000/Library/Caches/Homebrew/downloads/f938254e85413ef0d18283c9c932823434b88c0c790e04e7534e2a3e923d0588--pkgconf-2.4.3-1.bottle_manifest.json
- ==> Fetching pkgconf
- ==> Downloading https://ghcr.io/v2/homebrew/core/pkgconf/blobs/sha256:3feba2e952500e4ab9261ac59a19e07c310d1147e31496f62b591e4b21b68683
- Already downloaded: /Users/mac1000/Library/Caches/Homebrew/downloads/0ce8509e6e69d74b96d152a70f97dab65c83fe0e2e9287fc2ea1292c4512f968--pkgconf--2.4.3.arm64_sequoia.bottle.1.tar.gz
- ==> Pouring gmp--6.3.0.arm64_sequoia.bottle.tar.gz
- 🍺  /opt/homebrew/Cellar/gmp/6.3.0: 22 files, 3.3MB
- ==> Running `brew cleanup gmp`...
- Disable this behaviour by setting HOMEBREW_NO_INSTALL_CLEANUP.
- Hide these hints with HOMEBREW_NO_ENV_HINTS (see `man brew`).
- ==> Installing dependencies for node: brotli, c-ares, icu4c@77, libnghttp2, libuv, ca-certificates and openssl@3
- ==> Installing node dependency: brotli
- ==> Downloading https://ghcr.io/v2/homebrew/core/brotli/manifests/1.1.0-2
- Already downloaded: /Users/mac1000/Library/Caches/Homebrew/downloads/72b36368116298518fd66e638dfbe8cb541d8db2d33e279683bbdb4b79c73e0d--brotli-1.1.0-2.bottle_manifest.json
- ==> Pouring brotli--1.1.0.arm64_sequoia.bottle.2.tar.gz
- 🍺  /opt/homebrew/Cellar/brotli/1.1.0: 28 files, 1.7MB
- ==> Installing node dependency: c-ares
- ==> Downloading https://ghcr.io/v2/homebrew/core/c-ares/manifests/1.34.5-1
- Already downloaded: /Users/mac1000/Library/Caches/Homebrew/downloads/c52b1c91460667312755a235f78ac192a45bff39befbba6da9aa72a17263c559--c-ares-1.34.5-1.bottle_manifest.json
- ==> Pouring c-ares--1.34.5.arm64_sequoia.bottle.1.tar.gz
- 🍺  /opt/homebrew/Cellar/c-ares/1.34.5: 176 files, 1020.3KB
- ==> Installing node dependency: icu4c@77
- ==> Downloading https://ghcr.io/v2/homebrew/core/icu4c/77/manifests/77.1
- Already downloaded: /Users/mac1000/Library/Caches/Homebrew/downloads/35ec2c3adb94255ba47424a4334da9616d97e1ec6d59ed907b368535018bed0a--icu4c@77-77.1.bottle_manifest.json
- ==> Pouring icu4c@77--77.1.arm64_sequoia.bottle.tar.gz
- 🍺  /opt/homebrew/Cellar/icu4c@77/77.1: 277 files, 81.2MB
- ==> Installing node dependency: libnghttp2
- ==> Downloading https://ghcr.io/v2/homebrew/core/libnghttp2/manifests/1.65.0
- Already downloaded: /Users/mac1000/Library/Caches/Homebrew/downloads/5a72fb9f57dd728c5d6d30917849ae15111c3b440595f5694738ec9434c12427--libnghttp2-1.65.0.bottle_manifest.json
- ==> Pouring libnghttp2--1.65.0.arm64_sequoia.bottle.tar.gz
- 🍺  /opt/homebrew/Cellar/libnghttp2/1.65.0: 14 files, 766KB
- ==> Installing node dependency: libuv
- ==> Downloading https://ghcr.io/v2/homebrew/core/libuv/manifests/1.51.0
- Already downloaded: /Users/mac1000/Library/Caches/Homebrew/downloads/25bd9f2f86d047011dc8ca247bea2e4e3e5a150e29648418d48dfca4c8c136ea--libuv-1.51.0.bottle_manifest.json
- ==> Pouring libuv--1.51.0.arm64_sequoia.bottle.tar.gz
- 🍺  /opt/homebrew/Cellar/libuv/1.51.0: 20 files, 1.2MB
- ==> Installing node dependency: ca-certificates
- ==> Downloading https://ghcr.io/v2/homebrew/core/ca-certificates/manifests/2025-05-20
- Already downloaded: /Users/mac1000/Library/Caches/Homebrew/downloads/bc18acc15e0abddc102f828b57a29cfdbec1b6b002db37ad12bad9dbf0e9d12f--ca-certificates-2025-05-20.bottle_manifest.json
- ==> Pouring ca-certificates--2025-05-20.all.bottle.tar.gz
- ==> Regenerating CA certificate bundle from keychain, this may take a while...
- 🍺  /opt/homebrew/Cellar/ca-certificates/2025-05-20: 4 files, 225.3KB
- ==> Installing node dependency: openssl@3
- ==> Downloading https://ghcr.io/v2/homebrew/core/openssl/3/manifests/3.5.0
- Already downloaded: /Users/mac1000/Library/Caches/Homebrew/downloads/d3c8243df37f69247721b1d8a6c51e1a8afd6664b832423921ffd99bb2bb381a--openssl@3-3.5.0.bottle_manifest.json
- ==> Pouring openssl@3--3.5.0.arm64_sequoia.bottle.tar.gz
- 🍺  /opt/homebrew/Cellar/openssl@3/3.5.0: 7,563 files, 35.1MB
- ==> Installing node
- ==> Pouring node--24.2.0.arm64_sequoia.bottle.tar.gz
- 🍺  /opt/homebrew/Cellar/node/24.2.0: 2,460 files, 98.4MB
- ==> Running `brew cleanup node`...
- ==> Pouring pkgconf--2.4.3.arm64_sequoia.bottle.1.tar.gz
- 🍺  /opt/homebrew/Cellar/pkgconf/2.4.3: 27 files, 485.2KB
- ==> Running `brew cleanup pkgconf`...
- ==> Caveats
- Bash completion has been installed to:
-   /opt/homebrew/etc/bash_completion.d
2025-06-13 01:39.33 ---> using "cbd578365d4deb835be2422ba688af5adb96681664f6259a3923b09d82916829" from cache


/: (run (cache (opam-archives (target /Users/mac1000/.opam/download-cache)) (homebrew (target /Users/mac1000/Library/Caches/Homebrew)))
(network host)
(shell "opam install $DEPS"))
[NOTE] Package ocaml-options-vanilla is already installed (current version is 1).
[NOTE] Package ocaml-config is already installed (current version is 2).
[NOTE] Package ocaml-base-compiler is already installed (current version is 4.14.2).
[NOTE] Package ocaml is already installed (current version is 4.14.2).
[NOTE] Package base-unix is already installed (current version is base).
[NOTE] Package base-threads is already installed (current version is base).
[NOTE] Package base-bigarray is already installed (current version is base).
The following actions will be performed:
=== install 97 packages
- install alcotest                   1.9.0
- install angstrom                   0.16.1
- install asn1-combinators           0.3.2
- install astring                    0.8.5
- install backoff                    0.1.1
- install base                       v0.16.4
- install base-bytes                 base
- install base64                     3.5.1
- install bigstringaf                0.10.0
- install bos                        0.2.1
- install ca-certs                   1.0.1
- install camlp-streams              5.0.1
- install cmdliner                   1.3.0
- install cohttp                     6.1.1
- install cohttp-lwt                 6.1.1
- install cohttp-lwt-unix            6.1.1
- install conduit                    8.0.0
- install conduit-lwt                8.0.0
- install conduit-lwt-unix           8.0.0
- install conf-gmp                   5
- install conf-gmp-powm-sec          4
- install conf-npm                   1
- install conf-pkg-config            4
- install containers                 3.16
- install cppo                       1.8.0
- install csexp                      1.5.2
- install digestif                   1.3.0
- install domain-local-await         1.0.1
- install domain-name                0.4.1
- install domain_shims               0.1.0
- install dscheck                    0.5.0
- install dune                       3.19.1
- install dune-configurator          3.19.1
- install duration                   0.2.1
- install either                     1.0.0
- install eqaf                       0.10
- install fmt                        0.10.0
- install fpath                      0.7.3
- install gen                        1.1
- install gmap                       0.3.0
- install http                       6.1.1
- install ipaddr                     5.6.0
- install ipaddr-sexp                5.6.0
- install js_of_ocaml                6.0.1
- install js_of_ocaml-compiler       6.0.1
- install kdf                        1.0.0
- install logs                       0.8.0
- install lwt                        5.9.1
- install macaddr                    5.6.0
- install magic-mime                 1.3.1
- install mdx                        2.5.0
- install menhir                     20240715
- install menhirCST                  20240715
- install menhirLib                  20240715
- install menhirSdk                  20240715
- install mirage-crypto              2.0.1
- install mirage-crypto-ec           2.0.1
- install mirage-crypto-pk           2.0.1
- install mirage-crypto-rng          2.0.1
- install mtime                      2.1.0
- install multicore-bench            0.1.7
- install multicore-magic            2.3.1
- install multicore-magic-dscheck    2.3.1
- install ocaml-compiler-libs        v0.12.4
- install ocaml-syntax-shims         1.0.0
- install ocaml-version              4.0.1
- install ocamlbuild                 0.16.1
- install ocamlfind                  1.9.8
- install ocplib-endian              1.2
- install ohex                       0.2.0
- install oseq                       0.5.1
- install ppx_derivers               1.2.1
- install ppx_sexp_conv              v0.16.0
- install ppxlib                     0.35.0
- install psq                        0.2.1
- install ptime                      1.2.0
- install qcheck-core                0.25
- install qcheck-multicoretests-util 0.8
- install qcheck-stm                 0.8
- install re                         1.12.0
- install result                     1.5
- install rresult                    0.7.0
- install sedlex                     3.6
- install seq                        base
- install sexplib0                   v0.16.0
- install stdlib-shims               0.3.0
- install stringext                  1.6.0
- install thread-local-storage       0.2
- install thread-table               1.0.0
- install topkg                      1.0.8
- install tsort                      2.2.0
- install uri                        4.4.0
- install uri-sexp                   4.4.0
- install uutf                       1.0.4
- install x509                       1.0.6
- install yojson                     3.0.0
- install zarith                     1.14


<><> Processing actions <><><><><><><><><><><><><><><><><><><><><><><><><><><><>
-> retrieved asn1-combinators.0.3.2  (cached)
-> retrieved angstrom.0.16.1  (cached)
-> retrieved astring.0.8.5  (cached)
-> retrieved backoff.0.1.1  (cached)
-> retrieved alcotest.1.9.0  (cached)
-> retrieved base64.3.5.1  (cached)
-> retrieved base.v0.16.4  (cached)
-> retrieved bos.0.2.1  (cached)
-> retrieved bigstringaf.0.10.0  (cached)
-> retrieved ca-certs.1.0.1  (cached)
-> retrieved camlp-streams.5.0.1  (cached)
-> retrieved cmdliner.1.3.0  (cached)
-> retrieved conf-gmp.5  (cached)
-> retrieved conf-gmp-powm-sec.4  (cached)
-> retrieved conduit.8.0.0, conduit-lwt.8.0.0, conduit-lwt-unix.8.0.0  (cached)
-> installed conf-pkg-config.4
-> retrieved cohttp.6.1.1, cohttp-lwt.6.1.1, cohttp-lwt-unix.6.1.1, http.6.1.1  (cached)
-> installed conf-gmp.5
-> retrieved csexp.1.5.2  (cached)
-> installed conf-gmp-powm-sec.4
-> retrieved cppo.1.8.0  (cached)
-> installed conf-npm.1
-> retrieved domain-local-await.1.0.1  (cached)
-> retrieved containers.3.16  (cached)
-> retrieved domain-name.0.4.1  (cached)
-> retrieved domain_shims.0.1.0  (cached)
-> retrieved dscheck.0.5.0  (cached)
-> retrieved duration.0.2.1  (cached)
-> retrieved either.1.0.0  (cached)
-> retrieved eqaf.0.10  (cached)
-> retrieved fmt.0.10.0  (cached)
-> retrieved fpath.0.7.3  (cached)
-> retrieved gen.1.1  (cached)
-> retrieved gmap.0.3.0  (cached)
-> retrieved digestif.1.3.0  (cached)
-> retrieved ipaddr.5.6.0, ipaddr-sexp.5.6.0, macaddr.5.6.0  (cached)
-> retrieved kdf.1.0.0  (cached)
-> retrieved logs.0.8.0  (cached)
-> retrieved lwt.5.9.1  (cached)
-> retrieved magic-mime.1.3.1  (cached)
-> retrieved mdx.2.5.0  (cached)
-> retrieved menhir.20240715, menhirCST.20240715, menhirLib.20240715, menhirSdk.20240715  (cached)
-> retrieved dune.3.19.1, dune-configurator.3.19.1  (cached)
-> retrieved mtime.2.1.0  (cached)
-> retrieved mirage-crypto.2.0.1, mirage-crypto-ec.2.0.1, mirage-crypto-pk.2.0.1, mirage-crypto-rng.2.0.1  (cached)
-> retrieved multicore-bench.0.1.7  (cached)
-> retrieved js_of_ocaml.6.0.1, js_of_ocaml-compiler.6.0.1  (cached)
-> retrieved ocaml-compiler-libs.v0.12.4  (cached)
-> retrieved multicore-magic.2.3.1, multicore-magic-dscheck.2.3.1  (cached)
-> retrieved ocaml-version.4.0.1  (cached)
-> retrieved ocaml-syntax-shims.1.0.0  (cached)
-> retrieved ocplib-endian.1.2  (cached)
-> retrieved ocamlfind.1.9.8  (cached)
-> retrieved oseq.0.5.1  (cached)
-> retrieved ohex.0.2.0  (cached)
-> retrieved ocamlbuild.0.16.1  (cached)
-> retrieved ppx_sexp_conv.v0.16.0  (cached)
-> retrieved ppx_derivers.1.2.1  (cached)
-> retrieved psq.0.2.1  (cached)
-> retrieved ptime.1.2.0  (cached)
-> retrieved qcheck-core.0.25  (cached)
-> retrieved qcheck-multicoretests-util.0.8, qcheck-stm.0.8  (cached)
-> retrieved re.1.12.0  (cached)
-> retrieved result.1.5  (cached)
-> installed cmdliner.1.3.0
-> retrieved sedlex.3.6  (cached)
-> retrieved seq.base  (cached)
-> installed seq.base
-> retrieved rresult.0.7.0  (cached)
-> retrieved ppxlib.0.35.0  (cached)
-> retrieved stdlib-shims.0.3.0  (cached)
-> retrieved sexplib0.v0.16.0  (cached)
-> retrieved stringext.1.6.0  (cached)
-> retrieved thread-local-storage.0.2  (cached)
-> retrieved thread-table.1.0.0  (cached)
-> retrieved tsort.2.2.0  (cached)
-> retrieved topkg.1.0.8  (cached)
-> retrieved uutf.1.0.4  (cached)
-> retrieved uri.4.4.0, uri-sexp.4.4.0  (cached)
-> retrieved yojson.3.0.0  (cached)
-> retrieved zarith.1.14  (cached)
-> retrieved x509.1.0.6  (cached)
-> installed ocamlfind.1.9.8
-> installed base-bytes.base
-> installed zarith.1.14
-> installed ocamlbuild.0.16.1
-> installed topkg.1.0.8
-> installed rresult.0.7.0
-> installed uutf.1.0.4
-> installed mtime.2.1.0
-> installed ptime.1.2.0
-> installed astring.0.8.5
-> installed fmt.0.10.0
-> installed fpath.0.7.3
-> installed dune.3.19.1
-> installed camlp-streams.5.0.1
-> installed domain-name.0.4.1
-> installed csexp.1.5.2
-> installed backoff.0.1.1
-> installed either.1.0.0
-> installed duration.0.2.1
-> installed domain_shims.0.1.0
-> installed cppo.1.8.0
-> installed base64.3.5.1
-> installed asn1-combinators.0.3.2
-> installed gmap.0.3.0
-> installed macaddr.5.6.0
-> installed http.6.1.1
-> installed eqaf.0.10
-> installed gen.1.1
-> installed menhirCST.20240715
-> installed ipaddr.5.6.0
-> installed menhirSdk.20240715
-> installed menhirLib.20240715
-> installed magic-mime.1.3.1
-> installed multicore-magic.2.3.1
-> installed dune-configurator.3.19.1
-> installed ocaml-syntax-shims.1.0.0
-> installed ocaml-compiler-libs.v0.12.4
-> installed ohex.0.2.0
-> installed ocplib-endian.1.2
-> installed ocaml-version.4.0.1
-> installed digestif.1.3.0
-> installed bigstringaf.0.10.0
-> installed ppx_derivers.1.2.1
-> installed psq.0.2.1
-> installed oseq.0.5.1
-> installed angstrom.0.16.1
-> installed mirage-crypto.2.0.1
-> installed result.1.5
-> installed sexplib0.v0.16.0
-> installed kdf.1.0.0
-> installed re.1.12.0
-> installed stringext.1.6.0
-> installed stdlib-shims.0.3.0
-> installed thread-table.1.0.0
-> installed thread-local-storage.0.2
-> installed domain-local-await.1.0.1
-> installed qcheck-core.0.25
-> installed containers.3.16
-> installed tsort.2.2.0
-> installed lwt.5.9.1
-> installed dscheck.0.5.0
-> installed qcheck-multicoretests-util.0.8
-> installed multicore-magic-dscheck.2.3.1
-> installed alcotest.1.9.0
-> installed qcheck-stm.0.8
-> installed yojson.3.0.0
-> installed uri.4.4.0
-> installed multicore-bench.0.1.7
-> installed base.v0.16.4
-> installed menhir.20240715
-> installed ppxlib.0.35.0
-> installed sedlex.3.6
-> installed ppx_sexp_conv.v0.16.0
-> installed uri-sexp.4.4.0
-> installed ipaddr-sexp.5.6.0
-> installed js_of_ocaml-compiler.6.0.1
-> installed logs.0.8.0
-> installed mirage-crypto-rng.2.0.1
-> installed conduit.8.0.0
-> installed mirage-crypto-pk.2.0.1
-> installed cohttp.6.1.1
-> installed conduit-lwt.8.0.0
-> installed mdx.2.5.0
-> installed bos.0.2.1
-> installed cohttp-lwt.6.1.1
-> installed mirage-crypto-ec.2.0.1
-> installed x509.1.0.6
-> installed ca-certs.1.0.1
-> installed conduit-lwt-unix.8.0.0
-> installed cohttp-lwt-unix.6.1.1
-> installed js_of_ocaml.6.0.1
Done.
# To update the current shell environment, run: eval $(opam env)
2025-06-13 01:39.33 ---> using "63aee931dd749463ace7e2e43ae4a928c7a40e155e2d601e0194bbdad4882736" from cache


/: (copy (src .) (dst ./src))
2025-06-13 01:39.34 ---> saved as "362c7b3d3c3dca6e2a58f0f92f7e3878e7f1302aa785b542edd2e880b0b65022"


/: (run (shell "cd ./src && opam exec -- dune build @install @check @runtest && rm -rf _build"))
(cd _build/default/test && ./test_mpscq.exe)
random seed: 1027536018335039259
generated error fail pass / total     time test name
[ ]    0    0    0    0 /   32     0.0s Mpscq sequential
[ ]    0    0    0    0 /   32     0.0s Mpscq sequential (generating)
[]   32    0    0   32 /   32     0.0s Mpscq sequential
================================================================================
success (ran 1 tests)
random seed: 4261730201892552761
generated error fail pass / total     time test name
[ ]    0    0    0    0 /   64     0.0s Mpscq sequential
[]   64    0    0   64 /   64     0.0s Mpscq sequential
================================================================================
success (ran 1 tests)
random seed: 1768952947459892169
generated error fail pass / total     time test name
[ ]    0    0    0    0 /  128     0.0s Mpscq sequential
[]  128    0    0  128 /  128     0.0s Mpscq sequential
================================================================================
success (ran 1 tests)
random seed: 3876983432405332384
generated error fail pass / total     time test name
[ ]    0    0    0    0 /  256     0.0s Mpscq sequential
[]  256    0    0  256 /  256     0.0s Mpscq sequential
================================================================================
success (ran 1 tests)
random seed: 960648790919812971
generated error fail pass / total     time test name
[ ]    0    0    0    0 /  512     0.0s Mpscq sequential
[]  512    0    0  512 /  512     0.0s Mpscq sequential
================================================================================
success (ran 1 tests)
random seed: 1934890528370270021
generated error fail pass / total     time test name
[ ]    0    0    0    0 /   32     0.0s Mpscq sequential
[]   32    0    0   32 /   32     0.0s Mpscq sequential
================================================================================
success (ran 1 tests)
(cd _build/default/test && ./test_finally.exe)
Testing `Picos_finally'.
This run has ID `2E5PHNW6'.


[OK]          move            0   is lazy.
[OK]          borrow          0   returns resource.


Full test results in `~/src/_build/default/test/_build/_tests/Picos_finally'.
Test Successful in 0.001s. 2 tests run.
(cd _build/default/test && ./test_picos.exe)
Testing `Picos'.
This run has ID `CJ0FT865'.


[OK]          Trigger               0   basics.
[OK]          Computation           0   basics.
[OK]          Computation           1   tx.
[OK]          Computation           2   signals in order.
[OK]          Fiber.FLS             0   basics.
[OK]          Cancel                0
[OK]          Cancel after          0


Full test results in `~/src/_build/default/test/_build/_tests/Picos'.
Test Successful in 0.315s. 7 tests run.
(cd _build/default/test && ./test_server_and_client.exe)
Using non-blocking sockets and threads on OCaml 4:
Recursive server running
Server listening
Server accepting
Client B running
Client A running
Client B connected
Server accepted client
Client B wrote 100
Server read 100
Server accepting
Server accepted client
Client A connected
Server accepting
Client B read 50
Client A wrote 100
Server wrote 50
Server read 100
Server wrote 50
Client A read 50
Server and Client test: OK
(cd _build/default/test && ./test_io.exe)
Testing `Picos_io'.
This run has ID `BXPFV9YM'.


[OK]          Unix          0   openfile and read.
[OK]          Unix          1   sleepf.
[OK]          Unix          2   select empty timeout.
[OK]          Unix          3   select empty ∞.
[OK]          Unix          4   select.
[OK]          Unix          5   system.


Full test results in `~/src/_build/default/test/_build/_tests/Picos_io'.
Test Successful in 0.578s. 6 tests run.
(cd _build/default/test && ./test_select.exe)
Testing `Picos_select'.
This run has ID `LP2CCC92'.


[OK]          Intr          0


Full test results in `~/src/_build/default/test/_build/_tests/Picos_select'.
Test Successful in 1.418s. 1 test run.
(cd _build/default/test && ./test_io_with_lwt.exe)
Testing `Picos_io_with_lwt'.
This run has ID `K59RLZAB'.


[OK]          Unix          0   system.


Full test results in `~/src/_build/default/test/_build/_tests/Picos_io_with_lwt'.
Test Successful in 2.116s. 1 test run.
(cd _build/default/test && ./test_structured.exe)
Testing `Picos_structured'.
This run has ID `MIBCO5W9'.


[OK]          Bundle          0   fork after terminate.
[OK]          Bundle          1   fork after escape.
[OK]          Bundle          2   exception in child terminates.
[OK]          Bundle          3   cancelation awaits children.
[OK]          Bundle          4   block raises when forbidden.
[OK]          Bundle          5   block raises Sys_error when fiber finishes.
[OK]          Bundle          6   termination nests.
[OK]          Bundle          7   promise cancelation does not terminate.
[OK]          Bundle          8   error in promise terminates.
[OK]          Bundle          9   can wait promises.
[OK]          Bundle         10   can select promises.
[OK]          Run             0   any and all errors.
[OK]          Run             1   any and all returns.
[OK]          Run             2   race any.


Full test results in `~/src/_build/default/test/_build/_tests/Picos_structured'.
Test Successful in 1.082s. 14 tests run.
(cd _build/default/example && ./guards.exe)
Testing with scheduler: threads
Ran guarded case statement examples.
(cd _build/default/test && ./test_sync.exe -- '^Mutex and Condition$' 0)
Testing `Picos_sync'.
This run has ID `KSPF4BXK'.


[OK]          Mutex and Condition                  0   basics.
[SKIP]        Mutex and Condition                  1   errors.
[SKIP]        Mutex and Condition                  2   cancelation.
[SKIP]        Lock and Lock.Condition              0   basics.
[SKIP]        Lock and Lock.Condition              1   cancelation.
[SKIP]        Lock and Lock.Condition              2   poisoning.
[SKIP]        Lock and Lock.Condition              3   try_acquire.
[SKIP]        Rwlock and Rwlock.Condition          0   basics.
[SKIP]        Rwlock and Rwlock.Condition          1   cancelation.
[SKIP]        Rwlock and Rwlock.Condition          2   poisoning.
[SKIP]        Rwlock and Rwlock.Condition          3   freezing.
[SKIP]        Rwlock and Rwlock.Condition          4   try_acquire.
[SKIP]        Rwlock and Rwlock.Condition          5   try_acquire_shared.
[SKIP]        Rwlock and Rwlock.Condition          6   sharing.
[SKIP]        Semaphore                            0   basics.
[SKIP]        Semaphore                            1   stress.
[SKIP]        Sem                                  0   basics.
[SKIP]        Sem                                  1   stress.
[SKIP]        Sem                                  2   poisoning.
[SKIP]        Sem                                  3   try_acquire.
[SKIP]        Lazy                                 0   basics.
[SKIP]        Lazy                                 1   cancelation.
[SKIP]        Event                                0   basics.
[SKIP]        Barrier                              0   basics.
[SKIP]        Barrier                              1   poisoning.
[SKIP]        Non-cancelable ops                   0   are not canceled.


Full test results in `~/src/_build/default/test/_build/_tests/Picos_sync'.
Test Successful in 0.002s. 1 test run.
(cd _build/default/test && /opt/homebrew/bin/node test_js_of_ocaml.bc.js)
Hello, from js_of_ocaml with Picos!
(cd _build/default/test && ./test_io_cohttp.exe)
Uri: //127.0.0.1:52927/hello-io-cohttp
Method: POST


host: 127.0.0.1:52927
user-agent: ocaml-cohttp/v6.1.1
content-length: 17


Body: It's-a-Me, Picos!
(cd _build/default/test && ./test_sync.exe -- '^Mutex and Condition$' 1)
Testing `Picos_sync'.
This run has ID `WT8ZHVZE'.


[SKIP]        Mutex and Condition                  0   basics.
[OK]          Mutex and Condition                  1   errors.
[SKIP]        Mutex and Condition                  2   cancelation.
[SKIP]        Lock and Lock.Condition              0   basics.
[SKIP]        Lock and Lock.Condition              1   cancelation.
[SKIP]        Lock and Lock.Condition              2   poisoning.
[SKIP]        Lock and Lock.Condition              3   try_acquire.
[SKIP]        Rwlock and Rwlock.Condition          0   basics.
[SKIP]        Rwlock and Rwlock.Condition          1   cancelation.
[SKIP]        Rwlock and Rwlock.Condition          2   poisoning.
[SKIP]        Rwlock and Rwlock.Condition          3   freezing.
[SKIP]        Rwlock and Rwlock.Condition          4   try_acquire.
[SKIP]        Rwlock and Rwlock.Condition          5   try_acquire_shared.
[SKIP]        Rwlock and Rwlock.Condition          6   sharing.
[SKIP]        Semaphore                            0   basics.
[SKIP]        Semaphore                            1   stress.
[SKIP]        Sem                                  0   basics.
[SKIP]        Sem                                  1   stress.
[SKIP]        Sem                                  2   poisoning.
[SKIP]        Sem                                  3   try_acquire.
[SKIP]        Lazy                                 0   basics.
[SKIP]        Lazy                                 1   cancelation.
[SKIP]        Event                                0   basics.
[SKIP]        Barrier                              0   basics.
[SKIP]        Barrier                              1   poisoning.
[SKIP]        Non-cancelable ops                   0   are not canceled.


Full test results in `~/src/_build/default/test/_build/_tests/Picos_sync'.
Test Successful in 0.001s. 1 test run.
(cd _build/default/bench && ./main.exe -brief 'Picos Computation')
Picos Computation:
attach detach pairs over time/1 worker:
15.14 M/s
attach detach pairs over time/trivial:
57.33 M/s
time per attach detach pair/1 worker:
66.05 ns
time per attach detach pair/trivial:
17.44 ns
(cd _build/default/test && ./test_sync.exe -- '^Mutex and Condition$' 2)
Testing `Picos_sync'.
This run has ID `BFJXRBA3'.


[SKIP]        Mutex and Condition                  0   basics.
[SKIP]        Mutex and Condition                  1   errors.
[OK]          Mutex and Condition                  2   cancelation.
[SKIP]        Lock and Lock.Condition              0   basics.
[SKIP]        Lock and Lock.Condition              1   cancelation.
[SKIP]        Lock and Lock.Condition              2   poisoning.
[SKIP]        Lock and Lock.Condition              3   try_acquire.
[SKIP]        Rwlock and Rwlock.Condition          0   basics.
[SKIP]        Rwlock and Rwlock.Condition          1   cancelation.
[SKIP]        Rwlock and Rwlock.Condition          2   poisoning.
[SKIP]        Rwlock and Rwlock.Condition          3   freezing.
[SKIP]        Rwlock and Rwlock.Condition          4   try_acquire.
[SKIP]        Rwlock and Rwlock.Condition          5   try_acquire_shared.
[SKIP]        Rwlock and Rwlock.Condition          6   sharing.
[SKIP]        Semaphore                            0   basics.
[SKIP]        Semaphore                            1   stress.
[SKIP]        Sem                                  0   basics.
[SKIP]        Sem                                  1   stress.
[SKIP]        Sem                                  2   poisoning.
[SKIP]        Sem                                  3   try_acquire.
[SKIP]        Lazy                                 0   basics.
[SKIP]        Lazy                                 1   cancelation.
[SKIP]        Event                                0   basics.
[SKIP]        Barrier                              0   basics.
[SKIP]        Barrier                              1   poisoning.
[SKIP]        Non-cancelable ops                   0   are not canceled.


Full test results in `~/src/_build/default/test/_build/_tests/Picos_sync'.
Test Successful in 1.530s. 1 test run.
(cd _build/default/bench && ./main.exe -brief 'Picos Current')
Picos Current:
ops over time/1 worker:
258.62 M/s
time per op/1 worker:
3.87 ns
(cd _build/default/test && ./test_sync.exe -- '^Lock and Lock.Condition$' 0)
Testing `Picos_sync'.
This run has ID `D49GQOEN'.


[SKIP]        Mutex and Condition                  0   basics.
[SKIP]        Mutex and Condition                  1   errors.
[SKIP]        Mutex and Condition                  2   cancelation.
[OK]          Lock and Lock.Condition              0   basics.
[SKIP]        Lock and Lock.Condition              1   cancelation.
[SKIP]        Lock and Lock.Condition              2   poisoning.
[SKIP]        Lock and Lock.Condition              3   try_acquire.
[SKIP]        Rwlock and Rwlock.Condition          0   basics.
[SKIP]        Rwlock and Rwlock.Condition          1   cancelation.
[SKIP]        Rwlock and Rwlock.Condition          2   poisoning.
[SKIP]        Rwlock and Rwlock.Condition          3   freezing.
[SKIP]        Rwlock and Rwlock.Condition          4   try_acquire.
[SKIP]        Rwlock and Rwlock.Condition          5   try_acquire_shared.
[SKIP]        Rwlock and Rwlock.Condition          6   sharing.
[SKIP]        Semaphore                            0   basics.
[SKIP]        Semaphore                            1   stress.
[SKIP]        Sem                                  0   basics.
[SKIP]        Sem                                  1   stress.
[SKIP]        Sem                                  2   poisoning.
[SKIP]        Sem                                  3   try_acquire.
[SKIP]        Lazy                                 0   basics.
[SKIP]        Lazy                                 1   cancelation.
[SKIP]        Event                                0   basics.
[SKIP]        Barrier                              0   basics.
[SKIP]        Barrier                              1   poisoning.
[SKIP]        Non-cancelable ops                   0   are not canceled.


Full test results in `~/src/_build/default/test/_build/_tests/Picos_sync'.
Test Successful in 0.002s. 1 test run.
(cd _build/default/bench && ./main.exe -brief 'Picos FLS (excluding Current)')
Picos FLS (excluding Current):
gets over time/1 worker:
385.39 M/s
sets over time/1 worker:
297.21 M/s
time per get/1 worker:
2.59 ns
time per set/1 worker:
3.36 ns
(cd _build/default/test && ./test_mpmcq.exe)
random seed: 1171665890426234436
generated error fail pass / total     time test name
[ ]    0    0    0    0 /   32     0.0s Mpmcq sequential
[ ]    0    0    0    0 /   32     0.0s Mpmcq sequential (generating)
[]   32    0    0   32 /   32     0.0s Mpmcq sequential
[ ]    0    0    0    0 /   32     0.0s Mpmcq concurrent
[ ]   11    0    0   11 /   32     0.1s Mpmcq concurrent
[ ]   15    0    0   15 /   32     0.3s Mpmcq concurrent
[ ]   30    0    0   30 /   32     0.4s Mpmcq concurrent
[]   32    0    0   32 /   32     0.4s Mpmcq concurrent
================================================================================
success (ran 2 tests)
random seed: 1600192663075589529
generated error fail pass / total     time test name
[ ]    0    0    0    0 /   64     0.0s Mpmcq sequential
[]   64    0    0   64 /   64     0.0s Mpmcq sequential
[ ]    0    0    0    0 /   64     0.0s Mpmcq concurrent
[ ]    5    0    0    5 /   64     0.1s Mpmcq concurrent
[ ]   18    0    0   18 /   64     0.2s Mpmcq concurrent
[ ]   26    0    0   26 /   64     0.4s Mpmcq concurrent
[ ]   37    0    0   37 /   64     0.6s Mpmcq concurrent
[ ]   53    0    0   53 /   64     0.7s Mpmcq concurrent
[]   64    0    0   64 /   64     0.8s Mpmcq concurrent
================================================================================
success (ran 2 tests)
random seed: 142041842208409687
generated error fail pass / total     time test name
[ ]    0    0    0    0 /  128     0.0s Mpmcq sequential
[]  128    0    0  128 /  128     0.0s Mpmcq sequential
[ ]    0    0    0    0 /  128     0.0s Mpmcq concurrent
[ ]    6    0    0    6 /  128     0.1s Mpmcq concurrent
[ ]    7    0    0    7 /  128     0.2s Mpmcq concurrent
[ ]   17    0    0   17 /  128     0.3s Mpmcq concurrent
[ ]   21    0    0   21 /  128     0.4s Mpmcq concurrent
[ ]   48    0    0   48 /  128     0.5s Mpmcq concurrent
[ ]   51    0    0   51 /  128     0.6s Mpmcq concurrent
[ ]   63    0    0   63 /  128     0.8s Mpmcq concurrent
[ ]   81    0    0   81 /  128     1.0s Mpmcq concurrent
[ ]   84    0    0   84 /  128     1.1s Mpmcq concurrent
[ ]   93    0    0   93 /  128     1.3s Mpmcq concurrent
[ ]  119    0    0  119 /  128     1.4s Mpmcq concurrent
[]  128    0    0  128 /  128     1.5s Mpmcq concurrent
================================================================================
success (ran 2 tests)
random seed: 3231143003804265466
generated error fail pass / total     time test name
[ ]    0    0    0    0 /  256     0.0s Mpmcq sequential
[]  256    0    0  256 /  256     0.0s Mpmcq sequential
[ ]    0    0    0    0 /  256     0.0s Mpmcq concurrent
[ ]    6    0    0    6 /  256     0.0s Mpmcq concurrent
[ ]   11    0    0   11 /  256     0.1s Mpmcq concurrent
[ ]   20    0    0   20 /  256     0.2s Mpmcq concurrent
[ ]   34    0    0   34 /  256     0.3s Mpmcq concurrent
[ ]   38    0    0   38 /  256     0.5s Mpmcq concurrent
[ ]   47    0    0   47 /  256     0.6s Mpmcq concurrent
[ ]   53    0    0   53 /  256     0.7s Mpmcq concurrent
[ ]   60    0    0   60 /  256     0.9s Mpmcq concurrent
[ ]   64    0    0   64 /  256     1.0s Mpmcq concurrent
[ ]   69    0    0   69 /  256     1.1s Mpmcq concurrent
[ ]   77    0    0   77 /  256     1.3s Mpmcq concurrent
[ ]   81    0    0   81 /  256     1.4s Mpmcq concurrent
[ ]   91    0    0   91 /  256     1.5s Mpmcq concurrent
[ ]  103    0    0  103 /  256     1.6s Mpmcq concurrent
[ ]  113    0    0  113 /  256     1.7s Mpmcq concurrent
[ ]  141    0    0  141 /  256     1.9s Mpmcq concurrent
[ ]  160    0    0  160 /  256     2.0s Mpmcq concurrent
[ ]  187    0    0  187 /  256     2.1s Mpmcq concurrent
[ ]  204    0    0  204 /  256     2.2s Mpmcq concurrent
[ ]  220    0    0  220 /  256     2.3s Mpmcq concurrent
[ ]  223    0    0  223 /  256     2.4s Mpmcq concurrent
[ ]  238    0    0  238 /  256     2.5s Mpmcq concurrent
[ ]  247    0    0  247 /  256     2.6s Mpmcq concurrent
[]  256    0    0  256 /  256     2.7s Mpmcq concurrent
================================================================================
success (ran 2 tests)
random seed: 261362933960173736
generated error fail pass / total     time test name
[ ]    0    0    0    0 /  512     0.0s Mpmcq sequential
[]  512    0    0  512 /  512     0.0s Mpmcq sequential
[ ]    0    0    0    0 /  512     0.0s Mpmcq concurrent
[ ]   12    0    0   12 /  512     0.1s Mpmcq concurrent
[ ]   25    0    0   25 /  512     0.2s Mpmcq concurrent
[ ]   42    0    0   42 /  512     0.3s Mpmcq concurrent
[ ]   48    0    0   48 /  512     0.4s Mpmcq concurrent
[ ]   63    0    0   63 /  512     0.5s Mpmcq concurrent
[ ]   71    0    0   71 /  512     0.7s Mpmcq concurrent
[ ]  101    0    0  101 /  512     0.8s Mpmcq concurrent
[ ]  106    0    0  106 /  512     0.9s Mpmcq concurrent
[ ]  119    0    0  119 /  512     1.0s Mpmcq concurrent
[ ]  125    0    0  125 /  512     1.2s Mpmcq concurrent
[ ]  146    0    0  146 /  512     1.3s Mpmcq concurrent
[ ]  155    0    0  155 /  512     1.4s Mpmcq concurrent
[ ]  178    0    0  178 /  512     1.6s Mpmcq concurrent
[ ]  192    0    0  192 /  512     1.7s Mpmcq concurrent
[ ]  196    0    0  196 /  512     1.8s Mpmcq concurrent
[ ]  200    0    0  200 /  512     2.0s Mpmcq concurrent
[ ]  217    0    0  217 /  512     2.1s Mpmcq concurrent
[ ]  224    0    0  224 /  512     2.2s Mpmcq concurrent
[ ]  233    0    0  233 /  512     2.4s Mpmcq concurrent
[ ]  237    0    0  237 /  512     2.5s Mpmcq concurrent
[ ]  241    0    0  241 /  512     2.7s Mpmcq concurrent
[ ]  252    0    0  252 /  512     2.8s Mpmcq concurrent
[ ]  258    0    0  258 /  512     3.1s Mpmcq concurrent
[ ]  277    0    0  277 /  512     3.2s Mpmcq concurrent
[ ]  296    0    0  296 /  512     3.3s Mpmcq concurrent
[ ]  317    0    0  317 /  512     3.4s Mpmcq concurrent
[ ]  325    0    0  325 /  512     3.5s Mpmcq concurrent
[ ]  332    0    0  332 /  512     3.8s Mpmcq concurrent
[ ]  334    0    0  334 /  512     3.9s Mpmcq concurrent
[ ]  348    0    0  348 /  512     4.1s Mpmcq concurrent
[ ]  362    0    0  362 /  512     4.2s Mpmcq concurrent
[ ]  379    0    0  379 /  512     4.4s Mpmcq concurrent
[ ]  384    0    0  384 /  512     4.6s Mpmcq concurrent
[ ]  405    0    0  405 /  512     4.7s Mpmcq concurrent
[ ]  406    0    0  406 /  512     4.9s Mpmcq concurrent
[ ]  421    0    0  421 /  512     5.1s Mpmcq concurrent
[ ]  429    0    0  429 /  512     5.2s Mpmcq concurrent
[ ]  431    0    0  431 /  512     5.3s Mpmcq concurrent
[ ]  440    0    0  440 /  512     5.5s Mpmcq concurrent
[ ]  450    0    0  450 /  512     5.6s Mpmcq concurrent
[ ]  462    0    0  462 /  512     5.8s Mpmcq concurrent
[ ]  476    0    0  476 /  512     6.0s Mpmcq concurrent
[ ]  481    0    0  481 /  512     6.2s Mpmcq concurrent
[ ]  489    0    0  489 /  512     6.3s Mpmcq concurrent
[ ]  505    0    0  505 /  512     6.4s Mpmcq concurrent
[]  512    0    0  512 /  512     6.4s Mpmcq concurrent
================================================================================
success (ran 2 tests)
random seed: 955097466939557053
generated error fail pass / total     time test name
[ ]    0    0    0    0 /   32     0.0s Mpmcq sequential
[]   32    0    0   32 /   32     0.0s Mpmcq sequential
[ ]    0    0    0    0 /   32     0.0s Mpmcq concurrent
[ ]    4    0    0    4 /   32     0.1s Mpmcq concurrent
[ ]   19    0    0   19 /   32     0.2s Mpmcq concurrent
[ ]   31    0    0   31 /   32     0.4s Mpmcq concurrent
[]   32    0    0   32 /   32     0.4s Mpmcq concurrent
================================================================================
success (ran 2 tests)
(cd _build/default/bench && ./main.exe -brief 'Picos TLS')
Picos TLS:
gets over time/1 worker:
380.95 M/s
sets over time/1 worker:
186.30 M/s
time per get/1 worker:
2.62 ns
time per set/1 worker:
5.37 ns
(cd _build/default/bench && ./main.exe -brief 'Picos DLS')
Picos DLS:
gets over time/1 worker:
395.51 M/s
sets over time/1 worker:
270.73 M/s
time per get/1 worker:
2.53 ns
time per set/1 worker:
3.69 ns
(cd _build/default/bench && ./main.exe -brief 'Yield with Picos_std_sync')
Yield with Picos_std_sync:
locked yields over time/1 fiber with Lock:
0.03 M/s
locked yields over time/1 fiber with Rwlock:
0.10 M/s
locked yields over time/1 fiber with Sem:
0.07 M/s
locked yields over time/1 fiber with Sem 2:
0.09 M/s
locked yields over time/1 fiber with Sem 3:
0.13 M/s
locked yields over time/1 fiber with Sem 4:
0.09 M/s
locked yields over time/256 fibers with Lock:
0.06 M/s
locked yields over time/256 fibers with Rwlock:
0.06 M/s
locked yields over time/256 fibers with Sem:
0.08 M/s
locked yields over time/256 fibers with Sem 2:
0.10 M/s
locked yields over time/256 fibers with Sem 3:
0.11 M/s
locked yields over time/256 fibers with Sem 4:
0.13 M/s
locked yields over time/2 fibers with Lock:
0.04 M/s
locked yields over time/2 fibers with Rwlock:
0.10 M/s
locked yields over time/2 fibers with Sem:
0.09 M/s
locked yields over time/2 fibers with Sem 2:
0.09 M/s
locked yields over time/2 fibers with Sem 3:
0.09 M/s
locked yields over time/2 fibers with Sem 4:
0.10 M/s
locked yields over time/3 fibers with Lock:
0.08 M/s
locked yields over time/3 fibers with Rwlock:
0.09 M/s
locked yields over time/3 fibers with Sem:
0.09 M/s
locked yields over time/3 fibers with Sem 2:
0.08 M/s
locked yields over time/3 fibers with Sem 3:
0.09 M/s
locked yields over time/3 fibers with Sem 4:
0.09 M/s
locked yields over time/4 fibers with Lock:
0.07 M/s
locked yields over time/4 fibers with Rwlock:
0.10 M/s
locked yields over time/4 fibers with Sem:
0.10 M/s
locked yields over time/4 fibers with Sem 2:
0.09 M/s
locked yields over time/4 fibers with Sem 3:
0.09 M/s
locked yields over time/4 fibers with Sem 4:
0.07 M/s
locked yields over time/8 fibers with Lock:
0.04 M/s
locked yields over time/8 fibers with Rwlock:
0.10 M/s
locked yields over time/8 fibers with Sem:
0.10 M/s
locked yields over time/8 fibers with Sem 2:
0.09 M/s
locked yields over time/8 fibers with Sem 3:
0.10 M/s
locked yields over time/8 fibers with Sem 4:
0.10 M/s
time per locked yield/1 fiber with Lock:
38825.12 ns
time per locked yield/1 fiber with Rwlock:
9736.42 ns
time per locked yield/1 fiber with Sem:
14467.63 ns
time per locked yield/1 fiber with Sem 2:
11392.88 ns
time per locked yield/1 fiber with Sem 3:
7774.96 ns
time per locked yield/1 fiber with Sem 4:
10629.35 ns
time per locked yield/256 fibers with Lock:
16810.67 ns
time per locked yield/256 fibers with Rwlock:
16812.88 ns
time per locked yield/256 fibers with Sem:
12628.83 ns
time per locked yield/256 fibers with Sem 2:
9990.77 ns
time per locked yield/256 fibers with Sem 3:
9677.37 ns
time per locked yield/256 fibers with Sem 4:
7585.54 ns
time per locked yield/2 fibers with Lock:
25611.71 ns
time per locked yield/2 fibers with Rwlock:
10091.58 ns
time per locked yield/2 fibers with Sem:
10815.25 ns
time per locked yield/2 fibers with Sem 2:
11717.56 ns
time per locked yield/2 fibers with Sem 3:
10994.02 ns
time per locked yield/2 fibers with Sem 4:
10337.23 ns
time per locked yield/3 fibers with Lock:
12478.38 ns
time per locked yield/3 fibers with Rwlock:
11399.92 ns
time per locked yield/3 fibers with Sem:
10889.27 ns
time per locked yield/3 fibers with Sem 2:
12616.71 ns
time per locked yield/3 fibers with Sem 3:
11663.56 ns
time per locked yield/3 fibers with Sem 4:
11504.04 ns
time per locked yield/4 fibers with Lock:
13434.08 ns
time per locked yield/4 fibers with Rwlock:
10393.81 ns
time per locked yield/4 fibers with Sem:
10237.19 ns
time per locked yield/4 fibers with Sem 2:
10824.27 ns
time per locked yield/4 fibers with Sem 3:
11151.10 ns
time per locked yield/4 fibers with Sem 4:
13999.79 ns
time per locked yield/8 fibers with Lock:
22470.38 ns
time per locked yield/8 fibers with Rwlock:
10080.42 ns
time per locked yield/8 fibers with Sem:
10494.25 ns
time per locked yield/8 fibers with Sem 2:
10921.58 ns
time per locked yield/8 fibers with Sem 3:
10702.29 ns
time per locked yield/8 fibers with Sem 4:
10407.96 ns
(cd _build/default/bench && ./main.exe -brief 'Picos Spawn')
Picos Spawn:
(cd _build/default/test && ./test_mutex.exe)
random seed: 2517798962169138109
generated error fail pass / total     time test name
[ ]    0    0    0    0 /   32     0.0s Mutex sequential
[ ]    0    0    0    0 /   32     0.0s Mutex sequential (generating)
[]   32    0    0   32 /   32     0.0s Mutex sequential
[ ]    0    0    0    0 /   32     0.0s Mutex concurrent
[ ]    9    0    0    9 /   32     0.1s Mutex concurrent
[ ]   24    0    0   24 /   32     0.2s Mutex concurrent
[]   32    0    0   32 /   32     0.3s Mutex concurrent
================================================================================
success (ran 2 tests)
random seed: 3937210357117186846
generated error fail pass / total     time test name
[ ]    0    0    0    0 /   64     0.0s Mutex sequential
[]   64    0    0   64 /   64     0.0s Mutex sequential
[ ]    0    0    0    0 /   64     0.0s Mutex concurrent
[ ]    8    0    0    8 /   64     0.1s Mutex concurrent
[ ]   40    0    0   40 /   64     0.2s Mutex concurrent
[ ]   58    0    0   58 /   64     0.3s Mutex concurrent
[]   64    0    0   64 /   64     0.3s Mutex concurrent
================================================================================
success (ran 2 tests)
random seed: 1903419053563247531
generated error fail pass / total     time test name
[ ]    0    0    0    0 /  128     0.0s Mutex sequential
[]  128    0    0  128 /  128     0.0s Mutex sequential
[ ]    0    0    0    0 /  128     0.0s Mutex concurrent
[ ]   14    0    0   14 /  128     0.1s Mutex concurrent
[ ]   22    0    0   22 /  128     0.2s Mutex concurrent
[ ]   43    0    0   43 /  128     0.3s Mutex concurrent
[ ]   48    0    0   48 /  128     0.4s Mutex concurrent
[ ]   70    0    0   70 /  128     0.5s Mutex concurrent
[ ]   85    0    0   85 /  128     0.7s Mutex concurrent
[ ]   93    0    0   93 /  128     0.8s Mutex concurrent
[ ]  119    0    0  119 /  128     0.9s Mutex concurrent
[]  128    0    0  128 /  128     1.0s Mutex concurrent
================================================================================
success (ran 2 tests)
random seed: 2944834061267742613
generated error fail pass / total     time test name
[ ]    0    0    0    0 /  256     0.0s Mutex sequential
[]  256    0    0  256 /  256     0.0s Mutex sequential
[ ]    0    0    0    0 /  256     0.0s Mutex concurrent
[ ]   13    0    0   13 /  256     0.1s Mutex concurrent
[ ]   34    0    0   34 /  256     0.2s Mutex concurrent
[ ]   53    0    0   53 /  256     0.3s Mutex concurrent
[ ]   64    0    0   64 /  256     0.4s Mutex concurrent
[ ]   72    0    0   72 /  256     0.5s Mutex concurrent
[ ]   84    0    0   84 /  256     0.6s Mutex concurrent
[ ]  100    0    0  100 /  256     0.7s Mutex concurrent
[ ]  114    0    0  114 /  256     0.8s Mutex concurrent
[ ]  127    0    0  127 /  256     0.9s Mutex concurrent
[ ]  150    0    0  150 /  256     1.0s Mutex concurrent
[ ]  160    0    0  160 /  256     1.1s Mutex concurrent
[ ]  166    0    0  166 /  256     1.3s Mutex concurrent
[ ]  169    0    0  169 /  256     1.4s Mutex concurrent
[ ]  177    0    0  177 /  256     1.5s Mutex concurrent
[ ]  181    0    0  181 /  256     1.6s Mutex concurrent
[ ]  186    0    0  186 /  256     1.8s Mutex concurrent
[ ]  196    0    0  196 /  256     2.0s Mutex concurrent
[ ]  201    0    0  201 /  256     2.1s Mutex concurrent
[ ]  209    0    0  209 /  256     2.3s Mutex concurrent
[ ]  228    0    0  228 /  256     2.4s Mutex concurrent
[]  256    0    0  256 /  256     2.5s Mutex concurrent
================================================================================
success (ran 2 tests)
random seed: 2235822487109099649
generated error fail pass / total     time test name
[ ]    0    0    0    0 /  512     0.0s Mutex sequential
[]  512    0    0  512 /  512     0.0s Mutex sequential
[ ]    0    0    0    0 /  512     0.0s Mutex concurrent
[ ]    7    0    0    7 /  512     0.1s Mutex concurrent
[ ]   21    0    0   21 /  512     0.2s Mutex concurrent
[ ]   56    0    0   56 /  512     0.4s Mutex concurrent
[ ]   87    0    0   87 /  512     0.5s Mutex concurrent
[ ]  106    0    0  106 /  512     0.7s Mutex concurrent
[ ]  115    0    0  115 /  512     0.8s Mutex concurrent
[ ]  132    0    0  132 /  512     0.9s Mutex concurrent
[ ]  133    0    0  133 /  512     1.0s Mutex concurrent
[ ]  157    0    0  157 /  512     1.2s Mutex concurrent
[ ]  167    0    0  167 /  512     1.3s Mutex concurrent
[ ]  184    0    0  184 /  512     1.4s Mutex concurrent
[ ]  200    0    0  200 /  512     1.5s Mutex concurrent
[ ]  211    0    0  211 /  512     1.7s Mutex concurrent
[ ]  213    0    0  213 /  512     1.8s Mutex concurrent
[ ]  233    0    0  233 /  512     1.9s Mutex concurrent
[ ]  264    0    0  264 /  512     2.1s Mutex concurrent
[ ]  269    0    0  269 /  512     2.3s Mutex concurrent
[ ]  274    0    0  274 /  512     2.4s Mutex concurrent
[ ]  287    0    0  287 /  512     2.6s Mutex concurrent
[ ]  302    0    0  302 /  512     2.7s Mutex concurrent
[ ]  318    0    0  318 /  512     2.9s Mutex concurrent
[ ]  340    0    0  340 /  512     3.0s Mutex concurrent
[ ]  344    0    0  344 /  512     3.1s Mutex concurrent
[ ]  345    0    0  345 /  512     3.2s Mutex concurrent
[ ]  363    0    0  363 /  512     3.3s Mutex concurrent
[ ]  388    0    0  388 /  512     3.4s Mutex concurrent
[ ]  392    0    0  392 /  512     3.6s Mutex concurrent
[ ]  417    0    0  417 /  512     3.7s Mutex concurrent
[ ]  423    0    0  423 /  512     3.8s Mutex concurrent
[ ]  437    0    0  437 /  512     3.9s Mutex concurrent
[ ]  447    0    0  447 /  512     4.0s Mutex concurrent
[ ]  456    0    0  456 /  512     4.1s Mutex concurrent
[ ]  471    0    0  471 /  512     4.3s Mutex concurrent
[ ]  473    0    0  473 /  512     4.4s Mutex concurrent
[ ]  491    0    0  491 /  512     4.6s Mutex concurrent
[ ]  502    0    0  502 /  512     4.8s Mutex concurrent
[ ]  505    0    0  505 /  512     4.9s Mutex concurrent
[]  512    0    0  512 /  512     5.0s Mutex concurrent
================================================================================
success (ran 2 tests)
random seed: 3199560222877419002
generated error fail pass / total     time test name
[ ]    0    0    0    0 /   32     0.0s Mutex sequential
[]   32    0    0   32 /   32     0.0s Mutex sequential
[ ]    0    0    0    0 /   32     0.0s Mutex concurrent
[ ]    1    0    0    1 /   32     0.0s Mutex concurrent
[ ]    4    0    0    4 /   32     0.2s Mutex concurrent
[ ]   11    0    0   11 /   32     0.3s Mutex concurrent
[ ]   24    0    0   24 /   32     0.5s Mutex concurrent
[]   32    0    0   32 /   32     0.5s Mutex concurrent
================================================================================
success (ran 2 tests)
(cd _build/default/bench && ./main.exe -brief 'Picos Yield')
Picos Yield:
time per yield/100 fibers:
9079.29 ns
time per yield/10 fibers:
13051.28 ns
time per yield/1 fiber:
15427.10 ns
yields over time/100 fibers:
0.11 M/s
yields over time/10 fibers:
0.08 M/s
yields over time/1 fiber:
0.06 M/s
(cd _build/default/bench && ./main.exe -brief 'Picos Cancel_after with Picos_select')
Picos Cancel_after with Picos_select:
async round-trips over time/1 worker:
1.08 M/s
round-trips over time/1 worker:
0.03 M/s
time per async round-trip/1 worker:
922.58 ns
time per round-trip/1 worker:
34550.42 ns
(cd _build/default/test && ./test_lock.exe)
random seed: 3820724323468991267
generated error fail pass / total     time test name
[ ]    0    0    0    0 /   32     0.0s Lock sequential
[ ]    0    0    0    0 /   32     0.0s Lock sequential (generating)
[]   32    0    0   32 /   32     0.0s Lock sequential
[ ]    0    0    0    0 /   32     0.0s Lock concurrent
[ ]   18    0    0   18 /   32     0.1s Lock concurrent
[ ]   30    0    0   30 /   32     0.2s Lock concurrent
[]   32    0    0   32 /   32     0.3s Lock concurrent
================================================================================
success (ran 2 tests)
random seed: 2325811975788170611
generated error fail pass / total     time test name
[ ]    0    0    0    0 /   64     0.0s Lock sequential
[]   64    0    0   64 /   64     0.0s Lock sequential
[ ]    0    0    0    0 /   64     0.0s Lock concurrent
[ ]   18    0    0   18 /   64     0.1s Lock concurrent
[ ]   31    0    0   31 /   64     0.3s Lock concurrent
[ ]   42    0    0   42 /   64     0.4s Lock concurrent
[ ]   50    0    0   50 /   64     0.5s Lock concurrent
[]   64    0    0   64 /   64     0.5s Lock concurrent
================================================================================
success (ran 2 tests)
random seed: 1973535255560245903
generated error fail pass / total     time test name
[ ]    0    0    0    0 /  128     0.0s Lock sequential
[]  128    0    0  128 /  128     0.0s Lock sequential
[ ]    0    0    0    0 /  128     0.0s Lock concurrent
[ ]    3    0    0    3 /  128     0.1s Lock concurrent
[ ]    5    0    0    5 /  128     0.2s Lock concurrent
[ ]   21    0    0   21 /  128     0.3s Lock concurrent
[ ]   34    0    0   34 /  128     0.4s Lock concurrent
[ ]   46    0    0   46 /  128     0.5s Lock concurrent
[ ]   81    0    0   81 /  128     0.6s Lock concurrent
[ ]   84    0    0   84 /  128     0.8s Lock concurrent
[ ]  104    0    0  104 /  128     0.9s Lock concurrent
[]  128    0    0  128 /  128     1.0s Lock concurrent
================================================================================
success (ran 2 tests)
random seed: 657791752000468134
generated error fail pass / total     time test name
[ ]    0    0    0    0 /  256     0.0s Lock sequential
[]  256    0    0  256 /  256     0.0s Lock sequential
[ ]    0    0    0    0 /  256     0.0s Lock concurrent
[ ]    4    0    0    4 /  256     0.0s Lock concurrent
[ ]   27    0    0   27 /  256     0.1s Lock concurrent
[ ]   59    0    0   59 /  256     0.2s Lock concurrent
[ ]   76    0    0   76 /  256     0.4s Lock concurrent
[ ]   85    0    0   85 /  256     0.5s Lock concurrent
[ ]  103    0    0  103 /  256     0.6s Lock concurrent
[ ]  113    0    0  113 /  256     0.7s Lock concurrent
[ ]  121    0    0  121 /  256     0.8s Lock concurrent
[ ]  149    0    0  149 /  256     1.0s Lock concurrent
[ ]  168    0    0  168 /  256     1.1s Lock concurrent
[ ]  191    0    0  191 /  256     1.2s Lock concurrent
[ ]  199    0    0  199 /  256     1.3s Lock concurrent
[ ]  209    0    0  209 /  256     1.5s Lock concurrent
[ ]  210    0    0  210 /  256     1.6s Lock concurrent
[ ]  225    0    0  225 /  256     1.7s Lock concurrent
[ ]  230    0    0  230 /  256     1.8s Lock concurrent
[ ]  239    0    0  239 /  256     2.0s Lock concurrent
[ ]  252    0    0  252 /  256     2.1s Lock concurrent
[]  256    0    0  256 /  256     2.1s Lock concurrent
================================================================================
success (ran 2 tests)
random seed: 1877881619890535327
generated error fail pass / total     time test name
[ ]    0    0    0    0 /  512     0.0s Lock sequential
[]  512    0    0  512 /  512     0.0s Lock sequential
[ ]    0    0    0    0 /  512     0.0s Lock concurrent
[ ]    5    0    0    5 /  512     0.1s Lock concurrent
[ ]    6    0    0    6 /  512     0.3s Lock concurrent
[ ]   15    0    0   15 /  512     0.4s Lock concurrent
[ ]   25    0    0   25 /  512     0.5s Lock concurrent
[ ]   39    0    0   39 /  512     0.6s Lock concurrent
[ ]   51    0    0   51 /  512     0.8s Lock concurrent
[ ]   60    0    0   60 /  512     1.0s Lock concurrent
[ ]   68    0    0   68 /  512     1.1s Lock concurrent
[ ]   80    0    0   80 /  512     1.3s Lock concurrent
[ ]   88    0    0   88 /  512     1.4s Lock concurrent
[ ]  102    0    0  102 /  512     1.5s Lock concurrent
[ ]  106    0    0  106 /  512     1.6s Lock concurrent
[ ]  128    0    0  128 /  512     1.7s Lock concurrent
[ ]  150    0    0  150 /  512     1.8s Lock concurrent
[ ]  160    0    0  160 /  512     2.0s Lock concurrent
[ ]  163    0    0  163 /  512     2.1s Lock concurrent
[ ]  172    0    0  172 /  512     2.3s Lock concurrent
[ ]  183    0    0  183 /  512     2.4s Lock concurrent
[ ]  184    0    0  184 /  512     2.6s Lock concurrent
[ ]  196    0    0  196 /  512     2.8s Lock concurrent
[ ]  207    0    0  207 /  512     3.0s Lock concurrent
[ ]  219    0    0  219 /  512     3.1s Lock concurrent
[ ]  230    0    0  230 /  512     3.2s Lock concurrent
[ ]  234    0    0  234 /  512     3.3s Lock concurrent
[ ]  250    0    0  250 /  512     3.4s Lock concurrent
[ ]  264    0    0  264 /  512     3.6s Lock concurrent
[ ]  294    0    0  294 /  512     3.8s Lock concurrent
[ ]  309    0    0  309 /  512     4.0s Lock concurrent
[ ]  315    0    0  315 /  512     4.1s Lock concurrent
[ ]  322    0    0  322 /  512     4.2s Lock concurrent
[ ]  343    0    0  343 /  512     4.3s Lock concurrent
[ ]  361    0    0  361 /  512     4.4s Lock concurrent
[ ]  370    0    0  370 /  512     4.6s Lock concurrent
[ ]  398    0    0  398 /  512     4.7s Lock concurrent
[ ]  415    0    0  415 /  512     4.8s Lock concurrent
[ ]  422    0    0  422 /  512     5.0s Lock concurrent
[ ]  443    0    0  443 /  512     5.1s Lock concurrent
[ ]  444    0    0  444 /  512     5.3s Lock concurrent
[ ]  447    0    0  447 /  512     5.5s Lock concurrent
[ ]  448    0    0  448 /  512     5.6s Lock concurrent
[ ]  451    0    0  451 /  512     5.7s Lock concurrent
[ ]  466    0    0  466 /  512     5.9s Lock concurrent
[ ]  478    0    0  478 /  512     6.0s Lock concurrent
[ ]  491    0    0  491 /  512     6.1s Lock concurrent
[ ]  505    0    0  505 /  512     6.2s Lock concurrent
[ ]  510    0    0  510 /  512     6.4s Lock concurrent
[]  512    0    0  512 /  512     6.4s Lock concurrent
================================================================================
success (ran 2 tests)
random seed: 4098487698728518310
generated error fail pass / total     time test name
[ ]    0    0    0    0 /   32     0.0s Lock sequential
[]   32    0    0   32 /   32     0.0s Lock sequential
[ ]    0    0    0    0 /   32     0.0s Lock concurrent
[ ]   12    0    0   12 /   32     0.2s Lock concurrent
[ ]   22    0    0   22 /   32     0.3s Lock concurrent
[]   32    0    0   32 /   32     0.3s Lock concurrent
================================================================================
success (ran 2 tests)
(cd _build/default/test && ./test_htbl.exe)
random seed: 2917257422720638409
generated error fail pass / total     time test name
[ ]    0    0    0    0 /   32     0.0s Htbl sequential
[ ]    0    0    0    0 /   32     0.0s Htbl sequential (generating)
[]   32    0    0   32 /   32     0.0s Htbl sequential
[ ]    0    0    0    0 /   32     0.0s Htbl concurrent
[ ]    8    0    0    8 /   32     0.1s Htbl concurrent
[ ]   12    0    0   12 /   32     0.3s Htbl concurrent
[]   32    0    0   32 /   32     0.3s Htbl concurrent
================================================================================
success (ran 2 tests)
random seed: 4473649952471906565
generated error fail pass / total     time test name
[ ]    0    0    0    0 /   64     0.0s Htbl sequential
[]   64    0    0   64 /   64     0.0s Htbl sequential
[ ]    0    0    0    0 /   64     0.0s Htbl concurrent
[ ]    3    0    0    3 /   64     0.0s Htbl concurrent
[ ]    5    0    0    5 /   64     0.1s Htbl concurrent
[ ]   31    0    0   31 /   64     0.3s Htbl concurrent
[ ]   40    0    0   40 /   64     0.4s Htbl concurrent
[ ]   54    0    0   54 /   64     0.5s Htbl concurrent
[ ]   56    0    0   56 /   64     0.6s Htbl concurrent
[]   64    0    0   64 /   64     0.7s Htbl concurrent
================================================================================
success (ran 2 tests)
random seed: 3021688030472253083
generated error fail pass / total     time test name
[ ]    0    0    0    0 /  128     0.0s Htbl sequential
[]  128    0    0  128 /  128     0.0s Htbl sequential
[ ]    0    0    0    0 /  128     0.0s Htbl concurrent
[ ]   12    0    0   12 /  128     0.1s Htbl concurrent
[ ]   20    0    0   20 /  128     0.3s Htbl concurrent
[ ]   24    0    0   24 /  128     0.4s Htbl concurrent
[ ]   32    0    0   32 /  128     0.6s Htbl concurrent
[ ]   39    0    0   39 /  128     0.7s Htbl concurrent
[ ]   49    0    0   49 /  128     0.8s Htbl concurrent
[ ]   54    0    0   54 /  128     0.9s Htbl concurrent
[ ]   70    0    0   70 /  128     1.1s Htbl concurrent
[ ]   86    0    0   86 /  128     1.3s Htbl concurrent
[ ]  101    0    0  101 /  128     1.4s Htbl concurrent
[ ]  108    0    0  108 /  128     1.6s Htbl concurrent
[ ]  111    0    0  111 /  128     1.8s Htbl concurrent
[]  128    0    0  128 /  128     1.8s Htbl concurrent
================================================================================
success (ran 2 tests)
random seed: 3497126164574508599
generated error fail pass / total     time test name
[ ]    0    0    0    0 /  256     0.0s Htbl sequential
[]  256    0    0  256 /  256     0.0s Htbl sequential
[ ]    0    0    0    0 /  256     0.0s Htbl concurrent
[ ]    4    0    0    4 /  256     0.1s Htbl concurrent
[ ]   13    0    0   13 /  256     0.2s Htbl concurrent
[ ]   17    0    0   17 /  256     0.3s Htbl concurrent
[ ]   24    0    0   24 /  256     0.6s Htbl concurrent
[ ]   32    0    0   32 /  256     0.7s Htbl concurrent
[ ]   50    0    0   50 /  256     0.9s Htbl concurrent
[ ]   52    0    0   52 /  256     1.1s Htbl concurrent
[ ]   58    0    0   58 /  256     1.2s Htbl concurrent
[ ]   63    0    0   63 /  256     1.3s Htbl concurrent
[ ]   70    0    0   70 /  256     1.4s Htbl concurrent
[ ]   80    0    0   80 /  256     1.5s Htbl concurrent
[ ]   94    0    0   94 /  256     1.6s Htbl concurrent
[ ]  100    0    0  100 /  256     1.8s Htbl concurrent
[ ]  106    0    0  106 /  256     2.0s Htbl concurrent
[ ]  123    0    0  123 /  256     2.2s Htbl concurrent
[ ]  127    0    0  127 /  256     2.3s Htbl concurrent
[ ]  141    0    0  141 /  256     2.4s Htbl concurrent
[ ]  157    0    0  157 /  256     2.6s Htbl concurrent
[ ]  160    0    0  160 /  256     2.7s Htbl concurrent
[ ]  181    0    0  181 /  256     2.9s Htbl concurrent
[ ]  205    0    0  205 /  256     3.0s Htbl concurrent
[ ]  213    0    0  213 /  256     3.1s Htbl concurrent
[ ]  221    0    0  221 /  256     3.3s Htbl concurrent
[ ]  240    0    0  240 /  256     3.4s Htbl concurrent
[]  256    0    0  256 /  256     3.5s Htbl concurrent
================================================================================
success (ran 2 tests)
random seed: 4231984132378794279
generated error fail pass / total     time test name
[ ]    0    0    0    0 /  512     0.0s Htbl sequential
[]  512    0    0  512 /  512     0.0s Htbl sequential
[ ]    0    0    0    0 /  512     0.0s Htbl concurrent
[ ]    1    0    0    1 /  512     0.0s Htbl concurrent
[ ]   17    0    0   17 /  512     0.2s Htbl concurrent
[ ]   28    0    0   28 /  512     0.3s Htbl concurrent
[ ]   34    0    0   34 /  512     0.4s Htbl concurrent
[ ]   53    0    0   53 /  512     0.5s Htbl concurrent
[ ]   75    0    0   75 /  512     0.7s Htbl concurrent
[ ]   91    0    0   91 /  512     0.9s Htbl concurrent
[ ]  103    0    0  103 /  512     1.0s Htbl concurrent
[ ]  116    0    0  116 /  512     1.3s Htbl concurrent
[ ]  128    0    0  128 /  512     1.4s Htbl concurrent
[ ]  136    0    0  136 /  512     1.6s Htbl concurrent
[ ]  147    0    0  147 /  512     1.9s Htbl concurrent
[ ]  153    0    0  153 /  512     2.2s Htbl concurrent
[ ]  154    0    0  154 /  512     2.3s Htbl concurrent
[ ]  164    0    0  164 /  512     2.5s Htbl concurrent
[ ]  169    0    0  169 /  512     2.7s Htbl concurrent
[ ]  174    0    0  174 /  512     2.9s Htbl concurrent
[ ]  182    0    0  182 /  512     3.0s Htbl concurrent
[ ]  192    0    0  192 /  512     3.1s Htbl concurrent
[ ]  207    0    0  207 /  512     3.2s Htbl concurrent
[ ]  219    0    0  219 /  512     3.4s Htbl concurrent
[ ]  226    0    0  226 /  512     3.5s Htbl concurrent
[ ]  234    0    0  234 /  512     3.6s Htbl concurrent
[ ]  238    0    0  238 /  512     3.7s Htbl concurrent
[ ]  253    0    0  253 /  512     3.8s Htbl concurrent
[ ]  263    0    0  263 /  512     4.0s Htbl concurrent
[ ]  269    0    0  269 /  512     4.1s Htbl concurrent
[ ]  273    0    0  273 /  512     4.3s Htbl concurrent
[ ]  281    0    0  281 /  512     4.4s Htbl concurrent
[ ]  286    0    0  286 /  512     4.6s Htbl concurrent
[ ]  301    0    0  301 /  512     4.9s Htbl concurrent
[ ]  302    0    0  302 /  512     5.0s Htbl concurrent
[ ]  306    0    0  306 /  512     5.1s Htbl concurrent
[ ]  310    0    0  310 /  512     5.2s Htbl concurrent
[ ]  328    0    0  328 /  512     5.3s Htbl concurrent
[ ]  332    0    0  332 /  512     5.4s Htbl concurrent
[ ]  334    0    0  334 /  512     5.6s Htbl concurrent
[ ]  338    0    0  338 /  512     5.7s Htbl concurrent
[ ]  359    0    0  359 /  512     5.8s Htbl concurrent
[ ]  386    0    0  386 /  512     5.9s Htbl concurrent
[ ]  398    0    0  398 /  512     6.0s Htbl concurrent
[ ]  404    0    0  404 /  512     6.2s Htbl concurrent
[ ]  415    0    0  415 /  512     6.3s Htbl concurrent
[ ]  425    0    0  425 /  512     6.6s Htbl concurrent
[ ]  439    0    0  439 /  512     6.7s Htbl concurrent
[ ]  443    0    0  443 /  512     6.9s Htbl concurrent
[ ]  459    0    0  459 /  512     7.1s Htbl concurrent
[ ]  462    0    0  462 /  512     7.3s Htbl concurrent
[ ]  470    0    0  470 /  512     7.4s Htbl concurrent
[ ]  473    0    0  473 /  512     7.6s Htbl concurrent
[ ]  477    0    0  477 /  512     7.7s Htbl concurrent
[ ]  490    0    0  490 /  512     7.8s Htbl concurrent
[ ]  492    0    0  492 /  512     7.9s Htbl concurrent
[ ]  499    0    0  499 /  512     8.0s Htbl concurrent
[]  512    0    0  512 /  512     8.1s Htbl concurrent
================================================================================
success (ran 2 tests)
random seed: 248022397516190028
generated error fail pass / total     time test name
[ ]    0    0    0    0 /   32     0.0s Htbl sequential
[]   32    0    0   32 /   32     0.0s Htbl sequential
[ ]    0    0    0    0 /   32     0.0s Htbl concurrent
[ ]    6    0    0    6 /   32     0.0s Htbl concurrent
[ ]   14    0    0   14 /   32     0.2s Htbl concurrent
[ ]   27    0    0   27 /   32     0.3s Htbl concurrent
[]   32    0    0   32 /   32     0.3s Htbl concurrent
================================================================================
success (ran 2 tests)
(cd _build/default/bench && ./main.exe -brief 'Ref with Picos_std_sync')
Ref with Picos_std_sync:
ops over time/cas int with Lock:
127.06 M/s
ops over time/cas int with Rwlock:
91.90 M/s
ops over time/cas int with Sem:
131.16 M/s
ops over time/get with Lock:
170.65 M/s
ops over time/get with Rwlock:
170.65 M/s
ops over time/get with Sem:
181.00 M/s
ops over time/incr with Lock:
170.65 M/s
ops over time/incr with Rwlock:
112.72 M/s
ops over time/incr with Sem:
179.32 M/s
ops over time/push & pop with Lock:
121.88 M/s
ops over time/push & pop with Rwlock:
86.57 M/s
ops over time/push & pop with Sem:
125.92 M/s
ops over time/swap with Lock:
132.68 M/s
ops over time/swap with Rwlock:
89.10 M/s
ops over time/swap with Sem:
138.25 M/s
ops over time/xchg int with Lock:
126.64 M/s
ops over time/xchg int with Rwlock:
91.88 M/s
ops over time/xchg int with Sem:
131.64 M/s
time per op/cas int with Lock:
7.87 ns
time per op/cas int with Rwlock:
10.88 ns
time per op/cas int with Sem:
7.62 ns
time per op/get with Lock:
5.86 ns
time per op/get with Rwlock:
5.86 ns
time per op/get with Sem:
5.53 ns
time per op/incr with Lock:
5.86 ns
time per op/incr with Rwlock:
8.87 ns
time per op/incr with Sem:
5.58 ns
time per op/push & pop with Lock:
8.21 ns
time per op/push & pop with Rwlock:
11.55 ns
time per op/push & pop with Sem:
7.94 ns
time per op/swap with Lock:
7.54 ns
time per op/swap with Rwlock:
11.22 ns
time per op/swap with Sem:
7.23 ns
time per op/xchg int with Lock:
7.90 ns
time per op/xchg int with Rwlock:
10.88 ns
time per op/xchg int with Sem:
7.60 ns
(cd _build/default/bench && ./main.exe -brief Picos_mpmcq)
Picos_mpmcq:
messages over time/one domain:
42.42 M/s
time per message/one domain:
23.58 ns
(cd _build/default/bench && ./main.exe -brief Picos_mpscq)
Picos_mpscq:
messages over time/one domain:
48.60 M/s
time per message/one domain:
20.58 ns
(cd _build/default/bench && ./main.exe -brief Picos_htbl)
Picos_htbl:
operations over time/1 worker, 10% reads:
23.37 M/s
operations over time/1 worker, 50% reads:
25.07 M/s
operations over time/1 worker, 90% reads:
36.92 M/s
time per operation/1 worker, 10% reads:
42.79 ns
time per operation/1 worker, 50% reads:
39.89 ns
time per operation/1 worker, 90% reads:
27.09 ns
(cd _build/default/test && ./test_rwlock.exe)
random seed: 3109637560557609461
generated error fail pass / total     time test name
[ ]    0    0    0    0 /   32     0.0s Rwlock sequential
[ ]    0    0    0    0 /   32     0.0s Rwlock sequential (generating)
[]   32    0    0   32 /   32     0.0s Rwlock sequential
[ ]    0    0    0    0 /   32     0.0s Rwlock concurrent
[ ]   30    0    0   30 /   32     0.1s Rwlock concurrent
[]   32    0    0   32 /   32     0.1s Rwlock concurrent
================================================================================
success (ran 2 tests)
random seed: 4475393349575835396
generated error fail pass / total     time test name
[ ]    0    0    0    0 /   64     0.0swlock sequential
[]   64    0    0   64 /   64     0.0s Rwlock sequential
[ ]    0    0    0    0 /   64     0.0s Rwlock concurrent
[ ]    8    0    0    8 /   64     0.1s Rwlock concurrent
[ ]   32    0    0   32 /   64     0.2s Rwlock concurrent
[ ]   42    0    0   42 /   64     0.3s Rwlock concurrent
[]   64    0    0   64 /   64     0.4s Rwlock concurrent
================================================================================
success (ran 2 tests)
random seed: 2528232138445636568
generated error fail pass / total     time test name
[ ]    0    0    0    0 /  128     0.0s Rwlock sequential
[]  128    0    0  128 /  128     0.0s Rwlock sequential
[ ]    0    0    0    0 /  128     0.0s Rwlock concurrent
[ ]   12    0    0   12 /  128     0.0s Rwlock concurrent
[ ]   23    0    0   23 /  128     0.2s Rwlock concurrent
[ ]   38    0    0   38 /  128     0.3s Rwlock concurrent
[ ]   65    0    0   65 /  128     0.5s Rwlock concurrent
[ ]   78    0    0   78 /  128     0.6s Rwlock concurrent
[ ]   85    0    0   85 /  128     0.7s Rwlock concurrent
[ ]  107    0    0  107 /  128     0.9s Rwlock concurrent
[ ]  113    0    0  113 /  128     1.0s Rwlock concurrent
[]  128    0    0  128 /  128     1.0s Rwlock concurrent
================================================================================
success (ran 2 tests)
random seed: 3970964562406390744
generated error fail pass / total     time test name
[ ]    0    0    0    0 /  256     0.0s Rwlock sequential
[]  256    0    0  256 /  256     0.0s Rwlock sequential
[ ]    0    0    0    0 /  256     0.0s Rwlock concurrent
[ ]   10    0    0   10 /  256     0.1s Rwlock concurrent
[ ]   38    0    0   38 /  256     0.2s Rwlock concurrent
[ ]   48    0    0   48 /  256     0.3s Rwlock concurrent
[ ]   59    0    0   59 /  256     0.4s Rwlock concurrent
[ ]   71    0    0   71 /  256     0.5s Rwlock concurrent
[ ]   73    0    0   73 /  256     0.7s Rwlock concurrent
[ ]   83    0    0   83 /  256     0.8s Rwlock concurrent
[ ]  110    0    0  110 /  256     0.9s Rwlock concurrent
[ ]  127    0    0  127 /  256     1.1s Rwlock concurrent
[ ]  143    0    0  143 /  256     1.2s Rwlock concurrent
[ ]  159    0    0  159 /  256     1.3s Rwlock concurrent
[ ]  167    0    0  167 /  256     1.5s Rwlock concurrent
[ ]  185    0    0  185 /  256     1.6s Rwlock concurrent
[ ]  200    0    0  200 /  256     1.7s Rwlock concurrent
[ ]  214    0    0  214 /  256     1.9s Rwlock concurrent
[ ]  241    0    0  241 /  256     2.0s Rwlock concurrent
[ ]  256    0    0  256 /  256     2.1s Rwlock concurrent
[]  256    0    0  256 /  256     2.1s Rwlock concurrent
================================================================================
success (ran 2 tests)
random seed: 3987433610357932466
generated error fail pass / total     time test name
[ ]    0    0    0    0 /  512     0.0s Rwlock sequential
[]  512    0    0  512 /  512     0.0s Rwlock sequential
[ ]    0    0    0    0 /  512     0.0s Rwlock concurrent
[ ]   35    0    0   35 /  512     0.1s Rwlock concurrent
[ ]   46    0    0   46 /  512     0.2s Rwlock concurrent
[ ]   64    0    0   64 /  512     0.3s Rwlock concurrent
[ ]   80    0    0   80 /  512     0.5s Rwlock concurrent
[ ]   93    0    0   93 /  512     0.6s Rwlock concurrent
[ ]  100    0    0  100 /  512     0.7s Rwlock concurrent
[ ]  115    0    0  115 /  512     0.9s Rwlock concurrent
[ ]  131    0    0  131 /  512     1.0s Rwlock concurrent
[ ]  138    0    0  138 /  512     1.1s Rwlock concurrent
[ ]  144    0    0  144 /  512     1.2s Rwlock concurrent
[ ]  149    0    0  149 /  512     1.4s Rwlock concurrent
[ ]  157    0    0  157 /  512     1.5s Rwlock concurrent
[ ]  158    0    0  158 /  512     1.6s Rwlock concurrent
[ ]  164    0    0  164 /  512     1.8s Rwlock concurrent
[ ]  176    0    0  176 /  512     1.9s Rwlock concurrent
[ ]  178    0    0  178 /  512     2.1s Rwlock concurrent
[ ]  197    0    0  197 /  512     2.2s Rwlock concurrent
[ ]  213    0    0  213 /  512     2.3s Rwlock concurrent
[ ]  232    0    0  232 /  512     2.4s Rwlock concurrent
[ ]  257    0    0  257 /  512     2.6s Rwlock concurrent
[ ]  271    0    0  271 /  512     2.7s Rwlock concurrent
[ ]  275    0    0  275 /  512     2.9s Rwlock concurrent
[ ]  284    0    0  284 /  512     3.0s Rwlock concurrent
[ ]  292    0    0  292 /  512     3.1s Rwlock concurrent
[ ]  310    0    0  310 /  512     3.3s Rwlock concurrent
[ ]  322    0    0  322 /  512     3.4s Rwlock concurrent
[ ]  335    0    0  335 /  512     3.5s Rwlock concurrent
[ ]  344    0    0  344 /  512     3.7s Rwlock concurrent
[ ]  348    0    0  348 /  512     3.8s Rwlock concurrent
[ ]  356    0    0  356 /  512     4.0s Rwlock concurrent
[ ]  361    0    0  361 /  512     4.1s Rwlock concurrent
[ ]  375    0    0  375 /  512     4.3s Rwlock concurrent
[ ]  376    0    0  376 /  512     4.5s Rwlock concurrent
[ ]  386    0    0  386 /  512     4.6s Rwlock concurrent
[ ]  396    0    0  396 /  512     4.7s Rwlock concurrent
[ ]  415    0    0  415 /  512     4.9s Rwlock concurrent
[ ]  423    0    0  423 /  512     5.1s Rwlock concurrent
[ ]  441    0    0  441 /  512     5.2s Rwlock concurrent
[ ]  448    0    0  448 /  512     5.3s Rwlock concurrent
[ ]  451    0    0  451 /  512     5.4s Rwlock concurrent
[ ]  467    0    0  467 /  512     5.5s Rwlock concurrent
[ ]  470    0    0  470 /  512     5.7s Rwlock concurrent
[ ]  487    0    0  487 /  512     5.8s Rwlock concurrent
[ ]  497    0    0  497 /  512     5.9s Rwlock concurrent
[]  512    0    0  512 /  512     6.0s Rwlock concurrent
================================================================================
success (ran 2 tests)
random seed: 4341119542012556489
generated error fail pass / total     time test name
[ ]    0    0    0    0 /   32     0.0s Rwlock sequential
[]   32    0    0   32 /   32     0.0s Rwlock sequential
[ ]    0    0    0    0 /   32     0.0s Rwlock concurrent
[ ]    5    0    0    5 /   32     0.1s Rwlock concurrent
[ ]   31    0    0   31 /   32     0.2s Rwlock concurrent
[]   32    0    0   32 /   32     0.2s Rwlock concurrent
================================================================================
success (ran 2 tests)
(cd _build/default/test && ./test_sync.exe -- '^Lock and Lock.Condition$' 1)
Testing `Picos_sync'.
This run has ID `6MGQTC06'.


[SKIP]        Mutex and Condition                  0   basics.
[SKIP]        Mutex and Condition                  1   errors.
[SKIP]        Mutex and Condition                  2   cancelation.
[SKIP]        Lock and Lock.Condition              0   basics.
[OK]          Lock and Lock.Condition              1   cancelation.
[SKIP]        Lock and Lock.Condition              2   poisoning.
[SKIP]        Lock and Lock.Condition              3   try_acquire.
[SKIP]        Rwlock and Rwlock.Condition          0   basics.
[SKIP]        Rwlock and Rwlock.Condition          1   cancelation.
[SKIP]        Rwlock and Rwlock.Condition          2   poisoning.
[SKIP]        Rwlock and Rwlock.Condition          3   freezing.
[SKIP]        Rwlock and Rwlock.Condition          4   try_acquire.
[SKIP]        Rwlock and Rwlock.Condition          5   try_acquire_shared.
[SKIP]        Rwlock and Rwlock.Condition          6   sharing.
[SKIP]        Semaphore                            0   basics.
[SKIP]        Semaphore                            1   stress.
[SKIP]        Sem                                  0   basics.
[SKIP]        Sem                                  1   stress.
[SKIP]        Sem                                  2   poisoning.
[SKIP]        Sem                                  3   try_acquire.
[SKIP]        Lazy                                 0   basics.
[SKIP]        Lazy                                 1   cancelation.
[SKIP]        Event                                0   basics.
[SKIP]        Barrier                              0   basics.
[SKIP]        Barrier                              1   poisoning.
[SKIP]        Non-cancelable ops                   0   are not canceled.


Full test results in `~/src/_build/default/test/_build/_tests/Picos_sync'.
Test Successful in 3.564s. 1 test run.
(cd _build/default/test && ./test_sync.exe -- '^Lock and Lock.Condition$' 2)
Testing `Picos_sync'.
This run has ID `F0DUQ53A'.


[SKIP]        Mutex and Condition                  0   basics.
[SKIP]        Mutex and Condition                  1   errors.
[SKIP]        Mutex and Condition                  2   cancelation.
[SKIP]        Lock and Lock.Condition              0   basics.
[SKIP]        Lock and Lock.Condition              1   cancelation.
[OK]          Lock and Lock.Condition              2   poisoning.
[SKIP]        Lock and Lock.Condition              3   try_acquire.
[SKIP]        Rwlock and Rwlock.Condition          0   basics.
[SKIP]        Rwlock and Rwlock.Condition          1   cancelation.
[SKIP]        Rwlock and Rwlock.Condition          2   poisoning.
[SKIP]        Rwlock and Rwlock.Condition          3   freezing.
[SKIP]        Rwlock and Rwlock.Condition          4   try_acquire.
[SKIP]        Rwlock and Rwlock.Condition          5   try_acquire_shared.
[SKIP]        Rwlock and Rwlock.Condition          6   sharing.
[SKIP]        Semaphore                            0   basics.
[SKIP]        Semaphore                            1   stress.
[SKIP]        Sem                                  0   basics.
[SKIP]        Sem                                  1   stress.
[SKIP]        Sem                                  2   poisoning.
[SKIP]        Sem                                  3   try_acquire.
[SKIP]        Lazy                                 0   basics.
[SKIP]        Lazy                                 1   cancelation.
[SKIP]        Event                                0   basics.
[SKIP]        Barrier                              0   basics.
[SKIP]        Barrier                              1   poisoning.
[SKIP]        Non-cancelable ops                   0   are not canceled.


Full test results in `~/src/_build/default/test/_build/_tests/Picos_sync'.
Test Successful in 0.000s. 1 test run.
(cd _build/default/test && ./test_sync.exe -- '^Lock and Lock.Condition$' 3)
Testing `Picos_sync'.
This run has ID `42PHHPVA'.


[SKIP]        Mutex and Condition                  0   basics.
[SKIP]        Mutex and Condition                  1   errors.
[SKIP]        Mutex and Condition                  2   cancelation.
[SKIP]        Lock and Lock.Condition              0   basics.
[SKIP]        Lock and Lock.Condition              1   cancelation.
[SKIP]        Lock and Lock.Condition              2   poisoning.
[OK]          Lock and Lock.Condition              3   try_acquire.
[SKIP]        Rwlock and Rwlock.Condition          0   basics.
[SKIP]        Rwlock and Rwlock.Condition          1   cancelation.
[SKIP]        Rwlock and Rwlock.Condition          2   poisoning.
[SKIP]        Rwlock and Rwlock.Condition          3   freezing.
[SKIP]        Rwlock and Rwlock.Condition          4   try_acquire.
[SKIP]        Rwlock and Rwlock.Condition          5   try_acquire_shared.
[SKIP]        Rwlock and Rwlock.Condition          6   sharing.
[SKIP]        Semaphore                            0   basics.
[SKIP]        Semaphore                            1   stress.
[SKIP]        Sem                                  0   basics.
[SKIP]        Sem                                  1   stress.
[SKIP]        Sem                                  2   poisoning.
[SKIP]        Sem                                  3   try_acquire.
[SKIP]        Lazy                                 0   basics.
[SKIP]        Lazy                                 1   cancelation.
[SKIP]        Event                                0   basics.
[SKIP]        Barrier                              0   basics.
[SKIP]        Barrier                              1   poisoning.
[SKIP]        Non-cancelable ops                   0   are not canceled.


Full test results in `~/src/_build/default/test/_build/_tests/Picos_sync'.
Test Successful in 0.000s. 1 test run.
(cd _build/default/test && ./test_sync.exe -- '^Rwlock and Rwlock.Condition$' 0)
Testing `Picos_sync'.
This run has ID `A2P8C0DV'.


[SKIP]        Mutex and Condition                  0   basics.
[SKIP]        Mutex and Condition                  1   errors.
[SKIP]        Mutex and Condition                  2   cancelation.
[SKIP]        Lock and Lock.Condition              0   basics.
[SKIP]        Lock and Lock.Condition              1   cancelation.
[SKIP]        Lock and Lock.Condition              2   poisoning.
[SKIP]        Lock and Lock.Condition              3   try_acquire.
[OK]          Rwlock and Rwlock.Condition          0   basics.
[SKIP]        Rwlock and Rwlock.Condition          1   cancelation.
[SKIP]        Rwlock and Rwlock.Condition          2   poisoning.
[SKIP]        Rwlock and Rwlock.Condition          3   freezing.
[SKIP]        Rwlock and Rwlock.Condition          4   try_acquire.
[SKIP]        Rwlock and Rwlock.Condition          5   try_acquire_shared.
[SKIP]        Rwlock and Rwlock.Condition          6   sharing.
[SKIP]        Semaphore                            0   basics.
[SKIP]        Semaphore                            1   stress.
[SKIP]        Sem                                  0   basics.
[SKIP]        Sem                                  1   stress.
[SKIP]        Sem                                  2   poisoning.
[SKIP]        Sem                                  3   try_acquire.
[SKIP]        Lazy                                 0   basics.
[SKIP]        Lazy                                 1   cancelation.
[SKIP]        Event                                0   basics.
[SKIP]        Barrier                              0   basics.
[SKIP]        Barrier                              1   poisoning.
[SKIP]        Non-cancelable ops                   0   are not canceled.


Full test results in `~/src/_build/default/test/_build/_tests/Picos_sync'.
Test Successful in 0.002s. 1 test run.
(cd _build/default/bench && ./main.exe -brief 'Hashtbl with Picos_std_sync')
Hashtbl with Picos_std_sync:
operations over time/1 worker, 10% reads with Lock:
24.75 M/s
operations over time/1 worker, 10% reads with Rwlock:
23.41 M/s
operations over time/1 worker, 10% reads with Sem:
24.85 M/s
operations over time/1 worker, 100% reads with Lock:
42.20 M/s
operations over time/1 worker, 100% reads with Rwlock:
41.04 M/s
operations over time/1 worker, 100% reads with Sem:
43.15 M/s
operations over time/1 worker, 50% reads with Lock:
24.63 M/s
operations over time/1 worker, 50% reads with Rwlock:
23.54 M/s
operations over time/1 worker, 50% reads with Sem:
24.83 M/s
operations over time/1 worker, 90% reads with Lock:
35.57 M/s
operations over time/1 worker, 90% reads with Rwlock:
35.12 M/s
operations over time/1 worker, 90% reads with Sem:
35.63 M/s
operations over time/1 worker, 95% reads with Lock:
39.43 M/s
operations over time/1 worker, 95% reads with Rwlock:
38.98 M/s
operations over time/1 worker, 95% reads with Sem:
39.40 M/s
time per operation/1 worker, 10% reads with Lock:
40.40 ns
time per operation/1 worker, 10% reads with Rwlock:
42.71 ns
time per operation/1 worker, 10% reads with Sem:
40.25 ns
time per operation/1 worker, 100% reads with Lock:
23.70 ns
time per operation/1 worker, 100% reads with Rwlock:
24.37 ns
time per operation/1 worker, 100% reads with Sem:
23.18 ns
time per operation/1 worker, 50% reads with Lock:
40.60 ns
time per operation/1 worker, 50% reads with Rwlock:
42.48 ns
time per operation/1 worker, 50% reads with Sem:
40.28 ns
time per operation/1 worker, 90% reads with Lock:
28.12 ns
time per operation/1 worker, 90% reads with Rwlock:
28.47 ns
time per operation/1 worker, 90% reads with Sem:
28.06 ns
time per operation/1 worker, 95% reads with Lock:
25.36 ns
time per operation/1 worker, 95% reads with Rwlock:
25.66 ns
time per operation/1 worker, 95% reads with Sem:
25.38 ns
(cd _build/default/test && ./test_sem.exe)
random seed: 305473215283217149
generated error fail pass / total     time test name
[ ]    0    0    0    0 /   32     0.0s Sem sequential
[ ]    0    0    0    0 /   32     0.0s Sem sequential (generating)
[]   32    0    0   32 /   32     0.0s Sem sequential
[ ]    0    0    0    0 /   32     0.0s Sem concurrent
[ ]    6    0    0    6 /   32     0.1s Sem concurrent
[ ]    9    0    0    9 /   32     0.2s Sem concurrent
[ ]   19    0    0   19 /   32     0.3s Sem concurrent
[ ]   26    0    0   26 /   32     0.4s Sem concurrent
[ ]   32    0    0   32 /   32     0.6s Sem concurrent
[]   32    0    0   32 /   32     0.6s Sem concurrent
================================================================================
success (ran 2 tests)
random seed: 4141825723210530548
generated error fail pass / total     time test name
[ ]    0    0    0    0 /   64     0.0s Sem sequential
[]   64    0    0   64 /   64     0.0s Sem sequential
[ ]    0    0    0    0 /   64     0.0s Sem concurrent
[ ]   44    0    0   44 /   64     0.1s Sem concurrent
[ ]   56    0    0   56 /   64     0.2s Sem concurrent
[]   64    0    0   64 /   64     0.3s Sem concurrent
================================================================================
success (ran 2 tests)
random seed: 3325466744195774532
generated error fail pass / total     time test name
[ ]    0    0    0    0 /  128     0.0s Sem sequential
[]  128    0    0  128 /  128     0.0s Sem sequential
[ ]    0    0    0    0 /  128     0.0s Sem concurrent
[ ]    2    0    0    2 /  128     0.0s Sem concurrent
[ ]   12    0    0   12 /  128     0.2s Sem concurrent
[ ]   23    0    0   23 /  128     0.3s Sem concurrent
[ ]   40    0    0   40 /  128     0.4s Sem concurrent
[ ]   53    0    0   53 /  128     0.5s Sem concurrent
[ ]   60    0    0   60 /  128     0.7s Sem concurrent
[ ]   84    0    0   84 /  128     0.8s Sem concurrent
[ ]   93    0    0   93 /  128     0.9s Sem concurrent
[ ]  116    0    0  116 /  128     1.0s Sem concurrent
[]  128    0    0  128 /  128     1.1s Sem concurrent
================================================================================
success (ran 2 tests)
random seed: 884800080004464799
generated error fail pass / total     time test name
[ ]    0    0    0    0 /  256     0.0s Sem sequential
[]  256    0    0  256 /  256     0.0s Sem sequential
[ ]    0    0    0    0 /  256     0.0s Sem concurrent
[ ]   10    0    0   10 /  256     0.1s Sem concurrent
[ ]   13    0    0   13 /  256     0.2s Sem concurrent
[ ]   25    0    0   25 /  256     0.3s Sem concurrent
[ ]   33    0    0   33 /  256     0.4s Sem concurrent
[ ]   53    0    0   53 /  256     0.5s Sem concurrent
[ ]   79    0    0   79 /  256     0.6s Sem concurrent
[ ]   84    0    0   84 /  256     0.7s Sem concurrent
[ ]   97    0    0   97 /  256     0.9s Sem concurrent
[ ]  113    0    0  113 /  256     1.1s Sem concurrent
[ ]  124    0    0  124 /  256     1.2s Sem concurrent
[ ]  125    0    0  125 /  256     1.4s Sem concurrent
[ ]  130    0    0  130 /  256     1.6s Sem concurrent
[ ]  158    0    0  158 /  256     1.7s Sem concurrent
[ ]  170    0    0  170 /  256     1.8s Sem concurrent
[ ]  176    0    0  176 /  256     1.9s Sem concurrent
[ ]  185    0    0  185 /  256     2.2s Sem concurrent
[ ]  189    0    0  189 /  256     2.3s Sem concurrent
[ ]  202    0    0  202 /  256     2.4s Sem concurrent
[ ]  204    0    0  204 /  256     2.6s Sem concurrent
[ ]  209    0    0  209 /  256     2.7s Sem concurrent
[ ]  220    0    0  220 /  256     2.8s Sem concurrent
[ ]  238    0    0  238 /  256     2.9s Sem concurrent
[ ]  242    0    0  242 /  256     3.0s Sem concurrent
[]  256    0    0  256 /  256     3.1s Sem concurrent
================================================================================
success (ran 2 tests)
random seed: 3547222477483027158
generated error fail pass / total     time test name
[ ]    0    0    0    0 /  512     0.0s Sem sequential
[]  512    0    0  512 /  512     0.0s Sem sequential
[ ]    0    0    0    0 /  512     0.0s Sem concurrent
[ ]    9    0    0    9 /  512     0.1s Sem concurrent
[ ]   15    0    0   15 /  512     0.2s Sem concurrent
[ ]   28    0    0   28 /  512     0.3s Sem concurrent
[ ]   53    0    0   53 /  512     0.6s Sem concurrent
[ ]   54    0    0   54 /  512     0.7s Sem concurrent
[ ]   71    0    0   71 /  512     0.8s Sem concurrent
[ ]   75    0    0   75 /  512     1.0s Sem concurrent
[ ]   80    0    0   80 /  512     1.1s Sem concurrent
[ ]   89    0    0   89 /  512     1.2s Sem concurrent
[ ]   94    0    0   94 /  512     1.4s Sem concurrent
[ ]   98    0    0   98 /  512     1.6s Sem concurrent
[ ]  113    0    0  113 /  512     1.7s Sem concurrent
[ ]  115    0    0  115 /  512     1.8s Sem concurrent
[ ]  122    0    0  122 /  512     2.1s Sem concurrent
[ ]  127    0    0  127 /  512     2.3s Sem concurrent
[ ]  129    0    0  129 /  512     2.4s Sem concurrent
[ ]  149    0    0  149 /  512     2.6s Sem concurrent
[ ]  153    0    0  153 /  512     2.7s Sem concurrent
[ ]  161    0    0  161 /  512     2.8s Sem concurrent
[ ]  165    0    0  165 /  512     2.9s Sem concurrent
[ ]  174    0    0  174 /  512     3.0s Sem concurrent
[ ]  187    0    0  187 /  512     3.1s Sem concurrent
[ ]  203    0    0  203 /  512     3.3s Sem concurrent
[ ]  211    0    0  211 /  512     3.4s Sem concurrent
[ ]  216    0    0  216 /  512     3.6s Sem concurrent
[ ]  222    0    0  222 /  512     3.7s Sem concurrent
[ ]  232    0    0  232 /  512     3.8s Sem concurrent
[ ]  237    0    0  237 /  512     4.1s Sem concurrent
[ ]  241    0    0  241 /  512     4.2s Sem concurrent
[ ]  250    0    0  250 /  512     4.3s Sem concurrent
[ ]  267    0    0  267 /  512     4.4s Sem concurrent
[ ]  285    0    0  285 /  512     4.5s Sem concurrent
[ ]  299    0    0  299 /  512     4.6s Sem concurrent
[ ]  326    0    0  326 /  512     4.7s Sem concurrent
[ ]  350    0    0  350 /  512     4.9s Sem concurrent
[ ]  351    0    0  351 /  512     5.0s Sem concurrent
[ ]  374    0    0  374 /  512     5.1s Sem concurrent
[ ]  378    0    0  378 /  512     5.3s Sem concurrent
[ ]  384    0    0  384 /  512     5.4s Sem concurrent
[ ]  410    0    0  410 /  512     5.5s Sem concurrent
[ ]  448    0    0  448 /  512     5.6s Sem concurrent
[ ]  450    0    0  450 /  512     5.7s Sem concurrent
[ ]  478    0    0  478 /  512     5.8s Sem concurrent
[ ]  488    0    0  488 /  512     6.0s Sem concurrent
[ ]  507    0    0  507 /  512     6.1s Sem concurrent
[]  512    0    0  512 /  512     6.1s Sem concurrent
================================================================================
success (ran 2 tests)
random seed: 2544210579617747870
generated error fail pass / total     time test name
[ ]    0    0    0    0 /   32     0.0s Sem sequential
[]   32    0    0   32 /   32     0.0s Sem sequential
[ ]    0    0    0    0 /   32     0.0s Sem concurrent
[ ]   26    0    0   26 /   32     0.1s Sem concurrent
[]   32    0    0   32 /   32     0.1s Sem concurrent
================================================================================
success (ran 2 tests)
(cd _build/default/bench && ./main.exe -brief Picos_stdio)
Picos_stdio:
blocking reads over time/1 worker:
0.19 M/s
non-blocking reads over time/1 worker:
0.98 M/s
time per blocking read/1 worker:
5330.56 ns
time per non-blocking read/1 worker:
1016.60 ns
(cd _build/default/bench && ./main.exe -brief 'Picos_sync Stream')
Picos_sync Stream:
messages over time/one domain:
32.20 M/s
time per message/one domain:
31.06 ns
(cd _build/default/bench && ./main.exe -brief Fib)
Fib:
(cd _build/default/bench && ./main.exe -brief 'Picos binaries')
Picos binaries:
binary size/picos:
62.13 kB
binary size/picos.domain:
5.09 kB
binary size/picos.thread:
2.59 kB
binary size/picos_aux.htbl:
43.54 kB
binary size/picos_aux.mpmcq:
13.07 kB
binary size/picos_aux.mpscq:
14.14 kB
binary size/picos_aux.rc:
12.70 kB
binary size/picos_io:
70.26 kB
binary size/picos_io.fd:
7.45 kB
binary size/picos_io.select:
48.05 kB
binary size/picos_io_cohttp:
35.50 kB
binary size/picos_mux.thread:
17.00 kB
binary size/picos_std.awaitable:
26.46 kB
binary size/picos_std.event:
18.12 kB
binary size/picos_std.finally:
14.22 kB
binary size/picos_std.structured:
65.02 kB
binary size/picos_std.sync:
142.60 kB
(cd _build/default/bench && ./main.exe -brief 'Bounded_q with Picos_std_sync')
Bounded_q with Picos_std_sync:
messages over time/one domain with Lock:
30.57 M/s
time per message/one domain with Lock:
32.72 ns
(cd _build/default/bench && ./main.exe -brief 'Memory usage')
Memory usage:
(cd _build/default/test && ./test_sync.exe -- '^Rwlock and Rwlock.Condition$' 1)
Testing `Picos_sync'.
This run has ID `XUBP05HP'.


[SKIP]        Mutex and Condition                  0   basics.
[SKIP]        Mutex and Condition                  1   errors.
[SKIP]        Mutex and Condition                  2   cancelation.
[SKIP]        Lock and Lock.Condition              0   basics.
[SKIP]        Lock and Lock.Condition              1   cancelation.
[SKIP]        Lock and Lock.Condition              2   poisoning.
[SKIP]        Lock and Lock.Condition              3   try_acquire.
[SKIP]        Rwlock and Rwlock.Condition          0   basics.
[OK]          Rwlock and Rwlock.Condition          1   cancelation.
[SKIP]        Rwlock and Rwlock.Condition          2   poisoning.
[SKIP]        Rwlock and Rwlock.Condition          3   freezing.
[SKIP]        Rwlock and Rwlock.Condition          4   try_acquire.
[SKIP]        Rwlock and Rwlock.Condition          5   try_acquire_shared.
[SKIP]        Rwlock and Rwlock.Condition          6   sharing.
[SKIP]        Semaphore                            0   basics.
[SKIP]        Semaphore                            1   stress.
[SKIP]        Sem                                  0   basics.
[SKIP]        Sem                                  1   stress.
[SKIP]        Sem                                  2   poisoning.
[SKIP]        Sem                                  3   try_acquire.
[SKIP]        Lazy                                 0   basics.
[SKIP]        Lazy                                 1   cancelation.
[SKIP]        Event                                0   basics.
[SKIP]        Barrier                              0   basics.
[SKIP]        Barrier                              1   poisoning.
[SKIP]        Non-cancelable ops                   0   are not canceled.


Full test results in `~/src/_build/default/test/_build/_tests/Picos_sync'.
Test Successful in 1.754s. 1 test run.
(cd _build/default/test && ./test_sync.exe -- '^Rwlock and Rwlock.Condition$' 2)
Testing `Picos_sync'.
This run has ID `P18HNA7H'.


[SKIP]        Mutex and Condition                  0   basics.
[SKIP]        Mutex and Condition                  1   errors.
[SKIP]        Mutex and Condition                  2   cancelation.
[SKIP]        Lock and Lock.Condition              0   basics.
[SKIP]        Lock and Lock.Condition              1   cancelation.
[SKIP]        Lock and Lock.Condition              2   poisoning.
[SKIP]        Lock and Lock.Condition              3   try_acquire.
[SKIP]        Rwlock and Rwlock.Condition          0   basics.
[SKIP]        Rwlock and Rwlock.Condition          1   cancelation.
[OK]          Rwlock and Rwlock.Condition          2   poisoning.
[SKIP]        Rwlock and Rwlock.Condition          3   freezing.
[SKIP]        Rwlock and Rwlock.Condition          4   try_acquire.
[SKIP]        Rwlock and Rwlock.Condition          5   try_acquire_shared.
[SKIP]        Rwlock and Rwlock.Condition          6   sharing.
[SKIP]        Semaphore                            0   basics.
[SKIP]        Semaphore                            1   stress.
[SKIP]        Sem                                  0   basics.
[SKIP]        Sem                                  1   stress.
[SKIP]        Sem                                  2   poisoning.
[SKIP]        Sem                                  3   try_acquire.
[SKIP]        Lazy                                 0   basics.
[SKIP]        Lazy                                 1   cancelation.
[SKIP]        Event                                0   basics.
[SKIP]        Barrier                              0   basics.
[SKIP]        Barrier                              1   poisoning.
[SKIP]        Non-cancelable ops                   0   are not canceled.


Full test results in `~/src/_build/default/test/_build/_tests/Picos_sync'.
Test Successful in 0.000s. 1 test run.
(cd _build/default/test && ./test_sync.exe -- '^Rwlock and Rwlock.Condition$' 3)
Testing `Picos_sync'.
This run has ID `8L5WPD3X'.


[SKIP]        Mutex and Condition                  0   basics.
[SKIP]        Mutex and Condition                  1   errors.
[SKIP]        Mutex and Condition                  2   cancelation.
[SKIP]        Lock and Lock.Condition              0   basics.
[SKIP]        Lock and Lock.Condition              1   cancelation.
[SKIP]        Lock and Lock.Condition              2   poisoning.
[SKIP]        Lock and Lock.Condition              3   try_acquire.
[SKIP]        Rwlock and Rwlock.Condition          0   basics.
[SKIP]        Rwlock and Rwlock.Condition          1   cancelation.
[SKIP]        Rwlock and Rwlock.Condition          2   poisoning.
[OK]          Rwlock and Rwlock.Condition          3   freezing.
[SKIP]        Rwlock and Rwlock.Condition          4   try_acquire.
[SKIP]        Rwlock and Rwlock.Condition          5   try_acquire_shared.
[SKIP]        Rwlock and Rwlock.Condition          6   sharing.
[SKIP]        Semaphore                            0   basics.
[SKIP]        Semaphore                            1   stress.
[SKIP]        Sem                                  0   basics.
[SKIP]        Sem                                  1   stress.
[SKIP]        Sem                                  2   poisoning.
[SKIP]        Sem                                  3   try_acquire.
[SKIP]        Lazy                                 0   basics.
[SKIP]        Lazy                                 1   cancelation.
[SKIP]        Event                                0   basics.
[SKIP]        Barrier                              0   basics.
[SKIP]        Barrier                              1   poisoning.
[SKIP]        Non-cancelable ops                   0   are not canceled.


Full test results in `~/src/_build/default/test/_build/_tests/Picos_sync'.
Test Successful in 0.000s. 1 test run.
(cd _build/default/test && ./test_sync.exe -- '^Rwlock and Rwlock.Condition$' 4)
Testing `Picos_sync'.
This run has ID `W3L834FM'.


[SKIP]        Mutex and Condition                  0   basics.
[SKIP]        Mutex and Condition                  1   errors.
[SKIP]        Mutex and Condition                  2   cancelation.
[SKIP]        Lock and Lock.Condition              0   basics.
[SKIP]        Lock and Lock.Condition              1   cancelation.
[SKIP]        Lock and Lock.Condition              2   poisoning.
[SKIP]        Lock and Lock.Condition              3   try_acquire.
[SKIP]        Rwlock and Rwlock.Condition          0   basics.
[SKIP]        Rwlock and Rwlock.Condition          1   cancelation.
[SKIP]        Rwlock and Rwlock.Condition          2   poisoning.
[SKIP]        Rwlock and Rwlock.Condition          3   freezing.
[OK]          Rwlock and Rwlock.Condition          4   try_acquire.
[SKIP]        Rwlock and Rwlock.Condition          5   try_acquire_shared.
[SKIP]        Rwlock and Rwlock.Condition          6   sharing.
[SKIP]        Semaphore                            0   basics.
[SKIP]        Semaphore                            1   stress.
[SKIP]        Sem                                  0   basics.
[SKIP]        Sem                                  1   stress.
[SKIP]        Sem                                  2   poisoning.
[SKIP]        Sem                                  3   try_acquire.
[SKIP]        Lazy                                 0   basics.
[SKIP]        Lazy                                 1   cancelation.
[SKIP]        Event                                0   basics.
[SKIP]        Barrier                              0   basics.
[SKIP]        Barrier                              1   poisoning.
[SKIP]        Non-cancelable ops                   0   are not canceled.


Full test results in `~/src/_build/default/test/_build/_tests/Picos_sync'.
Test Successful in 0.000s. 1 test run.
(cd _build/default/test && ./test_sync.exe -- '^Rwlock and Rwlock.Condition$' 5)
Testing `Picos_sync'.
This run has ID `WQ0VBFBX'.


[SKIP]        Mutex and Condition                  0   basics.
[SKIP]        Mutex and Condition                  1   errors.
[SKIP]        Mutex and Condition                  2   cancelation.
[SKIP]        Lock and Lock.Condition              0   basics.
[SKIP]        Lock and Lock.Condition              1   cancelation.
[SKIP]        Lock and Lock.Condition              2   poisoning.
[SKIP]        Lock and Lock.Condition              3   try_acquire.
[SKIP]        Rwlock and Rwlock.Condition          0   basics.
[SKIP]        Rwlock and Rwlock.Condition          1   cancelation.
[SKIP]        Rwlock and Rwlock.Condition          2   poisoning.
[SKIP]        Rwlock and Rwlock.Condition          3   freezing.
[SKIP]        Rwlock and Rwlock.Condition          4   try_acquire.
[OK]          Rwlock and Rwlock.Condition          5   try_acquire_shared.
[SKIP]        Rwlock and Rwlock.Condition          6   sharing.
[SKIP]        Semaphore                            0   basics.
[SKIP]        Semaphore                            1   stress.
[SKIP]        Sem                                  0   basics.
[SKIP]        Sem                                  1   stress.
[SKIP]        Sem                                  2   poisoning.
[SKIP]        Sem                                  3   try_acquire.
[SKIP]        Lazy                                 0   basics.
[SKIP]        Lazy                                 1   cancelation.
[SKIP]        Event                                0   basics.
[SKIP]        Barrier                              0   basics.
[SKIP]        Barrier                              1   poisoning.
[SKIP]        Non-cancelable ops                   0   are not canceled.


Full test results in `~/src/_build/default/test/_build/_tests/Picos_sync'.
Test Successful in 0.000s. 1 test run.
(cd _build/default/test && ./test_sync.exe -- '^Rwlock and Rwlock.Condition$' 6)
Testing `Picos_sync'.
This run has ID `2HQRITYA'.


[SKIP]        Mutex and Condition                  0   basics.
[SKIP]        Mutex and Condition                  1   errors.
[SKIP]        Mutex and Condition                  2   cancelation.
[SKIP]        Lock and Lock.Condition              0   basics.
[SKIP]        Lock and Lock.Condition              1   cancelation.
[SKIP]        Lock and Lock.Condition              2   poisoning.
[SKIP]        Lock and Lock.Condition              3   try_acquire.
[SKIP]        Rwlock and Rwlock.Condition          0   basics.
[SKIP]        Rwlock and Rwlock.Condition          1   cancelation.
[SKIP]        Rwlock and Rwlock.Condition          2   poisoning.
[SKIP]        Rwlock and Rwlock.Condition          3   freezing.
[SKIP]        Rwlock and Rwlock.Condition          4   try_acquire.
[SKIP]        Rwlock and Rwlock.Condition          5   try_acquire_shared.
[OK]          Rwlock and Rwlock.Condition          6   sharing.
[SKIP]        Semaphore                            0   basics.
[SKIP]        Semaphore                            1   stress.
[SKIP]        Sem                                  0   basics.
[SKIP]        Sem                                  1   stress.
[SKIP]        Sem                                  2   poisoning.
[SKIP]        Sem                                  3   try_acquire.
[SKIP]        Lazy                                 0   basics.
[SKIP]        Lazy                                 1   cancelation.
[SKIP]        Event                                0   basics.
[SKIP]        Barrier                              0   basics.
[SKIP]        Barrier                              1   poisoning.
[SKIP]        Non-cancelable ops                   0   are not canceled.


Full test results in `~/src/_build/default/test/_build/_tests/Picos_sync'.
Test Successful in 0.000s. 1 test run.
(cd _build/default/test && ./test_sync.exe -- ^Semaphore$ 0)
Testing `Picos_sync'.
This run has ID `FWGUGYQ6'.


[SKIP]        Mutex and Condition                  0   basics.
[SKIP]        Mutex and Condition                  1   errors.
[SKIP]        Mutex and Condition                  2   cancelation.
[SKIP]        Lock and Lock.Condition              0   basics.
[SKIP]        Lock and Lock.Condition              1   cancelation.
[SKIP]        Lock and Lock.Condition              2   poisoning.
[SKIP]        Lock and Lock.Condition              3   try_acquire.
[SKIP]        Rwlock and Rwlock.Condition          0   basics.
[SKIP]        Rwlock and Rwlock.Condition          1   cancelation.
[SKIP]        Rwlock and Rwlock.Condition          2   poisoning.
[SKIP]        Rwlock and Rwlock.Condition          3   freezing.
[SKIP]        Rwlock and Rwlock.Condition          4   try_acquire.
[SKIP]        Rwlock and Rwlock.Condition          5   try_acquire_shared.
[SKIP]        Rwlock and Rwlock.Condition          6   sharing.
[OK]          Semaphore                            0   basics.
[SKIP]        Semaphore                            1   stress.
[SKIP]        Sem                                  0   basics.
[SKIP]        Sem                                  1   stress.
[SKIP]        Sem                                  2   poisoning.
[SKIP]        Sem                                  3   try_acquire.
[SKIP]        Lazy                                 0   basics.
[SKIP]        Lazy                                 1   cancelation.
[SKIP]        Event                                0   basics.
[SKIP]        Barrier                              0   basics.
[SKIP]        Barrier                              1   poisoning.
[SKIP]        Non-cancelable ops                   0   are not canceled.


Full test results in `~/src/_build/default/test/_build/_tests/Picos_sync'.
Test Successful in 0.000s. 1 test run.
(cd _build/default/test && ./test_sync.exe -- ^Semaphore$ 1)
Testing `Picos_sync'.
This run has ID `BNJ3NRF1'.


[SKIP]        Mutex and Condition                  0   basics.
[SKIP]        Mutex and Condition                  1   errors.
[SKIP]        Mutex and Condition                  2   cancelation.
[SKIP]        Lock and Lock.Condition              0   basics.
[SKIP]        Lock and Lock.Condition              1   cancelation.
[SKIP]        Lock and Lock.Condition              2   poisoning.
[SKIP]        Lock and Lock.Condition              3   try_acquire.
[SKIP]        Rwlock and Rwlock.Condition          0   basics.
[SKIP]        Rwlock and Rwlock.Condition          1   cancelation.
[SKIP]        Rwlock and Rwlock.Condition          2   poisoning.
[SKIP]        Rwlock and Rwlock.Condition          3   freezing.
[SKIP]        Rwlock and Rwlock.Condition          4   try_acquire.
[SKIP]        Rwlock and Rwlock.Condition          5   try_acquire_shared.
[SKIP]        Rwlock and Rwlock.Condition          6   sharing.
[SKIP]        Semaphore                            0   basics.
[OK]          Semaphore                            1   stress.
[SKIP]        Sem                                  0   basics.
[SKIP]        Sem                                  1   stress.
[SKIP]        Sem                                  2   poisoning.
[SKIP]        Sem                                  3   try_acquire.
[SKIP]        Lazy                                 0   basics.
[SKIP]        Lazy                                 1   cancelation.
[SKIP]        Event                                0   basics.
[SKIP]        Barrier                              0   basics.
[SKIP]        Barrier                              1   poisoning.
[SKIP]        Non-cancelable ops                   0   are not canceled.


Full test results in `~/src/_build/default/test/_build/_tests/Picos_sync'.
Test Successful in 0.003s. 1 test run.
(cd _build/default/test && ./test_sync.exe -- ^Sem$ 0)
Testing `Picos_sync'.
This run has ID `JM1F6TFN'.


[SKIP]        Mutex and Condition                  0   basics.
[SKIP]        Mutex and Condition                  1   errors.
[SKIP]        Mutex and Condition                  2   cancelation.
[SKIP]        Lock and Lock.Condition              0   basics.
[SKIP]        Lock and Lock.Condition              1   cancelation.
[SKIP]        Lock and Lock.Condition              2   poisoning.
[SKIP]        Lock and Lock.Condition              3   try_acquire.
[SKIP]        Rwlock and Rwlock.Condition          0   basics.
[SKIP]        Rwlock and Rwlock.Condition          1   cancelation.
[SKIP]        Rwlock and Rwlock.Condition          2   poisoning.
[SKIP]        Rwlock and Rwlock.Condition          3   freezing.
[SKIP]        Rwlock and Rwlock.Condition          4   try_acquire.
[SKIP]        Rwlock and Rwlock.Condition          5   try_acquire_shared.
[SKIP]        Rwlock and Rwlock.Condition          6   sharing.
[SKIP]        Semaphore                            0   basics.
[SKIP]        Semaphore                            1   stress.
[OK]          Sem                                  0   basics.
[SKIP]        Sem                                  1   stress.
[SKIP]        Sem                                  2   poisoning.
[SKIP]        Sem                                  3   try_acquire.
[SKIP]        Lazy                                 0   basics.
[SKIP]        Lazy                                 1   cancelation.
[SKIP]        Event                                0   basics.
[SKIP]        Barrier                              0   basics.
[SKIP]        Barrier                              1   poisoning.
[SKIP]        Non-cancelable ops                   0   are not canceled.


Full test results in `~/src/_build/default/test/_build/_tests/Picos_sync'.
Test Successful in 0.000s. 1 test run.
(cd _build/default/test && ./test_sync.exe -- ^Sem$ 1)
Testing `Picos_sync'.
This run has ID `IHYDW4W2'.


[SKIP]        Mutex and Condition                  0   basics.
[SKIP]        Mutex and Condition                  1   errors.
[SKIP]        Mutex and Condition                  2   cancelation.
[SKIP]        Lock and Lock.Condition              0   basics.
[SKIP]        Lock and Lock.Condition              1   cancelation.
[SKIP]        Lock and Lock.Condition              2   poisoning.
[SKIP]        Lock and Lock.Condition              3   try_acquire.
[SKIP]        Rwlock and Rwlock.Condition          0   basics.
[SKIP]        Rwlock and Rwlock.Condition          1   cancelation.
[SKIP]        Rwlock and Rwlock.Condition          2   poisoning.
[SKIP]        Rwlock and Rwlock.Condition          3   freezing.
[SKIP]        Rwlock and Rwlock.Condition          4   try_acquire.
[SKIP]        Rwlock and Rwlock.Condition          5   try_acquire_shared.
[SKIP]        Rwlock and Rwlock.Condition          6   sharing.
[SKIP]        Semaphore                            0   basics.
[SKIP]        Semaphore                            1   stress.
[SKIP]        Sem                                  0   basics.
[OK]          Sem                                  1   stress.
[SKIP]        Sem                                  2   poisoning.
[SKIP]        Sem                                  3   try_acquire.
[SKIP]        Lazy                                 0   basics.
[SKIP]        Lazy                                 1   cancelation.
[SKIP]        Event                                0   basics.
[SKIP]        Barrier                              0   basics.
[SKIP]        Barrier                              1   poisoning.
[SKIP]        Non-cancelable ops                   0   are not canceled.


Full test results in `~/src/_build/default/test/_build/_tests/Picos_sync'.
Test Successful in 0.003s. 1 test run.
(cd _build/default/test && ./test_sync.exe -- ^Sem$ 2)
Testing `Picos_sync'.
This run has ID `3HH4N1YL'.


[SKIP]        Mutex and Condition                  0   basics.
[SKIP]        Mutex and Condition                  1   errors.
[SKIP]        Mutex and Condition                  2   cancelation.
[SKIP]        Lock and Lock.Condition              0   basics.
[SKIP]        Lock and Lock.Condition              1   cancelation.
[SKIP]        Lock and Lock.Condition              2   poisoning.
[SKIP]        Lock and Lock.Condition              3   try_acquire.
[SKIP]        Rwlock and Rwlock.Condition          0   basics.
[SKIP]        Rwlock and Rwlock.Condition          1   cancelation.
[SKIP]        Rwlock and Rwlock.Condition          2   poisoning.
[SKIP]        Rwlock and Rwlock.Condition          3   freezing.
[SKIP]        Rwlock and Rwlock.Condition          4   try_acquire.
[SKIP]        Rwlock and Rwlock.Condition          5   try_acquire_shared.
[SKIP]        Rwlock and Rwlock.Condition          6   sharing.
[SKIP]        Semaphore                            0   basics.
[SKIP]        Semaphore                            1   stress.
[SKIP]        Sem                                  0   basics.
[SKIP]        Sem                                  1   stress.
[OK]          Sem                                  2   poisoning.
[SKIP]        Sem                                  3   try_acquire.
[SKIP]        Lazy                                 0   basics.
[SKIP]        Lazy                                 1   cancelation.
[SKIP]        Event                                0   basics.
[SKIP]        Barrier                              0   basics.
[SKIP]        Barrier                              1   poisoning.
[SKIP]        Non-cancelable ops                   0   are not canceled.


Full test results in `~/src/_build/default/test/_build/_tests/Picos_sync'.
Test Successful in 0.000s. 1 test run.
(cd _build/default/test && ./test_sync.exe -- ^Sem$ 3)
Testing `Picos_sync'.
This run has ID `MUF2K6JA'.


[SKIP]        Mutex and Condition                  0   basics.
[SKIP]        Mutex and Condition                  1   errors.
[SKIP]        Mutex and Condition                  2   cancelation.
[SKIP]        Lock and Lock.Condition              0   basics.
[SKIP]        Lock and Lock.Condition              1   cancelation.
[SKIP]        Lock and Lock.Condition              2   poisoning.
[SKIP]        Lock and Lock.Condition              3   try_acquire.
[SKIP]        Rwlock and Rwlock.Condition          0   basics.
[SKIP]        Rwlock and Rwlock.Condition          1   cancelation.
[SKIP]        Rwlock and Rwlock.Condition          2   poisoning.
[SKIP]        Rwlock and Rwlock.Condition          3   freezing.
[SKIP]        Rwlock and Rwlock.Condition          4   try_acquire.
[SKIP]        Rwlock and Rwlock.Condition          5   try_acquire_shared.
[SKIP]        Rwlock and Rwlock.Condition          6   sharing.
[SKIP]        Semaphore                            0   basics.
[SKIP]        Semaphore                            1   stress.
[SKIP]        Sem                                  0   basics.
[SKIP]        Sem                                  1   stress.
[SKIP]        Sem                                  2   poisoning.
[OK]          Sem                                  3   try_acquire.
[SKIP]        Lazy                                 0   basics.
[SKIP]        Lazy                                 1   cancelation.
[SKIP]        Event                                0   basics.
[SKIP]        Barrier                              0   basics.
[SKIP]        Barrier                              1   poisoning.
[SKIP]        Non-cancelable ops                   0   are not canceled.


Full test results in `~/src/_build/default/test/_build/_tests/Picos_sync'.
Test Successful in 0.000s. 1 test run.
(cd _build/default/test && ./test_sync.exe -- ^Lazy$ 0)
Testing `Picos_sync'.
This run has ID `CO9XZWTM'.


[SKIP]        Mutex and Condition                  0   basics.
[SKIP]        Mutex and Condition                  1   errors.
[SKIP]        Mutex and Condition                  2   cancelation.
[SKIP]        Lock and Lock.Condition              0   basics.
[SKIP]        Lock and Lock.Condition              1   cancelation.
[SKIP]        Lock and Lock.Condition              2   poisoning.
[SKIP]        Lock and Lock.Condition              3   try_acquire.
[SKIP]        Rwlock and Rwlock.Condition          0   basics.
[SKIP]        Rwlock and Rwlock.Condition          1   cancelation.
[SKIP]        Rwlock and Rwlock.Condition          2   poisoning.
[SKIP]        Rwlock and Rwlock.Condition          3   freezing.
[SKIP]        Rwlock and Rwlock.Condition          4   try_acquire.
[SKIP]        Rwlock and Rwlock.Condition          5   try_acquire_shared.
[SKIP]        Rwlock and Rwlock.Condition          6   sharing.
[SKIP]        Semaphore                            0   basics.
[SKIP]        Semaphore                            1   stress.
[SKIP]        Sem                                  0   basics.
[SKIP]        Sem                                  1   stress.
[SKIP]        Sem                                  2   poisoning.
[SKIP]        Sem                                  3   try_acquire.
[OK]          Lazy                                 0   basics.
[SKIP]        Lazy                                 1   cancelation.
[SKIP]        Event                                0   basics.
[SKIP]        Barrier                              0   basics.
[SKIP]        Barrier                              1   poisoning.
[SKIP]        Non-cancelable ops                   0   are not canceled.


Full test results in `~/src/_build/default/test/_build/_tests/Picos_sync'.
Test Successful in 0.000s. 1 test run.
(cd _build/default/test && ./test_sync.exe -- ^Lazy$ 1)
Testing `Picos_sync'.
This run has ID `912JT8LW'.


[SKIP]        Mutex and Condition                  0   basics.
[SKIP]        Mutex and Condition                  1   errors.
[SKIP]        Mutex and Condition                  2   cancelation.
[SKIP]        Lock and Lock.Condition              0   basics.
[SKIP]        Lock and Lock.Condition              1   cancelation.
[SKIP]        Lock and Lock.Condition              2   poisoning.
[SKIP]        Lock and Lock.Condition              3   try_acquire.
[SKIP]        Rwlock and Rwlock.Condition          0   basics.
[SKIP]        Rwlock and Rwlock.Condition          1   cancelation.
[SKIP]        Rwlock and Rwlock.Condition          2   poisoning.
[SKIP]        Rwlock and Rwlock.Condition          3   freezing.
[SKIP]        Rwlock and Rwlock.Condition          4   try_acquire.
[SKIP]        Rwlock and Rwlock.Condition          5   try_acquire_shared.
[SKIP]        Rwlock and Rwlock.Condition          6   sharing.
[SKIP]        Semaphore                            0   basics.
[SKIP]        Semaphore                            1   stress.
[SKIP]        Sem                                  0   basics.
[SKIP]        Sem                                  1   stress.
[SKIP]        Sem                                  2   poisoning.
[SKIP]        Sem                                  3   try_acquire.
[SKIP]        Lazy                                 0   basics.
[OK]          Lazy                                 1   cancelation.
[SKIP]        Event                                0   basics.
[SKIP]        Barrier                              0   basics.
[SKIP]        Barrier                              1   poisoning.
[SKIP]        Non-cancelable ops                   0   are not canceled.


Full test results in `~/src/_build/default/test/_build/_tests/Picos_sync'.
Test Successful in 0.000s. 1 test run.
(cd _build/default/test && ./test_sync.exe -- ^Event$ 0)
Testing `Picos_sync'.
This run has ID `NPWORHB6'.


[SKIP]        Mutex and Condition                  0   basics.
[SKIP]        Mutex and Condition                  1   errors.
[SKIP]        Mutex and Condition                  2   cancelation.
[SKIP]        Lock and Lock.Condition              0   basics.
[SKIP]        Lock and Lock.Condition              1   cancelation.
[SKIP]        Lock and Lock.Condition              2   poisoning.
[SKIP]        Lock and Lock.Condition              3   try_acquire.
[SKIP]        Rwlock and Rwlock.Condition          0   basics.
[SKIP]        Rwlock and Rwlock.Condition          1   cancelation.
[SKIP]        Rwlock and Rwlock.Condition          2   poisoning.
[SKIP]        Rwlock and Rwlock.Condition          3   freezing.
[SKIP]        Rwlock and Rwlock.Condition          4   try_acquire.
[SKIP]        Rwlock and Rwlock.Condition          5   try_acquire_shared.
[SKIP]        Rwlock and Rwlock.Condition          6   sharing.
[SKIP]        Semaphore                            0   basics.
[SKIP]        Semaphore                            1   stress.
[SKIP]        Sem                                  0   basics.
[SKIP]        Sem                                  1   stress.
[SKIP]        Sem                                  2   poisoning.
[SKIP]        Sem                                  3   try_acquire.
[SKIP]        Lazy                                 0   basics.
[SKIP]        Lazy                                 1   cancelation.
[OK]          Event                                0   basics.
[SKIP]        Barrier                              0   basics.
[SKIP]        Barrier                              1   poisoning.
[SKIP]        Non-cancelable ops                   0   are not canceled.


Full test results in `~/src/_build/default/test/_build/_tests/Picos_sync'.
Test Successful in 0.200s. 1 test run.
(cd _build/default/test && ./test_sync.exe -- ^Barrier$ 0)
Testing `Picos_sync'.
This run has ID `JD0JI1HT'.


[SKIP]        Mutex and Condition                  0   basics.
[SKIP]        Mutex and Condition                  1   errors.
[SKIP]        Mutex and Condition                  2   cancelation.
[SKIP]        Lock and Lock.Condition              0   basics.
[SKIP]        Lock and Lock.Condition              1   cancelation.
[SKIP]        Lock and Lock.Condition              2   poisoning.
[SKIP]        Lock and Lock.Condition              3   try_acquire.
[SKIP]        Rwlock and Rwlock.Condition          0   basics.
[SKIP]        Rwlock and Rwlock.Condition          1   cancelation.
[SKIP]        Rwlock and Rwlock.Condition          2   poisoning.
[SKIP]        Rwlock and Rwlock.Condition          3   freezing.
[SKIP]        Rwlock and Rwlock.Condition          4   try_acquire.
[SKIP]        Rwlock and Rwlock.Condition          5   try_acquire_shared.
[SKIP]        Rwlock and Rwlock.Condition          6   sharing.
[SKIP]        Semaphore                            0   basics.
[SKIP]        Semaphore                            1   stress.
[SKIP]        Sem                                  0   basics.
[SKIP]        Sem                                  1   stress.
[SKIP]        Sem                                  2   poisoning.
[SKIP]        Sem                                  3   try_acquire.
[SKIP]        Lazy                                 0   basics.
[SKIP]        Lazy                                 1   cancelation.
[SKIP]        Event                                0   basics.
[OK]          Barrier                              0   basics.
[SKIP]        Barrier                              1   poisoning.
[SKIP]        Non-cancelable ops                   0   are not canceled.


Full test results in `~/src/_build/default/test/_build/_tests/Picos_sync'.
Test Successful in 0.001s. 1 test run.
(cd _build/default/test && ./test_sync.exe -- ^Barrier$ 1)
Testing `Picos_sync'.
This run has ID `PFRUHAOW'.


[SKIP]        Mutex and Condition                  0   basics.
[SKIP]        Mutex and Condition                  1   errors.
[SKIP]        Mutex and Condition                  2   cancelation.
[SKIP]        Lock and Lock.Condition              0   basics.
[SKIP]        Lock and Lock.Condition              1   cancelation.
[SKIP]        Lock and Lock.Condition              2   poisoning.
[SKIP]        Lock and Lock.Condition              3   try_acquire.
[SKIP]        Rwlock and Rwlock.Condition          0   basics.
[SKIP]        Rwlock and Rwlock.Condition          1   cancelation.
[SKIP]        Rwlock and Rwlock.Condition          2   poisoning.
[SKIP]        Rwlock and Rwlock.Condition          3   freezing.
[SKIP]        Rwlock and Rwlock.Condition          4   try_acquire.
[SKIP]        Rwlock and Rwlock.Condition          5   try_acquire_shared.
[SKIP]        Rwlock and Rwlock.Condition          6   sharing.
[SKIP]        Semaphore                            0   basics.
[SKIP]        Semaphore                            1   stress.
[SKIP]        Sem                                  0   basics.
[SKIP]        Sem                                  1   stress.
[SKIP]        Sem                                  2   poisoning.
[SKIP]        Sem                                  3   try_acquire.
[SKIP]        Lazy                                 0   basics.
[SKIP]        Lazy                                 1   cancelation.
[SKIP]        Event                                0   basics.
[SKIP]        Barrier                              0   basics.
[OK]          Barrier                              1   poisoning.
[SKIP]        Non-cancelable ops                   0   are not canceled.


Full test results in `~/src/_build/default/test/_build/_tests/Picos_sync'.
Test Successful in 0.001s. 1 test run.
(cd _build/default/test && ./test_sync.exe -- '^Non-cancelable ops$' 0)
Testing `Picos_sync'.
This run has ID `XRADO4WU'.


[SKIP]        Mutex and Condition                  0   basics.
[SKIP]        Mutex and Condition                  1   errors.
[SKIP]        Mutex and Condition                  2   cancelation.
[SKIP]        Lock and Lock.Condition              0   basics.
[SKIP]        Lock and Lock.Condition              1   cancelation.
[SKIP]        Lock and Lock.Condition              2   poisoning.
[SKIP]        Lock and Lock.Condition              3   try_acquire.
[SKIP]        Rwlock and Rwlock.Condition          0   basics.
[SKIP]        Rwlock and Rwlock.Condition          1   cancelation.
[SKIP]        Rwlock and Rwlock.Condition          2   poisoning.
[SKIP]        Rwlock and Rwlock.Condition          3   freezing.
[SKIP]        Rwlock and Rwlock.Condition          4   try_acquire.
[SKIP]        Rwlock and Rwlock.Condition          5   try_acquire_shared.
[SKIP]        Rwlock and Rwlock.Condition          6   sharing.
[SKIP]        Semaphore                            0   basics.
[SKIP]        Semaphore                            1   stress.
[SKIP]        Sem                                  0   basics.
[SKIP]        Sem                                  1   stress.
[SKIP]        Sem                                  2   poisoning.
[SKIP]        Sem                                  3   try_acquire.
[SKIP]        Lazy                                 0   basics.
[SKIP]        Lazy                                 1   cancelation.
[SKIP]        Event                                0   basics.
[SKIP]        Barrier                              0   basics.
[SKIP]        Barrier                              1   poisoning.
[OK]          Non-cancelable ops                   0   are not canceled.


Full test results in `~/src/_build/default/test/_build/_tests/Picos_sync'.
Test Successful in 0.000s. 1 test run.
(cd _build/default/test && ./test_schedulers.exe)
Testing with scheduler: threads
Fairness of 100 fibers performing at least 10000 yields:
sd: 0.000071 -- ideally 0
mean: 1.000248 -- ideally 1
median: 1.000300 -- ideally 1
Testing `Picos schedulers'.
This run has ID `69GR75EX'.


[OK]          Trivial main returns                          0
[OK]          Scheduler completes main computation          0
[OK]          Current                                       0
[OK]          Cancel_after                                  0   basic.
[OK]          Cancel_after                                  1   long timeout.
[OK]          Operation on canceled fiber raises            0
[OK]          Cross scheduler wakeup                        0
[OK]          Fatal exception terminates scheduler          0


Full test results in `~/src/_build/default/test/_build/_tests/Picos schedulers'.
Test Successful in 26.071s. 8 tests run.
Thread 306 killed on uncaught exception Failure("fatal")
Raised at Dune__exe__Test_schedulers.test_fatal.fatal_exn_handler in file "test/test_schedulers.ml", line 117, characters 6-15
Called from Thread.create.(fun) in file "thread.ml", line 49, characters 8-14
Thread 208 killed on uncaught exception Failure("fatal")
Raised at Dune__exe__Test_schedulers.test_fatal.fatal_exn_handler in file "test/test_schedulers.ml", line 117, characters 6-15
Called from Thread.create.(fun) in file "thread.ml", line 49, characters 8-14
Thread 209 killed on uncaught exception Failure("fatal")
Raised at Dune__exe__Test_schedulers.test_fatal.fatal_exn_handler in file "test/test_schedulers.ml", line 117, characters 6-15
Called from Thread.create.(fun) in file "thread.ml", line 49, characters 8-14
Thread 207 killed on uncaught exception Failure("fatal")
Raised at Dune__exe__Test_schedulers.test_fatal.fatal_exn_handler in file "test/test_schedulers.ml", line 117, characters 6-15
Called from Thread.create.(fun) in file "thread.ml", line 49, characters 8-14
2025-06-13 01:40.15 ---> saved as "6671e585b72494b7b93a2d39a2a626832b362a19ed71ccb6df0a0d69aa21c24c"
Job succeeded
2025-06-13 01:40.24: Job succeeded