2024-10-18 17:21.14: New job: test ocaml-multicore/kcas https://github.com/ocaml-multicore/kcas.git#refs/heads/add-xt-leftist-heap-benchmark (609c614dc8b898e02df72fb1a791d20aeaeb6c48) (linux-x86_64:fedora-40-4.14_opam-2.2)
Base: ocaml/opam:fedora-40-ocaml-4.14@sha256:960f785da90b856a0e8e1eaefa0151fa19dd048c873a5bc6b5e5ea216905caf8
Opam project build
To reproduce locally:
git clone --recursive "https://github.com/ocaml-multicore/kcas.git" -b "add-xt-leftist-heap-benchmark" && cd "kcas" && git reset --hard 609c614d
cat > Dockerfile <<'END-OF-DOCKERFILE'
FROM ocaml/opam:fedora-40-ocaml-4.14@sha256:960f785da90b856a0e8e1eaefa0151fa19dd048c873a5bc6b5e5ea216905caf8
# fedora-40-4.14_opam-2.2
USER 1000:1000
ENV CLICOLOR_FORCE="1"
ENV OPAMCOLOR="always"
WORKDIR /src
RUN sudo dnf install -y findutils
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 kcas_data.opam kcas.opam ./
RUN opam pin add -yn kcas_data.dev './' && \
opam pin add -yn kcas.dev './'
ENV DEPS="alcotest.1.8.0 astring.0.8.5 backoff.0.1.1 base-bigarray.base base-threads.base base-unix.base camlp-streams.5.0.1 cmdliner.1.3.0 cppo.1.7.0 csexp.1.5.2 domain-local-await.1.0.1 domain-local-timeout.1.0.1 domain_shims.0.1.0 dune.3.16.0 fmt.0.9.0 host-arch-x86_64.1 host-system-other.1 logs.0.7.0 mdx.2.4.1 mtime.2.1.0 multicore-bench.0.1.7 multicore-magic.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 ocaml-version.3.6.9 ocamlbuild.0.15.0 ocamlfind.1.9.6 psq.0.2.1 qcheck-core.0.22 qcheck-multicoretests-util.0.4 qcheck-stm.0.4 re.1.12.0 result.1.5 seq.base stdlib-shims.0.3.0 thread-table.1.0.0 topkg.1.0.7 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 kcas_data.dev kcas.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:21.14: Using cache hint "ocaml-multicore/kcas-ocaml/opam:fedora-40-ocaml-4.14@sha256:960f785da90b856a0e8e1eaefa0151fa19dd048c873a5bc6b5e5ea216905caf8-fedora-40-4.14_opam-2.2-5f4c992c2d473520416af47288a983cf"
2024-10-18 17:21.14: Using OBuilder spec:
((from ocaml/opam:fedora-40-ocaml-4.14@sha256:960f785da90b856a0e8e1eaefa0151fa19dd048c873a5bc6b5e5ea216905caf8)
(comment fedora-40-4.14_opam-2.2)
(user (uid 1000) (gid 1000))
(env CLICOLOR_FORCE 1)
(env OPAMCOLOR always)
(workdir /src)
(run (network host)
(shell "sudo dnf install -y findutils"))
(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 kcas_data.opam kcas.opam) (dst ./))
(run (network host)
(shell "opam pin add -yn kcas_data.dev './' && \
\nopam pin add -yn kcas.dev './'"))
(env DEPS "alcotest.1.8.0 astring.0.8.5 backoff.0.1.1 base-bigarray.base base-threads.base base-unix.base camlp-streams.5.0.1 cmdliner.1.3.0 cppo.1.7.0 csexp.1.5.2 domain-local-await.1.0.1 domain-local-timeout.1.0.1 domain_shims.0.1.0 dune.3.16.0 fmt.0.9.0 host-arch-x86_64.1 host-system-other.1 logs.0.7.0 mdx.2.4.1 mtime.2.1.0 multicore-bench.0.1.7 multicore-magic.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 ocaml-version.3.6.9 ocamlbuild.0.15.0 ocamlfind.1.9.6 psq.0.2.1 qcheck-core.0.22 qcheck-multicoretests-util.0.4 qcheck-stm.0.4 re.1.12.0 result.1.5 seq.base stdlib-shims.0.3.0 thread-table.1.0.0 topkg.1.0.7 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 kcas_data.dev kcas.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:21.14: Waiting for resource in pool OCluster
2024-10-18 17:23.40: Waiting for worker…
2024-10-18 17:23.40: Got resource from pool OCluster
Building on doris.caelum.ci.dev
All commits already cached
HEAD is now at 609c614 Add a transaction benchmark using a naïve unscalable leftist heap
(from ocaml/opam:fedora-40-ocaml-4.14@sha256:960f785da90b856a0e8e1eaefa0151fa19dd048c873a5bc6b5e5ea216905caf8)
Unable to find image 'ocaml/opam:fedora-40-ocaml-4.14@sha256:960f785da90b856a0e8e1eaefa0151fa19dd048c873a5bc6b5e5ea216905caf8' locally
docker.io/ocaml/opam@sha256:960f785da90b856a0e8e1eaefa0151fa19dd048c873a5bc6b5e5ea216905caf8: Pulling from ocaml/opam
7225fb4e93f9: Pulling fs layer
7225fb4e93f9: Verifying Checksum
7225fb4e93f9: Download complete
7225fb4e93f9: Pull complete
Digest: sha256:960f785da90b856a0e8e1eaefa0151fa19dd048c873a5bc6b5e5ea216905caf8
Status: Downloaded newer image for ocaml/opam@sha256:960f785da90b856a0e8e1eaefa0151fa19dd048c873a5bc6b5e5ea216905caf8
2024-10-18 17:23.45 ---> using "34adc61e9ebedde377f2d933483dd2fd9214b94f41ae056287dd6d7acac7fdbb" from cache
/: (comment fedora-40-4.14_opam-2.2)
/: (user (uid 1000) (gid 1000))
/: (env CLICOLOR_FORCE 1)
/: (env OPAMCOLOR always)
/: (workdir /src)
/src: (run (network host)
(shell "sudo dnf install -y findutils"))
Fedora 40 - x86_64 90 kB/s | 28 kB 00:00
Fedora 40 openh264 (From Cisco) - x86_64 8.5 kB/s | 989 B 00:00
Fedora 40 - x86_64 - Updates 192 kB/s | 24 kB 00:00
Fedora 40 - x86_64 - Updates 5.6 MB/s | 6.6 MB 00:01
Package findutils-1:4.9.0-9.fc40.x86_64 is already installed.
Dependencies resolved.
Nothing to do.
Complete!
2024-10-18 17:23.45 ---> using "336d28cd9a6272b1cea2a6e6e7f5cd90dce7752203bb0f3bebaa8a1befa21bb9" from cache
/src: (run (shell "sudo ln -f /usr/bin/opam-2.2 /usr/bin/opam"))
2024-10-18 17:23.45 ---> using "b120e5f6b4ea21a143d3ae9808e7b967315fc2a90c7fe80fc697ab4ca1d40303" from cache
/src: (run (shell "opam init --reinit -ni"))
Configuring from /home/opam/.opamrc and then from built-in defaults.
Checking for available remotes: rsync and local, git.
- you won't be able to use mercurial repositories unless you install the hg command on your system.
- you won't be able to use darcs repositories unless you install the darcs command on your system.
This development version of opam requires an update to the layout of /home/opam/.opam from version 2.0 to version 2.2, which can't be reverted.
You may want to back it up before going further.
Continue? [y/n] y
[NOTE] The 'jobs' option was reset, its value was 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:23.45 ---> using "2b909e4402043984295a4d0b998a45626a717dd8777c4aa2f998eaeae3e7c625" 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:23.45 ---> using "da75a4cf55480ad553278d06416fc74fe872e027b687eddf0815c032aa16a6ff" from cache
/src: (workdir /src)
/src: (run (shell "sudo chown opam /src"))
2024-10-18 17:23.45 ---> using "8bd2ce507780fbdc90bf44dbf4425c06c9654f603d1f920ea61bcd3aa26c0c12" 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:24.47 ---> saved as "8e60bc7827acaa43cb6d3edfc502fd338a0ab47b4049eaa29ded2467991fb56b"
/src: (copy (src kcas_data.opam kcas.opam) (dst ./))
2024-10-18 17:24.47 ---> saved as "37e6ed3062863e2c3c529347d4e03ac97c33c6cfb74c77586416a70239691e22"
/src: (run (network host)
(shell "opam pin add -yn kcas_data.dev './' && \
\nopam pin add -yn kcas.dev './'"))
[kcas_data.dev] synchronised (file:///src)
kcas_data is now pinned to file:///src (version dev)
[kcas.dev] synchronised (file:///src)
kcas is now pinned to file:///src (version dev)
2024-10-18 17:24.50 ---> saved as "f52522f88926c12e9e115d5f99c7aecc67154085114e57a5e4ea6d85f0ce312a"
/src: (env DEPS "alcotest.1.8.0 astring.0.8.5 backoff.0.1.1 base-bigarray.base base-threads.base base-unix.base camlp-streams.5.0.1 cmdliner.1.3.0 cppo.1.7.0 csexp.1.5.2 domain-local-await.1.0.1 domain-local-timeout.1.0.1 domain_shims.0.1.0 dune.3.16.0 fmt.0.9.0 host-arch-x86_64.1 host-system-other.1 logs.0.7.0 mdx.2.4.1 mtime.2.1.0 multicore-bench.0.1.7 multicore-magic.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 ocaml-version.3.6.9 ocamlbuild.0.15.0 ocamlfind.1.9.6 psq.0.2.1 qcheck-core.0.22 qcheck-multicoretests-util.0.4 qcheck-stm.0.4 re.1.12.0 result.1.5 seq.base stdlib-shims.0.3.0 thread-table.1.0.0 topkg.1.0.7 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 kcas_data.dev kcas.dev $DEPS"))
+ /usr/bin/sudo "yum" "makecache"
- Fedora 40 - x86_64 214 kB/s | 27 kB 00:00
- Fedora 40 openh264 (From Cisco) - x86_64 9.8 kB/s | 989 B 00:00
- Fedora 40 - x86_64 - Updates 192 kB/s | 24 kB 00:00
- Fedora 40 - x86_64 - Updates 6.3 MB/s | 3.9 MB 00:00
- Metadata cache created.
<><> Synchronising pinned packages ><><><><><><><><><><><><><><><><><><><><><><>
[kcas.dev] synchronised (no changes)
[kcas_data.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:25.08 ---> saved as "add77c2a24d95e350f6af9b36cb9e138daf5338d6caf184336e22962dd171dcf"
/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 33 packages
- install alcotest 1.8.0
- install astring 0.8.5
- install backoff 0.1.1
- install camlp-streams 5.0.1
- install cmdliner 1.3.0
- install cppo 1.7.0
- install csexp 1.5.2
- install domain-local-await 1.0.1
- install domain-local-timeout 1.0.1
- install domain_shims 0.1.0
- install dune 3.16.0
- install fmt 0.9.0
- install logs 0.7.0
- install mdx 2.4.1
- install mtime 2.1.0
- install multicore-bench 0.1.7
- install multicore-magic 2.3.0
- install ocaml-syntax-shims 1.0.0
- install ocaml-version 3.6.9
- install ocamlbuild 0.15.0
- install ocamlfind 1.9.6
- install psq 0.2.1
- install qcheck-core 0.22
- install qcheck-multicoretests-util 0.4
- install qcheck-stm 0.4
- install re 1.12.0
- install result 1.5
- install seq base
- install stdlib-shims 0.3.0
- install thread-table 1.0.0
- install topkg 1.0.7
- 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 alcotest.1.8.0 (cached)
-> retrieved camlp-streams.5.0.1 (cached)
-> retrieved cmdliner.1.3.0 (cached)
-> retrieved cppo.1.7.0 (cached)
-> retrieved csexp.1.5.2 (cached)
-> retrieved domain-local-await.1.0.1 (cached)
-> retrieved domain-local-timeout.1.0.1 (cached)
-> retrieved domain_shims.0.1.0 (cached)
-> retrieved fmt.0.9.0 (cached)
-> retrieved logs.0.7.0 (cached)
-> retrieved mtime.2.1.0 (cached)
-> retrieved mdx.2.4.1 (cached)
-> retrieved multicore-bench.0.1.7 (cached)
-> retrieved multicore-magic.2.3.0 (cached)
-> retrieved ocaml-syntax-shims.1.0.0 (cached)
-> retrieved ocaml-version.3.6.9 (cached)
-> retrieved ocamlbuild.0.15.0 (cached)
-> retrieved ocamlfind.1.9.6 (cached)
-> retrieved psq.0.2.1 (cached)
-> retrieved qcheck-core.0.22 (cached)
-> retrieved qcheck-multicoretests-util.0.4, qcheck-stm.0.4 (cached)
-> retrieved dune.3.16.0 (cached)
-> retrieved seq.base (cached)
-> installed seq.base
-> retrieved re.1.12.0 (cached)
-> retrieved result.1.5 (cached)
-> retrieved stdlib-shims.0.3.0 (cached)
-> retrieved thread-table.1.0.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 logs.0.7.0
-> installed dune.3.16.0
-> installed domain_shims.0.1.0
-> installed camlp-streams.5.0.1
-> installed csexp.1.5.2
-> installed stdlib-shims.0.3.0
-> installed backoff.0.1.1
-> installed result.1.5
-> installed multicore-magic.2.3.0
-> installed ocaml-version.3.6.9
-> installed thread-table.1.0.0
-> installed psq.0.2.1
-> installed domain-local-timeout.1.0.1
-> installed domain-local-await.1.0.1
-> installed ocaml-syntax-shims.1.0.0
-> installed re.1.12.0
-> installed cppo.1.7.0
-> installed qcheck-core.0.22
-> installed yojson.2.2.2
-> installed qcheck-multicoretests-util.0.4
-> installed multicore-bench.0.1.7
-> installed alcotest.1.8.0
-> installed qcheck-stm.0.4
-> installed mdx.2.4.1
Done.
# Run eval $(opam env) to update the current shell environment
2024-10-18 17:25.54 ---> saved as "90a0c5685abd20e572274c45675a4db54aeebacf7d0c747c0302c78bc1dcef6c"
/src: (copy (src .) (dst /src))
2024-10-18 17:25.55 ---> saved as "0a3571e04afc12f01f26ee933ef7ee8e218578b7eb49a1f46651f7dbc7f126f6"
/src: (run (shell "opam exec -- dune build @install @check @runtest && rm -rf _build"))
(cd _build/default/test/kcas && ./loc_modes.exe)
Loc modes OK!
(cd _build/default/test/kcas_data && ./lru_cache_example.exe)
LRU Cache OK!
(cd _build/default/test/kcas && ./threads.exe)
Testing `Threads'.
This run has ID `HVUM6X15'.
[OK] await between threads 0
Full test results in `/src/_build/default/test/kcas/_build/_tests/Threads'.
Test Successful in 0.001s. 1 test run.
(cd _build/default/test/kcas_data && ./dllist_test.exe)
Testing `Dllist'.
This run has ID `8O9A8H9H'.
[OK] basics 0
[OK] add 0
[OK] move 0
Full test results in `/src/_build/default/test/kcas_data/_build/_tests/Dllist'.
Test Successful in 0.000s. 3 tests run.
(cd _build/default/test/kcas_data && ./stack_test.exe)
Testing `Stack'.
This run has ID `YIV9NX23'.
[OK] basics 0
Full test results in `/src/_build/default/test/kcas_data/_build/_tests/Stack'.
Test Successful in 0.000s. 1 test run.
(cd _build/default/test/kcas_data && ./queue_test.exe)
Testing `Queue'.
This run has ID `D274L44O'.
[OK] basics 0
Full test results in `/src/_build/default/test/kcas_data/_build/_tests/Queue'.
Test Successful in 0.000s. 1 test run.
(cd _build/default/test/kcas_data && ./xt_test.exe)
Testing `Transactions'.
This run has ID `FW90TE7A'.
[OK] basics 0
Full test results in `/src/_build/default/test/kcas_data/_build/_tests/Transactions'.
Test Successful in 0.000s. 1 test run.
(cd _build/default/test/kcas_data && ./mvar_test.exe)
Testing `Mvar'.
This run has ID `BI0EWNSO'.
[OK] basics 0
Full test results in `/src/_build/default/test/kcas_data/_build/_tests/Mvar'.
Test Successful in 0.001s. 1 test run.
(cd _build/default/test/kcas_data && ./hashtbl_test.exe)
Testing `Hashtbl'.
This run has ID `J0P017KU'.
[OK] replace and remove 0
[OK] large tx 0
[OK] large ops 0
[OK] basics 0
Full test results in `/src/_build/default/test/kcas_data/_build/_tests/Hashtbl'.
Test Successful in 0.004s. 4 tests run.
(cd _build/default/test/kcas && ./test.exe)
Testing `Kcas'.
This run has ID `DUQ83NG6'.
[OK] non linearizable xt 0
[OK] set 0
[OK] no skew xt 0
[OK] get seq xt 0
[OK] stress xt 0
[OK] is_in_log 0
[OK] updates 0
[OK] post commit 0
[OK] blocking 0
[OK] no unnecessary wakeups 0
[OK] pediodic validation 0
[OK] explicit validation 0
[OK] rollback 0
[OK] call 0
[OK] mode 0
[OK] xt 0
[OK] timeout (non-deterministic) 0
Full test results in `/src/_build/default/test/kcas/_build/_tests/Kcas'.
Test Successful in 0.910s. 17 tests run.
(cd _build/default/bench && ./main.exe -brief)
Kcas Loc:
ops over time/cas int:
71.39 M/s
ops over time/get:
228.10 M/s
ops over time/incr:
44.17 M/s
ops over time/push & pop:
44.96 M/s
ops over time/swap:
34.69 M/s
ops over time/xchg int:
52.89 M/s
time per op/cas int:
14.01 ns
time per op/get:
4.38 ns
time per op/incr:
22.64 ns
time per op/push & pop:
22.24 ns
time per op/swap:
28.83 ns
time per op/xchg int:
18.91 ns
Kcas Xt:
time per transaction/0 loc tx:
16.24 ns
time per transaction/1 loc tx:
49.20 ns
time per transaction/2 loc tx:
105.04 ns
time per transaction/4 loc tx:
202.15 ns
time per transaction/8 loc tx:
339.19 ns
transactions over time/0 loc tx:
61.56 M/s
transactions over time/1 loc tx:
20.33 M/s
transactions over time/2 loc tx:
9.52 M/s
transactions over time/4 loc tx:
4.95 M/s
transactions over time/8 loc tx:
2.95 M/s
Kcas Xt Leftist_heap (unscalable):
operations over time/1 worker, 1000 preload:
0.13 M/s
operations over time/1 worker, 100 preload:
0.48 M/s
operations over time/1 worker, 10 preload:
1.66 M/s
operations over time/2 workers, 1000 preload:
0.15 M/s
operations over time/2 workers, 100 preload:
0.42 M/s
operations over time/2 workers, 10 preload:
1.64 M/s
operations over time/4 workers, 1000 preload:
0.14 M/s
operations over time/4 workers, 100 preload:
0.45 M/s
operations over time/4 workers, 10 preload:
1.16 M/s
time per operation/1 worker, 1000 preload:
7536.13 ns
time per operation/1 worker, 100 preload:
2073.41 ns
time per operation/1 worker, 10 preload:
604.06 ns
time per operation/2 workers, 1000 preload:
12955.51 ns
time per operation/2 workers, 100 preload:
4781.84 ns
time per operation/2 workers, 10 preload:
1219.98 ns
time per operation/4 workers, 1000 preload:
28457.67 ns
time per operation/4 workers, 100 preload:
8810.75 ns
time per operation/4 workers, 10 preload:
3453.39 ns
Kcas Xt read-only:
time per transaction/0 loc tx:
11.27 ns
time per transaction/1 loc tx:
27.89 ns
time per transaction/2 loc tx:
46.49 ns
time per transaction/4 loc tx:
86.98 ns
time per transaction/8 loc tx:
132.74 ns
transactions over time/0 loc tx:
88.73 M/s
transactions over time/1 loc tx:
35.85 M/s
transactions over time/2 loc tx:
21.51 M/s
transactions over time/4 loc tx:
11.50 M/s
transactions over time/8 loc tx:
7.53 M/s
Kcas parallel CMP:
time per transaction/1 worker:
157.61 ns
time per transaction/2 workers:
198.82 ns
time per transaction/4 workers:
414.19 ns
transactions over time/1 worker:
6.34 M/s
transactions over time/2 workers:
10.06 M/s
transactions over time/4 workers:
9.66 M/s
Kcas_data Accumulator:
operations over time/1 worker, 0% reads:
59.89 M/s
operations over time/2 workers, 0% reads:
37.82 M/s
operations over time/4 workers, 0% reads:
49.99 M/s
time per operation/1 worker, 0% reads:
16.70 ns
time per operation/2 workers, 0% reads:
52.88 ns
time per operation/4 workers, 0% reads:
80.58 ns
Kcas_data Dllist:
messages over time/1 nb adder, 1 nb taker:
2.75 M/s
messages over time/1 nb adder, 2 nb takers:
2.54 M/s
messages over time/2 nb adders, 1 nb taker:
2.30 M/s
messages over time/2 nb adders, 2 nb takers:
3.15 M/s
messages over time/one domain:
2.17 M/s
time per message/1 nb adder, 1 nb taker:
727.91 ns
time per message/1 nb adder, 2 nb takers:
1180.54 ns
time per message/2 nb adders, 1 nb taker:
1305.78 ns
time per message/2 nb adders, 2 nb takers:
1271.09 ns
time per message/one domain:
460.48 ns
Kcas_data Hashtbl:
operations over time/1 worker, 10% reads:
6.13 M/s
operations over time/1 worker, 50% reads:
6.13 M/s
operations over time/1 worker, 90% reads:
15.23 M/s
operations over time/2 workers, 10% reads:
3.53 M/s
operations over time/2 workers, 50% reads:
6.62 M/s
operations over time/2 workers, 90% reads:
15.88 M/s
operations over time/4 workers, 10% reads:
5.19 M/s
operations over time/4 workers, 50% reads:
5.46 M/s
operations over time/4 workers, 90% reads:
14.81 M/s
time per operation/1 worker, 10% reads:
163.03 ns
time per operation/1 worker, 50% reads:
163.35 ns
time per operation/1 worker, 90% reads:
65.65 ns
time per operation/2 workers, 10% reads:
565.99 ns
time per operation/2 workers, 50% reads:
302.17 ns
time per operation/2 workers, 90% reads:
125.91 ns
time per operation/4 workers, 10% reads:
771.16 ns
time per operation/4 workers, 50% reads:
732.24 ns
time per operation/4 workers, 90% reads:
270.04 ns
Kcas_data Mvar:
messages over time/1 adder, 1 nb taker:
0.08 M/s
messages over time/1 adder, 1 taker:
0.08 M/s
messages over time/1 adder, 2 nb takers:
0.07 M/s
messages over time/1 adder, 2 takers:
0.06 M/s
messages over time/1 nb adder, 1 nb taker:
0.08 M/s
messages over time/1 nb adder, 1 taker:
0.08 M/s
messages over time/1 nb adder, 2 nb takers:
0.08 M/s
messages over time/1 nb adder, 2 takers:
0.06 M/s
messages over time/2 adders, 1 nb taker:
0.07 M/s
messages over time/2 adders, 1 taker:
0.08 M/s
messages over time/2 adders, 2 nb takers:
0.08 M/s
messages over time/2 adders, 2 takers:
0.08 M/s
messages over time/2 nb adders, 1 nb taker:
0.06 M/s
messages over time/2 nb adders, 1 taker:
0.07 M/s
messages over time/2 nb adders, 2 nb takers:
0.07 M/s
messages over time/2 nb adders, 2 takers:
0.07 M/s
time per message/1 adder, 1 nb taker:
24610.67 ns
time per message/1 adder, 1 taker:
26554.82 ns
time per message/1 adder, 2 nb takers:
42623.79 ns
time per message/1 adder, 2 takers:
53416.21 ns
time per message/1 nb adder, 1 nb taker:
25483.85 ns
time per message/1 nb adder, 1 taker:
25696.10 ns
time per message/1 nb adder, 2 nb takers:
38096.24 ns
time per message/1 nb adder, 2 takers:
47555.16 ns
time per message/2 adders, 1 nb taker:
44081.12 ns
time per message/2 adders, 1 taker:
38035.52 ns
time per message/2 adders, 2 nb takers:
50906.69 ns
time per message/2 adders, 2 takers:
50274.52 ns
time per message/2 nb adders, 1 nb taker:
49558.06 ns
time per message/2 nb adders, 1 taker:
41926.73 ns
time per message/2 nb adders, 2 nb takers:
59076.59 ns
time per message/2 nb adders, 2 takers:
54649.02 ns
Kcas_data Queue:
messages over time/1 nb adder, 1 nb taker:
23.04 M/s
messages over time/1 nb adder, 1 taker:
24.26 M/s
messages over time/1 nb adder, 2 nb takers:
17.98 M/s
messages over time/1 nb adder, 2 takers:
21.74 M/s
messages over time/2 nb adders, 1 nb taker:
25.34 M/s
messages over time/2 nb adders, 1 taker:
23.36 M/s
messages over time/2 nb adders, 2 nb takers:
17.67 M/s
messages over time/2 nb adders, 2 takers:
19.47 M/s
messages over time/one domain:
12.18 M/s
time per message/1 nb adder, 1 nb taker:
86.80 ns
time per message/1 nb adder, 1 taker:
82.43 ns
time per message/1 nb adder, 2 nb takers:
166.87 ns
time per message/1 nb adder, 2 takers:
138.00 ns
time per message/2 nb adders, 1 nb taker:
118.40 ns
time per message/2 nb adders, 1 taker:
128.53 ns
time per message/2 nb adders, 2 nb takers:
226.33 ns
time per message/2 nb adders, 2 takers:
205.48 ns
time per message/one domain:
82.08 ns
Kcas_data Stack:
messages over time/1 nb adder, 1 nb taker:
23.80 M/s
messages over time/1 nb adder, 1 taker:
33.61 M/s
messages over time/1 nb adder, 2 nb takers:
20.25 M/s
messages over time/1 nb adder, 2 takers:
24.09 M/s
messages over time/2 nb adders, 1 nb taker:
27.03 M/s
messages over time/2 nb adders, 1 taker:
21.31 M/s
messages over time/2 nb adders, 2 nb takers:
16.68 M/s
messages over time/2 nb adders, 2 takers:
28.89 M/s
messages over time/one domain:
18.85 M/s
time per message/1 nb adder, 1 nb taker:
84.04 ns
time per message/1 nb adder, 1 taker:
59.50 ns
time per message/1 nb adder, 2 nb takers:
148.12 ns
time per message/1 nb adder, 2 takers:
124.51 ns
time per message/2 nb adders, 1 nb taker:
110.97 ns
time per message/2 nb adders, 1 taker:
140.77 ns
time per message/2 nb adders, 2 nb takers:
239.75 ns
time per message/2 nb adders, 2 takers:
138.46 ns
time per message/one domain:
53.06 ns
(cd _build/default/test/kcas && ./ms_queue_test.exe)
Testing `MS queue'.
This run has ID `KREB5CTW'.
[OK] write skew 0
[OK] tail leak 0
Full test results in `/src/_build/default/test/kcas/_build/_tests/MS queue'.
Test Successful in 10.235s. 2 tests run.
(cd _build/default/test/kcas_data && ./linearizable_chaining_example.exe)
random seed: 2562188289209899293
generated error fail pass / total time test name
[✓] 32 0 0 32 / 32 0.0s Hashtbl_with_order sequential
[✓] 32 0 0 32 / 32 3.2s Hashtbl_with_order concurrent
================================================================================
success (ran 2 tests)
random seed: 1490748641219605481
generated error fail pass / total time test name
[✓] 64 0 0 64 / 64 0.0s Hashtbl_with_order sequential
[✓] 64 0 0 64 / 64 10.7s Hashtbl_with_order concurrent
================================================================================
success (ran 2 tests)
random seed: 242744082458680791
generated error fail pass / total time test name
[✓] 128 0 0 128 / 128 0.0s Hashtbl_with_order sequential
[✓] 128 0 0 128 / 128 37.3s Hashtbl_with_order concurrent
================================================================================
success (ran 2 tests)
random seed: 418067365962207927
generated error fail pass / total time test name
[✓] 38 0 0 38 / 38 0.0s Hashtbl_with_order sequential
[✓] 38 0 0 38 / 38 14.2s Hashtbl_with_order concurrent
================================================================================
success (ran 2 tests)
(cd _build/default/test/kcas_data && ./dllist_test_stm.exe)
random seed: 1499147496702155818
generated error fail pass / total time test name
[✓] 32 0 0 32 / 32 0.0s Dllist sequential
[✓] 32 0 0 32 / 32 3.4s Dllist concurrent
================================================================================
success (ran 2 tests)
random seed: 4308633821257179440
generated error fail pass / total time test name
[✓] 64 0 0 64 / 64 0.0s Dllist sequential
[✓] 64 0 0 64 / 64 10.7s Dllist concurrent
================================================================================
success (ran 2 tests)
random seed: 3110343504606152220
generated error fail pass / total time test name
[✓] 128 0 0 128 / 128 0.0s Dllist sequential
[✓] 128 0 0 128 / 128 35.2s Dllist concurrent
================================================================================
success (ran 2 tests)
random seed: 4607396681432928030
generated error fail pass / total time test name
[✓] 48 0 0 48 / 48 0.0s Dllist sequential
[✓] 48 0 0 48 / 48 17.0s Dllist concurrent
================================================================================
success (ran 2 tests)
(cd _build/default/test/kcas_data && ./accumulator_test_stm.exe)
random seed: 2794841913614076487
generated error fail pass / total time test name
[✓] 32 0 0 32 / 32 0.0s Accumulator sequential
[✓] 32 0 0 32 / 32 3.3s Accumulator concurrent
================================================================================
success (ran 2 tests)
random seed: 3253992878944752047
generated error fail pass / total time test name
[✓] 64 0 0 64 / 64 0.0s Accumulator sequential
[✓] 64 0 0 64 / 64 10.8s Accumulator concurrent
================================================================================
success (ran 2 tests)
random seed: 1092369372766296414
generated error fail pass / total time test name
[✓] 128 0 0 128 / 128 0.0s Accumulator sequential
[✓] 128 0 0 128 / 128 33.9s Accumulator concurrent
================================================================================
success (ran 2 tests)
random seed: 3355333689215359820
generated error fail pass / total time test name
[✓] 55 0 0 55 / 55 0.0s Accumulator sequential
[✓] 55 0 0 55 / 55 19.2s Accumulator concurrent
================================================================================
success (ran 2 tests)
(cd _build/default/test/kcas_data && ./queue_test_stm.exe)
random seed: 2363558794465223540
generated error fail pass / total time test name
[✓] 32 0 0 32 / 32 0.0s Queue sequential
[✓] 32 0 0 32 / 32 3.3s Queue concurrent
================================================================================
success (ran 2 tests)
random seed: 1885390412211057681
generated error fail pass / total time test name
[✓] 64 0 0 64 / 64 0.0s Queue sequential
[✓] 64 0 0 64 / 64 10.1s Queue concurrent
================================================================================
success (ran 2 tests)
random seed: 350220581071677661
generated error fail pass / total time test name
[✓] 128 0 0 128 / 128 0.0s Queue sequential
[✓] 128 0 0 128 / 128 34.1s Queue concurrent
================================================================================
success (ran 2 tests)
random seed:
710223286751788525
generated error fail pass / total time test name
[✓] 58 0 0 58 / 58 0.0s Queue sequential
[✓] 58 0 0 58 / 58 21.5s Queue concurrent
================================================================================
success (ran 2 tests)
(cd _build/default/test/kcas_data && ./hashtbl_test_stm.exe)
random seed: 1204861736864047171
generated error fail pass / total time test name
[✓] 32 0 0 32 / 32 0.0s Hashtbl sequential
[✓] 32 0 0 32 / 32 3.2s Hashtbl concurrent
================================================================================
success (ran 2 tests)
random seed: 4513098893017232628
generated error fail pass / total time test name
[✓] 64 0 0 64 / 64 0.0s Hashtbl sequential
[✓] 64 0 0 64 / 64 10.5s Hashtbl concurrent
================================================================================
success (ran 2 tests)
random seed: 350691280015501170
generated error fail pass / total time test name
[✓] 128 0 0 128 / 128 0.0s Hashtbl sequential
[✓] 128 0 0 128 / 128 44.8s Hashtbl concurrent
================================================================================
success (ran 2 tests)
random seed: 760750186557485556
generated error fail pass / total time test name
[✓] 32 0 0 32 / 32 0.0s Hashtbl sequential
[✓] 32 0 0 32 / 32 11.8s Hashtbl concurrent
================================================================================
success (ran 2 tests)
(cd _build/default/test/kcas_data && ./stack_test_stm.exe)
random seed: 1669771852976037991
generated error fail pass / total time test name
[✓] 32 0 0 32 / 32 0.0s Stack sequential
[✓] 32 0 0 32 / 32 2.8s Stack concurrent
================================================================================
success (ran 2 tests)
random seed: 1292944023209250328
generated error fail pass / total time test name
[✓] 64 0 0 64 / 64 0.0s Stack sequential
[✓] 64 0 0 64 / 64 9.1s Stack concurrent
================================================================================
success (ran 2 tests)
random seed: 335155529842924750
generated error fail pass / total time test name
[✓] 128 0 0 128 / 128 0.0s Stack sequential
[✓] 128 0 0 128 / 128 32.4s Stack concurrent
================================================================================
success (ran 2 tests)
random seed: 4312970149217334002
generated error fail pass / total time test name
[✓] 79 0 0 79 / 79 0.0s Stack sequential
[✓] 79 0 0 79 / 79 28.4s Stack concurrent
================================================================================
success (ran 2 tests)
2024-10-18 17:27.10 ---> saved as "d45393dd935f64abcc4c9b53ed039f52c528393bcad161371b47e5030c6e18bf"
Job succeeded
2024-10-18 17:27.11: Job succeeded