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-11-4.14_opam-2.2)
Base: ocaml/opam:debian-11-ocaml-4.14@sha256:9527dd00bf4eab25165c3b12cbeded615485468c37dee117128cc32409dac96a
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-11-ocaml-4.14@sha256:9527dd00bf4eab25165c3b12cbeded615485468c37dee117128cc32409dac96a
# debian-11-4.14_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-base-compiler.4.14.2 ocaml-config.2 ocaml-options-vanilla.1 ocaml-syntax-shims.1.0.0 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-11-ocaml-4.14@sha256:9527dd00bf4eab25165c3b12cbeded615485468c37dee117128cc32409dac96a-debian-11-4.14_opam-2.2-ac3cb0c5f51dbc1b1e8c7a96c12b9029"
2024-10-18 17:20.57: Using OBuilder spec:
((from ocaml/opam:debian-11-ocaml-4.14@sha256:9527dd00bf4eab25165c3b12cbeded615485468c37dee117128cc32409dac96a)
(comment debian-11-4.14_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-base-compiler.4.14.2 ocaml-config.2 ocaml-options-vanilla.1 ocaml-syntax-shims.1.0.0 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-c12.sw.ocaml.org
All commits already cached
HEAD is now at 72af6bf A lock-free bounded queue
(from ocaml/opam:debian-11-ocaml-4.14@sha256:9527dd00bf4eab25165c3b12cbeded615485468c37dee117128cc32409dac96a)
2024-10-18 17:20.57 ---> using "384ac898cf0f8783bbc9d68b7d566c484d7f556b64eb46ddfa3d9bca0272dca4" from cache
/: (comment debian-11-4.14_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:20.57 ---> using "24de693298e9d3534f3a5fb75eba169ecdc49a8a429d746a1043c73940f3c7a0" 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.
Continue? [y/n] y
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.
[NOTE] The 'jobs' option was reset, its value was 31 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=31 --global
Format upgrade done.
<><> Updating repositories ><><><><><><><><><><><><><><><><><><><><><><><><><><>
[default] synchronised from file:///home/opam/opam-repository
2024-10-18 17:20.57 ---> using "b9648b6bb552c6f850f43a92b88cbf5b7d69bc6a79d477c26abc63a8455675b9" from cache
/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:20.57 ---> using "18f0d60edc22256829121c71482c59fb0004bee188c307b92957484533e7cccd" from cache
/src: (workdir /src)
/src: (run (shell "sudo chown opam /src"))
2024-10-18 17:20.57 ---> using "adcec65c1c7321963685c584fafda98dfefc95ae36fe889b60b3d4b585f31869" from cache
/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:22.02 ---> saved as "be003288f3eda38ee657d73aaff25db9136bdec50206904fb8649c3e06c78354"
/src: (copy (src saturn_lockfree.opam saturn.opam) (dst ./))
2024-10-18 17:22.02 ---> saved as "77a8e9799c1cf81ef9ba2a8b31f5d8f03c094dd9f7e90ba1ef515762876a7e19"
/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:22.06 ---> saved as "9b6e6b5e1f7a5c63d0ca3cd5c802b1afae23c6b083c97e716ca2eec82feabaa0"
/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-base-compiler.4.14.2 ocaml-config.2 ocaml-options-vanilla.1 ocaml-syntax-shims.1.0.0 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 bullseye InRelease
- Get:2 http://deb.debian.org/debian-security bullseye-security InRelease [27.2 kB]
- Get:3 http://deb.debian.org/debian bullseye-updates InRelease [44.1 kB]
- Get:4 http://deb.debian.org/debian-security bullseye-security/main amd64 Packages [303 kB]
- Fetched 374 kB in 0s (1092 kB/s)
- Reading package lists...
-
<><> Synchronising pinned packages ><><><><><><><><><><><><><><><><><><><><><><>
[saturn.dev] synchronised (no changes)
[saturn_lockfree.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 2).
[NOTE] Package ocaml-base-compiler is already installed (current version is 4.14.2).
[NOTE] Package ocaml is already installed (current version is 4.14.2).
[NOTE] Package 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:22.23 ---> saved as "3586748cbc87148483cf1cdaae990b8dd4d6b8eb3ded003df8b21e144e5582c3"
/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 2).
[NOTE] Package ocaml-base-compiler is already installed (current version is 4.14.2).
[NOTE] Package ocaml is already installed (current version is 4.14.2).
[NOTE] Package 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 csexp.1.5.2 (cached)
-> retrieved alcotest.1.8.0 (cached)
-> retrieved containers.3.14 (cached)
-> retrieved domain-local-await.1.0.1 (cached)
-> retrieved domain_shims.0.1.0 (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 dune.3.16.0, dune-configurator.3.16.0 (cached)
-> retrieved topkg.1.0.7 (cached)
-> retrieved tsort.2.1.0 (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 mtime.2.1.0
-> installed uutf.1.0.3
-> installed fmt.0.9.0
-> installed astring.0.8.5
-> installed dune.3.16.0
-> installed domain_shims.0.1.0
-> installed csexp.1.5.2
-> installed backoff.0.1.1
-> installed either.1.0.0
-> installed multicore-magic.2.3.0
-> installed ocaml-syntax-shims.1.0.0
-> installed oseq.0.5.1
-> installed re.1.12.0
-> installed stdlib-shims.0.3.0
-> installed thread-local-storage.0.2
-> installed qcheck-core.0.22
-> installed thread-table.1.0.0
-> installed tsort.2.1.0
-> installed yojson.2.2.2
-> installed domain-local-await.1.0.1
-> installed picos.0.5.0
-> installed qcheck-multicoretests-util.0.4
-> installed qcheck-stm.0.4
-> installed alcotest.1.8.0
-> installed ounit2.2.2.7
-> installed multicore-bench.0.1.7
-> installed qcheck-alcotest.0.22
-> installed qcheck-ounit.0.22
-> installed qcheck.0.22
-> installed dune-configurator.3.16.0
-> 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:23.17 ---> saved as "48db27839b4cfe3a1ddf7f7b6e279a13705da059f1d2e29fba646aef4728fe7b"
/src: (copy (src .) (dst /src))
2024-10-18 17:23.17 ---> saved as "9953892f6bacae6f6d0d758baa473b104bd2fa5f4cd12553ee3e62da838e458f"
/src: (run (shell "opam exec -- dune build @install @check @runtest && rm -rf _build"))
(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/test/ws_deque && ./stm_ws_deque.exe)
random seed: 2634817944065090727
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: 3671872791338100858
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: 4557596577949143950
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: 653011781634656617
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: 2891509871820325586
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: 1722607673426581812
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: 3606192342069076176
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: 422956772932696138
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: 1126446598479871635
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: 2263914793079550280
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: 3347366172298679414
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: 2311837997717960539
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 && ./stm_spsc_queue.exe)
random seed: 1511902146970770002
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: 4264309324449377073
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: 2251647633795393495
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: 501584641734110607
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: 1835290659117967464
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: 3373734914362139700
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: 209786192995126229
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: 2308197497909425875
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: 1049093683395651371
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: 3963810073805721871
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: 305110054348460930
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: 1873468834005235187
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: 222857415
Testing `Treiber_stack'.
This run has ID `8JMHZMY2'.
[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 0.058s. 6 tests run.
(cd _build/default/test/ws_deque && ./qcheck_ws_deque.exe)
qcheck random seed: 333684666
Testing `Ws_deque'.
This run has ID `MLNUGJ18'.
[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 0.190s. 6 tests run.
(cd _build/default/test/michael_scott_queue && ./qcheck_michael_scott_queue.exe)
qcheck random seed: 106423043
Testing `Michael_scott_queue'.
This run has ID `DGEXDYWI'.
[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 0.216s. 16 tests run.
(cd _build/default/test/spsc_queue && ./qcheck_spsc_queue.exe)
qcheck random seed: 476206774
Testing `Spsc_queues'.
This run has ID `BYPV7RA2'.
[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 0.618s. 16 tests run.
(cd _build/default/test/skiplist && ./qcheck_skiplist.exe)
qcheck random seed: 877063556
Testing `QCheck Skiplist'.
This run has ID `HSDIDNFA'.
[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 1.710s. 7 tests run.
(cd _build/default/test/mpsc_queue && ./qcheck_mpsc_queue.exe)
qcheck random seed: 190679013
Testing `Mpsc_queue'.
This run has ID `VCABL7NZ'.
[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 2.149s. 22 tests run.
(cd _build/default/bench && ./main.exe -brief)
Saturn Relaxed_queue:
messages over time/1 adder, 1 taker (cas):
15.06 M/s
messages over time/1 adder, 1 taker (not lf):
14.48 M/s
messages over time/1 adder, 1 taker (spin):
10.49 M/s
messages over time/1 adder, 2 takers (cas):
11.79 M/s
messages over time/1 adder, 2 takers (not lf):
12.51 M/s
messages over time/1 adder, 2 takers (spin):
10.93 M/s
messages over time/2 adders, 1 taker (cas):
13.41 M/s
messages over time/2 adders, 1 taker (not lf):
12.78 M/s
messages over time/2 adders, 1 taker (spin):
10.43 M/s
messages over time/2 adders, 2 takers (cas):
15.63 M/s
messages over time/2 adders, 2 takers (not lf):
15.96 M/s
messages over time/2 adders, 2 takers (spin):
9.52 M/s
time per message/1 adder, 1 taker (cas):
132.76 ns
time per message/1 adder, 1 taker (not lf):
138.10 ns
time per message/1 adder, 1 taker (spin):
190.69 ns
time per message/1 adder, 2 takers (cas):
254.55 ns
time per message/1 adder, 2 takers (not lf):
239.81 ns
time per message/1 adder, 2 takers (spin):
274.44 ns
time per message/2 adders, 1 taker (cas):
223.71 ns
time per message/2 adders, 1 taker (not lf):
234.69 ns
time per message/2 adders, 1 taker (spin):
287.68 ns
time per message/2 adders, 2 takers (cas):
255.96 ns
time per message/2 adders, 2 takers (not lf):
250.59 ns
time per message/2 adders, 2 takers (spin):
420.36 ns
Saturn_lockfree Cue:
messages over time/1 nb adder, 1 nb taker:
23.96 M/s
messages over time/1 nb adder, 2 nb takers:
18.79 M/s
messages over time/2 nb adders, 1 nb taker:
29.01 M/s
messages over time/2 nb adders, 2 nb takers:
23.76 M/s
messages over time/one domain:
13.60 M/s
time per message/1 nb adder, 1 nb taker:
83.48 ns
time per message/1 nb adder, 2 nb takers:
159.67 ns
time per message/2 nb adders, 1 nb taker:
103.42 ns
time per message/2 nb adders, 2 nb takers:
168.32 ns
time per message/one domain:
73.54 ns
Saturn_lockfree Queue:
messages over time/1 nb adder, 1 nb taker:
23.41 M/s
messages over time/1 nb adder, 2 nb takers:
20.27 M/s
messages over time/2 nb adders, 1 nb taker:
23.50 M/s
messages over time/2 nb adders, 2 nb takers:
20.57 M/s
messages over time/one domain:
14.90 M/s
time per message/1 nb adder, 1 nb taker:
85.44 ns
time per message/1 nb adder, 2 nb takers:
147.99 ns
time per message/2 nb adders, 1 nb taker:
127.64 ns
time per message/2 nb adders, 2 nb takers:
194.49 ns
time per message/one domain:
67.10 ns
Saturn_lockfree Single_prod_single_cons_queue:
messages over time/2 workers, capacity 1:
0.06 M/s
messages over time/2 workers, capacity 1 (unsafe):
0.08 M/s
messages over time/2 workers, capacity 32768:
17.35 M/s
messages over time/2 workers, capacity 32768 (unsafe):
36.85 M/s
messages over time/2 workers, capacity 4096:
15.19 M/s
messages over time/2 workers, capacity 4096 (unsafe):
27.60 M/s
messages over time/2 workers, capacity 512:
11.41 M/s
messages over time/2 workers, capacity 512 (unsafe):
14.47 M/s
messages over time/2 workers, capacity 64:
3.58 M/s
messages over time/2 workers, capacity 64 (unsafe):
4.40 M/s
messages over time/2 workers, capacity 8:
0.52 M/s
messages over time/2 workers, capacity 8 (unsafe):
0.63 M/s
time per message/2 workers, capacity 1:
32595.18 ns
time per message/2 workers, capacity 1 (unsafe):
24681.66 ns
time per message/2 workers, capacity 32768:
115.28 ns
time per message/2 workers, capacity 32768 (unsafe):
54.28 ns
time per message/2 workers, capacity 4096:
131.66 ns
time per message/2 workers, capacity 4096 (unsafe):
72.45 ns
time per message/2 workers, capacity 512:
175.30 ns
time per message/2 workers, capacity 512 (unsafe):
138.22 ns
time per message/2 workers, capacity 64:
558.13 ns
time per message/2 workers, capacity 64 (unsafe):
454.55 ns
time per message/2 workers, capacity 8:
3843.33 ns
time per message/2 workers, capacity 8 (unsafe):
3165.89 ns
Saturn_lockfree Size:
operations over time/1 worker:
19.41 M/s
operations over time/2 workers:
19.48 M/s
operations over time/4 workers:
21.83 M/s
time per operation/1 worker:
51.52 ns
time per operation/2 workers:
102.66 ns
time per operation/4 workers:
183.25 ns
Saturn_lockfree Skiplist:
operations over time/1 workers, 10% mem 45% add 45% rem:
1.43 M/s
operations over time/1 workers, 50% mem 25% add 25% rem:
1.08 M/s
operations over time/1 workers, 90% mem 5% add 5% rem:
2.02 M/s
operations over time/2 workers, 10% mem 45% add 45% rem:
1.37 M/s
operations over time/2 workers, 50% mem 25% add 25% rem:
1.68 M/s
operations over time/2 workers, 90% mem 5% add 5% rem:
1.80 M/s
operations over time/4 workers, 10% mem 45% add 45% rem:
1.01 M/s
operations over time/4 workers, 50% mem 25% add 25% rem:
1.56 M/s
operations over time/4 workers, 90% mem 5% add 5% rem:
1.34 M/s
time per operation/1 workers, 10% mem 45% add 45% rem:
698.16 ns
time per operation/1 workers, 50% mem 25% add 25% rem:
928.92 ns
time per operation/1 workers, 90% mem 5% add 5% rem:
495.98 ns
time per operation/2 workers, 10% mem 45% add 45% rem:
1458.89 ns
time per operation/2 workers, 50% mem 25% add 25% rem:
1193.97 ns
time per operation/2 workers, 90% mem 5% add 5% rem:
1108.72 ns
time per operation/4 workers, 10% mem 45% add 45% rem:
3964.34 ns
time per operation/4 workers, 50% mem 25% add 25% rem:
2562.87 ns
time per operation/4 workers, 90% mem 5% add 5% rem:
2980.57 ns
Saturn_lockfree Stack:
messages over time/1 adder, 1 taker:
32.55 M/s
messages over time/1 adder, 2 takers:
30.73 M/s
messages over time/2 adders, 1 taker:
35.07 M/s
messages over time/2 adders, 2 takers:
29.76 M/s
messages over time/one domain:
18.71 M/s
time per message/1 adder, 1 taker:
61.44 ns
time per message/1 adder, 2 takers:
97.63 ns
time per message/2 adders, 1 taker:
85.54 ns
time per message/2 adders, 2 takers:
134.43 ns
time per message/one domain:
53.44 ns
Saturn_lockfree Work_stealing_deque:
messages over time/1 adder, 1 taker:
10.89 M/s
messages over time/1 adder, 2 takers:
9.95 M/s
messages over time/1 adder, 4 takers:
9.65 M/s
messages over time/one domain (FIFO):
10.09 M/s
messages over time/one domain (LIFO):
9.88 M/s
spawns over time/1 worker:
8.54 M/s
spawns over time/2 workers:
7.44 M/s
spawns over time/4 workers:
9.30 M/s
spawns over time/8 workers:
7.67 M/s
time per message/1 adder, 1 taker:
183.61 ns
time per message/1 adder, 2 takers:
301.54 ns
time per message/1 adder, 4 takers:
518.33 ns
time per message/one domain (FIFO):
99.14 ns
time per message/one domain (LIFO):
101.18 ns
time per spawn/1 worker:
117.10 ns
time per spawn/2 workers:
268.90 ns
time per spawn/4 workers:
430.01 ns
time per spawn/8 workers:
1043.66 ns
(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 = 99915, stolen = 85)
(cd _build/default/test/treiber_stack && ./stm_treiber_stack.exe)
random seed: 965660854311518000
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 2.8s Saturn_lockfree.Treiber_stack concurrent
================================================================================
success (ran 2 tests)
random seed: 2000917602550755089
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 4.5s Saturn_lockfree.Treiber_stack concurrent
================================================================================
success (ran 2 tests)
random seed: 3958750915078126149
generated error fail pass / total time test name
[✓] 128 0 0 128 / 128 0.0s Saturn_lockfree.Treiber_stack sequential
[✓] 128 0 0 128 / 128 87.5s Saturn_lockfree.Treiber_stack concurrent
================================================================================
success (ran 2 tests)
(cd _build/default/test/size && ./stm_size.exe)
random seed: 2025963443707859885
generated error fail pass / total time test name
[✓] 32 0 0 32 / 32 0.0s Saturn_lockfree.Size sequential
[✓] 32 0 0 32 / 32 2.4s Saturn_lockfree.Size concurrent
================================================================================
success (ran 2 tests)
random seed: 4555709052056227309
generated error fail pass / total time test name
[✓] 64 0 0 64 / 64 0.0s Saturn_lockfree.Size sequential
[✓] 64 0 0 64 / 64 10.3s Saturn_lockfree.Size concurrent
================================================================================
success (ran 2 tests)
random seed: 528929618264375860
generated error fail pass / total time test name
[✓] 128 0 0 128 / 128 0.0s Saturn_lockfree.Size sequential
[✓] 128 0 0 128 / 128 89.4s Saturn_lockfree.Size concurrent
================================================================================
success (ran 2 tests)
(cd _build/default/test/cue && ./stm_cue.exe --verbose)
random seed: 2720033399659856523
generated error fail pass / total time test name
[✓] 32 0 0 32 / 32 0.0s Saturn_lockfree.Cue sequential
[✓] 32 0 0 32 / 32 2.7s Saturn_lockfree.Cue concurrent
================================================================================
success (ran 2 tests)
random seed: 1273804520116717117
generated error fail pass / total time test name
[✓] 64 0 0 64 / 64 0.0s Saturn_lockfree.Cue sequential
[✓] 64 0 0 64 / 64 4.4s Saturn_lockfree.Cue concurrent
================================================================================
success (ran 2 tests)
random seed: 3865887268588184861
generated error fail pass / total time test name
[✓] 128 0 0 128 / 128 0.0s Saturn_lockfree.Cue sequential
[✓] 128 0 0 128 / 128 97.7s Saturn_lockfree.Cue concurrent
================================================================================
success (ran 2 tests)
(cd _build/default/test/skiplist && ./stm_skiplist.exe)
random seed: 670225244668995745
generated error fail pass / total time test name
[✓] 32 0 0 32 / 32 0.0s Lockfree.Skiplist sequential
[✓] 32 0 0 32 / 32 3.1s Lockfree.Skiplist concurrent
================================================================================
success (ran 2 tests)
random seed: 2948585012187075483
generated error fail pass / total time test name
[✓] 64 0 0 64 / 64 0.0s Lockfree.Skiplist sequential
[✓] 64 0 0 64 / 64 5.6s Lockfree.Skiplist concurrent
================================================================================
success (ran 2 tests)
random seed: 3372831557679320041
generated error fail pass / total time test name
[✓] 128 0 0 128 / 128 0.0s Lockfree.Skiplist sequential
[✓] 128 0 0 128 / 128 98.1s Lockfree.Skiplist concurrent
================================================================================
success (ran 2 tests)
(cd _build/default/test/mpmc_relaxed_queue && ./test_mpmc_relaxed_queue.exe)
Testing `Mpmc_queue'.
This run has ID `CZXY3ABL'.
[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 126.703s. 9 tests run.
(cd _build/default/test/michael_scott_queue && ./stm_michael_scott_queue.exe)
random seed: 4093813061035974946
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 4.4s Saturn_lockfree.michael_scott_queue_safe concurrent
================================================================================
success (ran 2 tests)
random seed: 2152246142644757364
generated error fail pass / total time test name
[✓] 64 0 0 64 / 64 0.0s Saturn_lockfree.michael_scott_queue_safe sequential
[ ] 0 0 0 0 /
[✓] 64 0 0 64 / 64 18.9s Saturn_lockfree.michael_scott_queue_safe concurrent
================================================================================
success (ran 2 tests)
random seed: 767206623808321798
generated error fail pass / total time test name
[✓] 128 0 0 128 / 128 0.0s Saturn_lockfree.michael_scott_queue_safe sequential
[✓] 128 0 0 128 / 128 78.7s Saturn_lockfree.michael_scott_queue_safe concurrent
================================================================================
success (ran 2 tests)
random seed: 1390707346916783969
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.2s Saturn_lockfree.michael_scott_queue_unsafe concurrent
================================================================================
success (ran 2 tests)
random seed: 4319275355739538442
generated error fail pass / total time test name
[✓] 64 0 0 64 / 64 0.0s Saturn_lockfree.michael_scott_queue_unsafe sequential
[✓] 64 0 0 64 / 64 12.1s Saturn_lockfree.michael_scott_queue_unsafe concurrent
================================================================================
success (ran 2 tests)
random seed: 2749011577710822361
generated error fail pass / total time test name
[✓] 128 0 0 128 / 128 0.0s Saturn_lockfree.michael_scott_queue_unsafe sequential
[✓] 128 0 0 128 / 128 20.6s Saturn_lockfree.michael_scott_queue_unsafe concurrent
================================================================================
success (ran 2 tests)
random seed: 4403847402299878355
generated error fail pass / total time test name
[✓] 104 0 0 104 / 104 0.0s Saturn_lockfree.michael_scott_queue_unsafe sequential
[✓] 104 0 0 104 / 104 12.2s Saturn_lockfree.michael_scott_queue_unsafe concurrent
================================================================================
success (ran 2 tests)
random seed: 2783662606668593030
generated error fail pass / total time test name
[✓] 42 0 0 42 / 42 0.0s Saturn_lockfree.michael_scott_queue_unsafe sequential
[✓] 42 0 0 42 / 42 6.0s Saturn_lockfree.michael_scott_queue_unsafe concurrent
================================================================================
success (ran 2 tests)
random seed: 1440261602277118351
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 3.4s Saturn_lockfree.michael_scott_queue_unsafe concurrent
================================================================================
success (ran 2 tests)
2024-10-18 17:26.04 ---> saved as "496fb693daa615cf0ef410222f7f1f2257f6ebd9d4a0762fe529ca6e51dac9c7"
Job succeeded
2024-10-18 17:26.05: Job succeeded