2024-10-18 17:20.57: New job: test ocaml-multicore/saturn https://github.com/ocaml-multicore/saturn.git#refs/heads/lock-free-bounded-queue (72af6bf75f888ac95eb037f35504de4be8f491e8) (linux-x86_64:debian-12-4.14+flambda_opam-2.2)
Base: ocaml/opam:debian-12-ocaml-4.14-flambda@sha256:4bb5eef666e2e97ce1f3126e53b681b3e2b1445d6e8683a2bc7c18e4838683c8
Opam project build
To reproduce locally:
git clone --recursive "https://github.com/ocaml-multicore/saturn.git" -b "lock-free-bounded-queue" && cd "saturn" && git reset --hard 72af6bf7
cat > Dockerfile <<'END-OF-DOCKERFILE'
FROM ocaml/opam:debian-12-ocaml-4.14-flambda@sha256:4bb5eef666e2e97ce1f3126e53b681b3e2b1445d6e8683a2bc7c18e4838683c8
# debian-12-4.14+flambda_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 b8e118d3efb119e22f2e979ec1c6aa3e5aacdeff || git fetch origin master) && git reset -q --hard b8e118d3efb119e22f2e979ec1c6aa3e5aacdeff && git log --no-decorate -n1 --oneline && opam update -u
COPY --chown=1000:1000 saturn_lockfree.opam saturn.opam ./
RUN opam pin add -yn saturn_lockfree.dev './' && \
opam pin add -yn saturn.dev './'
ENV DEPS="alcotest.1.8.0 astring.0.8.5 backoff.0.1.1 base-bigarray.base base-threads.base base-unix.base cmdliner.1.3.0 containers.3.14 csexp.1.5.2 domain-local-await.1.0.1 domain_shims.0.1.0 dscheck.0.5.0 dune.3.16.0 dune-configurator.3.16.0 either.1.0.0 fmt.0.9.0 host-arch-x86_64.1 host-system-other.1 mtime.2.1.0 multicore-bench.0.1.7 multicore-magic.2.3.0 multicore-magic-dscheck.2.3.0 ocaml.4.14.2 ocaml-config.2 ocaml-syntax-shims.1.0.0 ocaml-variants.4.14.2+options ocamlbuild.0.15.0 ocamlfind.1.9.6 oseq.0.5.1 ounit2.2.2.7 picos.0.5.0 qcheck.0.22 qcheck-alcotest.0.22 qcheck-core.0.22 qcheck-multicoretests-util.0.4 qcheck-ounit.0.22 qcheck-stm.0.4 re.1.12.0 seq.base stdlib-shims.0.3.0 thread-local-storage.0.2 thread-table.1.0.0 topkg.1.0.7 tsort.2.1.0 uutf.1.0.3 yojson.2.2.2"
ENV CI="true"
ENV OCAMLCI="true"
RUN opam update --depexts && opam install --cli=2.2 --depext-only -y saturn_lockfree.dev saturn.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-10-18 17:20.57: Using cache hint "ocaml-multicore/saturn-ocaml/opam:debian-12-ocaml-4.14-flambda@sha256:4bb5eef666e2e97ce1f3126e53b681b3e2b1445d6e8683a2bc7c18e4838683c8-debian-12-4.14+flambda_opam-2.2-6286c866a59cc98e0c529a713c062cc9"
2024-10-18 17:20.57: Using OBuilder spec:
((from ocaml/opam:debian-12-ocaml-4.14-flambda@sha256:4bb5eef666e2e97ce1f3126e53b681b3e2b1445d6e8683a2bc7c18e4838683c8)
(comment debian-12-4.14+flambda_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 b8e118d3efb119e22f2e979ec1c6aa3e5aacdeff || git fetch origin master) && git reset -q --hard b8e118d3efb119e22f2e979ec1c6aa3e5aacdeff && git log --no-decorate -n1 --oneline && opam update -u"))
(copy (src saturn_lockfree.opam saturn.opam) (dst ./))
(run (network host)
(shell "opam pin add -yn saturn_lockfree.dev './' && \
\nopam pin add -yn saturn.dev './'"))
(env DEPS "alcotest.1.8.0 astring.0.8.5 backoff.0.1.1 base-bigarray.base base-threads.base base-unix.base cmdliner.1.3.0 containers.3.14 csexp.1.5.2 domain-local-await.1.0.1 domain_shims.0.1.0 dscheck.0.5.0 dune.3.16.0 dune-configurator.3.16.0 either.1.0.0 fmt.0.9.0 host-arch-x86_64.1 host-system-other.1 mtime.2.1.0 multicore-bench.0.1.7 multicore-magic.2.3.0 multicore-magic-dscheck.2.3.0 ocaml.4.14.2 ocaml-config.2 ocaml-syntax-shims.1.0.0 ocaml-variants.4.14.2+options ocamlbuild.0.15.0 ocamlfind.1.9.6 oseq.0.5.1 ounit2.2.2.7 picos.0.5.0 qcheck.0.22 qcheck-alcotest.0.22 qcheck-core.0.22 qcheck-multicoretests-util.0.4 qcheck-ounit.0.22 qcheck-stm.0.4 re.1.12.0 seq.base stdlib-shims.0.3.0 thread-local-storage.0.2 thread-table.1.0.0 topkg.1.0.7 tsort.2.1.0 uutf.1.0.3 yojson.2.2.2")
(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 saturn_lockfree.dev saturn.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-10-18 17:20.57: Waiting for resource in pool OCluster
2024-10-18 17:20.57: Waiting for worker…
2024-10-18 17:20.57: Got resource from pool OCluster
Building on x86-bm-c8.sw.ocaml.org
All commits already cached
HEAD is now at 72af6bf A lock-free bounded queue
(from ocaml/opam:debian-12-ocaml-4.14-flambda@sha256:4bb5eef666e2e97ce1f3126e53b681b3e2b1445d6e8683a2bc7c18e4838683c8)
Unable to find image 'ocaml/opam:debian-12-ocaml-4.14-flambda@sha256:4bb5eef666e2e97ce1f3126e53b681b3e2b1445d6e8683a2bc7c18e4838683c8' locally
docker.io/ocaml/opam@sha256:4bb5eef666e2e97ce1f3126e53b681b3e2b1445d6e8683a2bc7c18e4838683c8: Pulling from ocaml/opam
a16ce7af60e0: Pulling fs layer
a16ce7af60e0: Verifying Checksum
a16ce7af60e0: Download complete
a16ce7af60e0: Pull complete
Digest: sha256:4bb5eef666e2e97ce1f3126e53b681b3e2b1445d6e8683a2bc7c18e4838683c8
Status: Downloaded newer image for ocaml/opam@sha256:4bb5eef666e2e97ce1f3126e53b681b3e2b1445d6e8683a2bc7c18e4838683c8
2024-10-18 17:23.11 ---> saved as "24e6f39ff2f0ca4a0e176eac84e8935cbb6859196b071164ef3c71e456d39fa7"
/: (comment debian-12-4.14+flambda_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-10-18 17:23.11 ---> saved as "5f949b5779a46abc6e735f41f72a4de4903262051251e967357117ce86158c1e"
/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 39 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=39 --global
Format upgrade done.
<><> Updating repositories ><><><><><><><><><><><><><><><><><><><><><><><><><><>
[default] synchronised from file:///home/opam/opam-repository
2024-10-18 17:24.46 ---> saved as "43666136b35c4ee23e4c25d9fc3d4d86b31a9f323a8936ed4cbf958b574eaae4"
/src: (run (shell "uname -rs && opam exec -- ocaml -version && opam --version"))
Linux 5.15.0-122-generic
The OCaml toplevel, version 4.14.2
2.2.1
2024-10-18 17:24.47 ---> saved as "f28c49e809832d0a596744ee6ded16b264af4321db74314b901fee4f47c8150b"
/src: (workdir /src)
/src: (run (shell "sudo chown opam /src"))
2024-10-18 17:24.47 ---> saved as "9b8508e5e94f9d052499b9732a47a66f4fedcb4ca4b121ac27302fbbef2fc8ee"
/src: (run (cache (opam-archives (target /home/opam/.opam/download-cache)))
(network host)
(shell "cd ~/opam-repository && (git cat-file -e b8e118d3efb119e22f2e979ec1c6aa3e5aacdeff || git fetch origin master) && git reset -q --hard b8e118d3efb119e22f2e979ec1c6aa3e5aacdeff && git log --no-decorate -n1 --oneline && opam update -u"))
From https://github.com/ocaml/opam-repository
* branch master -> FETCH_HEAD
75006f8c5e..b8e118d3ef master -> origin/master
b8e118d3ef Merge pull request #26758 from polytypic/release-multicore-bench-0.1.7
<><> 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-10-18 17:26.07 ---> saved as "10cdd5a118098418771f782052c33e2691712040269e43b7c7d8911dd2676b14"
/src: (copy (src saturn_lockfree.opam saturn.opam) (dst ./))
2024-10-18 17:26.07 ---> saved as "998333ff0bf4768f5aecc212f63b00196db943c566e2c26308f5cb67361eae59"
/src: (run (network host)
(shell "opam pin add -yn saturn_lockfree.dev './' && \
\nopam pin add -yn saturn.dev './'"))
[saturn_lockfree.dev] synchronised (file:///src)
saturn_lockfree is now pinned to file:///src (version dev)
[saturn.dev] synchronised (file:///src)
saturn is now pinned to file:///src (version dev)
2024-10-18 17:26.13 ---> saved as "0cb7c140e8ae018e5303f9b8fdf4d15e6e7e1946b8f81e1b9c9dcce44c2de7f0"
/src: (env DEPS "alcotest.1.8.0 astring.0.8.5 backoff.0.1.1 base-bigarray.base base-threads.base base-unix.base cmdliner.1.3.0 containers.3.14 csexp.1.5.2 domain-local-await.1.0.1 domain_shims.0.1.0 dscheck.0.5.0 dune.3.16.0 dune-configurator.3.16.0 either.1.0.0 fmt.0.9.0 host-arch-x86_64.1 host-system-other.1 mtime.2.1.0 multicore-bench.0.1.7 multicore-magic.2.3.0 multicore-magic-dscheck.2.3.0 ocaml.4.14.2 ocaml-config.2 ocaml-syntax-shims.1.0.0 ocaml-variants.4.14.2+options ocamlbuild.0.15.0 ocamlfind.1.9.6 oseq.0.5.1 ounit2.2.2.7 picos.0.5.0 qcheck.0.22 qcheck-alcotest.0.22 qcheck-core.0.22 qcheck-multicoretests-util.0.4 qcheck-ounit.0.22 qcheck-stm.0.4 re.1.12.0 seq.base stdlib-shims.0.3.0 thread-local-storage.0.2 thread-table.1.0.0 topkg.1.0.7 tsort.2.1.0 uutf.1.0.3 yojson.2.2.2")
/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 saturn_lockfree.dev saturn.dev $DEPS"))
+ /usr/bin/sudo "apt-get" "update"
- Hit:1 http://deb.debian.org/debian bookworm InRelease
- Get:2 http://deb.debian.org/debian bookworm-updates InRelease [55.4 kB]
- Get:3 http://deb.debian.org/debian-security bookworm-security InRelease [48.0 kB]
- Get:4 http://deb.debian.org/debian-security bookworm-security/main amd64 Packages [188 kB]
- Fetched 292 kB in 1s (399 kB/s)
- Reading package lists...
-
<><> Synchronising pinned packages ><><><><><><><><><><><><><><><><><><><><><><>
[saturn.dev] synchronised (no changes)
[saturn_lockfree.dev] synchronised (no changes)
[NOTE] Package ocaml-variants is already installed (current version is 4.14.2+options).
[NOTE] Package ocaml-config is already installed (current version is 2).
[NOTE] Package ocaml is already installed (current version is 4.14.2).
[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-bigarray is already installed (current version is base).
2024-10-18 17:26.37 ---> saved as "1e1086d90044bdb6096548885e1ee5c5738507e773d12e2921b129921a248496"
/src: (run (cache (opam-archives (target /home/opam/.opam/download-cache)))
(network host)
(shell "opam install $DEPS"))
[NOTE] Package ocaml-variants is already installed (current version is 4.14.2+options).
[NOTE] Package ocaml-config is already installed (current version is 2).
[NOTE] Package ocaml is already installed (current version is 4.14.2).
[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-bigarray is already installed (current version is base).
The following actions will be performed:
=== install 38 packages
- install alcotest 1.8.0
- install astring 0.8.5
- install backoff 0.1.1
- install cmdliner 1.3.0
- install containers 3.14
- install csexp 1.5.2
- install domain-local-await 1.0.1
- install domain_shims 0.1.0
- install dscheck 0.5.0
- install dune 3.16.0
- install dune-configurator 3.16.0
- install either 1.0.0
- install fmt 0.9.0
- install mtime 2.1.0
- install multicore-bench 0.1.7
- install multicore-magic 2.3.0
- install multicore-magic-dscheck 2.3.0
- install ocaml-syntax-shims 1.0.0
- install ocamlbuild 0.15.0
- install ocamlfind 1.9.6
- install oseq 0.5.1
- install ounit2 2.2.7
- install picos 0.5.0
- install qcheck 0.22
- install qcheck-alcotest 0.22
- install qcheck-core 0.22
- install qcheck-multicoretests-util 0.4
- install qcheck-ounit 0.22
- install qcheck-stm 0.4
- install re 1.12.0
- install seq base
- install stdlib-shims 0.3.0
- install thread-local-storage 0.2
- install thread-table 1.0.0
- install topkg 1.0.7
- install tsort 2.1.0
- install uutf 1.0.3
- install yojson 2.2.2
<><> Processing actions <><><><><><><><><><><><><><><><><><><><><><><><><><><><>
-> retrieved backoff.0.1.1 (cached)
-> retrieved astring.0.8.5 (cached)
-> retrieved cmdliner.1.3.0 (cached)
-> retrieved alcotest.1.8.0 (cached)
-> retrieved csexp.1.5.2 (cached)
-> retrieved domain_shims.0.1.0 (cached)
-> retrieved containers.3.14 (cached)
-> retrieved domain-local-await.1.0.1 (cached)
-> retrieved dscheck.0.5.0 (cached)
-> retrieved either.1.0.0 (cached)
-> retrieved fmt.0.9.0 (cached)
-> retrieved mtime.2.1.0 (cached)
-> retrieved multicore-bench.0.1.7 (cached)
-> retrieved multicore-magic.2.3.0, multicore-magic-dscheck.2.3.0 (cached)
-> retrieved ocaml-syntax-shims.1.0.0 (cached)
-> retrieved ocamlbuild.0.15.0 (cached)
-> retrieved ocamlfind.1.9.6 (cached)
-> retrieved oseq.0.5.1 (cached)
-> retrieved ounit2.2.2.7 (cached)
-> retrieved picos.0.5.0 (cached)
-> retrieved qcheck.0.22, qcheck-alcotest.0.22, qcheck-core.0.22, qcheck-ounit.0.22 (cached)
-> retrieved qcheck-multicoretests-util.0.4, qcheck-stm.0.4 (cached)
-> retrieved seq.base (cached)
-> installed seq.base
-> retrieved re.1.12.0 (cached)
-> retrieved stdlib-shims.0.3.0 (cached)
-> retrieved thread-local-storage.0.2 (cached)
-> retrieved thread-table.1.0.0 (cached)
-> retrieved tsort.2.1.0 (cached)
-> retrieved dune.3.16.0, dune-configurator.3.16.0 (cached)
-> retrieved topkg.1.0.7 (cached)
-> retrieved uutf.1.0.3 (cached)
-> retrieved yojson.2.2.2 (cached)
-> installed cmdliner.1.3.0
-> installed ocamlbuild.0.15.0
-> installed ocamlfind.1.9.6
-> installed topkg.1.0.7
-> installed uutf.1.0.3
-> installed mtime.2.1.0
-> installed fmt.0.9.0
-> installed astring.0.8.5
-> installed dune.3.16.0
-> installed domain_shims.0.1.0
-> installed stdlib-shims.0.3.0
-> installed csexp.1.5.2
-> installed backoff.0.1.1
-> installed either.1.0.0
-> installed multicore-magic.2.3.0
-> installed thread-local-storage.0.2
-> installed thread-table.1.0.0
-> installed tsort.2.1.0
-> installed ocaml-syntax-shims.1.0.0
-> installed oseq.0.5.1
-> installed domain-local-await.1.0.1
-> installed picos.0.5.0
-> installed re.1.12.0
-> installed yojson.2.2.2
-> installed qcheck-core.0.22
-> installed ounit2.2.2.7
-> installed qcheck-multicoretests-util.0.4
-> installed dune-configurator.3.16.0
-> installed qcheck-ounit.0.22
-> installed multicore-bench.0.1.7
-> installed qcheck-stm.0.4
-> installed qcheck.0.22
-> installed alcotest.1.8.0
-> installed qcheck-alcotest.0.22
-> installed containers.3.14
-> installed dscheck.0.5.0
-> installed multicore-magic-dscheck.2.3.0
Done.
# Run eval $(opam env) to update the current shell environment
2024-10-18 17:28.37 ---> saved as "6b0d449f3d451a961ca3f9041a6b524179479dc93b33207d90bfae6687e37f11"
/src: (copy (src .) (dst /src))
2024-10-18 17:28.37 ---> saved as "3f77c7e976508c8ac24233a0d378257bc135920de28b2c57fa27f8e0a87b0a34"
/src: (run (shell "opam exec -- dune build @install @check @runtest && rm -rf _build"))
(cd _build/default && /home/opam/.opam/4.14/bin/ocamlopt.opt -w @1..3@5..28@31..39@43@46..47@49..57@61..62@67@69-40 -strict-sequence -strict-formats -short-paths -keep-locs -g -I src_lockfree/.saturn_lockfree.objs/byte -I src_lockfree/.saturn_lockfree.objs/native -I /home/opam/.opam/4.14/lib/backoff -I /home/opam/.opam/4.14/lib/multicore-magic -I /home/opam/.opam/4.14/lib/ocaml/threads -I /home/opam/.opam/4.14/lib/picos -intf-suffix .ml -no-alias-deps -opaque -open Saturn_lockfree__ -o src_lockfree/.saturn_lockfree.objs/native/saturn_lockfree__Cue.cmx -c -impl src_lockfree/cue.ml)
File "_none_", line 1:
Warning 58 [no-cmx-file]: no cmx file was found in path for module Picos_bootstrap, and its interface was not compiled with -opaque
File "_none_", line 1:
Warning 58 [no-cmx-file]: no cmx file was found in path for module Picos_ocaml, and its interface was not compiled with -opaque
(cd _build/default && /home/opam/.opam/4.14/bin/ocamlopt.opt -w @1..3@5..28@31..39@43@46..47@49..57@61..62@67@69-40 -strict-sequence -strict-formats -short-paths -keep-locs -g -I test/treiber_stack/.stm_treiber_stack.eobjs/byte -I test/treiber_stack/.stm_treiber_stack.eobjs/native -I /home/opam/.opam/4.14/lib/qcheck-core -I /home/opam/.opam/4.14/lib/qcheck-stm/stm -I src_lockfree/.saturn_lockfree.objs/byte -I src_lockfree/.saturn_lockfree.objs/native -I test/stm_run/.stm_run.objs/byte -I test/stm_run/.stm_run.objs/native -intf-suffix .ml -no-alias-deps -opaque -o test/treiber_stack/.stm_treiber_stack.eobjs/native/dune__exe__Stm_treiber_stack.cmx -c -impl test/treiber_stack/stm_treiber_stack.ml)
File "_none_", line 1:
Warning 58 [no-cmx-file]: no cmx file was found in path for module Util, and its interface was not compiled with -opaque
(cd _build/default && /home/opam/.opam/4.14/bin/ocamlopt.opt -w @1..3@5..28@31..39@43@46..47@49..57@61..62@67@69-40 -strict-sequence -strict-formats -short-paths -keep-locs -g -I test/michael_scott_queue/.stm_michael_scott_queue.eobjs/byte -I test/michael_scott_queue/.stm_michael_scott_queue.eobjs/native -I /home/opam/.opam/4.14/lib/qcheck-core -I /home/opam/.opam/4.14/lib/qcheck-stm/stm -I src_lockfree/.saturn_lockfree.objs/byte -I src_lockfree/.saturn_lockfree.objs/native -I test/michael_scott_queue/ms_queues/.ms_queues.objs/byte -I test/michael_scott_queue/ms_queues/.ms_queues.objs/native -I test/stm_run/.stm_run.objs/byte -I test/stm_run/.stm_run.objs/native -intf-suffix .ml -no-alias-deps -opaque -o test/michael_scott_queue/.stm_michael_scott_queue.eobjs/native/dune__exe__Stm_michael_scott_queue.cmx -c -impl test/michael_scott_queue/stm_michael_scott_queue.ml)
File "_none_", line 1:
Warning 58 [no-cmx-file]: no cmx file was found in path for module Util, and its interface was not compiled with -opaque
(cd _build/default && /home/opam/.opam/4.14/bin/ocamlopt.opt -w @1..3@5..28@31..39@43@46..47@49..57@61..62@67@69-40 -strict-sequence -strict-formats -short-paths -keep-locs -g -I test/ws_deque/.test_ws_deque.eobjs/byte -I test/ws_deque/.test_ws_deque.eobjs/native -I /home/opam/.opam/4.14/lib/domain_shims -I src_lockfree/.saturn_lockfree.objs/byte -I src_lockfree/.saturn_lockfree.objs/native -intf-suffix .ml -no-alias-deps -opaque -o test/ws_deque/.test_ws_deque.eobjs/native/dune__exe__Test_ws_deque.cmx -c -impl test/ws_deque/test_ws_deque.ml)
File "_none_", line 1:
Warning 58 [no-cmx-file]: no cmx file was found in path for module Thread, and its interface was not compiled with -opaque
(cd _build/default && /home/opam/.opam/4.14/bin/ocamlopt.opt -w @1..3@5..28@31..39@43@46..47@49..57@61..62@67@69-40 -strict-sequence -strict-formats -short-paths -keep-locs -g -I test/treiber_stack/.qcheck_treiber_stack.eobjs/byte -I test/treiber_stack/.qcheck_treiber_stack.eobjs/native -I /home/opam/.opam/4.14/lib/alcotest -I /home/opam/.opam/4.14/lib/domain_shims -I /home/opam/.opam/4.14/lib/qcheck -I /home/opam/.opam/4.14/lib/qcheck-alcotest -I /home/opam/.opam/4.14/lib/qcheck-core -I src_lockfree/.saturn_lockfree.objs/byte -I src_lockfree/.saturn_lockfree.objs/native -I test/barrier/.barrier.objs/byte -I test/barrier/.barrier.objs/native -intf-suffix .ml -no-alias-deps -opaque -o test/treiber_stack/.qcheck_treiber_stack.eobjs/native/dune__exe__Qcheck_treiber_stack.cmx -c -impl test/treiber_stack/qcheck_treiber_stack.ml)
File "_none_", line 1:
Warning 58 [no-cmx-file]: no cmx file was found in path for module QCheck_base_runner, and its interface was not compiled with -opaque
File "_none_", line 1:
Warning 58 [no-cmx-file]: no cmx file was found in path for module Alcotest_engine__Formatters, and its interface was not compiled with -opaque
File "_none_", line 1:
Warning 58 [no-cmx-file]: no cmx file was found in path for module Alcotest_engine__Config, and its interface was not compiled with -opaque
(cd _build/default && /home/opam/.opam/4.14/bin/ocamlopt.opt -w @1..3@5..28@31..39@43@46..47@49..57@61..62@67@69-40 -strict-sequence -strict-formats -short-paths -keep-locs -g -I test/spsc_queue/.qcheck_spsc_queue.eobjs/byte -I test/spsc_queue/.qcheck_spsc_queue.eobjs/native -I /home/opam/.opam/4.14/lib/alcotest -I /home/opam/.opam/4.14/lib/domain_shims -I /home/opam/.opam/4.14/lib/qcheck -I /home/opam/.opam/4.14/lib/qcheck-alcotest -I /home/opam/.opam/4.14/lib/qcheck-core -I test/barrier/.barrier.objs/byte -I test/barrier/.barrier.objs/native -I test/spsc_queue/spsc_queues/.spsc_queues.objs/byte -I test/spsc_queue/spsc_queues/.spsc_queues.objs/native -intf-suffix .ml -no-alias-deps -opaque -o test/spsc_queue/.qcheck_spsc_queue.eobjs/native/dune__exe__Qcheck_spsc_queue.cmx -c -impl test/spsc_queue/qcheck_spsc_queue.ml)
File "_none_", line 1:
Warning 58 [no-cmx-file]: no cmx file was found in path for module QCheck_base_runner, and its interface was not compiled with -opaque
File "_none_", line 1:
Warning 58 [no-cmx-file]: no cmx file was found in path for module Alcotest_engine__Formatters, and its interface was not compiled with -opaque
File "_none_", line 1:
Warning 58 [no-cmx-file]: no cmx file was found in path for module Alcotest_engine__Config, and its interface was not compiled with -opaque
(cd _build/default && /home/opam/.opam/4.14/bin/ocamlopt.opt -w @1..3@5..28@31..39@43@46..47@49..57@61..62@67@69-40 -strict-sequence -strict-formats -short-paths -keep-locs -g -I test/ws_deque/.qcheck_ws_deque.eobjs/byte -I test/ws_deque/.qcheck_ws_deque.eobjs/native -I /home/opam/.opam/4.14/lib/alcotest -I /home/opam/.opam/4.14/lib/domain_shims -I /home/opam/.opam/4.14/lib/qcheck -I /home/opam/.opam/4.14/lib/qcheck-alcotest -I /home/opam/.opam/4.14/lib/qcheck-core -I src_lockfree/.saturn_lockfree.objs/byte -I src_lockfree/.saturn_lockfree.objs/native -I test/barrier/.barrier.objs/byte -I test/barrier/.barrier.objs/native -intf-suffix .ml -no-alias-deps -opaque -o test/ws_deque/.qcheck_ws_deque.eobjs/native/dune__exe__Qcheck_ws_deque.cmx -c -impl test/ws_deque/qcheck_ws_deque.ml)
File "_none_", line 1:
Warning 58 [no-cmx-file]: no cmx file was found in path for module QCheck_base_runner, and its interface was not compiled with -opaque
File "_none_", line 1:
Warning 58 [no-cmx-file]: no cmx file was found in path for module Alcotest_engine__Formatters, and its interface was not compiled with -opaque
File "_none_", line 1:
Warning 58 [no-cmx-file]: no cmx file was found in path for module Alcotest_engine__Config, and its interface was not compiled with -opaque
(cd _build/default && /home/opam/.opam/4.14/bin/ocamlopt.opt -w @1..3@5..28@31..39@43@46..47@49..57@61..62@67@69-40 -strict-sequence -strict-formats -short-paths -keep-locs -g -I test/michael_scott_queue/.qcheck_michael_scott_queue.eobjs/byte -I test/michael_scott_queue/.qcheck_michael_scott_queue.eobjs/native -I /home/opam/.opam/4.14/lib/alcotest -I /home/opam/.opam/4.14/lib/domain_shims -I /home/opam/.opam/4.14/lib/qcheck -I /home/opam/.opam/4.14/lib/qcheck-alcotest -I /home/opam/.opam/4.14/lib/qcheck-core -I src_lockfree/.saturn_lockfree.objs/byte -I src_lockfree/.saturn_lockfree.objs/native -I test/barrier/.barrier.objs/byte -I test/barrier/.barrier.objs/native -I test/michael_scott_queue/ms_queues/.ms_queues.objs/byte -I test/michael_scott_queue/ms_queues/.ms_queues.objs/native -intf-suffix .ml -no-alias-deps -opaque -o test/michael_scott_queue/.qcheck_michael_scott_queue.eobjs/native/dune__exe__Qcheck_michael_scott_queue.cmx -c -impl test/michael_scott_queue/qcheck_michael_scott_queue.ml)
File "_none_", line 1:
Warning 58 [no-cmx-file]: no cmx file was found in path for module QCheck_base_runner, and its interface was not compiled with -opaque
File "_none_", line 1:
Warning 58 [no-cmx-file]: no cmx file was found in path for module Alcotest_engine__Formatters, and its interface was not compiled with -opaque
File "_none_", line 1:
Warning 58 [no-cmx-file]: no cmx file was found in path for module Alcotest_engine__Config, and its interface was not compiled with -opaque
(cd _build/default && /home/opam/.opam/4.14/bin/ocamlopt.opt -w @1..3@5..28@31..39@43@46..47@49..57@61..62@67@69-40 -strict-sequence -strict-formats -short-paths -keep-locs -g -I test/mpsc_queue/.qcheck_mpsc_queue.eobjs/byte -I test/mpsc_queue/.qcheck_mpsc_queue.eobjs/native -I /home/opam/.opam/4.14/lib/alcotest -I /home/opam/.opam/4.14/lib/domain_shims -I /home/opam/.opam/4.14/lib/qcheck -I /home/opam/.opam/4.14/lib/qcheck-alcotest -I /home/opam/.opam/4.14/lib/qcheck-core -I src_lockfree/.saturn_lockfree.objs/byte -I src_lockfree/.saturn_lockfree.objs/native -I test/barrier/.barrier.objs/byte -I test/barrier/.barrier.objs/native -intf-suffix .ml -no-alias-deps -opaque -o test/mpsc_queue/.qcheck_mpsc_queue.eobjs/native/dune__exe__Qcheck_mpsc_queue.cmx -c -impl test/mpsc_queue/qcheck_mpsc_queue.ml)
File "_none_", line 1:
Warning 58 [no-cmx-file]: no cmx file was found in path for module QCheck_base_runner, and its interface was not compiled with -opaque
File "_none_", line 1:
Warning 58 [no-cmx-file]: no cmx file was found in path for module Alcotest_engine__Formatters, and its interface was not compiled with -opaque
File "_none_", line 1:
Warning 58 [no-cmx-file]: no cmx file was found in path for module Alcotest_engine__Config, and its interface was not compiled with -opaque
(cd _build/default && /home/opam/.opam/4.14/bin/ocamlopt.opt -w @1..3@5..28@31..39@43@46..47@49..57@61..62@67@69-40 -strict-sequence -strict-formats -short-paths -keep-locs -g -I test/mpmc_relaxed_queue/.test_mpmc_relaxed_queue.eobjs/byte -I test/mpmc_relaxed_queue/.test_mpmc_relaxed_queue.eobjs/native -I /home/opam/.opam/4.14/lib/alcotest -I /home/opam/.opam/4.14/lib/domain_shims -I src/.saturn.objs/byte -I src/.saturn.objs/native -I src_lockfree/.saturn_lockfree.objs/byte -I src_lockfree/.saturn_lockfree.objs/native -intf-suffix .ml -no-alias-deps -opaque -o test/mpmc_relaxed_queue/.test_mpmc_relaxed_queue.eobjs/native/dune__exe__Test_mpmc_relaxed_queue.cmx -c -impl test/mpmc_relaxed_queue/test_mpmc_relaxed_queue.ml)
File "_none_", line 1:
Warning 58 [no-cmx-file]: no cmx file was found in path for module Alcotest_engine__Test, and its interface was not compiled with -opaque
File "_none_", line 1:
Warning 58 [no-cmx-file]: no cmx file was found in path for module Alcotest_engine__Core, and its interface was not compiled with -opaque
File "_none_", line 1:
Warning 58 [no-cmx-file]: no cmx file was found in path for module Alcotest_engine__Formatters, and its interface was not compiled with -opaque
File "_none_", line 1:
Warning 58 [no-cmx-file]: no cmx file was found in path for module Alcotest_engine__Config, and its interface was not compiled with -opaque
(cd _build/default && /home/opam/.opam/4.14/bin/ocamlopt.opt -w @1..3@5..28@31..39@43@46..47@49..57@61..62@67@69-40 -strict-sequence -strict-formats -short-paths -keep-locs -g -I test/skiplist/.qcheck_skiplist.eobjs/byte -I test/skiplist/.qcheck_skiplist.eobjs/native -I /home/opam/.opam/4.14/lib/alcotest -I /home/opam/.opam/4.14/lib/domain_shims -I /home/opam/.opam/4.14/lib/qcheck -I /home/opam/.opam/4.14/lib/qcheck-alcotest -I /home/opam/.opam/4.14/lib/qcheck-core -I src_lockfree/.saturn_lockfree.objs/byte -I src_lockfree/.saturn_lockfree.objs/native -I test/barrier/.barrier.objs/byte -I test/barrier/.barrier.objs/native -intf-suffix .ml -no-alias-deps -opaque -o test/skiplist/.qcheck_skiplist.eobjs/native/dune__exe__Qcheck_skiplist.cmx -c -impl test/skiplist/qcheck_skiplist.ml)
File "_none_", line 1:
Warning 58 [no-cmx-file]: no cmx file was found in path for module QCheck_base_runner, and its interface was not compiled with -opaque
File "_none_", line 1:
Warning 58 [no-cmx-file]: no cmx file was found in path for module Alcotest_engine__Formatters, and its interface was not compiled with -opaque
File "_none_", line 1:
Warning 58 [no-cmx-file]: no cmx file was found in path for module Alcotest_engine__Config, and its interface was not compiled with -opaque
(cd _build/default/test/ws_deque && ./stm_ws_deque.exe)
random seed: 4073586555604657620
generated error fail pass / total time test name
[✓] 32 0 0 32 / 32 0.0s Saturn_lockfree.Ws_deque sequential
================================================================================
success (ran 1 tests)
random seed: 338503839716611177
generated error fail pass / total time test name
[✓] 64 0 0 64 / 64 0.0s Saturn_lockfree.Ws_deque sequential
================================================================================
success (ran 1 tests)
random seed: 2489943258692027834
generated error fail pass / total time test name
[✓] 128 0 0 128 / 128 0.0s Saturn_lockfree.Ws_deque sequential
================================================================================
success (ran 1 tests)
random seed: 3325376161792268325
generated error fail pass / total time test name
[✓] 256 0 0 256 / 256 0.0s Saturn_lockfree.Ws_deque sequential
================================================================================
success (ran 1 tests)
random seed: 2899696001036616322
generated error fail pass / total time test name
[✓] 512 0 0 512 / 512 0.0s Saturn_lockfree.Ws_deque sequential
================================================================================
success (ran 1 tests)
random seed: 4462692032247942434
generated error fail pass / total time test name
[✓] 32 0 0 32 / 32 0.0s Saturn_lockfree.Ws_deque sequential
================================================================================
success (ran 1 tests)
(cd _build/default/test/mpsc_queue && ./stm_mpsc_queue.exe)
random seed: 81456887464913560
generated error fail pass / total time test name
[✓] 32 0 0 32 / 32 0.0s Saturn_lockfree.Mpsc_queue sequential
================================================================================
success (ran 1 tests)
random seed: 2593774477608151807
generated error fail pass / total time test name
[✓] 64 0 0 64 / 64 0.0s Saturn_lockfree.Mpsc_queue sequential
================================================================================
success (ran 1 tests)
random seed: 2901013899733224019
generated error fail pass / total time test name
[✓] 128 0 0 128 / 128 0.0s Saturn_lockfree.Mpsc_queue sequential
================================================================================
success (ran 1 tests)
random seed: 2596020468027665166
generated error fail pass / total time test name
[✓] 256 0 0 256 / 256 0.0s Saturn_lockfree.Mpsc_queue sequential
================================================================================
success (ran 1 tests)
random seed: 4300777210821725068
generated error fail pass / total time test name
[✓] 512 0 0 512 / 512 0.0s Saturn_lockfree.Mpsc_queue sequential
================================================================================
success (ran 1 tests)
random seed: 3941111569190274300
generated error fail pass / total time test name
[✓] 32 0 0 32 / 32 0.0s Saturn_lockfree.Mpsc_queue sequential
================================================================================
success (ran 1 tests)
(cd _build/default/test/spsc_queue && ./test_spsc_queue.exe)
test_Spsc_queue_empty: ok
test_Spsc_queue_full: ok
test_Spsc_queue_parallel: ok (transferred = 100)
test_Spsc_queue_unsafe_empty: ok
test_Spsc_queue_unsafe_full: ok
test_Spsc_queue_unsafe_parallel: ok (transferred = 100)
(cd _build/default && /home/opam/.opam/4.14/bin/ocamlopt.opt -w @1..3@5..28@31..39@43@46..47@49..57@61..62@67@69-40 -strict-sequence -strict-formats -short-paths -keep-locs -g -I bench/.main.eobjs/byte -I bench/.main.eobjs/native -I /home/opam/.opam/4.14/lib/domain_shims -I /home/opam/.opam/4.14/lib/multicore-bench -I /home/opam/.opam/4.14/lib/multicore-magic -I src/.saturn.objs/byte -I src/.saturn.objs/native -I src_lockfree/.saturn_lockfree.objs/byte -I src_lockfree/.saturn_lockfree.objs/native -intf-suffix .ml -no-alias-deps -opaque -open Dune__exe -o bench/.main.eobjs/native/dune__exe__Main.cmx -c -impl bench/main.ml)
File "_none_", line 1:
Warning 58 [no-cmx-file]: no cmx file was found in path for module Yojson__Safe, and its interface was not compiled with -opaque
(cd _build/default/test/spsc_queue && ./stm_spsc_queue.exe)
random seed: 3311189673586151015
generated error fail pass / total time test name
[✓] 32 0 0 32 / 32 0.0s Saturn_lockfree.Spsc_queue sequential
================================================================================
success (ran 1 tests)
random seed: 1649627955701114456
generated error fail pass / total time test name
[✓] 64 0 0 64 / 64 0.0s Saturn_lockfree.Spsc_queue sequential
================================================================================
success (ran 1 tests)
random seed: 3263438801958646770
generated error fail pass / total time test name
[✓] 128 0 0 128 / 128 0.0s Saturn_lockfree.Spsc_queue sequential
================================================================================
success (ran 1 tests)
random seed: 2567955698366494055
generated error fail pass / total time test name
[✓] 256 0 0 256 / 256 0.0s Saturn_lockfree.Spsc_queue sequential
================================================================================
success (ran 1 tests)
random seed: 696066393218604851
generated error fail pass / total time test name
[✓] 512 0 0 512 / 512 0.0s Saturn_lockfree.Spsc_queue sequential
================================================================================
success (ran 1 tests)
random seed: 4607629029323814742
generated error fail pass / total time test name
[✓] 32 0 0 32 / 32 0.0s Saturn_lockfree.Spsc_queue sequential
================================================================================
success (ran 1 tests)
random seed: 4401733947154757385
generated error fail pass / total time test name
[✓] 32 0 0 32 / 32 0.0s Saturn_lockfree.Spsc_queue_unsafe sequential
================================================================================
success (ran 1 tests)
random seed: 2232593587964774007
generated error fail pass / total time test name
[✓] 64 0 0 64 / 64 0.0s Saturn_lockfree.Spsc_queue_unsafe sequential
================================================================================
success (ran 1 tests)
random seed: 91516627068221143
generated error fail pass / total time test name
[✓] 128 0 0 128 / 128 0.0s Saturn_lockfree.Spsc_queue_unsafe sequential
================================================================================
success (ran 1 tests)
random seed: 803038341255427682
generated error fail pass / total time test name
[✓] 256 0 0 256 / 256 0.0s Saturn_lockfree.Spsc_queue_unsafe sequential
================================================================================
success (ran 1 tests)
random seed: 572837927316011048
generated error fail pass / total time test name
[✓] 512 0 0 512 / 512 0.0s Saturn_lockfree.Spsc_queue_unsafe sequential
================================================================================
success (ran 1 tests)
random seed: 4210473244424085286
generated error fail pass / total time test name
[✓] 32 0 0 32 / 32 0.0s Saturn_lockfree.Spsc_queue_unsafe sequential
================================================================================
success (ran 1 tests)
(cd _build/default/test/treiber_stack && ./qcheck_treiber_stack.exe)
qcheck random seed: 932682642
Testing `Treiber_stack'.
This run has ID `4MMZMIFU'.
[OK] test_sequential 0 push.
[OK] test_sequential 1 push_pop_until_empty.
[OK] test_sequential 2 lifo.
[OK] one_cons_one_prod 0 parallel.
[OK] two_domains 0 parallel_pop_push.
[OK] two_domains 1 parallel_pop_push_random.
Full test results in `/src/_build/default/test/treiber_stack/_build/_tests/Treiber_stack'.
Test Successful in 2.844s. 6 tests run.
(cd _build/default/test/ws_deque && ./qcheck_ws_deque.exe)
qcheck random seed: 406103105
Testing `Ws_deque'.
This run has ID `KG9G7A5U'.
[OK] one_producer 0 pops_are_in_order.
[OK] one_producer 1 pop_on_empty_deque_rai...
[OK] one_producer_one_stealer 0 steals_are_in_order.
[OK] one_producer_one_stealer 1 parallel_pushes_and_st...
[OK] one_producer_one_stealer 2 parallel_pops_and_steals.
[OK] one_producer_two_stealers 0 parallel_steals.
Full test results in `/src/_build/default/test/ws_deque/_build/_tests/Ws_deque'.
Test Successful in 3.955s. 6 tests run.
(cd _build/default/test/spsc_queue && ./qcheck_spsc_queue.exe)
qcheck random seed: 874757676
Testing `Spsc_queues'.
This run has ID `ZIR1N6M9'.
[OK] Spsc_queue 0 seq_pop_opt_push.
[OK] Spsc_queue 1 seq_pop_push.
[OK] Spsc_queue 2 seq_pop_try_push.
[OK] Spsc_queue 3 par_pop_push.
[OK] Spsc_queue 4 push_full.
[OK] Spsc_queue 5 seq_peek_opt.
[OK] Spsc_queue 6 seq_peek.
[OK] Spsc_queue 7 par_peek_opt.
[OK] Spsc_queue_unsafe 0 seq_pop_opt_push.
[OK] Spsc_queue_unsafe 1 seq_pop_push.
[OK] Spsc_queue_unsafe 2 seq_pop_try_push.
[OK] Spsc_queue_unsafe 3 par_pop_push.
[OK] Spsc_queue_unsafe 4 push_full.
[OK] Spsc_queue_unsafe 5 seq_peek_opt.
[OK] Spsc_queue_unsafe 6 seq_peek.
[OK] Spsc_queue_unsafe 7 par_peek_opt.
Full test results in `/src/_build/default/test/spsc_queue/_build/_tests/Spsc_queues'.
Test Successful in 6.607s. 16 tests run.
(cd _build/default/test/michael_scott_queue && ./qcheck_michael_scott_queue.exe)
qcheck random seed: 826922808
Testing `Michael_scott_queue'.
This run has ID `TYLMCVPJ'.
[OK] test_sequential_safe 0 push.
[OK] test_sequential_safe 1 push_pop_opt_until_empty.
[OK] test_sequential_safe 2 fifo.
[OK] test_sequential_safe 3 fifo_peek_opt.
[OK] one_cons_one_prod_safe 0 parallel_fifo.
[OK] one_cons_one_prod_safe 1 parallel_peek.
[OK] two_domains_safe 0 parallel_pop_opt_push.
[OK] two_domains_safe 1 parallel_pop_opt_push_r...
[OK] test_sequential_unsafe 0 push.
[OK] test_sequential_unsafe 1 push_pop_opt_until_empty.
[OK] test_sequential_unsafe 2 fifo.
[OK] test_sequential_unsafe 3 fifo_peek_opt.
[OK] one_cons_one_prod_unsafe 0 parallel_fifo.
[OK] one_cons_one_prod_unsafe 1 parallel_peek.
[OK] two_domains_unsafe 0 parallel_pop_opt_push.
[OK] two_domains_unsafe 1 parallel_pop_opt_push_r...
Full test results in `/src/_build/default/test/michael_scott_queue/_build/_tests/Michael_scott_queue'.
Test Successful in 6.570s. 16 tests run.
(cd _build/default/test/mpsc_queue && ./qcheck_mpsc_queue.exe)
qcheck random seed: 770654340
Testing `Mpsc_queue'.
This run has ID `EQ4CI42L'.
[OK] one_consumer 0 push_head_pop_opt.
[OK] one_consumer 1 push_head_pop.
[OK] one_consumer 2 push_head_peek_opt.
[OK] one_consumer 3 push_head_peek.
[OK] one_consumer 4 pop_opt_empty.
[OK] one_consumer 5 pop_empty.
[OK] one_consumer 6 peek_opt_empty.
[OK] one_consumer 7 peek_empty.
[OK] one_consumer 8 push_head_not_empty.
[OK] one_consumer 9 close_push_head.
[OK] one_consumer 10 close_is_empty.
[OK] one_consumer 11 close_pop_opt.
[OK] one_consumer 12 pop_opt_order.
[OK] one_consumer 13 seq_push_pop_opt.
[OK] one_producer 0 push_not_empty.
[OK] one_producer 1 closing_prevents_pushing.
[OK] one_cons_one_prod 0 seq_push_pop_opt_peek_opt.
[OK] one_cons_one_prod 1 par_push_pop.
[OK] one_cons_one_prod 2 par_push_push_head.
[OK] one_cons_one_prod 3 par_pop_opt_push2.
[OK] one_cons_two_prod 0 par_push.
[OK] one_cons_two_prod 1 par_push_close_pop_opt.
Full test results in `/src/_build/default/test/mpsc_queue/_build/_tests/Mpsc_queue'.
Test Successful in 8.634s. 22 tests run.
(cd _build/default/test/ws_deque && ./test_ws_deque.exe)
test_exit: ok
test_push_and_pop: ok
test_push_and_steal: ok
test_concurrent_workload: ok (pushed = 100000, popped = 99903, stolen = 97)
(cd _build/default/bench && ./main.exe -brief)
Saturn Relaxed_queue:
messages over time/1 adder, 1 taker (cas):
15.34 M/s
messages over time/1 adder, 1 taker (not lf):
13.80 M/s
messages over time/1 adder, 1 taker (spin):
11.83 M/s
messages over time/1 adder, 2 takers (cas):
7.64 M/s
messages over time/1 adder, 2 takers (not lf):
13.00 M/s
messages over time/1 adder, 2 takers (spin):
5.96 M/s
messages over time/2 adders, 1 taker (cas):
15.24 M/s
messages over time/2 adders, 1 taker (not lf):
14.48 M/s
messages over time/2 adders, 1 taker (spin):
12.11 M/s
messages over time/2 adders, 2 takers (cas):
14.70 M/s
messages over time/2 adders, 2 takers (not lf):
14.10 M/s
messages over time/2 adders, 2 takers (spin):
13.99 M/s
time per message/1 adder, 1 taker (cas):
130.39 ns
time per message/1 adder, 1 taker (not lf):
144.97 ns
time per message/1 adder, 1 taker (spin):
169.09 ns
time per message/1 adder, 2 takers (cas):
392.83 ns
time per message/1 adder, 2 takers (not lf):
230.75 ns
time per message/1 adder, 2 takers (spin):
503.66 ns
time per message/2 adders, 1 taker (cas):
196.81 ns
time per message/2 adders, 1 taker (not lf):
207.23 ns
time per message/2 adders, 1 taker (spin):
247.83 ns
time per message/2 adders, 2 takers (cas):
272.02 ns
time per message/2 adders, 2 takers (not lf):
283.59 ns
time per message/2 adders, 2 takers (spin):
294.94 ns
Saturn_lockfree Cue:
messages over time/1 nb adder, 1 nb taker:
23.26 M/s
messages over time/1 nb adder, 2 nb takers:
21.55 M/s
messages over time/2 nb adders, 1 nb taker:
25.77 M/s
messages over time/2 nb adders, 2 nb takers:
21.45 M/s
messages over time/one domain:
14.60 M/s
time per message/1 nb adder, 1 nb taker:
86.00 ns
time per message/1 nb adder, 2 nb takers:
139.18 ns
time per message/2 nb adders, 1 nb taker:
116.42 ns
time per message/2 nb adders, 2 nb takers:
186.50 ns
time per message/one domain:
68.50 ns
Saturn_lockfree Queue:
messages over time/1 nb adder, 1 nb taker:
26.04 M/s
messages over time/1 nb adder, 2 nb takers:
23.64 M/s
messages over time/2 nb adders, 1 nb taker:
25.81 M/s
messages over time/2 nb adders, 2 nb takers:
21.64 M/s
messages over time/one domain:
14.81 M/s
time per message/1 nb adder, 1 nb taker:
76.79 ns
time per message/1 nb adder, 2 nb takers:
126.90 ns
time per message/2 nb adders, 1 nb taker:
116.25 ns
time per message/2 nb adders, 2 nb takers:
184.84 ns
time per message/one domain:
67.54 ns
Saturn_lockfree Single_prod_single_cons_queue:
messages over time/2 workers, capacity 1:
0.08 M/s
messages over time/2 workers, capacity 1 (unsafe):
0.04 M/s
messages over time/2 workers, capacity 32768:
20.64 M/s
messages over time/2 workers, capacity 32768 (unsafe):
36.84 M/s
messages over time/2 workers, capacity 4096:
18.35 M/s
messages over time/2 workers, capacity 4096 (unsafe):
26.51 M/s
messages over time/2 workers, capacity 512:
12.53 M/s
messages over time/2 workers, capacity 512 (unsafe):
16.71 M/s
messages over time/2 workers, capacity 64:
3.70 M/s
messages over time/2 workers, capacity 64 (unsafe):
3.75 M/s
messages over time/2 workers, capacity 8:
0.60 M/s
messages over time/2 workers, capacity 8 (unsafe):
0.64 M/s
time per message/2 workers, capacity 1:
26211.15 ns
time per message/2 workers, capacity 1 (unsafe):
44971.68 ns
time per message/2 workers, capacity 32768:
96.91 ns
time per message/2 workers, capacity 32768 (unsafe):
54.29 ns
time per message/2 workers, capacity 4096:
108.97 ns
time per message/2 workers, capacity 4096 (unsafe):
75.44 ns
time per message/2 workers, capacity 512:
159.63 ns
time per message/2 workers, capacity 512 (unsafe):
119.72 ns
time per message/2 workers, capacity 64:
540.21 ns
time per message/2 workers, capacity 64 (unsafe):
533.60 ns
time per message/2 workers, capacity 8:
3333.55 ns
time per message/2 workers, capacity 8 (unsafe):
3105.59 ns
Saturn_lockfree Size:
operations over time/1 worker:
23.78 M/s
operations over time/2 workers:
25.40 M/s
operations over time/4 workers:
30.92 M/s
time per operation/1 worker:
42.05 ns
time per operation/2 workers:
78.74 ns
time per operation/4 workers:
129.37 ns
Saturn_lockfree Skiplist:
operations over time/1 workers, 10% mem 45% add 45% rem:
1.06 M/s
operations over time/1 workers, 50% mem 25% add 25% rem:
1.25 M/s
operations over time/1 workers, 90% mem 5% add 5% rem:
1.73 M/s
operations over time/2 workers, 10% mem 45% add 45% rem:
1.00 M/s
operations over time/2 workers, 50% mem 25% add 25% rem:
0.89 M/s
operations over time/2 workers, 90% mem 5% add 5% rem:
1.45 M/s
operations over time/4 workers, 10% mem 45% add 45% rem:
0.97 M/s
operations over time/4 workers, 50% mem 25% add 25% rem:
0.68 M/s
operations over time/4 workers, 90% mem 5% add 5% rem:
1.72 M/s
time per operation/1 workers, 10% mem 45% add 45% rem:
940.67 ns
time per operation/1 workers, 50% mem 25% add 25% rem:
802.68 ns
time per operation/1 workers, 90% mem 5% add 5% rem:
579.40 ns
time per operation/2 workers, 10% mem 45% add 45% rem:
1997.94 ns
time per operation/2 workers, 50% mem 25% add 25% rem:
2258.14 ns
time per operation/2 workers, 90% mem 5% add 5% rem:
1375.43 ns
time per operation/4 workers, 10% mem 45% add 45% rem:
4128.22 ns
time per operation/4 workers, 50% mem 25% add 25% rem:
5896.39 ns
time per operation/4 workers, 90% mem 5% add 5% rem:
2331.49 ns
Saturn_lockfree Stack:
messages over time/1 adder, 1 taker:
33.47 M/s
messages over time/1 adder, 2 takers:
28.29 M/s
messages over time/2 adders, 1 taker:
38.03 M/s
messages over time/2 adders, 2 takers:
27.12 M/s
messages over time/one domain:
24.48 M/s
time per message/1 adder, 1 taker:
59.75 ns
time per message/1 adder, 2 takers:
106.05 ns
time per message/2 adders, 1 taker:
78.89 ns
time per message/2 adders, 2 takers:
147.50 ns
time per message/one domain:
40.86 ns
Saturn_lockfree Work_stealing_deque:
messages over time/1 adder, 1 taker:
11.89 M/s
messages over time/1 adder, 2 takers:
9.62 M/s
messages over time/1 adder, 4 takers:
10.45 M/s
messages over time/one domain (FIFO):
9.85 M/s
messages over time/one domain (LIFO):
8.84 M/s
spawns over time/1 worker:
4.83 M/s
spawns over time/2 workers:
4.14 M/s
spawns over time/4 workers:
5.44 M/s
spawns over time/8 workers:
4.51 M/s
time per message/1 adder, 1 taker:
168.20 ns
time per message/1 adder, 2 takers:
311.82 ns
time per message/1 adder, 4 takers:
478.28 ns
time per message/one domain (FIFO):
101.55 ns
time per message/one domain (LIFO):
113.12 ns
time per spawn/1 worker:
207.15 ns
time per spawn/2 workers:
483.36 ns
time per spawn/4 workers:
735.74 ns
time per spawn/8 workers:
1773.79 ns
(cd _build/default/test/skiplist && ./qcheck_skiplist.exe)
qcheck random seed: 363912886
Testing `QCheck Skiplist'.
This run has ID `OF613LHC'.
[OK] test_sequential 0 add.
[OK] test_sequential 1 add_remove.
[OK] test_sequential 2 add_find.
[OK] test_sequential 3 add_remove_find.
[OK] tests_two_domains 0 parallel_add.
[OK] tests_two_domains 1 parallel_add_remove.
[OK] tests_two_domains 2 parallel_add_remove_same_list.
Full test results in `/src/_build/default/test/skiplist/_build/_tests/QCheck Skiplist'.
Test Successful in 47.603s. 7 tests run.
(cd _build/default/test/size && ./stm_size.exe)
random seed: 3564218993068893384
generated error fail pass / total time test name
[✓] 32 0 0 32 / 32 0.0s Saturn_lockfree.Size sequential
[✓] 32 0 0 32 / 32 22.5s Saturn_lockfree.Size concurrent
================================================================================
success (ran 2 tests)
random seed: 1289257423654142550
generated error fail pass / total time test name
[✓] 53 0 0 53 / 53 0.0s Saturn_lockfree.Size sequential
[✓] 53 0 0 53 / 53 37.8s Saturn_lockfree.Size concurrent
================================================================================
success (ran 2 tests)
(cd _build/default/test/treiber_stack && ./stm_treiber_stack.exe)
random seed: 3281758426548130319
generated error fail pass / total time test name
[✓] 32 0 0 32 / 32 0.0s Saturn_lockfree.Treiber_stack sequential
[✓] 32 0 0 32 / 32 19.1s Saturn_lockfree.Treiber_stack concurrent
================================================================================
success (ran 2 tests)
random seed: 4182081760318778398
generated error fail pass / total time test name
[✓] 64 0 0 64 / 64 0.0s Saturn_lockfree.Treiber_stack sequential
[✓] 64 0 0 64 / 64 35.5s Saturn_lockfree.Treiber_stack concurrent
================================================================================
success (ran 2 tests)
random seed: 3495226779111322974
generated error fail pass / total time test name
[✓] 32 0 0 32 / 32 0.0s Saturn_lockfree.Treiber_stack sequential
[✓] 32 0 0 32 / 32 20.7s Saturn_lockfree.Treiber_stack concurrent
================================================================================
success (ran 2 tests)
(cd _build/default/test/skiplist && ./stm_skiplist.exe)
random seed: 382070633051327813
generated error fail pass / total time test name
[✓] 32 0 0 32 / 32 0.0s Lockfree.Skiplist sequential
[✓] 32 0 0 32 / 32 21.2s Lockfree.Skiplist concurrent
================================================================================
success (ran 2 tests)
random seed: 2247580795015144946
generated error fail pass / total time test name
[✓] 58 0 0 58 / 58 0.0s Lockfree.Skiplist sequential
[✓] 58 0 0 58 / 58 36.3s Lockfree.Skiplist concurrent
================================================================================
success (ran 2 tests)
random seed: 2930165487981693093
generated error fail pass / total time test name
[✓] 32 0 0 32 / 32 0.0s Lockfree.Skiplist sequential
[✓] 32 0 0 32 / 32 18.6s Lockfree.Skiplist concurrent
================================================================================
success (ran 2 tests)
(cd _build/default/test/cue && ./stm_cue.exe --verbose)
random seed: 3155449909999535602
generated error fail pass / total time test name
[✓] 32 0 0 32 / 32 0.0s Saturn_lockfree.Cue sequential
[✓] 32 0 0 32 / 32 18.8s Saturn_lockfree.Cue concurrent
================================================================================
success (ran 2 tests)
random seed: 217188722428885479
generated error fail pass / total time test name
[✓] 64 0 0 64 / 64 0.0s Saturn_lockfree.Cue sequential
[✓] 64 0 0 64 / 64 41.1s Saturn_lockfree.Cue concurrent
================================================================================
success (ran 2 tests)
random seed: 4529082674537208757
generated error fail pass / total time test name
[✓] 32 0 0 32 / 32 0.0s Saturn_lockfree.Cue sequential
[✓] 32 0 0 32 / 32 18.1s Saturn_lockfree.Cue concurrent
================================================================================
success (ran 2 tests)
(cd _build/default/test/mpmc_relaxed_queue && ./test_mpmc_relaxed_queue.exe)
Testing `Mpmc_queue'.
This run has ID `CP6CJ2DY'.
[OK] single-thread 0 is it a queue.
[OK] validate items 0 1 prod. 1 cons.
[OK] validate indices under load 0 4 prod. 4 cons.
[OK] validate indices under load 1 8 prod. 1 cons.
[OK] validate indices under load 2 1 prod. 8 cons.
[OK] single-thread-CAS-intf 0 is it a queue.
[OK] validate items-CAS-intf 0 1 prod. 1 cons.
[OK] single-thread-spinning 0 is it a queue.
[OK] validate-items-spinning 0 1 prod. 1 cons.
Full test results in `/src/_build/default/test/mpmc_relaxed_queue/_build/_tests/Mpmc_queue'.
Test Successful in 119.660s. 9 tests run.
(cd _build/default/test/michael_scott_queue && ./stm_michael_scott_queue.exe)
random seed: 2416244803715536843
generated error fail pass / total time test name
[✓] 32 0 0 32 / 32 0.0s Saturn_lockfree.michael_scott_queue_safe sequential
[ ] 7
[✓] 32 0 0 32 / 32 19.5s Saturn_lockfree.michael_scott_queue_safe concurrent
================================================================================
success (ran 2 tests)
random seed: 2055473289974993040
generated error fail pass / total time test name
[✓] 64 0 0 64 / 64 0.0s Saturn_lockfree.michael_scott_queue_safe sequential
[✓] 64 0 0 64 / 64 35.0s Saturn_lockfree.michael_scott_queue_safe concurrent
================================================================================
success (ran 2 tests)
random seed: 474230723214556372
generated error fail pass / total time test name
[✓] 32 0 0 32 / 32 0.0s Saturn_lockfree.michael_scott_queue_safe sequential
[✓] 32 0 0 32 / 32 22.5s Saturn_lockfree.michael_scott_queue_safe concurrent
================================================================================
success (ran 2 tests)
random seed: 2683096901221116483
generated error fail pass / total time test name
[✓] 32 0 0 32 / 32 0.0s Saturn_lockfree.michael_scott_queue_unsafe sequential
[✓] 32 0 0 32 / 32 30.4s Saturn_lockfree.michael_scott_queue_unsafe concurrent
================================================================================
success (ran 2 tests)
random seed: 2988933015335863305
generated error fail pass / total time test name
[✓] 32 0 0 32 / 32 0.0s Saturn_lockfree.michael_scott_queue_unsafe sequential
[✓] 32 0 0 32 / 32 15.3s Saturn_lockfree.michael_scott_queue_unsafe concurrent
================================================================================
success (ran 2 tests)
random seed: 2190083427340157852
generated error fail pass / total time test name
[✓] 32 0 0 32 / 32 0.0s Saturn_lockfree.michael_scott_queue_unsafe sequential
[✓] 32 0 0 32 / 32 8.7s Saturn_lockfree.michael_scott_queue_unsafe concurrent
================================================================================
success (ran 2 tests)
random seed: 1239224191490133621
generated error fail pass / total time test name
[✓] 32 0 0 32 / 32 0.0s Saturn_lockfree.michael_scott_queue_unsafe sequential
[✓] 32 0 0 32 / 32 26.7s Saturn_lockfree.michael_scott_queue_unsafe concurrent
================================================================================
success (ran 2 tests)
2024-10-18 17:31.19 ---> saved as "ee147903f0138b858880713b99d44c2827e42ecdfb99441e6123034425948b95"
Job succeeded
2024-10-18 17:31.20: Job succeeded