2024-09-30 23:58.45: New job: test ocaml-multicore/picos https://github.com/ocaml-multicore/picos.git#refs/heads/add-full-cml-support (014d908c96e2d2be7d5941dd209f4264f53ddf4a) (linux-x86_64:alpine-3.20-5.2_opam-2.2)
Base: ocaml/opam:alpine-3.20-ocaml-5.2@sha256:438c72033b20ee374a28968b3219bffa87e179d8d1e3fb1eb4f9b60379eb0db3
Opam project build
To reproduce locally:
git clone --recursive "https://github.com/ocaml-multicore/picos.git" -b "add-full-cml-support" && cd "picos" && git reset --hard 014d908c
cat > Dockerfile <<'END-OF-DOCKERFILE'
FROM ocaml/opam:alpine-3.20-ocaml-5.2@sha256:438c72033b20ee374a28968b3219bffa87e179d8d1e3fb1eb4f9b60379eb0db3
# alpine-3.20-5.2_opam-2.2
USER 1000:1000
ENV CLICOLOR_FORCE="1"
ENV OPAMCOLOR="always"
WORKDIR /src
RUN sudo ln -f /usr/bin/opam-2.2 /usr/bin/opam
RUN opam init --reinit -ni
RUN uname -rs && opam exec -- ocaml -version && opam --version
WORKDIR /src
RUN sudo chown opam /src
RUN cd ~/opam-repository && (git cat-file -e f7c5ed58d4e80e295c4022514da894342e69bfa0 || git fetch origin master) && git reset -q --hard f7c5ed58d4e80e295c4022514da894342e69bfa0 && 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 ./
RUN opam pin add -yn picos_std.dev './' && \
opam pin add -yn picos_mux.dev './' && \
opam pin add -yn picos_meta.dev './' && \
opam pin add -yn picos_lwt.dev './' && \
opam pin add -yn picos_io_cohttp.dev './' && \
opam pin add -yn picos_io.dev './' && \
opam pin add -yn picos_aux.dev './' && \
opam pin add -yn picos.dev './'
ENV DEPS="alcotest.1.8.0 angstrom.0.16.1 asn1-combinators.0.3.2 astring.0.8.5 backoff.0.1.1 base.v0.17.1 base-bigarray.base base-bytes.base base-domains.base base-nnp.base base-threads.base base-unix.base base64.3.5.1 bigstringaf.0.10.0 bos.0.2.1 ca-certs.1.0.0 camlp-streams.5.0.1 cmdliner.1.3.0 cohttp.6.0.0~beta2 cohttp-lwt.6.0.0~beta2 cohttp-lwt-unix.6.0.0~beta2 conduit.6.2.3 conduit-lwt.6.2.3 conduit-lwt-unix.6.2.3 conf-gmp.4 conf-gmp-powm-sec.3 conf-npm.1 conf-pkg-config.3 containers.3.14 cppo.1.7.0 csexp.1.5.2 digestif.1.2.0 domain-local-await.1.0.1 domain-name.0.4.0 domain_shims.0.1.0 dscheck.0.5.0 dune.3.16.0 dune-configurator.3.16.0 duration.0.2.1 either.1.0.0 eqaf.0.10 fmt.0.9.0 fpath.0.7.3 gen.1.1 gmap.0.3.0 host-arch-x86_64.1 host-system-other.1 http.6.0.0~beta2 ipaddr.5.6.0 ipaddr-sexp.5.6.0 js_of_ocaml.5.8.2 js_of_ocaml-compiler.5.8.2 kdf.1.0.0 logs.0.7.0 lwt.5.7.0 macaddr.5.6.0 magic-mime.1.3.1 mdx.2.4.1 menhir.20240715 menhirCST.20240715 menhirLib.20240715 menhirSdk.20240715 mirage-crypto.1.1.0 mirage-crypto-ec.1.1.0 mirage-crypto-pk.1.1.0 mirage-crypto-rng.1.1.0 mtime.2.1.0 multicore-bench.0.1.5 multicore-magic.2.3.0 multicore-magic-dscheck.2.3.0 num.1.5-1 ocaml.5.2.0 ocaml-base-compiler.5.2.0 ocaml-compiler-libs.v0.17.0 ocaml-config.3 ocaml-options-vanilla.1 ocaml-syntax-shims.1.0.0 ocaml-version.3.6.9 ocaml_intrinsics_kernel.v0.17.1 ocamlbuild.0.15.0 ocamlfind.1.9.6 ocplib-endian.1.2 ohex.0.2.0 oseq.0.5.1 parsexp.v0.17.0 ppx_derivers.1.2.1 ppx_sexp_conv.v0.17.0 ppxlib.0.33.0 ppxlib_jane.v0.17.0 psq.0.2.1 ptime.1.2.0 qcheck-core.0.22 qcheck-multicoretests-util.0.4 qcheck-stm.0.4 re.1.12.0 result.1.5 rresult.0.7.0 sedlex.3.2 seq.base sexplib.v0.17.0 sexplib0.v0.17.0 stdlib-shims.0.3.0 stringext.1.6.0 thread-local-storage.0.2 thread-table.1.0.0 topkg.1.0.7 tsort.2.1.0 uri.4.4.0 uri-sexp.4.4.0 uutf.1.0.3 x509.1.0.4 yojson.2.2.2 zarith.1.14"
ENV CI="true"
ENV OCAMLCI="true"
RUN opam update --depexts && opam install --cli=2.2 --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 opam exec -- dune build @install @check @runtest && rm -rf _build
END-OF-DOCKERFILE
docker build .
END-REPRO-BLOCK
2024-09-30 23:58.45: Using cache hint "ocaml-multicore/picos-ocaml/opam:alpine-3.20-ocaml-5.2@sha256:438c72033b20ee374a28968b3219bffa87e179d8d1e3fb1eb4f9b60379eb0db3-alpine-3.20-5.2_opam-2.2-764e145505dba3b8e45a3c2357e3b070"
2024-09-30 23:58.45: Using OBuilder spec:
((from ocaml/opam:alpine-3.20-ocaml-5.2@sha256:438c72033b20ee374a28968b3219bffa87e179d8d1e3fb1eb4f9b60379eb0db3)
(comment alpine-3.20-5.2_opam-2.2)
(user (uid 1000) (gid 1000))
(env CLICOLOR_FORCE 1)
(env OPAMCOLOR always)
(workdir /src)
(run (shell "sudo ln -f /usr/bin/opam-2.2 /usr/bin/opam"))
(run (shell "opam init --reinit -ni"))
(run (shell "uname -rs && opam exec -- ocaml -version && opam --version"))
(workdir /src)
(run (shell "sudo chown opam /src"))
(run (cache (opam-archives (target /home/opam/.opam/download-cache)))
(network host)
(shell "cd ~/opam-repository && (git cat-file -e f7c5ed58d4e80e295c4022514da894342e69bfa0 || git fetch origin master) && git reset -q --hard f7c5ed58d4e80e295c4022514da894342e69bfa0 && 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 ./))
(run (network host)
(shell "opam pin add -yn picos_std.dev './' && \
\nopam pin add -yn picos_mux.dev './' && \
\nopam pin add -yn picos_meta.dev './' && \
\nopam pin add -yn picos_lwt.dev './' && \
\nopam pin add -yn picos_io_cohttp.dev './' && \
\nopam pin add -yn picos_io.dev './' && \
\nopam pin add -yn picos_aux.dev './' && \
\nopam pin add -yn picos.dev './'"))
(env DEPS "alcotest.1.8.0 angstrom.0.16.1 asn1-combinators.0.3.2 astring.0.8.5 backoff.0.1.1 base.v0.17.1 base-bigarray.base base-bytes.base base-domains.base base-nnp.base base-threads.base base-unix.base base64.3.5.1 bigstringaf.0.10.0 bos.0.2.1 ca-certs.1.0.0 camlp-streams.5.0.1 cmdliner.1.3.0 cohttp.6.0.0~beta2 cohttp-lwt.6.0.0~beta2 cohttp-lwt-unix.6.0.0~beta2 conduit.6.2.3 conduit-lwt.6.2.3 conduit-lwt-unix.6.2.3 conf-gmp.4 conf-gmp-powm-sec.3 conf-npm.1 conf-pkg-config.3 containers.3.14 cppo.1.7.0 csexp.1.5.2 digestif.1.2.0 domain-local-await.1.0.1 domain-name.0.4.0 domain_shims.0.1.0 dscheck.0.5.0 dune.3.16.0 dune-configurator.3.16.0 duration.0.2.1 either.1.0.0 eqaf.0.10 fmt.0.9.0 fpath.0.7.3 gen.1.1 gmap.0.3.0 host-arch-x86_64.1 host-system-other.1 http.6.0.0~beta2 ipaddr.5.6.0 ipaddr-sexp.5.6.0 js_of_ocaml.5.8.2 js_of_ocaml-compiler.5.8.2 kdf.1.0.0 logs.0.7.0 lwt.5.7.0 macaddr.5.6.0 magic-mime.1.3.1 mdx.2.4.1 menhir.20240715 menhirCST.20240715 menhirLib.20240715 menhirSdk.20240715 mirage-crypto.1.1.0 mirage-crypto-ec.1.1.0 mirage-crypto-pk.1.1.0 mirage-crypto-rng.1.1.0 mtime.2.1.0 multicore-bench.0.1.5 multicore-magic.2.3.0 multicore-magic-dscheck.2.3.0 num.1.5-1 ocaml.5.2.0 ocaml-base-compiler.5.2.0 ocaml-compiler-libs.v0.17.0 ocaml-config.3 ocaml-options-vanilla.1 ocaml-syntax-shims.1.0.0 ocaml-version.3.6.9 ocaml_intrinsics_kernel.v0.17.1 ocamlbuild.0.15.0 ocamlfind.1.9.6 ocplib-endian.1.2 ohex.0.2.0 oseq.0.5.1 parsexp.v0.17.0 ppx_derivers.1.2.1 ppx_sexp_conv.v0.17.0 ppxlib.0.33.0 ppxlib_jane.v0.17.0 psq.0.2.1 ptime.1.2.0 qcheck-core.0.22 qcheck-multicoretests-util.0.4 qcheck-stm.0.4 re.1.12.0 result.1.5 rresult.0.7.0 sedlex.3.2 seq.base sexplib.v0.17.0 sexplib0.v0.17.0 stdlib-shims.0.3.0 stringext.1.6.0 thread-local-storage.0.2 thread-table.1.0.0 topkg.1.0.7 tsort.2.1.0 uri.4.4.0 uri-sexp.4.4.0 uutf.1.0.3 x509.1.0.4 yojson.2.2.2 zarith.1.14")
(env CI true)
(env OCAMLCI true)
(run (cache (opam-archives (target /home/opam/.opam/download-cache)))
(network host)
(shell "opam update --depexts && opam install --cli=2.2 --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 /home/opam/.opam/download-cache)))
(network host)
(shell "opam install $DEPS"))
(copy (src .) (dst /src))
(run (shell "opam exec -- dune build @install @check @runtest && rm -rf _build"))
)
2024-09-30 23:58.45: Waiting for resource in pool OCluster
2024-09-30 23:58.45: Waiting for worker…
2024-09-30 23:58.45: Got resource from pool OCluster
Building on x86-bm-c13.sw.ocaml.org
All commits already cached
HEAD is now at 014d908 Add CML style Ch
(from ocaml/opam:alpine-3.20-ocaml-5.2@sha256:438c72033b20ee374a28968b3219bffa87e179d8d1e3fb1eb4f9b60379eb0db3)
2024-09-30 23:58.46 ---> using "8e594ddbc61b89628a9846d83a9ca2102edaa54a0b33a1a8f60d33d7e563aba3" from cache
/: (comment alpine-3.20-5.2_opam-2.2)
/: (user (uid 1000) (gid 1000))
/: (env CLICOLOR_FORCE 1)
/: (env OPAMCOLOR always)
/: (workdir /src)
/src: (run (shell "sudo ln -f /usr/bin/opam-2.2 /usr/bin/opam"))
2024-09-30 23:58.46 ---> using "db42240efdd64d1140f19f795a951353ee20bcabb192df48dc5b5f85a2a46eff" from cache
/src: (run (shell "opam init --reinit -ni"))
Configuring from /home/opam/.opamrc and then from 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 development version of opam requires an update to the layout of /home/opam/.opam from version 2.0 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 255 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=255 --global
Format upgrade done.
<><> Updating repositories ><><><><><><><><><><><><><><><><><><><><><><><><><><>
[default] synchronised from file:///home/opam/opam-repository
2024-09-30 23:58.46 ---> using "3fcdda3d723c21a06e251e4f492eb01b73e1a69601de11316f45d3ae7a8e9e0a" from cache
/src: (run (shell "uname -rs && opam exec -- ocaml -version && opam --version"))
Linux 5.15.0-122-generic
The OCaml toplevel, version 5.2.0
2.2.1
2024-09-30 23:58.46 ---> using "d451fdaa0671d87012506f44049e42bd5f8a784f2ae6babf911c6de2b8f77212" from cache
/src: (workdir /src)
/src: (run (shell "sudo chown opam /src"))
2024-09-30 23:58.46 ---> using "8a72c1416b83bb643624a10ed458e18c125e0903bdf75c3cd575a9b8f1ed367f" from cache
/src: (run (cache (opam-archives (target /home/opam/.opam/download-cache)))
(network host)
(shell "cd ~/opam-repository && (git cat-file -e f7c5ed58d4e80e295c4022514da894342e69bfa0 || git fetch origin master) && git reset -q --hard f7c5ed58d4e80e295c4022514da894342e69bfa0 && git log --no-decorate -n1 --oneline && opam update -u"))
From https://github.com/ocaml/opam-repository
* branch master -> FETCH_HEAD
e89899ac28..9d353d8846 master -> origin/master
f7c5ed58d4 Merge pull request #26635 from hannesm/release-x509-v1.0.4
<><> Updating package repositories ><><><><><><><><><><><><><><><><><><><><><><>
[default] synchronised from file:///home/opam/opam-repository
Everything as up-to-date as possible (run with --verbose to show unavailable upgrades).
However, you may "opam upgrade" these packages explicitly, which will ask permission to downgrade or uninstall the conflicting packages.
Nothing to do.
# Run eval $(opam env) to update the current shell environment
2024-09-30 23:58.46 ---> using "fa1000efb936cb09960ee12eff25c005c888467806596af51722dd126846cc92" from cache
/src: (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 ./))
2024-09-30 23:58.46 ---> using "3e15aa4d2704cd40be5e36d31849236100cf2deb0451e8ad91f11dfb8cfa1186" from cache
/src: (run (network host)
(shell "opam pin add -yn picos_std.dev './' && \
\nopam pin add -yn picos_mux.dev './' && \
\nopam pin add -yn picos_meta.dev './' && \
\nopam pin add -yn picos_lwt.dev './' && \
\nopam pin add -yn picos_io_cohttp.dev './' && \
\nopam pin add -yn picos_io.dev './' && \
\nopam pin add -yn picos_aux.dev './' && \
\nopam pin add -yn picos.dev './'"))
[picos_std.dev] synchronised (file:///src)
picos_std is now pinned to file:///src (version dev)
[picos_mux.dev] synchronised (file:///src)
picos_mux is now pinned to file:///src (version dev)
[picos_meta.dev] synchronised (file:///src)
picos_meta is now pinned to file:///src (version dev)
[picos_lwt.dev] synchronised (file:///src)
picos_lwt is now pinned to file:///src (version dev)
[picos_io_cohttp.dev] synchronised (file:///src)
picos_io_cohttp is now pinned to file:///src (version dev)
[picos_io.dev] synchronised (file:///src)
picos_io is now pinned to file:///src (version dev)
[picos_aux.dev] synchronised (file:///src)
picos_aux is now pinned to file:///src (version dev)
[picos.dev] synchronised (file:///src)
picos is now pinned to file:///src (version dev)
2024-09-30 23:58.46 ---> using "aaac312f43ee87025b74071bde721f2ce21d08f794f52bc0070e17cfa3b00ca9" from cache
/src: (env DEPS "alcotest.1.8.0 angstrom.0.16.1 asn1-combinators.0.3.2 astring.0.8.5 backoff.0.1.1 base.v0.17.1 base-bigarray.base base-bytes.base base-domains.base base-nnp.base base-threads.base base-unix.base base64.3.5.1 bigstringaf.0.10.0 bos.0.2.1 ca-certs.1.0.0 camlp-streams.5.0.1 cmdliner.1.3.0 cohttp.6.0.0~beta2 cohttp-lwt.6.0.0~beta2 cohttp-lwt-unix.6.0.0~beta2 conduit.6.2.3 conduit-lwt.6.2.3 conduit-lwt-unix.6.2.3 conf-gmp.4 conf-gmp-powm-sec.3 conf-npm.1 conf-pkg-config.3 containers.3.14 cppo.1.7.0 csexp.1.5.2 digestif.1.2.0 domain-local-await.1.0.1 domain-name.0.4.0 domain_shims.0.1.0 dscheck.0.5.0 dune.3.16.0 dune-configurator.3.16.0 duration.0.2.1 either.1.0.0 eqaf.0.10 fmt.0.9.0 fpath.0.7.3 gen.1.1 gmap.0.3.0 host-arch-x86_64.1 host-system-other.1 http.6.0.0~beta2 ipaddr.5.6.0 ipaddr-sexp.5.6.0 js_of_ocaml.5.8.2 js_of_ocaml-compiler.5.8.2 kdf.1.0.0 logs.0.7.0 lwt.5.7.0 macaddr.5.6.0 magic-mime.1.3.1 mdx.2.4.1 menhir.20240715 menhirCST.20240715 menhirLib.20240715 menhirSdk.20240715 mirage-crypto.1.1.0 mirage-crypto-ec.1.1.0 mirage-crypto-pk.1.1.0 mirage-crypto-rng.1.1.0 mtime.2.1.0 multicore-bench.0.1.5 multicore-magic.2.3.0 multicore-magic-dscheck.2.3.0 num.1.5-1 ocaml.5.2.0 ocaml-base-compiler.5.2.0 ocaml-compiler-libs.v0.17.0 ocaml-config.3 ocaml-options-vanilla.1 ocaml-syntax-shims.1.0.0 ocaml-version.3.6.9 ocaml_intrinsics_kernel.v0.17.1 ocamlbuild.0.15.0 ocamlfind.1.9.6 ocplib-endian.1.2 ohex.0.2.0 oseq.0.5.1 parsexp.v0.17.0 ppx_derivers.1.2.1 ppx_sexp_conv.v0.17.0 ppxlib.0.33.0 ppxlib_jane.v0.17.0 psq.0.2.1 ptime.1.2.0 qcheck-core.0.22 qcheck-multicoretests-util.0.4 qcheck-stm.0.4 re.1.12.0 result.1.5 rresult.0.7.0 sedlex.3.2 seq.base sexplib.v0.17.0 sexplib0.v0.17.0 stdlib-shims.0.3.0 stringext.1.6.0 thread-local-storage.0.2 thread-table.1.0.0 topkg.1.0.7 tsort.2.1.0 uri.4.4.0 uri-sexp.4.4.0 uutf.1.0.3 x509.1.0.4 yojson.2.2.2 zarith.1.14")
/src: (env CI true)
/src: (env OCAMLCI true)
/src: (run (cache (opam-archives (target /home/opam/.opam/download-cache)))
(network host)
(shell "opam update --depexts && opam install --cli=2.2 --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"))
+ /usr/bin/sudo "apk" "update"
- fetch https://dl-cdn.alpinelinux.org/alpine/v3.20/main/x86_64/APKINDEX.tar.gz
- fetch https://dl-cdn.alpinelinux.org/alpine/v3.20/community/x86_64/APKINDEX.tar.gz
- fetch https://dl-cdn.alpinelinux.org/alpine/edge/main/x86_64/APKINDEX.tar.gz
- fetch https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz
- fetch https://dl-cdn.alpinelinux.org/alpine/edge/testing/x86_64/APKINDEX.tar.gz
- v3.20.3-82-ge412022add8 [https://dl-cdn.alpinelinux.org/alpine/v3.20/main]
- v3.20.3-85-ge19c1188ff3 [https://dl-cdn.alpinelinux.org/alpine/v3.20/community]
- v20240923-574-gcb655ef8f92 [https://dl-cdn.alpinelinux.org/alpine/edge/main]
- v20240923-561-g78c6e2d6d75 [https://dl-cdn.alpinelinux.org/alpine/edge/community]
- v20240923-576-g3a1445a4114 [https://dl-cdn.alpinelinux.org/alpine/edge/testing]
- OK: 55352 distinct packages available
<><> Synchronising pinned packages ><><><><><><><><><><><><><><><><><><><><><><>
[picos.dev] synchronised (no changes)
[picos_aux.dev] synchronised (no changes)
[picos_io.dev] synchronised (no changes)
[picos_io_cohttp.dev] synchronised (no changes)
[picos_lwt.dev] synchronised (no changes)
[picos_meta.dev] synchronised (no changes)
[picos_mux.dev] synchronised (no changes)
[picos_std.dev] synchronised (no changes)
[NOTE] Package ocaml-options-vanilla is already installed (current version is 1).
[NOTE] Package ocaml-config is already installed (current version is 3).
[NOTE] Package ocaml-base-compiler is already installed (current version is 5.2.0).
[NOTE] Package ocaml is already installed (current version is 5.2.0).
[NOTE] Package host-system-other is already installed (current version is 1).
[NOTE] Package host-arch-x86_64 is already installed (current version is 1).
[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-nnp is already installed (current version is base).
[NOTE] Package base-domains 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-dev npm
<><> Handling external dependencies <><><><><><><><><><><><><><><><><><><><><><>
+ /usr/bin/sudo "apk" "add" "gmp-dev" "npm"
- (1/8) Installing libgmpxx (6.3.0-r1)
- (2/8) Installing gmp-dev (6.3.0-r1)
- (3/8) Installing ada-libs (2.7.8-r0)
- (4/8) Installing icu-data-en (74.2-r0)
- Executing icu-data-en-74.2-r0.post-install
- *
- * If you need ICU with non-English locales and legacy charset support, install
- * package icu-data-full.
- *
- (5/8) Installing icu-libs (74.2-r0)
- (6/8) Installing libuv (1.48.0-r0)
- (7/8) Installing nodejs-current (21.7.3-r0)
- (8/8) Installing npm (10.8.0-r0)
- Executing busybox-1.36.1-r29.trigger
- OK: 364 MiB in 109 packages
2024-09-30 23:58.46 ---> using "3647acc577370766f80a63897aeff2bea480d956952ebd6355d589758f8d85a9" from cache
/src: (run (cache (opam-archives (target /home/opam/.opam/download-cache)))
(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 3).
[NOTE] Package ocaml-base-compiler is already installed (current version is 5.2.0).
[NOTE] Package ocaml is already installed (current version is 5.2.0).
[NOTE] Package host-system-other is already installed (current version is 1).
[NOTE] Package host-arch-x86_64 is already installed (current version is 1).
[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-nnp is already installed (current version is base).
[NOTE] Package base-domains 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 102 packages
- install alcotest 1.8.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.17.1
- install base-bytes base
- install base64 3.5.1
- install bigstringaf 0.10.0
- install bos 0.2.1
- install ca-certs 1.0.0
- install camlp-streams 5.0.1
- install cmdliner 1.3.0
- install cohttp 6.0.0~beta2
- install cohttp-lwt 6.0.0~beta2
- install cohttp-lwt-unix 6.0.0~beta2
- install conduit 6.2.3
- install conduit-lwt 6.2.3
- install conduit-lwt-unix 6.2.3
- install conf-gmp 4
- install conf-gmp-powm-sec 3
- install conf-npm 1
- install conf-pkg-config 3
- install containers 3.14
- install cppo 1.7.0
- install csexp 1.5.2
- install digestif 1.2.0
- install domain-local-await 1.0.1
- install domain-name 0.4.0
- install domain_shims 0.1.0
- install dscheck 0.5.0
- install dune 3.16.0
- install dune-configurator 3.16.0
- install duration 0.2.1
- install either 1.0.0
- install eqaf 0.10
- install fmt 0.9.0
- install fpath 0.7.3
- install gen 1.1
- install gmap 0.3.0
- install http 6.0.0~beta2
- install ipaddr 5.6.0
- install ipaddr-sexp 5.6.0
- install js_of_ocaml 5.8.2
- install js_of_ocaml-compiler 5.8.2
- install kdf 1.0.0
- install logs 0.7.0
- install lwt 5.7.0
- install macaddr 5.6.0
- install magic-mime 1.3.1
- install mdx 2.4.1
- install menhir 20240715
- install menhirCST 20240715
- install menhirLib 20240715
- install menhirSdk 20240715
- install mirage-crypto 1.1.0
- install mirage-crypto-ec 1.1.0
- install mirage-crypto-pk 1.1.0
- install mirage-crypto-rng 1.1.0
- install mtime 2.1.0
- install multicore-bench 0.1.5
- install multicore-magic 2.3.0
- install multicore-magic-dscheck 2.3.0
- install num 1.5-1
- install ocaml-compiler-libs v0.17.0
- install ocaml-syntax-shims 1.0.0
- install ocaml-version 3.6.9
- install ocaml_intrinsics_kernel v0.17.1
- install ocamlbuild 0.15.0
- install ocamlfind 1.9.6
- install ocplib-endian 1.2
- install ohex 0.2.0
- install oseq 0.5.1
- install parsexp v0.17.0
- install ppx_derivers 1.2.1
- install ppx_sexp_conv v0.17.0
- install ppxlib 0.33.0
- install ppxlib_jane v0.17.0
- install psq 0.2.1
- install ptime 1.2.0
- install qcheck-core 0.22
- install qcheck-multicoretests-util 0.4
- install qcheck-stm 0.4
- install re 1.12.0
- install result 1.5
- install rresult 0.7.0
- install sedlex 3.2
- install seq base
- install sexplib v0.17.0
- install sexplib0 v0.17.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.7
- install tsort 2.1.0
- install uri 4.4.0
- install uri-sexp 4.4.0
- install uutf 1.0.3
- install x509 1.0.4
- install yojson 2.2.2
- install zarith 1.14
<><> Processing actions <><><><><><><><><><><><><><><><><><><><><><><><><><><><>
-> retrieved asn1-combinators.0.3.2 (cached)
-> retrieved angstrom.0.16.1 (cached)
-> retrieved alcotest.1.8.0 (cached)
-> retrieved astring.0.8.5 (cached)
-> retrieved backoff.0.1.1 (cached)
-> retrieved base64.3.5.1 (cached)
-> retrieved base.v0.17.1 (cached)
-> retrieved bigstringaf.0.10.0 (cached)
-> retrieved bos.0.2.1 (cached)
-> retrieved ca-certs.1.0.0 (cached)
-> retrieved camlp-streams.5.0.1 (cached)
-> retrieved cmdliner.1.3.0 (cached)
-> retrieved conf-gmp.4 (cached)
-> retrieved conf-gmp-powm-sec.3 (cached)
-> retrieved cohttp.6.0.0~beta2, cohttp-lwt.6.0.0~beta2, cohttp-lwt-unix.6.0.0~beta2, http.6.0.0~beta2 (cached)
-> retrieved conduit.6.2.3, conduit-lwt.6.2.3, conduit-lwt-unix.6.2.3 (cached)
-> retrieved containers.3.14 (cached)
-> installed conf-gmp.4
-> installed conf-npm.1
-> installed conf-pkg-config.3
-> retrieved cppo.1.7.0 (cached)
-> retrieved csexp.1.5.2 (cached)
-> installed conf-gmp-powm-sec.3
-> retrieved domain-local-await.1.0.1 (cached)
-> retrieved domain-name.0.4.0 (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.9.0 (cached)
-> retrieved fpath.0.7.3 (cached)
-> retrieved gen.1.1 (cached)
-> retrieved gmap.0.3.0 (cached)
-> retrieved ipaddr.5.6.0, ipaddr-sexp.5.6.0, macaddr.5.6.0 (cached)
-> retrieved digestif.1.2.0 (cached)
-> retrieved kdf.1.0.0 (cached)
-> retrieved logs.0.7.0 (cached)
-> retrieved lwt.5.7.0 (cached)
-> retrieved magic-mime.1.3.1 (cached)
-> retrieved mdx.2.4.1 (cached)
-> retrieved dune.3.16.0, dune-configurator.3.16.0 (cached)
-> retrieved js_of_ocaml.5.8.2, js_of_ocaml-compiler.5.8.2 (cached)
-> retrieved menhir.20240715, menhirCST.20240715, menhirLib.20240715, menhirSdk.20240715 (cached)
-> retrieved mirage-crypto.1.1.0, mirage-crypto-ec.1.1.0, mirage-crypto-pk.1.1.0, mirage-crypto-rng.1.1.0 (cached)
-> retrieved mtime.2.1.0 (cached)
-> retrieved multicore-bench.0.1.5 (cached)
-> retrieved multicore-magic.2.3.0, multicore-magic-dscheck.2.3.0 (cached)
-> retrieved num.1.5-1 (cached)
-> installed cmdliner.1.3.0
-> retrieved ocaml-compiler-libs.v0.17.0 (cached)
-> retrieved ocaml-syntax-shims.1.0.0 (cached)
-> retrieved ocaml-version.3.6.9 (cached)
-> retrieved ocaml_intrinsics_kernel.v0.17.1 (cached)
-> retrieved ocplib-endian.1.2 (cached)
-> retrieved ocamlbuild.0.15.0 (cached)
-> retrieved ocamlfind.1.9.6 (cached)
-> retrieved ohex.0.2.0 (cached)
-> retrieved oseq.0.5.1 (cached)
-> retrieved parsexp.v0.17.0 (cached)
-> retrieved ppx_derivers.1.2.1 (cached)
-> retrieved ppx_sexp_conv.v0.17.0 (cached)
-> retrieved ppxlib_jane.v0.17.0 (cached)
-> retrieved psq.0.2.1 (cached)
-> retrieved ptime.1.2.0 (cached)
-> retrieved qcheck-core.0.22 (cached)
-> retrieved qcheck-multicoretests-util.0.4, qcheck-stm.0.4 (cached)
-> retrieved re.1.12.0 (cached)
-> retrieved result.1.5 (cached)
-> retrieved rresult.0.7.0 (cached)
-> retrieved seq.base (cached)
-> installed seq.base
-> retrieved sedlex.3.2 (cached)
-> retrieved sexplib.v0.17.0 (cached)
-> retrieved sexplib0.v0.17.0 (cached)
-> retrieved stdlib-shims.0.3.0 (cached)
-> retrieved ppxlib.0.33.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.1.0 (cached)
-> retrieved uutf.1.0.3 (cached)
-> retrieved topkg.1.0.7 (cached)
-> retrieved x509.1.0.4 (cached)
-> retrieved uri.4.4.0, uri-sexp.4.4.0 (cached)
-> retrieved yojson.2.2.2 (cached)
-> retrieved zarith.1.14 (cached)
-> installed num.1.5-1
-> installed ocamlfind.1.9.6
-> installed base-bytes.base
-> installed ocamlbuild.0.15.0
-> installed zarith.1.14
-> installed topkg.1.0.7
-> installed rresult.0.7.0
-> installed mtime.2.1.0
-> installed uutf.1.0.3
-> installed ptime.1.2.0
-> installed fmt.0.9.0
-> installed astring.0.8.5
-> installed fpath.0.7.3
-> installed dune.3.16.0
-> installed backoff.0.1.1
-> installed base64.3.5.1
-> installed camlp-streams.5.0.1
-> installed csexp.1.5.2
-> installed asn1-combinators.0.3.2
-> installed cppo.1.7.0
-> installed domain-name.0.4.0
-> installed domain_shims.0.1.0
-> installed duration.0.2.1
-> installed either.1.0.0
-> installed eqaf.0.10
-> installed gen.1.1
-> installed gmap.0.3.0
-> installed http.6.0.0~beta2
-> installed macaddr.5.6.0
-> installed magic-mime.1.3.1
-> installed menhirCST.20240715
-> installed menhirLib.20240715
-> installed menhirSdk.20240715
-> installed multicore-magic.2.3.0
-> installed ocaml-compiler-libs.v0.17.0
-> installed ocaml-syntax-shims.1.0.0
-> installed ocaml-version.3.6.9
-> installed ocaml_intrinsics_kernel.v0.17.1
-> installed ohex.0.2.0
-> installed oseq.0.5.1
-> installed ppx_derivers.1.2.1
-> installed psq.0.2.1
-> installed re.1.12.0
-> installed result.1.5
-> installed sexplib0.v0.17.0
-> installed stdlib-shims.0.3.0
-> installed stringext.1.6.0
-> installed thread-local-storage.0.2
-> installed thread-table.1.0.0
-> installed tsort.2.1.0
-> installed ocplib-endian.1.2
-> installed qcheck-core.0.22
-> installed yojson.2.2.2
-> installed ipaddr.5.6.0
-> installed domain-local-await.1.0.1
-> installed digestif.1.2.0
-> installed qcheck-multicoretests-util.0.4
-> installed qcheck-stm.0.4
-> installed multicore-bench.0.1.5
-> installed alcotest.1.8.0
-> installed dune-configurator.3.16.0
-> installed parsexp.v0.17.0
-> installed bigstringaf.0.10.0
-> installed angstrom.0.16.1
-> installed sexplib.v0.17.0
-> installed mirage-crypto.1.1.0
-> installed containers.3.14
-> installed kdf.1.0.0
-> installed dscheck.0.5.0
-> installed uri.4.4.0
-> installed multicore-magic-dscheck.2.3.0
-> installed lwt.5.7.0
-> installed base.v0.17.1
-> installed menhir.20240715
-> installed ppxlib.0.33.0
-> installed ppxlib_jane.v0.17.0
-> installed sedlex.3.2
-> installed ppx_sexp_conv.v0.17.0
-> installed ipaddr-sexp.5.6.0
-> installed uri-sexp.4.4.0
-> installed js_of_ocaml-compiler.5.8.2
-> installed js_of_ocaml.5.8.2
-> installed logs.0.7.0
-> installed mirage-crypto-rng.1.1.0
-> installed mirage-crypto-pk.1.1.0
-> installed conduit.6.2.3
-> installed cohttp.6.0.0~beta2
-> installed mdx.2.4.1
-> installed bos.0.2.1
-> installed conduit-lwt.6.2.3
-> installed cohttp-lwt.6.0.0~beta2
-> installed mirage-crypto-ec.1.1.0
-> installed x509.1.0.4
-> installed ca-certs.1.0.0
-> installed conduit-lwt-unix.6.2.3
-> installed cohttp-lwt-unix.6.0.0~beta2
Done.
# Run eval $(opam env) to update the current shell environment
2024-09-30 23:58.46 ---> using "be6ab4d0504fbedf5703d7eae58f8e9db3090790112d3ab7c181da585a14cffc" from cache
/src: (copy (src .) (dst /src))
2024-09-30 23:58.46 ---> saved as "67d5340c43fb399cec229f59a569682dba8fea788bac8bf49eb98a7926ec509a"
/src: (run (shell "opam exec -- dune build @install @check @runtest && rm -rf _build"))
(cd _build/default/test && ./test_lwt_unix.exe)
Testing `Picos_lwt'.
This run has ID `7HGFC0SP'.
[OK] Basics 0
Full test results in `/src/_build/default/test/_build/_tests/Picos_lwt'.
Test Successful in 0.050s. 1 test run.
(cd _build/default/test && ./test_picos_lwt_unix_with_cohttp.exe)
Unix.Unix_error(Unix.ECONNREFUSED, "connect", "")
(cd _build/default/test && ./test_server_and_client.exe)
Using non-blocking sockets and fibers on OCaml 5:
Looping server running
Server listening
Server accepting
Client A running
Client A connected
Client A wrote 100
Client B running
Client B connected
Client B wrote 100
Server accepted client
Server read 100
Server wrote 50
Server accepting
Server accepted client
Server read 100
Server wrote 50
Server accepting
Client A read 50
Client B read 50
Server and Client test: OK
(cd _build/default/test && ./test_finally.exe)
Testing `Picos_finally'.
This run has ID `L9TRQDQV'.
[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.005s. 2 tests run.
(cd _build/default/test && ./test_io.exe)
Testing `Picos_io'.
This run has ID `R4MABUG1'.
[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.501s. 6 tests run.
(cd _build/default/test && ./test_sync.exe -- Event 0)
Testing `Picos_sync'.
This run has ID `NLAAEDTK'.
[SKIP] Mutex and Condition 0 basics.
[SKIP] Mutex and Condition 1 errors.
[SKIP] Mutex and Condition 2 cancelation.
[SKIP] Semaphore 0 basics.
[SKIP] Semaphore 1 stress.
[SKIP] Lazy 0 basics.
[SKIP] Lazy 1 cancelation.
[OK] Event 0 basics.
[SKIP] Ch 0 basics.
[SKIP] Non-cancelable ops 0 are not canceled.
Full test results in `/src/_build/default/test/_build/_tests/Picos_sync'.
Test Successful in 0.135s. 1 test run.
(cd _build/default/test && ./test_sync.exe -- Ch 0)
Testing `Picos_sync'.
This run has ID `GIDA0OTQ'.
[SKIP] Mutex and Condition 0 basics.
[SKIP] Mutex and Condition 1 errors.
[SKIP] Mutex and Condition 2 cancelation.
[SKIP] Semaphore 0 basics.
[SKIP] Semaphore 1 stress.
[SKIP] Lazy 0 basics.
[SKIP] Lazy 1 cancelation.
[SKIP] Event 0 basics.
[OK] Ch 0 basics.
[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 -- Lazy 0)
Testing `Picos_sync'.
This run has ID `ZSBNXQKG'.
[SKIP] Mutex and Condition 0 basics.
[SKIP] Mutex and Condition 1 errors.
[SKIP] Mutex and Condition 2 cancelation.
[SKIP] Semaphore 0 basics.
[SKIP] Semaphore 1 stress.
[OK] Lazy 0 basics.
[SKIP] Lazy 1 cancelation.
[SKIP] Event 0 basics.
[SKIP] Ch 0 basics.
[SKIP] Non-cancelable ops 0 are not canceled.
Full test results in `/src/_build/default/test/_build/_tests/Picos_sync'.
Test Successful in 0.016s. 1 test run.
(cd _build/default/test && ./test_sync.exe -- Lazy 1)
Testing `Picos_sync'.
This run has ID `N55Z3N5V'.
[SKIP] Mutex and Condition 0 basics.
[SKIP] Mutex and Condition 1 errors.
[SKIP] Mutex and Condition 2 cancelation.
[SKIP] Semaphore 0 basics.
[SKIP] Semaphore 1 stress.
[SKIP] Lazy 0 basics.
[OK] Lazy 1 cancelation.
[SKIP] Event 0 basics.
[SKIP] Ch 0 basics.
[SKIP] Non-cancelable ops 0 are not canceled.
Full test results in `/src/_build/default/test/_build/_tests/Picos_sync'.
Test Successful in 0.004s. 1 test run.
(cd _build/default/test && ./test_sync.exe -- Semaphore 0)
Testing `Picos_sync'.
This run has ID `U34FPBCF'.
[SKIP] Mutex and Condition 0 basics.
[SKIP] Mutex and Condition 1 errors.
[SKIP] Mutex and Condition 2 cancelation.
[OK] Semaphore 0 basics.
[SKIP] Semaphore 1 stress.
[SKIP] Lazy 0 basics.
[SKIP] Lazy 1 cancelation.
[SKIP] Event 0 basics.
[SKIP] Ch 0 basics.
[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_io_cohttp.exe)
Uri: //127.0.0.1:44589/hello-io-cohttp
Method: POST
host: 127.0.0.1:44589
user-agent: ocaml-cohttp/v6.0.0_beta2
content-length: 17
Body: It's-a-Me, Picos!
(cd _build/default/bench && ./main.exe -brief 'Picos Computation')
Picos Computation:
time per attach detach pair/trivial:
126.32 ns
attach detach pairs over time/trivial:
7.92 M/s
time per attach detach pair/1 worker:
333.32 ns
attach detach pairs over time/1 worker:
3.00 M/s
time per attach detach pair/2 workers:
746.31 ns
attach detach pairs over time/2 workers:
2.68 M/s
time per attach detach pair/4 workers:
1455.72 ns
attach detach pairs over time/4 workers:
2.75 M/s
(cd _build/default/test && ./test_sync.exe -- Semaphore 1)
Testing `Picos_sync'.
This run has ID `6EU5FE6V'.
[SKIP] Mutex and Condition 0 basics.
[SKIP] Mutex and Condition 1 errors.
[SKIP] Mutex and Condition 2 cancelation.
[SKIP] Semaphore 0 basics.
[OK] Semaphore 1 stress.
[SKIP] Lazy 0 basics.
[SKIP] Lazy 1 cancelation.
[SKIP] Event 0 basics.
[SKIP] Ch 0 basics.
[SKIP] Non-cancelable ops 0 are not canceled.
Full test results in `/src/_build/default/test/_build/_tests/Picos_sync'.
Test Successful in 0.267s. 1 test run.
(cd _build/default/test && ./test_sync.exe -- 'Non-cancelable ops' 0)
Testing `Picos_sync'.
This run has ID `627OK2K8'.
[SKIP] Mutex and Condition 0 basics.
[SKIP] Mutex and Condition 1 errors.
[SKIP] Mutex and Condition 2 cancelation.
[SKIP] Semaphore 0 basics.
[SKIP] Semaphore 1 stress.
[SKIP] Lazy 0 basics.
[SKIP] Lazy 1 cancelation.
[SKIP] Event 0 basics.
[SKIP] Ch 0 basics.
[OK] Non-cancelable ops 0 are not canceled.
Full test results in `/src/_build/default/test/_build/_tests/Picos_sync'.
Test Successful in 0.010s. 1 test run.
(cd _build/default/test && ./test_sync.exe -- 'Mutex and Condition' 0)
Testing `Picos_sync'.
This run has ID `PEKIW18C'.
[OK] Mutex and Condition 0 basics.
[SKIP] Mutex and Condition 1 errors.
[SKIP] Mutex and Condition 2 cancelation.
[SKIP] Semaphore 0 basics.
[SKIP] Semaphore 1 stress.
[SKIP] Lazy 0 basics.
[SKIP] Lazy 1 cancelation.
[SKIP] Event 0 basics.
[SKIP] Ch 0 basics.
[SKIP] Non-cancelable ops 0 are not canceled.
Full test results in `/src/_build/default/test/_build/_tests/Picos_sync'.
Test Successful in 0.017s. 1 test run.
(cd _build/default/test && ./test_sync.exe -- 'Mutex and Condition' 1)
Testing `Picos_sync'.
This run has ID `XKOPMJFB'.
[SKIP] Mutex and Condition 0 basics.
[OK] Mutex and Condition 1 errors.
[SKIP] Mutex and Condition 2 cancelation.
[SKIP] Semaphore 0 basics.
[SKIP] Semaphore 1 stress.
[SKIP] Lazy 0 basics.
[SKIP] Lazy 1 cancelation.
[SKIP] Event 0 basics.
[SKIP] Ch 0 basics.
[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_select.exe)
Testing `Picos_select'.
This run has ID `RSF04S2U'.
[OK] Intr 0
Full test results in `/src/_build/default/test/_build/_tests/Picos_select'.
Test Successful in 2.106s. 1 test run.
(cd _build/default/test && ./test_picos_dscheck.exe)
Testing `Picos DSCheck'.
This run has ID `FWT9H9FT'.
[OK] Trigger 0 basic contract.
[OK] Computation 0 basic contract.
[OK] Computation 1 removes triggers.
Full test results in `/src/_build/default/test/_build/_tests/Picos DSCheck'.
Test Successful in 0.876s. 3 tests run.
(cd _build/default/test && ./test_structured.exe)
Testing `Picos_structured'.
This run has ID `HYGWT4VU'.
[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] Bundle 11 any and all errors.
[OK] Bundle 12 any and all returns.
[OK] Bundle 13 race any.
Full test results in `/src/_build/default/test/_build/_tests/Picos_structured'.
Test Successful in 1.108s. 14 tests run.
(cd _build/default/bench && ./main.exe -brief 'Picos Current')
Picos Current:
time per op/1 worker:
91.17 ns
ops over time/1 worker:
10.97 M/s
time per op/2 workers:
52.78 ns
ops over time/2 workers:
37.89 M/s
time per op/4 workers:
40.36 ns
ops over time/4 workers:
99.12 M/s
(cd _build/default/test && ./test_io_with_lwt.exe)
Testing `Picos_io_with_lwt'.
This run has ID `VV39UNT2'.
[OK] Unix 0 system.
Full test results in `/src/_build/default/test/_build/_tests/Picos_io_with_lwt'.
Test Successful in 2.064s. 1 test run.
(cd _build/default/bench && ./main.exe -brief 'Picos FLS (excluding Current)')
Picos FLS (excluding Current):
time per get/1 worker:
8.24 ns
gets over time/1 worker:
121.36 M/s
time per set/1 worker:
15.12 ns
sets over time/1 worker:
66.13 M/s
time per get/2 workers:
8.91 ns
gets over time/2 workers:
224.57 M/s
time per set/2 workers:
14.27 ns
sets over time/2 workers:
140.13 M/s
time per get/4 workers:
11.56 ns
gets over time/4 workers:
346.07 M/s
time per set/4 workers:
15.97 ns
sets over time/4 workers:
250.48 M/s
(cd _build/default/test && ./test_mpmcq_dscheck.exe)
Testing `Picos_mpmcq DSCheck'.
This run has ID `UA1MW5DA'.
[OK] Multiple pushes and pops 0
Full test results in `/src/_build/default/test/_build/_tests/Picos_mpmcq DSCheck'.
Test Successful in 2.351s. 1 test run.
(cd _build/default/test && ./test_sync.exe -- 'Mutex and Condition' 2)
Testing `Picos_sync'.
This run has ID `8L67XQW5'.
[SKIP] Mutex and Condition 0 basics.
[SKIP] Mutex and Condition 1 errors.
[OK] Mutex and Condition 2 cancelation.
[SKIP] Semaphore 0 basics.
[SKIP] Semaphore 1 stress.
[SKIP] Lazy 0 basics.
[SKIP] Lazy 1 cancelation.
[SKIP] Event 0 basics.
[SKIP] Ch 0 basics.
[SKIP] Non-cancelable ops 0 are not canceled.
Full test results in `/src/_build/default/test/_build/_tests/Picos_sync'.
Test Successful in 2.972s. 1 test run.
(cd _build/default/bench && ./main.exe -brief 'Picos TLS')
Picos TLS:
time per get/1 worker:
15.88 ns
gets over time/1 worker:
62.96 M/s
time per set/1 worker:
27.48 ns
sets over time/1 worker:
36.39 M/s
time per get/2 workers:
12.67 ns
gets over time/2 workers:
157.89 M/s
time per set/2 workers:
30.01 ns
sets over time/2 workers:
66.64 M/s
time per get/4 workers:
16.12 ns
gets over time/4 workers:
248.07 M/s
time per set/4 workers:
32.21 ns
sets over time/4 workers:
124.20 M/s
(cd _build/default/test && /usr/bin/node test_js_of_ocaml.bc.js)
Hello, from js_of_ocaml with Picos!
(cd _build/default/bench && ./main.exe -brief 'Picos DLS')
Picos DLS:
time per get/1 worker:
14.28 ns
gets over time/1 worker:
70.02 M/s
time per set/1 worker:
19.30 ns
sets over time/1 worker:
51.80 M/s
time per get/2 workers:
16.40 ns
gets over time/2 workers:
121.97 M/s
time per set/2 workers:
21.06 ns
sets over time/2 workers:
94.97 M/s
time per get/4 workers:
14.18 ns
gets over time/4 workers:
281.99 M/s
time per set/4 workers:
37.41 ns
sets over time/4 workers:
106.92 M/s
(cd _build/default/bench && ./main.exe -brief 'Picos Mutex')
Picos Mutex:
time per locked yield/1 fiber:
507.31 ns
locked yields over time/1 fiber:
1.97 M/s
time per locked yield/2 fibers:
1044.55 ns
locked yields over time/2 fibers:
0.96 M/s
time per locked yield/4 fibers:
1259.39 ns
locked yields over time/4 fibers:
0.79 M/s
time per locked yield/8 fibers:
1153.23 ns
locked yields over time/8 fibers:
0.87 M/s
time per locked yield/256 fibers:
1497.89 ns
locked yields over time/256 fibers:
0.67 M/s
time per locked yield/512 fibers:
1263.83 ns
locked yields over time/512 fibers:
0.79 M/s
time per locked yield/1024 fibers:
2001.97 ns
locked yields over time/1024 fibers:
0.50 M/s
time per locked yield/2 domains:
3180.41 ns
locked yields over time/2 domains:
0.63 M/s
time per locked yield/4 domains:
6590.37 ns
locked yields over time/4 domains:
0.61 M/s
time per locked yield/8 domains:
26898.50 ns
locked yields over time/8 domains:
0.30 M/s
(cd _build/default/test && ./test_schedulers.exe)
Testing `Picos schedulers'.
This run has ID `C6M6C4OU'.
[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 9.666s. 8 tests run.
(cd _build/default/test && ./test_picos.exe)
Testing `Picos'.
This run has ID `WDWIE1HT'.
[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 9.612s. 7 tests run.
(cd _build/default/bench && ./main.exe -brief 'Picos Semaphore')
Picos Semaphore:
time per acquired yield/4 fibers, 1 resource:
2258.60 ns
acquired yields over time/4 fibers, 1 resource:
0.44 M/s
time per acquired yield/4 fibers, 2 resources:
1738.02 ns
acquired yields over time/4 fibers, 2 resources:
0.58 M/s
time per acquired yield/4 fibers, 3 resources:
810.83 ns
acquired yields over time/4 fibers, 3 resources:
1.23 M/s
time per acquired yield/4 fibers, 4 resources:
257.64 ns
acquired yields over time/4 fibers, 4 resources:
3.88 M/s
time per acquired yield/4 domains, 1 resource:
5473.12 ns
acquired yields over time/4 domains, 1 resource:
0.73 M/s
time per acquired yield/4 domains, 2 resources:
2935.75 ns
acquired yields over time/4 domains, 2 resources:
1.36 M/s
time per acquired yield/4 domains, 3 resources:
711.28 ns
acquired yields over time/4 domains, 3 resources:
5.65 M/s
time per acquired yield/4 domains, 4 resources:
613.44 ns
acquired yields over time/4 domains, 4 resources:
6.52 M/s
(cd _build/default/bench && ./main.exe -brief 'Picos Spawn')
Picos Spawn:
time per spawn/with packed computation:
169.60 ns
spawns over time/with packed computation:
5.90 M/s
(cd _build/default/bench && ./main.exe -brief 'Picos Yield')
Picos Yield:
time per yield/1 fiber:
123.59 ns
yields over time/1 fiber:
8.09 M/s
time per yield/10 fibers:
102.20 ns
yields over time/10 fibers:
9.78 M/s
time per yield/100 fibers:
99.80 ns
yields over time/100 fibers:
10.02 M/s
time per yield/1000 fibers:
116.44 ns
yields over time/1000 fibers:
8.59 M/s
time per yield/10000 fibers:
200.85 ns
yields over time/10000 fibers:
4.98 M/s
(cd _build/default/bench && ./main.exe -brief 'Picos Cancel_after with Picos_select')
Picos Cancel_after with Picos_select:
time per round-trip/1 worker:
19576.72 ns
round-trips over time/1 worker:
0.05 M/s
time per round-trip/2 workers:
18764.49 ns
round-trips over time/2 workers:
0.11 M/s
time per round-trip/4 workers:
17899.12 ns
round-trips over time/4 workers:
0.22 M/s
time per async round-trip/1 worker:
3955.38 ns
async round-trips over time/1 worker:
0.25 M/s
time per async round-trip/2 workers:
3481.01 ns
async round-trips over time/2 workers:
0.57 M/s
time per async round-trip/4 workers:
3787.33 ns
async round-trips over time/4 workers:
1.06 M/s
(cd _build/default/bench && ./main.exe -brief 'Ref with Picos_sync.Mutex')
Ref with Picos_sync.Mutex:
time per op/get (checked):
164.34 ns
ops over time/get (checked):
6.08 M/s
time per op/incr (checked):
164.52 ns
ops over time/incr (checked):
6.08 M/s
time per op/push & pop (checked):
178.15 ns
ops over time/push & pop (checked):
5.61 M/s
time per op/cas int (checked):
164.15 ns
ops over time/cas int (checked):
6.09 M/s
time per op/xchg int (checked):
162.62 ns
ops over time/xchg int (checked):
6.15 M/s
time per op/swap (checked):
169.93 ns
ops over time/swap (checked):
5.88 M/s
time per op/get (unchecked):
46.39 ns
ops over time/get (unchecked):
21.55 M/s
time per op/incr (unchecked):
49.00 ns
ops over time/incr (unchecked):
20.41 M/s
time per op/push & pop (unchecked):
60.22 ns
ops over time/push & pop (unchecked):
16.60 M/s
time per op/cas int (unchecked):
51.72 ns
ops over time/cas int (unchecked):
19.33 M/s
time per op/xchg int (unchecked):
51.19 ns
ops over time/xchg int (unchecked):
19.54 M/s
time per op/swap (unchecked):
53.02 ns
ops over time/swap (unchecked):
18.86 M/s
(cd _build/default/bench && ./main.exe -brief Picos_mpmcq)
Picos_mpmcq:
time per message/one domain:
47.66 ns
messages over time/one domain:
20.98 M/s
time per message/1 nb adder, 1 nb taker:
200.22 ns
messages over time/1 nb adder, 1 nb taker:
9.99 M/s
time per message/1 nb adder, 2 nb takers:
125.08 ns
messages over time/1 nb adder, 2 nb takers:
23.99 M/s
time per message/1 nb adder, 4 nb takers:
414.81 ns
messages over time/1 nb adder, 4 nb takers:
12.05 M/s
time per message/2 nb adders, 1 nb taker:
215.68 ns
messages over time/2 nb adders, 1 nb taker:
13.91 M/s
time per message/2 nb adders, 2 nb takers:
1151.89 ns
messages over time/2 nb adders, 2 nb takers:
3.47 M/s
time per message/2 nb adders, 4 nb takers:
532.35 ns
messages over time/2 nb adders, 4 nb takers:
11.27 M/s
time per message/4 nb adders, 1 nb taker:
914.47 ns
messages over time/4 nb adders, 1 nb taker:
5.47 M/s
time per message/4 nb adders, 2 nb takers:
1733.63 ns
messages over time/4 nb adders, 2 nb takers:
3.46 M/s
time per message/4 nb adders, 4 nb takers:
2242.57 ns
messages over time/4 nb adders, 4 nb takers:
3.57 M/s
(cd _build/default/bench && ./main.exe -brief Picos_mpscq)
Picos_mpscq:
time per message/one domain:
63.97 ns
messages over time/one domain:
15.63 M/s
time per message/1 nb adder, 1 nb taker:
43.53 ns
messages over time/1 nb adder, 1 nb taker:
45.94 M/s
time per message/2 nb adders, 1 nb taker:
76.65 ns
messages over time/2 nb adders, 1 nb taker:
39.14 M/s
time per message/4 nb adders, 1 nb taker:
304.74 ns
messages over time/4 nb adders, 1 nb taker:
16.41 M/s
(cd _build/default/bench && ./main.exe -brief Picos_htbl)
Picos_htbl:
time per operation/1 worker, 10% reads:
79.09 ns
operations over time/1 worker, 10% reads:
12.64 M/s
time per operation/1 worker, 50% reads:
65.11 ns
operations over time/1 worker, 50% reads:
15.36 M/s
time per operation/1 worker, 90% reads:
51.49 ns
operations over time/1 worker, 90% reads:
19.42 M/s
time per operation/2 workers, 10% reads:
96.93 ns
operations over time/2 workers, 10% reads:
20.63 M/s
time per operation/2 workers, 50% reads:
145.59 ns
operations over time/2 workers, 50% reads:
13.74 M/s
time per operation/2 workers, 90% reads:
96.79 ns
operations over time/2 workers, 90% reads:
20.66 M/s
time per operation/4 workers, 10% reads:
286.24 ns
operations over time/4 workers, 10% reads:
13.97 M/s
time per operation/4 workers, 50% reads:
256.36 ns
operations over time/4 workers, 50% reads:
15.60 M/s
time per operation/4 workers, 90% reads:
169.46 ns
operations over time/4 workers, 90% reads:
23.61 M/s
time per operation/8 workers, 10% reads:
784.03 ns
operations over time/8 workers, 10% reads:
10.20 M/s
time per operation/8 workers, 50% reads:
566.94 ns
operations over time/8 workers, 50% reads:
14.11 M/s
time per operation/8 workers, 90% reads:
313.60 ns
operations over time/8 workers, 90% reads:
25.51 M/s
(cd _build/default/bench && ./main.exe -brief Picos_stdio)
Picos_stdio:
time per non-blocking read/1 worker:
4574.41 ns
non-blocking reads over time/1 worker:
0.22 M/s
time per non-blocking read/2 workers:
4625.48 ns
non-blocking reads over time/2 workers:
0.43 M/s
time per non-blocking read/4 workers:
3595.79 ns
non-blocking reads over time/4 workers:
1.11 M/s
time per blocking read/1 worker:
39536.74 ns
blocking reads over time/1 worker:
0.03 M/s
time per blocking read/2 workers:
53896.80 ns
blocking reads over time/2 workers:
0.04 M/s
time per blocking read/4 workers:
89789.17 ns
blocking reads over time/4 workers:
0.04 M/s
(cd _build/default/bench && ./main.exe -brief 'Picos_sync Ch')
Picos_sync Ch:
time per message/one domain:
1405.19 ns
messages over time/one domain:
0.71 M/s
time per message/1 giver, 1 taker:
7053.05 ns
messages over time/1 giver, 1 taker:
0.28 M/s
time per message/1 giver, 2 takers:
11327.54 ns
messages over time/1 giver, 2 takers:
0.26 M/s
time per message/1 giver, 4 takers:
35437.88 ns
messages over time/1 giver, 4 takers:
0.14 M/s
time per message/2 givers, 1 taker:
11767.27 ns
messages over time/2 givers, 1 taker:
0.25 M/s
time per message/2 givers, 2 takers:
11199.46 ns
messages over time/2 givers, 2 takers:
0.36 M/s
time per message/2 givers, 4 takers:
24991.01 ns
messages over time/2 givers, 4 takers:
0.24 M/s
time per message/4 givers, 1 taker:
24965.71 ns
messages over time/4 givers, 1 taker:
0.20 M/s
time per message/4 givers, 2 takers:
30223.75 ns
messages over time/4 givers, 2 takers:
0.20 M/s
time per message/4 givers, 4 takers:
43420.14 ns
messages over time/4 givers, 4 takers:
0.18 M/s
(cd _build/default/test && ./test_mpscq.exe)
random seed: 1971865336634404775
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
[ ] 0 0 0 0 / 32 0.0s Mpscq parallel
[ ] 1 0 0 1 / 32 0.8s Mpscq parallel
[ ] 2 0 0 2 / 32 1.3s Mpscq parallel
[ ] 3 0 0 3 / 32 1.6s Mpscq parallel
[ ] 4 0 0 4 / 32 2.1s Mpscq parallel
[ ] 5 0 0 5 / 32 2.9s Mpscq parallel
[ ] 6 0 0 6 / 32 3.1s Mpscq parallel
[ ] 7 0 0 7 / 32 3.4s Mpscq parallel
[ ] 8 0 0 8 / 32 3.8s Mpscq parallel
[ ] 9 0 0 9 / 32 4.0s Mpscq parallel
[ ] 10 0 0 10 / 32 4.3s Mpscq parallel
[ ] 11 0 0 11 / 32 4.4s Mpscq parallel
[ ] 13 0 0 13 / 32 4.5s Mpscq parallel
[ ] 16 0 0 16 / 32 4.7s Mpscq parallel
[ ] 18 0 0 18 / 32 4.9s Mpscq parallel
[ ] 20 0 0 20 / 32 5.2s Mpscq parallel
[ ] 21 0 0 21 / 32 5.4s Mpscq parallel
[ ] 22 0 0 22 / 32 5.5s Mpscq parallel
[ ] 23 0 0 23 / 32 5.7s Mpscq parallel
[ ] 24 0 0 24 / 32 5.9s Mpscq parallel
[ ] 26 0 0 26 / 32 6.1s Mpscq parallel
[ ] 27 0 0 27 / 32 6.2s Mpscq parallel
[ ] 28 0 0 28 / 32 6.3s Mpscq parallel
[ ] 30 0 0 30 / 32 6.5s Mpscq parallel
[ ] 32 0 0 32 / 32 6.6s Mpscq parallel
[✓] 32 0 0 32 / 32 6.6s Mpscq parallel
================================================================================
success (ran 2 tests)
random seed: 1382314185793784619
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
[ ] 0 0 0 0 / 64 0.0s Mpscq parallel
[ ] 1 0 0 1 / 64 0.1s Mpscq parallel
[ ] 2 0 0 2 / 64 0.3s Mpscq parallel
[ ] 3 0 0 3 / 64 0.6s Mpscq parallel
[ ] 4 0 0 4 / 64 0.7s Mpscq parallel
[ ] 5 0 0 5 / 64 0.9s Mpscq parallel
[ ] 7 0 0 7 / 64 1.1s Mpscq parallel
[ ] 8 0 0 8 / 64 1.4s Mpscq parallel
[ ] 9 0 0 9 / 64 1.6s Mpscq parallel
[ ] 10 0 0 10 / 64 2.0s Mpscq parallel
[ ] 13 0 0 13 / 64 2.1s Mpscq parallel
[ ] 17 0 0 17 / 64 2.3s Mpscq parallel
[ ] 21 0 0 21 / 64 2.6s Mpscq parallel
[ ] 27 0 0 27 / 64 2.7s Mpscq parallel
[ ] 32 0 0 32 / 64 2.9s Mpscq parallel
[ ] 37 0 0 37 / 64 3.1s Mpscq parallel
[ ] 42 0 0 42 / 64 3.4s Mpscq parallel
[ ] 45 0 0 45 / 64 3.7s Mpscq parallel
[ ] 48 0 0 48 / 64 3.8s Mpscq parallel
[ ] 53 0 0 53 / 64 3.9s Mpscq parallel
[ ] 58 0 0 58 / 64 4.0s Mpscq parallel
[✓] 64 0 0 64 / 64 4.1s Mpscq parallel
================================================================================
success (ran 2 tests)
random seed: 1059579512831969270
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
[ ] 0 0 0 0 / 128 0.0s Mpscq parallel
[ ] 2 0 0 2 / 128 0.2s Mpscq parallel
[ ] 9 0 0 9 / 128 0.6s Mpscq parallel
[ ] 12 0 0 12 / 128 0.8s Mpscq parallel
[ ] 18 0 0 18 / 128 0.9s Mpscq parallel
[ ] 20 0 0 20 / 128 1.3s Mpscq parallel
[ ] 26 0 0 26 / 128 1.4s Mpscq parallel
[ ] 32 0 0 32 / 128 1.6s Mpscq parallel
[ ] 40 0 0 40 / 128 1.7s Mpscq parallel
[ ] 43 0 0 43 / 128 1.9s Mpscq parallel
[ ] 49 0 0 49 / 128 2.2s Mpscq parallel
[ ] 55 0 0 55 / 128 2.3s Mpscq parallel
[ ] 57 0 0 57 / 128 3.3s Mpscq parallel
[ ] 61 0 0 61 / 128 3.4s Mpscq parallel
[ ] 64 0 0 64 / 128 3.6s Mpscq parallel
[ ] 74 0 0 74 / 128 3.7s Mpscq parallel
[ ] 78 0 0 78 / 128 3.8s Mpscq parallel
[ ] 84 0 0 84 / 128 4.1s Mpscq parallel
[ ] 94 0 0 94 / 128 4.2s Mpscq parallel
[ ] 101 0 0 101 / 128 4.3s Mpscq parallel
[ ] 111 0 0 111 / 128 4.5s Mpscq parallel
[ ] 120 0 0 120 / 128 4.6s Mpscq parallel
[ ] 122 0 0 122 / 128 5.1s Mpscq parallel
[✓] 128 0 0 128 / 128 5.1s Mpscq parallel
================================================================================
success (ran 2 tests)
random seed: 1493352817606548956
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
[ ] 0 0 0 0 / 256 0.0s Mpscq parallel
[ ] 1 0 0 1 / 256 0.1s Mpscq parallel
[ ] 3 0 0 3 / 256 0.3s Mpscq parallel
[ ] 4 0 0 4 / 256 0.7s Mpscq parallel
[ ] 10 0 0 10 / 256 0.8s Mpscq parallel
[ ] 18 0 0 18 / 256 1.0s Mpscq parallel
[ ] 25 0 0 25 / 256 1.1s Mpscq parallel
[ ] 35 0 0 35 / 256 1.2s Mpscq parallel
[ ] 37 0 0 37 / 256 1.7s Mpscq parallel
[ ] 40 0 0 40 / 256 1.8s Mpscq parallel
[ ] 41 0 0 41 / 256 2.0s Mpscq parallel
[ ] 45 0 0 45 / 256 2.4s Mpscq parallel
[ ] 52 0 0 52 / 256 2.5s Mpscq parallel
[ ] 56 0 0 56 / 256 2.6s Mpscq parallel
[ ] 60 0 0 60 / 256 2.7s Mpscq parallel
[ ] 62 0 0 62 / 256 2.9s Mpscq parallel
[ ] 67 0 0 67 / 256 3.0s Mpscq parallel
[ ] 68 0 0 68 / 256 3.2s Mpscq parallel
[ ] 69 0 0 69 / 256 3.5s Mpscq parallel
[ ] 78 0 0 78 / 256 3.6s Mpscq parallel
[ ] 84 0 0 84 / 256 3.7s Mpscq parallel
[ ] 85 0 0 85 / 256 4.0s Mpscq parallel
[ ] 92 0 0 92 / 256 4.2s Mpscq parallel
[ ] 102 0 0 102 / 256 4.3s Mpscq parallel
[ ] 106 0 0 106 / 256 4.6s Mpscq parallel
[ ] 110 0 0 110 / 256 4.7s Mpscq parallel
[ ] 115 0 0 115 / 256 4.9s Mpscq parallel
[ ] 119 0 0 119 / 256 5.2s Mpscq parallel
[ ] 128 0 0 128 / 256 5.5s Mpscq parallel
[ ] 134 0 0 134 / 256 5.7s Mpscq parallel
[ ] 140 0 0 140 / 256 5.8s Mpscq parallel
[ ] 148 0 0 148 / 256 6.1s Mpscq parallel
[ ] 156 0 0 156 / 256 6.2s Mpscq parallel
[ ] 158 0 0 158 / 256 6.5s Mpscq parallel
[ ] 159 0 0 159 / 256 6.7s Mpscq parallel
[ ] 163 0 0 163 / 256 6.8s Mpscq parallel
[ ] 166 0 0 166 / 256 6.9s Mpscq parallel
[ ] 168 0 0 168 / 256 7.1s Mpscq parallel
[ ] 169 0 0 169 / 256 7.7s Mpscq parallel
[ ] 170 0 0 170 / 256 8.6s Mpscq parallel
[ ] 171 0 0 171 / 256 9.7s Mpscq parallel
[ ] 172 0 0 172 / 256 10.5s Mpscq parallel
[ ] 173 0 0 173 / 256 11.3s Mpscq parallel
[ ] 174 0 0 174 / 256 12.1s Mpscq parallel
[ ] 175 0 0 175 / 256 12.9s Mpscq parallel
[ ] 176 0 0 176 / 256 13.7s Mpscq parallel
[ ] 177 0 0 177 / 256 14.7s Mpscq parallel
[ ] 178 0 0 178 / 256 15.9s Mpscq parallel
[ ] 179 0 0 179 / 256 17.0s Mpscq parallel
[ ] 180 0 0 180 / 256 18.2s Mpscq parallel
[ ] 181 0 0 181 / 256 19.4s Mpscq parallel
[ ] 182 0 0 182 / 256 20.5s Mpscq parallel
[ ] 183 0 0 183 / 256 21.5s Mpscq parallel
[ ] 184 0 0 184 / 256 22.4s Mpscq parallel
[ ] 185 0 0 185 / 256 23.6s Mpscq parallel
[ ] 186 0 0 186 / 256 24.6s Mpscq parallel
[ ] 187 0 0 187 / 256 26.5s Mpscq parallel
[ ] 188 0 0 188 / 256 27.4s Mpscq parallel
[ ] 189 0 0 189 / 256 28.4s Mpscq parallel
[ ] 190 0 0 190 / 256 29.6s Mpscq parallel
[ ] 191 0 0 191 / 256 30.5s Mpscq parallel
[ ] 192 0 0 192 / 256 31.5s Mpscq parallel
[ ] 193 0 0 193 / 256 32.4s Mpscq parallel
[ ] 194 0 0 194 / 256 34.3s Mpscq parallel
[ ] 195 0 0 195 / 256 35.2s Mpscq parallel
[ ] 196 0 0 196 / 256 36.2s Mpscq parallel
[ ] 197 0 0 197 / 256 37.1s Mpscq parallel
[ ] 198 0 0 198 / 256 38.0s Mpscq parallel
[ ] 199 0 0 199 / 256 38.9s Mpscq parallel
[ ] 200 0 0 200 / 256 39.9s Mpscq parallel
[ ] 201 0 0 201 / 256 40.8s Mpscq parallel
[ ] 202 0 0 202 / 256 41.6s Mpscq parallel
[ ] 203 0 0 203 / 256 42.5s Mpscq parallel
[ ] 204 0 0 204 / 256 43.4s Mpscq parallel
[ ] 205 0 0 205 / 256 44.8s Mpscq parallel
[ ] 206 0 0 206 / 256 45.7s Mpscq parallel
[ ] 207 0 0 207 / 256 46.7s Mpscq parallel
[ ] 208 0 0 208 / 256 48.1s Mpscq parallel
[ ] 209 0 0 209 / 256 49.1s Mpscq parallel
[ ] 210 0 0 210 / 256 50.0s Mpscq parallel
[ ] 211 0 0 211 / 256 51.0s Mpscq parallel
[ ] 212 0 0 212 / 256 51.9s Mpscq parallel
[ ] 213 0 0 213 / 256 52.9s Mpscq parallel
[ ] 214 0 0 214 / 256 54.1s Mpscq parallel
[ ] 215 0 0 215 / 256 55.2s Mpscq parallel
[ ] 216 0 0 216 / 256 56.0s Mpscq parallel
[ ] 217 0 0 217 / 256 56.7s Mpscq parallel
[ ] 218 0 0 218 / 256 57.8s Mpscq parallel
[ ] 219 0 0 219 / 256 58.6s Mpscq parallel
[ ] 220 0 0 220 / 256 59.6s Mpscq parallel
[ ] 221 0 0 221 / 256 60.3s Mpscq parallel
[ ] 222 0 0 222 / 256 61.0s Mpscq parallel
[ ] 223 0 0 223 / 256 61.8s Mpscq parallel
[ ] 224 0 0 224 / 256 62.7s Mpscq parallel
[ ] 225 0 0 225 / 256 63.4s Mpscq parallel
[ ] 226 0 0 226 / 256 64.2s Mpscq parallel
[ ] 227 0 0 227 / 256 65.1s Mpscq parallel
[ ] 228 0 0 228 / 256 65.7s Mpscq parallel
[ ] 229 0 0 229 / 256 66.5s Mpscq parallel
[ ] 230 0 0 230 / 256 67.2s Mpscq parallel
[ ] 231 0 0 231 / 256 67.9s Mpscq parallel
[ ] 232 0 0 232 / 256 68.8s Mpscq parallel
[ ] 233 0 0 233 / 256 69.5s Mpscq parallel
[ ] 234 0 0 234 / 256 70.2s Mpscq parallel
[ ] 235 0 0 235 / 256 70.8s Mpscq parallel
[ ] 236 0 0 236 / 256 71.3s Mpscq parallel
[ ] 237 0 0 237 / 256 72.0s Mpscq parallel
[ ] 238 0 0 238 / 256 72.9s Mpscq parallel
[ ] 239 0 0 239 / 256 73.6s Mpscq parallel
[ ] 240 0 0 240 / 256 74.3s Mpscq parallel
[ ] 241 0 0 241 / 256 74.8s Mpscq parallel
[ ] 242 0 0 242 / 256 75.2s Mpscq parallel
[ ] 243 0 0 243 / 256 75.6s Mpscq parallel
[ ] 244 0 0 244 / 256 76.0s Mpscq parallel
[ ] 245 0 0 245 / 256 76.3s Mpscq parallel
[ ] 246 0 0 246 / 256 76.6s Mpscq parallel
[ ] 247 0 0 247 / 256 76.7s Mpscq parallel
[ ] 248 0 0 248 / 256 77.1s Mpscq parallel
[ ] 249 0 0 249 / 256 77.4s Mpscq parallel
[ ] 250 0 0 250 / 256 77.6s Mpscq parallel
[ ] 251 0 0 251 / 256 77.8s Mpscq parallel
[ ] 252 0 0 252 / 256 78.1s Mpscq parallel
[ ] 253 0 0 253 / 256 78.7s Mpscq parallel
[ ] 254 0 0 254 / 256 79.0s Mpscq parallel
[ ] 255 0 0 255 / 256 80.1s Mpscq parallel
[ ] 256 0 0 256 / 256 80.5s Mpscq parallel
[✓] 256 0 0 256 / 256 80.5s Mpscq parallel
================================================================================
success (ran 2 tests)
(cd _build/default/bench && ./main.exe -brief 'Picos_sync Stream')
Picos_sync Stream:
time per message/one domain:
559.87 ns
messages over time/one domain:
1.79 M/s
time per message/1 nb pusher, 1 nb reader:
1092.13 ns
messages over time/1 nb pusher, 1 nb reader:
1.83 M/s
time per message/2 nb pushers, 1 nb reader:
1499.61 ns
messages over time/2 nb pushers, 1 nb reader:
2.00 M/s
time per message/4 nb pushers, 1 nb reader:
2813.03 ns
messages over time/4 nb pushers, 1 nb reader:
1.78 M/s
(cd _build/default/test && ./test_mpmcq.exe)
random seed: 333057989226914174
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 parallel
[ ] 1 0 0 1 / 32 0.7s Mpmcq parallel
[ ] 2 0 0 2 / 32 1.2s Mpmcq parallel
[ ] 3 0 0 3 / 32 1.4s Mpmcq parallel
[ ] 4 0 0 4 / 32 1.7s Mpmcq parallel
[ ] 5 0 0 5 / 32 2.0s Mpmcq parallel
[ ] 6 0 0 6 / 32 2.5s Mpmcq parallel
[ ] 7 0 0 7 / 32 3.0s Mpmcq parallel
[ ] 8 0 0 8 / 32 3.3s Mpmcq parallel
[ ] 9 0 0 9 / 32 3.7s Mpmcq parallel
[ ] 10 0 0 10 / 32 4.0s Mpmcq parallel
[ ] 11 0 0 11 / 32 4.2s Mpmcq parallel
[ ] 13 0 0 13 / 32 4.4s Mpmcq parallel
[ ] 15 0 0 15 / 32 4.5s Mpmcq parallel
[ ] 17 0 0 17 / 32 4.6s Mpmcq parallel
[ ] 20 0 0 20 / 32 4.8s Mpmcq parallel
[ ] 22 0 0 22 / 32 5.1s Mpmcq parallel
[ ] 23 0 0 23 / 32 5.3s Mpmcq parallel
[ ] 25 0 0 25 / 32 5.4s Mpmcq parallel
[ ] 26 0 0 26 / 32 5.5s Mpmcq parallel
[ ] 28 0 0 28 / 32 5.7s Mpmcq parallel
[ ] 30 0 0 30 / 32 5.9s Mpmcq parallel
[ ] 31 0 0 31 / 32 6.0s Mpmcq parallel
[ ] 32 0 0 32 / 32 6.2s Mpmcq parallel
[✓] 32 0 0 32 / 32 6.2s Mpmcq parallel
================================================================================
success (ran 2 tests)
random seed: 3876954913441861090
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 parallel
[ ] 1 0 0 1 / 64 0.3s Mpmcq parallel
[ ] 2 0 0 2 / 64 0.5s Mpmcq parallel
[ ] 3 0 0 3 / 64 1.0s Mpmcq parallel
[ ] 4 0 0 4 / 64 1.4s Mpmcq parallel
[ ] 5 0 0 5 / 64 1.7s Mpmcq parallel
[ ] 6 0 0 6 / 64 1.9s Mpmcq parallel
[ ] 7 0 0 7 / 64 2.2s Mpmcq parallel
[ ] 11 0 0 11 / 64 2.3s Mpmcq parallel
[ ] 14 0 0 14 / 64 2.4s Mpmcq parallel
[ ] 19 0 0 19 / 64 2.6s Mpmcq parallel
[ ] 22 0 0 22 / 64 3.1s Mpmcq parallel
[ ] 23 0 0 23 / 64 3.2s Mpmcq parallel
[ ] 27 0 0 27 / 64 3.3s Mpmcq parallel
[ ] 28 0 0 28 / 64 3.6s Mpmcq parallel
[ ] 31 0 0 31 / 64 4.1s Mpmcq parallel
[ ] 38 0 0 38 / 64 4.2s Mpmcq parallel
[ ] 39 0 0 39 / 64 4.6s Mpmcq parallel
[ ] 44 0 0 44 / 64 4.7s Mpmcq parallel
[ ] 49 0 0 49 / 64 5.1s Mpmcq parallel
[ ] 53 0 0 53 / 64 5.5s Mpmcq parallel
[ ] 56 0 0 56 / 64 5.7s Mpmcq parallel
[ ] 63 0 0 63 / 64 5.8s Mpmcq parallel
[✓] 64 0 0 64 / 64 5.8s Mpmcq parallel
================================================================================
success (ran 2 tests)
random seed: 3975664863380202963
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 parallel
[ ] 2 0 0 2 / 128 0.2s Mpmcq parallel
[ ] 5 0 0 5 / 128 0.3s Mpmcq parallel
[ ] 12 0 0 12 / 128 0.4s Mpmcq parallel
[ ] 18 0 0 18 / 128 0.6s Mpmcq parallel
[ ] 23 0 0 23 / 128 0.7s Mpmcq parallel
[ ] 28 0 0 28 / 128 0.8s Mpmcq parallel
[ ] 38 0 0 38 / 128 0.9s Mpmcq parallel
[ ] 41 0 0 41 / 128 1.4s Mpmcq parallel
[ ] 43 0 0 43 / 128 1.6s Mpmcq parallel
[ ] 49 0 0 49 / 128 1.9s Mpmcq parallel
[ ] 53 0 0 53 / 128 2.0s Mpmcq parallel
[ ] 64 0 0 64 / 128 2.1s Mpmcq parallel
[ ] 70 0 0 70 / 128 2.3s Mpmcq parallel
[ ] 74 0 0 74 / 128 2.5s Mpmcq parallel
[ ] 75 0 0 75 / 128 2.6s Mpmcq parallel
[ ] 84 0 0 84 / 128 3.2s Mpmcq parallel
[ ] 86 0 0 86 / 128 3.3s Mpmcq parallel
[ ] 93 0 0 93 / 128 3.6s Mpmcq parallel
[ ] 103 0 0 103 / 128 3.7s Mpmcq parallel
[ ] 111 0 0 111 / 128 3.8s Mpmcq parallel
[ ] 118 0 0 118 / 128 3.9s Mpmcq parallel
[ ] 124 0 0 124 / 128 4.0s Mpmcq parallel
[ ] 125 0 0 125 / 128 4.4s Mpmcq parallel
[ ] 126 0 0 126 / 128 4.6s Mpmcq parallel
[✓] 128 0 0 128 / 128 4.6s Mpmcq parallel
================================================================================
success (ran 2 tests)
random seed: 1607207091823868017
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 parallel
[ ] 5 0 0 5 / 256 0.1s Mpmcq parallel
[ ] 6 0 0 6 / 256 0.2s Mpmcq parallel
[ ] 8 0 0 8 / 256 0.4s Mpmcq parallel
[ ] 15 0 0 15 / 256 0.5s Mpmcq parallel
[ ] 23 0 0 23 / 256 0.6s Mpmcq parallel
[ ] 25 0 0 25 / 256 0.9s Mpmcq parallel
[ ] 30 0 0 30 / 256 1.0s Mpmcq parallel
[ ] 37 0 0 37 / 256 1.1s Mpmcq parallel
[ ] 42 0 0 42 / 256 1.3s Mpmcq parallel
[ ] 44 0 0 44 / 256 1.7s Mpmcq parallel
[ ] 45 0 0 45 / 256 2.1s Mpmcq parallel
[ ] 55 0 0 55 / 256 2.3s Mpmcq parallel
[ ] 64 0 0 64 / 256 2.4s Mpmcq parallel
[ ] 68 0 0 68 / 256 2.6s Mpmcq parallel
[ ] 72 0 0 72 / 256 3.0s Mpmcq parallel
[ ] 75 0 0 75 / 256 3.1s Mpmcq parallel
[ ] 78 0 0 78 / 256 3.5s Mpmcq parallel
[ ] 83 0 0 83 / 256 3.7s Mpmcq parallel
[ ] 86 0 0 86 / 256 3.9s Mpmcq parallel
[ ] 87 0 0 87 / 256 4.1s Mpmcq parallel
[ ] 94 0 0 94 / 256 4.2s Mpmcq parallel
[ ] 99 0 0 99 / 256 4.6s Mpmcq parallel
[ ] 108 0 0 108 / 256 4.7s Mpmcq parallel
[ ] 114 0 0 114 / 256 5.1s Mpmcq parallel
[ ] 116 0 0 116 / 256 5.3s Mpmcq parallel
[ ] 123 0 0 123 / 256 5.5s Mpmcq parallel
[ ] 124 0 0 124 / 256 5.6s Mpmcq parallel
[ ] 127 0 0 127 / 256 5.8s Mpmcq parallel
[ ] 131 0 0 131 / 256 6.0s Mpmcq parallel
[ ] 135 0 0 135 / 256 7.1s Mpmcq parallel
[ ] 136 0 0 136 / 256 7.9s Mpmcq parallel
[ ] 137 0 0 137 / 256 8.7s Mpmcq parallel
[ ] 138 0 0 138 / 256 9.6s Mpmcq parallel
[ ] 139 0 0 139 / 256 10.8s Mpmcq parallel
[ ] 140 0 0 140 / 256 11.4s Mpmcq parallel
[ ] 141 0 0 141 / 256 11.9s Mpmcq parallel
[ ] 142 0 0 142 / 256 12.5s Mpmcq parallel
[ ] 143 0 0 143 / 256 13.1s Mpmcq parallel
[ ] 144 0 0 144 / 256 13.8s Mpmcq parallel
[ ] 145 0 0 145 / 256 14.6s Mpmcq parallel
[ ] 146 0 0 146 / 256 15.6s Mpmcq parallel
[ ] 147 0 0 147 / 256 16.3s Mpmcq parallel
[ ] 148 0 0 148 / 256 17.2s Mpmcq parallel
[ ] 149 0 0 149 / 256 17.8s Mpmcq parallel
[ ] 150 0 0 150 / 256 18.7s Mpmcq parallel
[ ] 151 0 0 151 / 256 19.6s Mpmcq parallel
[ ] 152 0 0 152 / 256 20.5s Mpmcq parallel
[ ] 153 0 0 153 / 256 21.6s Mpmcq parallel
[ ] 154 0 0 154 / 256 22.5s Mpmcq parallel
[ ] 155 0 0 155 / 256 23.4s Mpmcq parallel
[ ] 156 0 0 156 / 256 24.1s Mpmcq parallel
[ ] 157 0 0 157 / 256 25.2s Mpmcq parallel
[ ] 158 0 0 158 / 256 26.0s Mpmcq parallel
[ ] 159 0 0 159 / 256 26.8s Mpmcq parallel
[ ] 160 0 0 160 / 256 27.6s Mpmcq parallel
[ ] 161 0 0 161 / 256 28.4s Mpmcq parallel
[ ] 162 0 0 162 / 256 29.2s Mpmcq parallel
[ ] 163 0 0 163 / 256 29.8s Mpmcq parallel
[ ] 164 0 0 164 / 256 30.5s Mpmcq parallel
[ ] 165 0 0 165 / 256 31.0s Mpmcq parallel
[ ] 166 0 0 166 / 256 32.5s Mpmcq parallel
[ ] 167 0 0 167 / 256 33.3s Mpmcq parallel
[ ] 168 0 0 168 / 256 33.9s Mpmcq parallel
[ ] 169 0 0 169 / 256 35.2s Mpmcq parallel
[ ] 170 0 0 170 / 256 36.0s Mpmcq parallel
[ ] 171 0 0 171 / 256 36.8s Mpmcq parallel
[ ] 172 0 0 172 / 256 37.5s Mpmcq parallel
[ ] 173 0 0 173 / 256 38.2s Mpmcq parallel
[ ] 174 0 0 174 / 256 38.9s Mpmcq parallel
[ ] 175 0 0 175 / 256 39.6s Mpmcq parallel
[ ] 176 0 0 176 / 256 40.6s Mpmcq parallel
[ ] 177 0 0 177 / 256 41.3s Mpmcq parallel
[ ] 178 0 0 178 / 256 42.1s Mpmcq parallel
[ ] 179 0 0 179 / 256 42.9s Mpmcq parallel
[ ] 180 0 0 180 / 256 43.6s Mpmcq parallel
[ ] 181 0 0 181 / 256 44.2s Mpmcq parallel
[ ] 182 0 0 182 / 256 44.8s Mpmcq parallel
[ ] 183 0 0 183 / 256 45.5s Mpmcq parallel
[ ] 184 0 0 184 / 256 46.1s Mpmcq parallel
[ ] 185 0 0 185 / 256 46.7s Mpmcq parallel
[ ] 186 0 0 186 / 256 47.4s Mpmcq parallel
[ ] 187 0 0 187 / 256 48.0s Mpmcq parallel
[ ] 188 0 0 188 / 256 49.2s Mpmcq parallel
[ ] 189 0 0 189 / 256 49.9s Mpmcq parallel
[ ] 190 0 0 190 / 256 50.6s Mpmcq parallel
[ ] 191 0 0 191 / 256 51.4s Mpmcq parallel
[ ] 192 0 0 192 / 256 52.1s Mpmcq parallel
[ ] 193 0 0 193 / 256 52.7s Mpmcq parallel
[ ] 194 0 0 194 / 256 53.4s Mpmcq parallel
[ ] 195 0 0 195 / 256 54.1s Mpmcq parallel
[ ] 196 0 0 196 / 256 55.4s Mpmcq parallel
[ ] 197 0 0 197 / 256 56.0s Mpmcq parallel
[ ] 198 0 0 198 / 256 56.7s Mpmcq parallel
[ ] 199 0 0 199 / 256 57.3s Mpmcq parallel
[ ] 200 0 0 200 / 256 58.0s Mpmcq parallel
[ ] 201 0 0 201 / 256 58.6s Mpmcq parallel
[ ] 202 0 0 202 / 256 59.1s Mpmcq parallel
[ ] 203 0 0 203 / 256 59.7s Mpmcq parallel
[ ] 204 0 0 204 / 256 60.3s Mpmcq parallel
[ ] 205 0 0 205 / 256 60.8s Mpmcq parallel
[ ] 206 0 0 206 / 256 61.5s Mpmcq parallel
[ ] 207 0 0 207 / 256 62.1s Mpmcq parallel
[ ] 208 0 0 208 / 256 63.3s Mpmcq parallel
[ ] 209 0 0 209 / 256 63.9s Mpmcq parallel
[ ] 210 0 0 210 / 256 64.5s Mpmcq parallel
[ ] 211 0 0 211 / 256 65.0s Mpmcq parallel
[ ] 212 0 0 212 / 256 65.5s Mpmcq parallel
[ ] 213 0 0 213 / 256 66.8s Mpmcq parallel
[ ] 214 0 0 214 / 256 67.2s Mpmcq parallel
[ ] 215 0 0 215 / 256 67.7s Mpmcq parallel
[ ] 216 0 0 216 / 256 68.3s Mpmcq parallel
[ ] 217 0 0 217 / 256 68.8s Mpmcq parallel
[ ] 218 0 0 218 / 256 69.4s Mpmcq parallel
[ ] 219 0 0 219 / 256 69.9s Mpmcq parallel
[ ] 220 0 0 220 / 256 70.6s Mpmcq parallel
[ ] 221 0 0 221 / 256 71.3s Mpmcq parallel
[ ] 222 0 0 222 / 256 71.7s Mpmcq parallel
[ ] 223 0 0 223 / 256 72.3s Mpmcq parallel
[ ] 224 0 0 224 / 256 72.9s Mpmcq parallel
[ ] 225 0 0 225 / 256 73.6s Mpmcq parallel
[ ] 226 0 0 226 / 256 74.0s Mpmcq parallel
[ ] 227 0 0 227 / 256 74.2s Mpmcq parallel
[ ] 228 0 0 228 / 256 74.6s Mpmcq parallel
[ ] 229 0 0 229 / 256 74.9s Mpmcq parallel
[ ] 230 0 0 230 / 256 75.3s Mpmcq parallel
[ ] 231 0 0 231 / 256 75.6s Mpmcq parallel
[ ] 232 0 0 232 / 256 75.9s Mpmcq parallel
[ ] 233 0 0 233 / 256 76.2s Mpmcq parallel
[ ] 234 0 0 234 / 256 76.6s Mpmcq parallel
[ ] 235 0 0 235 / 256 76.8s Mpmcq parallel
[ ] 236 0 0 236 / 256 77.0s Mpmcq parallel
[ ] 237 0 0 237 / 256 77.4s Mpmcq parallel
[ ] 238 0 0 238 / 256 77.8s Mpmcq parallel
[ ] 239 0 0 239 / 256 78.1s Mpmcq parallel
[ ] 240 0 0 240 / 256 78.4s Mpmcq parallel
[ ] 241 0 0 241 / 256 78.7s Mpmcq parallel
[ ] 242 0 0 242 / 256 79.5s Mpmcq parallel
[ ] 243 0 0 243 / 256 79.9s Mpmcq parallel
[ ] 244 0 0 244 / 256 80.2s Mpmcq parallel
[ ] 245 0 0 245 / 256 80.4s Mpmcq parallel
[ ] 246 0 0 246 / 256 80.7s Mpmcq parallel
[ ] 247 0 0 247 / 256 80.9s Mpmcq parallel
[ ] 248 0 0 248 / 256 81.0s Mpmcq parallel
[ ] 249 0 0 249 / 256 81.2s Mpmcq parallel
[ ] 250 0 0 250 / 256 81.4s Mpmcq parallel
[ ] 251 0 0 251 / 256 81.6s Mpmcq parallel
[ ] 252 0 0 252 / 256 81.8s Mpmcq parallel
[ ] 253 0 0 253 / 256 82.0s Mpmcq parallel
[ ] 254 0 0 254 / 256 82.2s Mpmcq parallel
[ ] 255 0 0 255 / 256 82.3s Mpmcq parallel
[ ] 256 0 0 256 / 256 82.5s Mpmcq parallel
[✓] 256 0 0 256 / 256 82.5s Mpmcq parallel
================================================================================
success (ran 2 tests)
(cd _build/default/bench && ./main.exe -brief Fib)
Fib:
time per spawn/1 rando, fib 20:
3929.39 ns
spawns over time/1 rando, fib 20:
0.25 M/s
time per spawn/2 randos, fib 20:
4923.62 ns
spawns over time/2 randos, fib 20:
0.41 M/s
time per spawn/4 randos, fib 20:
10388.48 ns
spawns over time/4 randos, fib 20:
0.39 M/s
time per spawn/8 randos, fib 20:
43414.95 ns
spawns over time/8 randos, fib 20:
0.18 M/s
time per spawn/1 mfifo, fib 20:
2028.93 ns
spawns over time/1 mfifo, fib 20:
0.49 M/s
time per spawn/2 mfifos, fib 20:
1950.32 ns
spawns over time/2 mfifos, fib 20:
1.03 M/s
time per spawn/4 mfifos, fib 20:
2244.79 ns
spawns over time/4 mfifos, fib 20:
1.78 M/s
time per spawn/8 mfifos, fib 20:
5788.58 ns
spawns over time/8 mfifos, fib 20:
1.38 M/s
(cd _build/default/bench && ./main.exe -brief 'Picos binaries')
Picos binaries:
binary size/picos:
117.05 kB
binary size/picos.domain:
5.16 kB
binary size/picos.thread:
4.60 kB
binary size/picos_aux.htbl:
47.32 kB
binary size/picos_aux.mpmcq:
17.16 kB
binary size/picos_aux.mpscq:
20.56 kB
binary size/picos_aux.rc:
20.31 kB
binary size/picos_lwt:
30.11 kB
binary size/picos_lwt.unix:
16.19 kB
binary size/picos_mux.fifo:
32.13 kB
binary size/picos_mux.multififo:
64.09 kB
binary size/picos_mux.random:
54.53 kB
binary size/picos_mux.thread:
26.63 kB
binary size/picos_std.event:
26.29 kB
binary size/picos_std.finally:
18.72 kB
binary size/picos_std.structured:
88.52 kB
binary size/picos_std.sync:
161.60 kB
binary size/picos_io:
116.27 kB
binary size/picos_io.fd:
10.81 kB
binary size/picos_io.select:
65.21 kB
binary size/picos_io_cohttp:
48.60 kB
(cd _build/default/bench && ./main.exe -brief 'Bounded_q with Picos_sync')
Bounded_q with Picos_sync:
time per message/one domain:
214.44 ns
messages over time/one domain:
4.66 M/s
time per message/1 adder, 1 taker:
765.91 ns
messages over time/1 adder, 1 taker:
2.61 M/s
time per message/1 adder, 2 takers:
4908.07 ns
messages over time/1 adder, 2 takers:
0.61 M/s
time per message/1 adder, 4 takers:
12633.22 ns
messages over time/1 adder, 4 takers:
0.40 M/s
time per message/2 adders, 1 taker:
5779.81 ns
messages over time/2 adders, 1 taker:
0.52 M/s
time per message/2 adders, 2 takers:
17971.92 ns
messages over time/2 adders, 2 takers:
0.22 M/s
time per message/2 adders, 4 takers:
26199.00 ns
messages over time/2 adders, 4 takers:
0.23 M/s
time per message/4 adders, 1 taker:
9588.82 ns
messages over time/4 adders, 1 taker:
0.52 M/s
time per message/4 adders, 2 takers:
35608.78 ns
messages over time/4 adders, 2 takers:
0.17 M/s
time per message/4 adders, 4 takers:
61476.89 ns
messages over time/4 adders, 4 takers:
0.13 M/s
(cd _build/default/bench && ./main.exe -brief 'Memory usage')
Memory usage:
stack and heap used/fiber in a bundle:
272.00 B
stack and heap used/promise in a bundle:
392.00 B
stack and heap used/fiber in a flock:
248.00 B
stack and heap used/promise in a flock:
416.00 B
stack and heap used/fiber with shared computation & latch:
232.00 B
stack and heap used/Fun.protect:
80.00 B
stack and heap used/lastly:
40.00 B
stack and heap used/finally:
48.00 B
stack and heap used/instantiate:
120.00 B
stack and heap used/join_after bundle:
304.00 B
stack and heap used/join_after flock:
304.00 B
(cd _build/default/test && ./test_htbl.exe)
random seed: 1643430669678086008
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 parallel
[ ] 1 0 0 1 / 32 0.6s Htbl parallel
[ ] 2 0 0 2 / 32 1.0s Htbl parallel
[ ] 3 0 0 3 / 32 1.4s Htbl parallel
[ ] 4 0 0 4 / 32 1.7s Htbl parallel
[ ] 5 0 0 5 / 32 2.1s Htbl parallel
[ ] 6 0 0 6 / 32 2.5s Htbl parallel
[ ] 7 0 0 7 / 32 3.0s Htbl parallel
[ ] 8 0 0 8 / 32 3.2s Htbl parallel
[ ] 9 0 0 9 / 32 3.7s Htbl parallel
[ ] 10 0 0 10 / 32 3.9s Htbl parallel
[ ] 11 0 0 11 / 32 4.2s Htbl parallel
[ ] 12 0 0 12 / 32 4.3s Htbl parallel
[ ] 14 0 0 14 / 32 4.5s Htbl parallel
[ ] 16 0 0 16 / 32 4.9s Htbl parallel
[ ] 17 0 0 17 / 32 5.1s Htbl parallel
[ ] 18 0 0 18 / 32 5.3s Htbl parallel
[ ] 19 0 0 19 / 32 5.6s Htbl parallel
[ ] 21 0 0 21 / 32 5.7s Htbl parallel
[ ] 22 0 0 22 / 32 5.9s Htbl parallel
[ ] 23 0 0 23 / 32 6.0s Htbl parallel
[ ] 24 0 0 24 / 32 6.2s Htbl parallel
[ ] 25 0 0 25 / 32 6.4s Htbl parallel
[ ] 27 0 0 27 / 32 6.5s Htbl parallel
[ ] 29 0 0 29 / 32 6.8s Htbl parallel
[ ] 30 0 0 30 / 32 6.9s Htbl parallel
[ ] 31 0 0 31 / 32 7.3s Htbl parallel
[ ] 32 0 0 32 / 32 7.5s Htbl parallel
[✓] 32 0 0 32 / 32 7.5s Htbl parallel
================================================================================
success (ran 2 tests)
random seed: 1768495101102987336
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 parallel
[ ] 1 0 0 1 / 64 0.6s Htbl parallel
[ ] 2 0 0 2 / 64 0.8s Htbl parallel
[ ] 5 0 0 5 / 64 0.9s Htbl parallel
[ ] 8 0 0 8 / 64 1.0s Htbl parallel
[ ] 12 0 0 12 / 64 1.1s Htbl parallel
[ ] 16 0 0 16 / 64 1.8s Htbl parallel
[ ] 17 0 0 17 / 64 2.0s Htbl parallel
[ ] 18 0 0 18 / 64 2.3s Htbl parallel
[ ] 22 0 0 22 / 64 2.4s Htbl parallel
[ ] 27 0 0 27 / 64 2.6s Htbl parallel
[ ] 30 0 0 30 / 64 2.7s Htbl parallel
[ ] 32 0 0 32 / 64 2.9s Htbl parallel
[ ] 37 0 0 37 / 64 3.1s Htbl parallel
[ ] 44 0 0 44 / 64 3.2s Htbl parallel
[ ] 49 0 0 49 / 64 3.6s Htbl parallel
[ ] 56 0 0 56 / 64 3.7s Htbl parallel
[ ] 63 0 0 63 / 64 3.8s Htbl parallel
[✓] 64 0 0 64 / 64 3.9s Htbl parallel
================================================================================
success (ran 2 tests)
random seed: 3983563543604616947
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 parallel
[ ] 6 0 0 6 / 128 0.1s Htbl parallel
[ ] 9 0 0 9 / 128 0.5s Htbl parallel
[ ] 11 0 0 11 / 128 0.8s Htbl parallel
[ ] 13 0 0 13 / 128 1.0s Htbl parallel
[ ] 18 0 0 18 / 128 1.2s Htbl parallel
[ ] 22 0 0 22 / 128 1.3s Htbl parallel
[ ] 29 0 0 29 / 128 1.4s Htbl parallel
[ ] 30 0 0 30 / 128 1.6s Htbl parallel
[ ] 32 0 0 32 / 128 2.0s Htbl parallel
[ ] 37 0 0 37 / 128 2.3s Htbl parallel
[ ]
40 0 0 40 / 128 2.7s Htbl parallel
[ ] 47 0 0 47 / 128 2.8s Htbl parallel
[ ] 55 0 0 55 / 128 2.9s Htbl parallel
[ ] 59 0 0 59 / 128 3.3s Htbl parallel
[ ] 66 0 0 66 / 128 3.4s Htbl parallel
[ ] 72 0 0 72 / 128 3.9s Htbl parallel
[ ] 82 0 0 82 / 128 4.4s Htbl parallel
[ ] 84 0 0 84 / 128 4.8s Htbl parallel
[ ] 91 0 0 91 / 128 5.1s Htbl parallel
[ ] 93 0 0 93 / 128 5.4s Htbl parallel
[ ] 99 0 0 99 / 128 5.7s Htbl parallel
[ ] 105 0 0 105 / 128 6.0s Htbl parallel
[ ] 113 0 0 113 / 128 6.2s Htbl parallel
[ ] 118 0 0 118 / 128 6.8s Htbl parallel
[ ] 122 0 0 122 / 128 7.3s Htbl parallel
[✓] 128 0 0 128 / 128 7.4s Htbl parallel
================================================================================
success (ran 2 tests)
random seed: 3118508745594333663
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 parallel
[ ] 2 0 0 2 / 256 0.0s Htbl parallel
[ ] 4 0 0 4 / 256 0.2s Htbl parallel
[ ] 5 0 0 5 / 256 0.4s Htbl parallel
[ ] 9 0 0 9 / 256 0.5s Htbl parallel
[ ] 11 0 0 11 / 256 0.7s Htbl parallel
[ ] 13 0 0 13 / 256 1.1s Htbl parallel
[ ] 18 0 0 18 / 256 1.4s Htbl parallel
[ ] 23 0 0 23 / 256 1.7s Htbl parallel
[ ] 26 0 0 26 / 256 2.2s Htbl parallel
[ ] 27 0 0 27 / 256 2.5s Htbl parallel
[ ] 29 0 0 29 / 256 2.7s Htbl parallel
[ ] 33 0 0 33 / 256 3.2s Htbl parallel
[ ] 34 0 0 34 / 256 3.7s Htbl parallel
[ ] 37 0 0 37 / 256 3.8s Htbl parallel
[ ] 42 0 0 42 / 256 4.0s Htbl parallel
[ ] 43 0 0 43 / 256 5.8s Htbl parallel
[ ] 44 0 0 44 / 256 6.9s Htbl parallel
[ ] 45 0 0 45 / 256 7.6s Htbl parallel
[ ] 46 0 0 46 / 256 8.3s Htbl parallel
[ ] 47 0 0 47 / 256 9.1s Htbl parallel
[ ] 48 0 0 48 / 256 9.6s Htbl parallel
[ ] 49 0 0 49 / 256 10.2s Htbl parallel
[ ] 50 0 0 50 / 256 10.7s Htbl parallel
[ ] 51 0 0 51 / 256 12.0s Htbl parallel
[ ] 52 0 0 52 / 256 12.8s Htbl parallel
[ ] 53 0 0 53 / 256 13.7s Htbl parallel
[ ] 54 0 0 54 / 256 14.5s Htbl parallel
[ ] 55 0 0 55 / 256 15.5s Htbl parallel
[ ] 56 0 0 56 / 256 16.3s Htbl parallel
[ ] 57 0 0 57 / 256 17.9s Htbl parallel
[ ] 58 0 0 58 / 256 18.8s Htbl parallel
[ ] 59 0 0 59 / 256 19.5s Htbl parallel
[ ] 60 0 0 60 / 256 20.4s Htbl parallel
[ ] 61 0 0 61 / 256 21.2s Htbl parallel
[ ] 62 0 0 62 / 256 22.0s Htbl parallel
[ ] 63 0 0 63 / 256 23.6s Htbl parallel
[ ] 64 0 0 64 / 256 24.4s Htbl parallel
[ ] 65 0 0 65 / 256 25.1s Htbl parallel
[ ] 66 0 0 66 / 256 26.0s Htbl parallel
[ ] 67 0 0 67 / 256 27.4s Htbl parallel
[ ] 68 0 0 68 / 256 28.1s Htbl parallel
[ ] 69 0 0 69 / 256 28.7s Htbl parallel
[ ] 70 0 0 70 / 256 29.5s Htbl parallel
[ ] 71 0 0 71 / 256 30.3s Htbl parallel
[ ] 72 0 0 72 / 256 32.4s Htbl parallel
[ ] 73 0 0 73 / 256 33.2s Htbl parallel
[ ] 74 0 0 74 / 256 34.0s Htbl parallel
[ ] 75 0 0 75 / 256 34.9s Htbl parallel
[ ] 76 0 0 76 / 256 35.6s Htbl parallel
[ ] 77 0 0 77 / 256 36.7s Htbl parallel
[ ] 78 0 0 78 / 256 37.5s Htbl parallel
[ ] 79 0 0 79 / 256 38.1s Htbl parallel
[ ] 80 0 0 80 / 256 38.9s Htbl parallel
[ ] 81 0 0 81 / 256 39.5s Htbl parallel
[ ] 82 0 0 82 / 256 40.2s Htbl parallel
[ ] 83 0 0 83 / 256 40.9s Htbl parallel
[ ] 84 0 0 84 / 256 41.5s Htbl parallel
[ ] 85 0 0 85 / 256 42.1s Htbl parallel
[ ] 86 0 0 86 / 256 42.7s Htbl parallel
[ ] 87 0 0 87 / 256 43.4s Htbl parallel
[ ] 88 0 0 88 / 256 44.4s Htbl parallel
[ ] 89 0 0 89 / 256 45.1s Htbl parallel
[ ] 90 0 0 90 / 256 46.0s Htbl parallel
[ ] 91 0 0 91 / 256 46.9s Htbl parallel
[ ] 92 0 0 92 / 256 47.5s Htbl parallel
[ ] 93 0 0 93 / 256 48.9s Htbl parallel
[ ] 94 0 0 94 / 256 49.7s Htbl parallel
[ ] 95 0 0 95 / 256 50.3s Htbl parallel
[ ] 96 0 0 96 / 256 50.9s Htbl parallel
[ ] 97 0 0 97 / 256 51.6s Htbl parallel
[ ] 98 0 0 98 / 256 52.7s Htbl parallel
[ ] 99 0 0 99 / 256 53.3s Htbl parallel
[ ] 100 0 0 100 / 256 54.1s Htbl parallel
[ ] 101 0 0 101 / 256 54.8s Htbl parallel
[ ] 102 0 0 102 / 256 55.5s Htbl parallel
[ ] 103 0 0 103 / 256 56.2s Htbl parallel
[ ] 104 0 0 104 / 256 57.4s Htbl parallel
[ ] 105 0 0 105 / 256 58.0s Htbl parallel
[ ] 106 0 0 106 / 256 58.7s Htbl parallel
[ ] 107 0 0 107 / 256 59.4s Htbl parallel
[ ] 108 0 0 108 / 256 60.0s Htbl parallel
[ ] 109 0 0 109 / 256 60.6s Htbl parallel
[ ] 110 0 0 110 / 256 61.1s Htbl parallel
[ ] 111 0 0 111 / 256 61.7s Htbl parallel
[ ] 112 0 0 112 / 256 62.3s Htbl parallel
[ ] 113 0 0 113 / 256 62.9s Htbl parallel
[ ] 114 0 0 114 / 256 63.5s Htbl parallel
[ ] 115 0 0 115 / 256 65.0s Htbl parallel
[ ] 116 0 0 116 / 256 65.5s Htbl parallel
[ ] 117 0 0 117 / 256 66.1s Htbl parallel
[ ] 118 0 0 118 / 256 66.6s Htbl parallel
[ ] 119 0 0 119 / 256 67.2s Htbl parallel
[ ] 120 0 0 120 / 256 67.6s Htbl parallel
[ ] 121 0 0 121 / 256 68.1s Htbl parallel
[ ] 122 0 0 122 / 256 68.5s Htbl parallel
[ ] 123 0 0 123 / 256 69.0s Htbl parallel
[ ] 124 0 0 124 / 256 69.5s Htbl parallel
[ ] 125 0 0 125 / 256 70.1s Htbl parallel
[ ] 126 0 0 126 / 256 70.6s Htbl parallel
[ ] 127 0 0 127 / 256 71.2s Htbl parallel
[ ] 128 0 0 128 / 256 71.7s Htbl parallel
[ ] 129 0 0 129 / 256 72.0s Htbl parallel
[ ] 130 0 0 130 / 256 72.4s Htbl parallel
[ ] 131 0 0 131 / 256 72.7s Htbl parallel
[ ] 132 0 0 132 / 256 73.0s Htbl parallel
[ ] 133 0 0 133 / 256 73.4s Htbl parallel
[ ] 134 0 0 134 / 256 73.8s Htbl parallel
[ ] 135 0 0 135 / 256 74.0s Htbl parallel
[ ] 136 0 0 136 / 256 74.4s Htbl parallel
[ ] 137 0 0 137 / 256 74.7s Htbl parallel
[ ] 138 0 0 138 / 256 75.0s Htbl parallel
[ ] 139 0 0 139 / 256 75.5s Htbl parallel
[ ] 140 0 0 140 / 256 75.9s Htbl parallel
[ ] 141 0 0 141 / 256 76.2s Htbl parallel
[ ] 142 0 0 142 / 256 76.6s Htbl parallel
[ ] 143 0 0 143 / 256 76.9s Htbl parallel
[ ] 144 0 0 144 / 256 77.2s Htbl parallel
[ ] 145 0 0 145 / 256 77.8s Htbl parallel
[ ] 146 0 0 146 / 256 78.0s Htbl parallel
[ ] 147 0 0 147 / 256 78.3s Htbl parallel
[ ] 148 0 0 148 / 256 78.5s Htbl parallel
[ ] 149 0 0 149 / 256 78.7s Htbl parallel
[ ] 150 0 0 150 / 256 79.3s Htbl parallel
[ ] 151 0 0 151 / 256 79.6s Htbl parallel
[ ] 152 0 0 152 / 256 79.9s Htbl parallel
[ ] 153 0 0 153 / 256 80.3s Htbl parallel
[ ] 154 0 0 154 / 256 80.5s Htbl parallel
[ ] 155 0 0 155 / 256 81.0s Htbl parallel
[ ] 156 0 0 156 / 256 81.2s Htbl parallel
[ ] 157 0 0 157 / 256 81.7s Htbl parallel
[ ] 158 0 0 158 / 256 81.9s Htbl parallel
[ ] 159 0 0 159 / 256 82.0s Htbl parallel
[ ] 160 0 0 160 / 256 82.2s Htbl parallel
[ ] 161 0 0 161 / 256 82.4s Htbl parallel
[ ] 162 0 0 162 / 256 82.5s Htbl parallel
[ ] 163 0 0 163 / 256 82.6s Htbl parallel
[ ] 164 0 0 164 / 256 82.8s Htbl parallel
[ ] 166 0 0 166 / 256 83.4s Htbl parallel
[ ] 167 0 0 167 / 256 83.5s Htbl parallel
[ ] 169 0 0 169 / 256 83.7s Htbl parallel
[ ] 171 0 0 171 / 256 83.9s Htbl parallel
[ ] 172 0 0 172 / 256 84.1s Htbl parallel
[ ] 173 0 0 173 / 256 84.3s Htbl parallel
[ ] 174 0 0 174 / 256 84.6s Htbl parallel
[ ] 178 0 0 178 / 256 85.0s Htbl parallel
[ ] 180 0 0 180 / 256 85.7s Htbl parallel
[ ] 182 0 0 182 / 256 85.9s Htbl parallel
[ ] 183 0 0 183 / 256 86.0s Htbl parallel
[ ] 185 0 0 185 / 256 86.1s Htbl parallel
[ ] 187 0 0 187 / 256 86.3s Htbl parallel
[ ] 190 0 0 190 / 256 86.6s Htbl parallel
[ ] 192 0 0 192 / 256 86.8s Htbl parallel
[ ] 195 0 0 195 / 256 87.0s Htbl parallel
[ ] 200 0 0 200 / 256 87.1s Htbl parallel
[ ] 202 0 0 202 / 256 87.2s Htbl parallel
[ ] 210 0 0 210 / 256 87.3s Htbl parallel
[ ] 215 0 0 215 / 256 87.5s Htbl parallel
[ ] 220 0 0 220 / 256 88.0s Htbl parallel
[ ] 224 0 0 224 / 256 88.2s Htbl parallel
[ ] 228 0 0 228 / 256 88.3s Htbl parallel
[ ] 230 0 0 230 / 256 88.7s Htbl parallel
[ ] 234 0 0 234 / 256 88.8s Htbl parallel
[ ] 236 0 0 236 / 256 89.1s Htbl parallel
[ ] 242 0 0 242 / 256 89.7s Htbl parallel
[ ] 245 0 0 245 / 256 90.1s Htbl parallel
[ ] 246 0 0 246 / 256 90.8s Htbl parallel
[ ] 247 0 0 247 / 256 90.9s Htbl parallel
[ ] 248 0 0 248 / 256 92.1s Htbl parallel
[ ] 249 0 0 249 / 256 92.3s Htbl parallel
[ ] 250 0 0 250 / 256 92.5s Htbl parallel
[ ] 251 0 0 251 / 256 92.8s Htbl parallel
[ ] 252 0 0 252 / 256 93.0s Htbl parallel
[ ] 253 0 0 253 / 256 93.5s Htbl parallel
[ ] 254 0 0 254 / 256 93.8s Htbl parallel
[ ] 255 0 0 255 / 256 94.0s Htbl parallel
[ ] 256 0 0 256 / 256 94.1s Htbl parallel
[✓] 256 0 0 256 / 256 94.1s Htbl parallel
================================================================================
success (ran 2 tests)
2024-10-01 00:00.43 ---> saved as "60f88134e666f7b4e675cc05bb48896bc6af296a7172e164d502de6af60b6474"
Job succeeded
2024-10-01 00:00.43: Job succeeded