Organisationsahrefsocannl70dfec ()alpine-3.22-5.4_opam-2.4

alpine-3.22-5.4_opam-2.4

Logs

Show full logs
2025-12-10 14:58.43: New job: test ahrefs/ocannl https://github.com/ahrefs/ocannl.git#refs/heads/master (70dfecbb72d0962170bfe522a3685771ab58dd6f) (linux-x86_64:alpine-3.22-5.4_opam-2.4)
Base: ocaml/opam:alpine-3.22-ocaml-5.4@sha256:8e38c5f7a0619e59e641da986cc6e5a2fb675f58f51a0438d81159631878e8fa
Opam project build

To reproduce locally:

git clone --recursive "https://github.com/ahrefs/ocannl.git" -b "master" && cd "ocannl" && git reset --hard 70dfecbb
cat > Dockerfile <<'END-OF-DOCKERFILE'
FROM ocaml/opam:alpine-3.22-ocaml-5.4@sha256:8e38c5f7a0619e59e641da986cc6e5a2fb675f58f51a0438d81159631878e8fa
# alpine-3.22-5.4_opam-2.4
USER 1000:1000
ENV CLICOLOR_FORCE="1"
ENV OPAMCOLOR="always"
WORKDIR /src
RUN sudo ln -f /usr/bin/opam-2.4 /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 d684c896eb6f7e6030d6ee65338d9db22a612f01 || git fetch origin master) && git reset -q --hard d684c896eb6f7e6030d6ee65338d9db22a612f01 && git log --no-decorate -n1 --oneline && opam update -u
COPY --chown=1000:1000 neural_nets_lib.opam arrayjit.opam ./
RUN opam pin add -yn neural_nets_lib.dev './' && \
    opam pin add -yn arrayjit.dev './'
RUN echo '(lang dune 3.0)' > './dune-project'
ENV DEPS="angstrom.0.16.1 astring.0.8.5 backoff.0.1.1 base.v0.17.3 base-bigarray.base base-bytes.base base-domains.base base-effects.base base-nnp.base base-threads.base base-unix.base base64.3.5.2 bigstringaf.0.10.0 camlp-streams.5.0.1 camlzip.1.13 cmdliner.2.1.0 cohttp.6.1.1 cohttp-eio.6.1.1 conf-libcurl.2 conf-libffi.2.0.0 conf-pkg-config.4 conf-sqlite3.1 conf-zlib.1 cppo.1.8.0 csexp.1.5.2 cstruct.6.2.0 csv.2.4 ctypes.0.24.0 ctypes-foreign.0.24.0 curl.0.10.0 domain-local-await.1.0.1 dune.3.20.2 dune-configurator.3.20.2 dune-private-libs.3.20.2 dune-site.3.20.2 dyn.3.20.2 eio.1.3 eio_linux.1.3 eio_main.1.3 eio_posix.1.3 fieldslib.v0.17.0 fmt.0.11.0 hmap.0.8.1 http.6.1.1 integers.0.7.0 iomux.0.4 jane-street-headers.v0.17.0 jsonrpc.1.24.0 jst-config.v0.17.0 logs.0.10.0 lwt-dllist.1.1.0 mdx.2.5.1 menhir.20250912 menhirCST.20250912 menhirLib.20250912 menhirSdk.20250912 mtime.2.1.0 multicore-magic.2.3.1 notty-community.dev num.1.6 ocaml.5.4.0 ocaml-base-compiler.5.4.0 ocaml-compiler.5.4.0 ocaml-compiler-libs.v0.17.0 ocaml-config.3 ocaml-options-vanilla.1 ocaml-syntax-shims.1.0.0 ocaml-version.4.0.3 ocaml_intrinsics_kernel.v0.17.1 ocamlbuild.0.16.1 ocamlfind.1.9.8 optint.0.3.0 ordering.3.20.2 parsexp.v0.17.0 pp.2.0.0 pprint.20230830 ppx_assert.v0.17.0 ppx_base.v0.17.0 ppx_cold.v0.17.0 ppx_compare.v0.17.0 ppx_derivers.1.2.1 ppx_deriving.6.1.1 ppx_enumerate.v0.17.0 ppx_expect.v0.17.3 ppx_fields_conv.v0.17.0 ppx_globalize.v0.17.2 ppx_hash.v0.17.0 ppx_here.v0.17.0 ppx_inline_test.v0.17.1 ppx_minidebug.dev ppx_optcomp.v0.17.1 ppx_sexp_conv.v0.17.1 ppx_string.v0.17.0 ppx_variants_conv.v0.17.1 ppxlib.0.37.0 ppxlib_jane.v0.17.4 printbox.0.12 printbox-ext-plot.0.12 printbox-html.0.12 printbox-md.0.12 printbox-text.0.12 psq.0.2.1 ptime.1.2.0 re.1.14.0 result.1.5 saturn_lockfree.0.5.0 seq.base sexplib.v0.17.0 sexplib0.v0.17.0 sqlite3.5.3.1 stdio.v0.17.0 stdlib-shims.0.3.0 stdune.3.20.2 stringext.1.6.0 thread-local-storage.0.2 thread-table.1.0.0 time_now.v0.17.0 topkg.1.1.1 tyxml.4.6.0 uri.4.4.0 uri-sexp.4.4.0 uring.2.7.0 uucp.17.0.0 uutf.1.0.4 variantslib.v0.17.0 yojson.3.0.0"
ENV CI="true"
ENV OCAMLCI="true"
RUN opam update --depexts && opam install --cli=2.4 --depext-only -y neural_nets_lib.dev arrayjit.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

2025-12-10 14:58.43: Using cache hint "ahrefs/ocannl-ocaml/opam:alpine-3.22-ocaml-5.4@sha256:8e38c5f7a0619e59e641da986cc6e5a2fb675f58f51a0438d81159631878e8fa-alpine-3.22-5.4_opam-2.4-d26ffe8f1796d8257dbba1b350c2206d"
2025-12-10 14:58.43: Using OBuilder spec:
((from ocaml/opam:alpine-3.22-ocaml-5.4@sha256:8e38c5f7a0619e59e641da986cc6e5a2fb675f58f51a0438d81159631878e8fa)
 (comment alpine-3.22-5.4_opam-2.4)
 (user (uid 1000) (gid 1000))
 (env CLICOLOR_FORCE 1)
 (env OPAMCOLOR always)
 (workdir /src)
 (run (shell "sudo ln -f /usr/bin/opam-2.4 /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 d684c896eb6f7e6030d6ee65338d9db22a612f01 || git fetch origin master) && git reset -q --hard d684c896eb6f7e6030d6ee65338d9db22a612f01 && git log --no-decorate -n1 --oneline && opam update -u"))
 (copy (src neural_nets_lib.opam arrayjit.opam) (dst ./))
 (run (network host)
      (shell  "opam pin add -yn neural_nets_lib.dev './' && \
             \nopam pin add -yn arrayjit.dev './'"))
 (run (network host)
      (shell "echo '(lang dune 3.0)' > './dune-project'"))
 (env DEPS "angstrom.0.16.1 astring.0.8.5 backoff.0.1.1 base.v0.17.3 base-bigarray.base base-bytes.base base-domains.base base-effects.base base-nnp.base base-threads.base base-unix.base base64.3.5.2 bigstringaf.0.10.0 camlp-streams.5.0.1 camlzip.1.13 cmdliner.2.1.0 cohttp.6.1.1 cohttp-eio.6.1.1 conf-libcurl.2 conf-libffi.2.0.0 conf-pkg-config.4 conf-sqlite3.1 conf-zlib.1 cppo.1.8.0 csexp.1.5.2 cstruct.6.2.0 csv.2.4 ctypes.0.24.0 ctypes-foreign.0.24.0 curl.0.10.0 domain-local-await.1.0.1 dune.3.20.2 dune-configurator.3.20.2 dune-private-libs.3.20.2 dune-site.3.20.2 dyn.3.20.2 eio.1.3 eio_linux.1.3 eio_main.1.3 eio_posix.1.3 fieldslib.v0.17.0 fmt.0.11.0 hmap.0.8.1 http.6.1.1 integers.0.7.0 iomux.0.4 jane-street-headers.v0.17.0 jsonrpc.1.24.0 jst-config.v0.17.0 logs.0.10.0 lwt-dllist.1.1.0 mdx.2.5.1 menhir.20250912 menhirCST.20250912 menhirLib.20250912 menhirSdk.20250912 mtime.2.1.0 multicore-magic.2.3.1 notty-community.dev num.1.6 ocaml.5.4.0 ocaml-base-compiler.5.4.0 ocaml-compiler.5.4.0 ocaml-compiler-libs.v0.17.0 ocaml-config.3 ocaml-options-vanilla.1 ocaml-syntax-shims.1.0.0 ocaml-version.4.0.3 ocaml_intrinsics_kernel.v0.17.1 ocamlbuild.0.16.1 ocamlfind.1.9.8 optint.0.3.0 ordering.3.20.2 parsexp.v0.17.0 pp.2.0.0 pprint.20230830 ppx_assert.v0.17.0 ppx_base.v0.17.0 ppx_cold.v0.17.0 ppx_compare.v0.17.0 ppx_derivers.1.2.1 ppx_deriving.6.1.1 ppx_enumerate.v0.17.0 ppx_expect.v0.17.3 ppx_fields_conv.v0.17.0 ppx_globalize.v0.17.2 ppx_hash.v0.17.0 ppx_here.v0.17.0 ppx_inline_test.v0.17.1 ppx_minidebug.dev ppx_optcomp.v0.17.1 ppx_sexp_conv.v0.17.1 ppx_string.v0.17.0 ppx_variants_conv.v0.17.1 ppxlib.0.37.0 ppxlib_jane.v0.17.4 printbox.0.12 printbox-ext-plot.0.12 printbox-html.0.12 printbox-md.0.12 printbox-text.0.12 psq.0.2.1 ptime.1.2.0 re.1.14.0 result.1.5 saturn_lockfree.0.5.0 seq.base sexplib.v0.17.0 sexplib0.v0.17.0 sqlite3.5.3.1 stdio.v0.17.0 stdlib-shims.0.3.0 stdune.3.20.2 stringext.1.6.0 thread-local-storage.0.2 thread-table.1.0.0 time_now.v0.17.0 topkg.1.1.1 tyxml.4.6.0 uri.4.4.0 uri-sexp.4.4.0 uring.2.7.0 uucp.17.0.0 uutf.1.0.4 variantslib.v0.17.0 yojson.3.0.0")
 (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.4 --depext-only -y neural_nets_lib.dev arrayjit.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"))
)

2025-12-10 14:58.43: Waiting for resource in pool OCluster
2025-12-10 14:58.44: Waiting for worker…
2025-12-10 15:06.09: Got resource from pool OCluster
Building on clete
All commits already cached
HEAD is now at 70dfecbb Refactor vbs from Map to list for order-preserving let bindings

(from ocaml/opam:alpine-3.22-ocaml-5.4@sha256:8e38c5f7a0619e59e641da986cc6e5a2fb675f58f51a0438d81159631878e8fa)
2025-12-10 15:06.36 ---> saved as "3610d2e4ecf908516fa5cd0b42f61fa30c0a32fae0d20c6a95c58a2cde134d65"

/: (comment alpine-3.22-5.4_opam-2.4)

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

/: (env CLICOLOR_FORCE 1)

/: (env OPAMCOLOR always)

/: (workdir /src)

/src: (run (shell "sudo ln -f /usr/bin/opam-2.4 /usr/bin/opam"))
2025-12-10 15:06.36 ---> saved as "820118d0eb54b68c3da09657de32137103a9432395d1f6165aa111c0f0278039"

/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 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
Format upgrade done.

<><> Updating repositories ><><><><><><><><><><><><><><><><><><><><><><><><><><>
[default] Initialised
2025-12-10 15:07.06 ---> saved as "25da5b698c660f158fde90556f8568dd476f97ad1a1a7c09c1a532fea86d4a54"

/src: (run (shell "uname -rs && opam exec -- ocaml -version && opam --version"))
Linux 6.8.0-84-generic
The OCaml toplevel, version 5.4.0
2.4.1
2025-12-10 15:07.07 ---> saved as "8eb7a0bc02b58e6d717d7140ad6c45ee7ca826c5fcee980a470c1cf869ee7ff7"

/src: (workdir /src)

/src: (run (shell "sudo chown opam /src"))
2025-12-10 15:07.08 ---> saved as "40d19b76d2f0774b6d2c09fbbab6c31f0be48fa878028495a8fe053c829a6314"

/src: (run (cache (opam-archives (target /home/opam/.opam/download-cache)))
           (network host)
           (shell "cd ~/opam-repository && (git cat-file -e d684c896eb6f7e6030d6ee65338d9db22a612f01 || git fetch origin master) && git reset -q --hard d684c896eb6f7e6030d6ee65338d9db22a612f01 && git log --no-decorate -n1 --oneline && opam update -u"))
From https://github.com/ocaml/opam-repository
 * branch                  master     -> FETCH_HEAD
   2ec6d6cc92..d684c896eb  master     -> origin/master
d684c896eb Merge pull request #29052 from balat/maintenance

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

Already up-to-date.
Nothing to do.
# To update the current shell environment, run: eval $(opam env)
2025-12-10 15:07.40 ---> saved as "7a94e0401935471c630ed0dc4993c6d8d2e3ef2afb993bd45f8c8210389c1b06"

/src: (copy (src neural_nets_lib.opam arrayjit.opam) (dst ./))
2025-12-10 15:07.40 ---> saved as "cd9d819100aba9ee53631d19834e35411155137cf33243879a066d5acd247f62"

/src: (run (network host)
           (shell  "opam pin add -yn neural_nets_lib.dev './' && \
                  \nopam pin add -yn arrayjit.dev './'"))
[neural_nets_lib.dev] synchronised (file:///src)
The following additional pinnings are required by neural_nets_lib.dev:
  - ppx_minidebug.dev at git+https://github.com/lukstafi/ppx_minidebug.git#86a19de906add05caa0aa1626add1572da2f070d
  - notty-community.dev at git+https://github.com/lukstafi/notty-community.git#708e36ba78ecb4ec1bf12de2b087e549d6e42893
Pin and install them? [Y/n] y
[ppx_minidebug.dev] synchronised (no changes)
ppx_minidebug is now pinned to git+https://github.com/lukstafi/ppx_minidebug.git#86a19de906add05caa0aa1626add1572da2f070d (version dev)
[notty-community.dev] synchronised (no changes)
notty-community is now pinned to git+https://github.com/lukstafi/notty-community.git#708e36ba78ecb4ec1bf12de2b087e549d6e42893 (version dev)
neural_nets_lib is now pinned to file:///src (version dev)
[arrayjit.dev] synchronised (file:///src)
arrayjit is now pinned to file:///src (version dev)
2025-12-10 15:07.51 ---> saved as "e123730006755bb33cbc1882cef5fb98012638f080e7b2ca62e9f7f178281958"

/src: (run (network host)
           (shell "echo '(lang dune 3.0)' > './dune-project'"))
2025-12-10 15:07.52 ---> saved as "14ad4ec072c6e8da932575da3f0dafd20607cde397b29c45e4d439804a2caf20"

/src: (env DEPS "angstrom.0.16.1 astring.0.8.5 backoff.0.1.1 base.v0.17.3 base-bigarray.base base-bytes.base base-domains.base base-effects.base base-nnp.base base-threads.base base-unix.base base64.3.5.2 bigstringaf.0.10.0 camlp-streams.5.0.1 camlzip.1.13 cmdliner.2.1.0 cohttp.6.1.1 cohttp-eio.6.1.1 conf-libcurl.2 conf-libffi.2.0.0 conf-pkg-config.4 conf-sqlite3.1 conf-zlib.1 cppo.1.8.0 csexp.1.5.2 cstruct.6.2.0 csv.2.4 ctypes.0.24.0 ctypes-foreign.0.24.0 curl.0.10.0 domain-local-await.1.0.1 dune.3.20.2 dune-configurator.3.20.2 dune-private-libs.3.20.2 dune-site.3.20.2 dyn.3.20.2 eio.1.3 eio_linux.1.3 eio_main.1.3 eio_posix.1.3 fieldslib.v0.17.0 fmt.0.11.0 hmap.0.8.1 http.6.1.1 integers.0.7.0 iomux.0.4 jane-street-headers.v0.17.0 jsonrpc.1.24.0 jst-config.v0.17.0 logs.0.10.0 lwt-dllist.1.1.0 mdx.2.5.1 menhir.20250912 menhirCST.20250912 menhirLib.20250912 menhirSdk.20250912 mtime.2.1.0 multicore-magic.2.3.1 notty-community.dev num.1.6 ocaml.5.4.0 ocaml-base-compiler.5.4.0 ocaml-compiler.5.4.0 ocaml-compiler-libs.v0.17.0 ocaml-config.3 ocaml-options-vanilla.1 ocaml-syntax-shims.1.0.0 ocaml-version.4.0.3 ocaml_intrinsics_kernel.v0.17.1 ocamlbuild.0.16.1 ocamlfind.1.9.8 optint.0.3.0 ordering.3.20.2 parsexp.v0.17.0 pp.2.0.0 pprint.20230830 ppx_assert.v0.17.0 ppx_base.v0.17.0 ppx_cold.v0.17.0 ppx_compare.v0.17.0 ppx_derivers.1.2.1 ppx_deriving.6.1.1 ppx_enumerate.v0.17.0 ppx_expect.v0.17.3 ppx_fields_conv.v0.17.0 ppx_globalize.v0.17.2 ppx_hash.v0.17.0 ppx_here.v0.17.0 ppx_inline_test.v0.17.1 ppx_minidebug.dev ppx_optcomp.v0.17.1 ppx_sexp_conv.v0.17.1 ppx_string.v0.17.0 ppx_variants_conv.v0.17.1 ppxlib.0.37.0 ppxlib_jane.v0.17.4 printbox.0.12 printbox-ext-plot.0.12 printbox-html.0.12 printbox-md.0.12 printbox-text.0.12 psq.0.2.1 ptime.1.2.0 re.1.14.0 result.1.5 saturn_lockfree.0.5.0 seq.base sexplib.v0.17.0 sexplib0.v0.17.0 sqlite3.5.3.1 stdio.v0.17.0 stdlib-shims.0.3.0 stdune.3.20.2 stringext.1.6.0 thread-local-storage.0.2 thread-table.1.0.0 time_now.v0.17.0 topkg.1.1.1 tyxml.4.6.0 uri.4.4.0 uri-sexp.4.4.0 uring.2.7.0 uucp.17.0.0 uutf.1.0.4 variantslib.v0.17.0 yojson.3.0.0")

/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.4 --depext-only -y neural_nets_lib.dev arrayjit.dev $DEPS"))
+ /usr/bin/sudo "apk" "update"
- fetch https://dl-cdn.alpinelinux.org/alpine/v3.22/main/x86_64/APKINDEX.tar.gz
- fetch https://dl-cdn.alpinelinux.org/alpine/v3.22/community/x86_64/APKINDEX.tar.gz
- fetch https://dl-cdn.alpinelinux.org/alpine/edge/main/x86_64/APKINDEX.tar.gz
- fetch https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz
- fetch https://dl-cdn.alpinelinux.org/alpine/edge/testing/x86_64/APKINDEX.tar.gz
- v3.22.2-302-g5e12ea0d581 [https://dl-cdn.alpinelinux.org/alpine/v3.22/main]
- v3.22.2-302-g5e12ea0d581 [https://dl-cdn.alpinelinux.org/alpine/v3.22/community]
- v3.23.0-600-g69f6bcb3b2f [https://dl-cdn.alpinelinux.org/alpine/edge/main]
- v3.23.0-602-gd6f8aa0316d [https://dl-cdn.alpinelinux.org/alpine/edge/community]
- v3.23.0-592-g920d1f2bf5a [https://dl-cdn.alpinelinux.org/alpine/edge/testing]
- OK: 60303 distinct packages available

<><> Synchronising pinned packages ><><><><><><><><><><><><><><><><><><><><><><>
[arrayjit.dev] synchronised (file:///src)
[neural_nets_lib.dev] synchronised (file:///src)
[notty-community.dev] synchronised (no changes)
[ppx_minidebug.dev] synchronised (no changes)

[NOTE] Package ocaml-options-vanilla is already installed (current version is 1).
[NOTE] Package ocaml-config is already installed (current version is 3).
[NOTE] Package ocaml-compiler is already installed (current version is 5.4.0).
[NOTE] Package ocaml-base-compiler is already installed (current version is 5.4.0).
[NOTE] Package ocaml is already installed (current version is 5.4.0).
[NOTE] Package base-unix is already installed (current version is base).
[NOTE] Package base-threads is already installed (current version is base).
[NOTE] Package base-nnp is already installed (current version is base).
[NOTE] Package base-effects is already installed (current version is base).
[NOTE] Package base-domains is already installed (current version is base).
[NOTE] Package base-bigarray is already installed (current version is base).

The following system packages will first need to be installed:
    curl-dev libffi-dev linux-headers sqlite-dev zlib-dev

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

+ /usr/bin/sudo "apk" "add" "curl-dev" "libffi-dev" "linux-headers" "sqlite-dev" "zlib-dev"
- (1/15) Installing brotli (1.1.0-r2)
- (2/15) Installing brotli-dev (1.1.0-r2)
- (3/15) Installing c-ares-dev (1.34.5-r0)
- (4/15) Installing libidn2-dev (2.3.7-r0)
- (5/15) Installing libpsl-utils (0.21.5-r3)
- (6/15) Installing libpsl-dev (0.21.5-r3)
- (7/15) Installing nghttp2-dev (1.65.0-r0)
- (8/15) Installing openssl-dev (3.5.4-r0)
- (9/15) Installing zlib-dev (1.3.1-r2)
- (10/15) Installing zstd-dev (1.5.7-r0)
- (11/15) Installing curl-dev (8.14.1-r2)
- (12/15) Installing linux-headers (6.14.2-r0)
- (13/15) Installing libffi-dev (3.4.8-r0)
- (14/15) Installing sqlite (3.49.2-r1)
- (15/15) Installing sqlite-dev (3.49.2-r1)
- Executing busybox-1.37.0-r19.trigger
- OK: 321 MiB in 118 packages
2025-12-10 15:08.13 ---> saved as "ec48f174afa0fea2560a869e77bbe412211ab6e46ff534e4adf59af61e3d7155"

/src: (run (cache (opam-archives (target /home/opam/.opam/download-cache)))
           (network host)
           (shell "opam install $DEPS"))

<><> Synchronising pinned packages ><><><><><><><><><><><><><><><><><><><><><><>
[notty-community.dev] synchronised (no changes)
[ppx_minidebug.dev] synchronised (no changes)

[NOTE] Package ocaml-options-vanilla is already installed (current version is 1).
[NOTE] Package ocaml-config is already installed (current version is 3).
[NOTE] Package ocaml-compiler is already installed (current version is 5.4.0).
[NOTE] Package ocaml-base-compiler is already installed (current version is 5.4.0).
[NOTE] Package ocaml is already installed (current version is 5.4.0).
[NOTE] Package base-unix is already installed (current version is base).
[NOTE] Package base-threads is already installed (current version is base).
[NOTE] Package base-nnp is already installed (current version is base).
[NOTE] Package base-effects is already installed (current version is base).
[NOTE] Package base-domains is already installed (current version is base).
[NOTE] Package base-bigarray is already installed (current version is base).
The following actions will be performed:
=== install 115 packages
  - install angstrom                0.16.1
  - install astring                 0.8.5
  - install backoff                 0.1.1
  - install base                    v0.17.3
  - install base-bytes              base
  - install base64                  3.5.2
  - install bigstringaf             0.10.0
  - install camlp-streams           5.0.1
  - install camlzip                 1.13
  - install cmdliner                2.1.0
  - install cohttp                  6.1.1
  - install cohttp-eio              6.1.1
  - install conf-libcurl            2
  - install conf-libffi             2.0.0
  - install conf-pkg-config         4
  - install conf-sqlite3            1
  - install conf-zlib               1
  - install cppo                    1.8.0
  - install csexp                   1.5.2
  - install cstruct                 6.2.0
  - install csv                     2.4
  - install ctypes                  0.24.0
  - install ctypes-foreign          0.24.0
  - install curl                    0.10.0
  - install domain-local-await      1.0.1
  - install dune                    3.20.2
  - install dune-configurator       3.20.2
  - install dune-private-libs       3.20.2
  - install dune-site               3.20.2
  - install dyn                     3.20.2
  - install eio                     1.3
  - install eio_linux               1.3
  - install eio_main                1.3
  - install eio_posix               1.3
  - install fieldslib               v0.17.0
  - install fmt                     0.11.0
  - install hmap                    0.8.1
  - install http                    6.1.1
  - install integers                0.7.0
  - install iomux                   0.4
  - install jane-street-headers     v0.17.0
  - install jsonrpc                 1.24.0
  - install jst-config              v0.17.0
  - install logs                    0.10.0
  - install lwt-dllist              1.1.0
  - install mdx                     2.5.1
  - install menhir                  20250912
  - install menhirCST               20250912
  - install menhirLib               20250912
  - install menhirSdk               20250912
  - install mtime                   2.1.0
  - install multicore-magic         2.3.1
  - install notty-community         dev (pinned)
  - install num                     1.6
  - install ocaml-compiler-libs     v0.17.0
  - install ocaml-syntax-shims      1.0.0
  - install ocaml-version           4.0.3
  - install ocaml_intrinsics_kernel v0.17.1
  - install ocamlbuild              0.16.1
  - install ocamlfind               1.9.8
  - install optint                  0.3.0
  - install ordering                3.20.2
  - install parsexp                 v0.17.0
  - install pp                      2.0.0
  - install pprint                  20230830
  - install ppx_assert              v0.17.0
  - install ppx_base                v0.17.0
  - install ppx_cold                v0.17.0
  - install ppx_compare             v0.17.0
  - install ppx_derivers            1.2.1
  - install ppx_deriving            6.1.1
  - install ppx_enumerate           v0.17.0
  - install ppx_expect              v0.17.3
  - install ppx_fields_conv         v0.17.0
  - install ppx_globalize           v0.17.2
  - install ppx_hash                v0.17.0
  - install ppx_here                v0.17.0
  - install ppx_inline_test         v0.17.1
  - install ppx_minidebug           dev (pinned)
  - install ppx_optcomp             v0.17.1
  - install ppx_sexp_conv           v0.17.1
  - install ppx_string              v0.17.0
  - install ppx_variants_conv       v0.17.1
  - install ppxlib                  0.37.0
  - install ppxlib_jane             v0.17.4
  - install printbox                0.12
  - install printbox-ext-plot       0.12
  - install printbox-html           0.12
  - install printbox-md             0.12
  - install printbox-text           0.12
  - install psq                     0.2.1
  - install ptime                   1.2.0
  - install re                      1.14.0
  - install result                  1.5
  - install saturn_lockfree         0.5.0
  - install seq                     base
  - install sexplib                 v0.17.0
  - install sexplib0                v0.17.0
  - install sqlite3                 5.3.1
  - install stdio                   v0.17.0
  - install stdlib-shims            0.3.0
  - install stdune                  3.20.2
  - install stringext               1.6.0
  - install thread-local-storage    0.2
  - install thread-table            1.0.0
  - install time_now                v0.17.0
  - install topkg                   1.1.1
  - install tyxml                   4.6.0
  - install uri                     4.4.0
  - install uri-sexp                4.4.0
  - install uring                   2.7.0
  - install uucp                    17.0.0
  - install uutf                    1.0.4
  - install variantslib             v0.17.0
  - install yojson                  3.0.0

<><> Processing actions <><><><><><><><><><><><><><><><><><><><><><><><><><><><>
-> retrieved angstrom.0.16.1  (cached)
-> retrieved astring.0.8.5  (cached)
-> retrieved backoff.0.1.1  (cached)
-> retrieved base64.3.5.2  (cached)
-> retrieved base.v0.17.3  (cached)
-> retrieved bigstringaf.0.10.0  (cached)
-> retrieved camlp-streams.5.0.1  (cached)
-> retrieved camlzip.1.13  (cached)
-> installed conf-libcurl.2
-> retrieved cmdliner.2.1.0  (cached)
-> retrieved cppo.1.8.0  (cached)
-> retrieved cohttp.6.1.1, cohttp-eio.6.1.1, http.6.1.1  (cached)
-> installed conf-pkg-config.4
-> retrieved csexp.1.5.2  (cached)
-> retrieved cstruct.6.2.0  (cached)
-> retrieved csv.2.4  (cached)
-> installed conf-libffi.2.0.0
-> installed conf-sqlite3.1
-> installed conf-zlib.1
-> retrieved ctypes.0.24.0, ctypes-foreign.0.24.0  (cached)
-> retrieved curl.0.10.0  (cached)
-> retrieved domain-local-await.1.0.1  (cached)
-> retrieved fieldslib.v0.17.0  (cached)
-> retrieved fmt.0.11.0  (cached)
-> retrieved eio.1.3, eio_linux.1.3, eio_main.1.3, eio_posix.1.3  (cached)
-> retrieved hmap.0.8.1  (cached)
-> retrieved integers.0.7.0  (cached)
-> retrieved iomux.0.4  (cached)
-> retrieved jane-street-headers.v0.17.0  (cached)
-> retrieved jst-config.v0.17.0  (cached)
-> retrieved logs.0.10.0  (cached)
-> retrieved lwt-dllist.1.1.0  (cached)
-> retrieved mdx.2.5.1  (cached)
-> retrieved menhir.20250912, menhirCST.20250912, menhirLib.20250912, menhirSdk.20250912  (cached)
-> retrieved dune.3.20.2, dune-configurator.3.20.2, dune-private-libs.3.20.2, dune-site.3.20.2, dyn.3.20.2, ordering.3.20.2, stdune.3.20.2  (cached)
-> retrieved jsonrpc.1.24.0  (cached)
-> retrieved mtime.2.1.0  (cached)
-> retrieved multicore-magic.2.3.1  (cached)
-> retrieved num.1.6  (cached)
-> retrieved ocaml-compiler-libs.v0.17.0  (cached)
-> retrieved ocaml-syntax-shims.1.0.0  (cached)
-> retrieved ocaml-version.4.0.3  (cached)
-> installed cmdliner.2.1.0
-> retrieved ocaml_intrinsics_kernel.v0.17.1  (cached)
-> retrieved ocamlbuild.0.16.1  (cached)
-> retrieved ocamlfind.1.9.8  (cached)
-> retrieved optint.0.3.0  (cached)
-> retrieved parsexp.v0.17.0  (cached)
-> retrieved pp.2.0.0  (cached)
-> retrieved notty-community.dev  (no changes)
-> retrieved pprint.20230830  (cached)
-> retrieved ppx_assert.v0.17.0  (cached)
-> retrieved ppx_base.v0.17.0  (cached)
-> retrieved ppx_cold.v0.17.0  (cached)
-> retrieved ppx_compare.v0.17.0  (cached)
-> retrieved ppx_derivers.1.2.1  (cached)
-> retrieved ppx_deriving.6.1.1  (cached)
-> retrieved ppx_enumerate.v0.17.0  (cached)
-> retrieved ppx_expect.v0.17.3  (cached)
-> retrieved ppx_fields_conv.v0.17.0  (cached)
-> retrieved ppx_globalize.v0.17.2  (cached)
-> retrieved ppx_hash.v0.17.0  (cached)
-> retrieved ppx_here.v0.17.0  (cached)
-> retrieved ppx_inline_test.v0.17.1  (cached)
-> retrieved ppx_optcomp.v0.17.1  (cached)
-> retrieved ppx_sexp_conv.v0.17.1  (cached)
-> retrieved ppx_string.v0.17.0  (cached)
-> retrieved ppx_variants_conv.v0.17.1  (cached)
-> retrieved ppxlib_jane.v0.17.4  (cached)
-> retrieved ppxlib.0.37.0  (cached)
-> retrieved psq.0.2.1  (cached)
-> retrieved ptime.1.2.0  (cached)
-> retrieved re.1.14.0  (cached)
-> retrieved ppx_minidebug.dev  (no changes)
-> retrieved result.1.5  (cached)
-> retrieved seq.base  (cached)
-> installed seq.base
-> retrieved sexplib.v0.17.0  (cached)
-> retrieved printbox.0.12, printbox-ext-plot.0.12, printbox-html.0.12, printbox-md.0.12, printbox-text.0.12  (cached)
-> retrieved saturn_lockfree.0.5.0  (cached)
-> retrieved sexplib0.v0.17.0  (cached)
-> retrieved sqlite3.5.3.1  (cached)
-> retrieved stdio.v0.17.0  (cached)
-> retrieved stdlib-shims.0.3.0  (cached)
-> retrieved stringext.1.6.0  (cached)
-> retrieved thread-local-storage.0.2  (cached)
-> retrieved thread-table.1.0.0  (cached)
-> retrieved time_now.v0.17.0  (cached)
-> retrieved topkg.1.1.1  (cached)
-> retrieved tyxml.4.6.0  (cached)
-> retrieved uri.4.4.0, uri-sexp.4.4.0  (cached)
-> retrieved uutf.1.0.4  (cached)
-> retrieved variantslib.v0.17.0  (cached)
-> retrieved yojson.3.0.0  (cached)
-> retrieved uring.2.7.0  (cached)
-> retrieved uucp.17.0.0  (cached)
-> installed num.1.6
-> installed ocamlfind.1.9.8
-> installed base-bytes.base
-> installed camlzip.1.13
-> installed ocamlbuild.0.16.1
-> installed topkg.1.1.1
-> installed hmap.0.8.1
-> installed mtime.2.1.0
-> installed fmt.0.11.0
-> installed uutf.1.0.4
-> installed ptime.1.2.0
-> installed astring.0.8.5
-> installed logs.0.10.0
-> installed dune.3.20.2
-> installed backoff.0.1.1
-> installed base64.3.5.2
-> installed camlp-streams.5.0.1
-> installed cppo.1.8.0
-> installed csexp.1.5.2
-> installed cstruct.6.2.0
-> installed csv.2.4
-> installed http.6.1.1
-> installed jane-street-headers.v0.17.0
-> installed lwt-dllist.1.1.0
-> installed menhirCST.20250912
-> installed menhirLib.20250912
-> installed menhirSdk.20250912
-> installed multicore-magic.2.3.1
-> installed ocaml-compiler-libs.v0.17.0
-> installed ocaml-syntax-shims.1.0.0
-> installed ocaml-version.4.0.3
-> installed ocaml_intrinsics_kernel.v0.17.1
-> installed optint.0.3.0
-> installed pp.2.0.0
-> installed pprint.20230830
-> installed ppx_derivers.1.2.1
-> installed printbox.0.12
-> installed psq.0.2.1
-> installed re.1.14.0
-> installed result.1.5
-> installed sexplib0.v0.17.0
-> installed stdlib-shims.0.3.0
-> installed stringext.1.6.0
-> installed thread-local-storage.0.2
-> installed thread-table.1.0.0
-> installed yojson.3.0.0
-> installed saturn_lockfree.0.5.0
-> installed domain-local-await.1.0.1
-> installed jsonrpc.1.24.0
-> installed integers.0.7.0
-> installed notty-community.dev
-> installed ordering.3.20.2
-> installed parsexp.v0.17.0
-> installed dune-configurator.3.20.2
-> installed mdx.2.5.1
-> installed bigstringaf.0.10.0
-> installed iomux.0.4
-> installed sexplib.v0.17.0
-> installed dyn.3.20.2
-> installed tyxml.4.6.0
-> installed sqlite3.5.3.1
-> installed angstrom.0.16.1
-> installed eio.1.3
-> installed printbox-html.0.12
-> installed uring.2.7.0
-> installed curl.0.10.0
-> installed eio_linux.1.3
-> installed eio_posix.1.3
-> installed uri.4.4.0
-> installed eio_main.1.3
-> installed ctypes.0.24.0
-> installed uucp.17.0.0
-> installed stdune.3.20.2
-> installed base.v0.17.3
-> installed printbox-text.0.12
-> installed ctypes-foreign.0.24.0
-> installed fieldslib.v0.17.0
-> installed variantslib.v0.17.0
-> installed printbox-md.0.12
-> installed stdio.v0.17.0
-> installed printbox-ext-plot.0.12
-> installed dune-private-libs.3.20.2
-> installed menhir.20250912
-> installed dune-site.3.20.2
-> installed ppxlib.0.37.0
-> installed ppx_optcomp.v0.17.1
-> installed ppxlib_jane.v0.17.4
-> installed ppx_here.v0.17.0
-> installed ppx_cold.v0.17.0
-> installed ppx_variants_conv.v0.17.1
-> installed ppx_fields_conv.v0.17.0
-> installed ppx_enumerate.v0.17.0
-> installed ppx_globalize.v0.17.2
-> installed ppx_deriving.6.1.1
-> installed ppx_compare.v0.17.0
-> installed ppx_sexp_conv.v0.17.1
-> installed uri-sexp.4.4.0
-> installed ppx_hash.v0.17.0
-> installed ppx_assert.v0.17.0
-> installed ppx_base.v0.17.0
-> installed cohttp.6.1.1
-> installed cohttp-eio.6.1.1
-> installed jst-config.v0.17.0
-> installed ppx_string.v0.17.0
-> installed time_now.v0.17.0
-> installed ppx_minidebug.dev
-> installed ppx_inline_test.v0.17.1
-> installed ppx_expect.v0.17.3
Done.
# To update the current shell environment, run: eval $(opam env)
2025-12-10 15:11.42 ---> saved as "391aebffe6feb4ea488551daeabecc75adbfd2474c104e21e6f4855cd8c17f1d"

/src: (copy (src .) (dst /src))
2025-12-10 15:11.43 ---> saved as "d2ba15da403370c85d9970f35492502dd8069fdbdc7ac25e63080bd5ae4e81b4"

/src: (run (shell "opam exec -- dune build @install @check @runtest && rm -rf _build"))
(cd _build/.sandbox/bf0b2e486aa5f4600374c76e3a8be01b/default && /home/opam/.opam/5.4/bin/menhir --table tensor/parser.mly --base tensor/parser --infer-write-query tensor/parser__mock.ml.mock)
File "tensor/parser.mly", line 79, characters 7-16:
Warning: the token AMPERSAND is unused.
File "tensor/parser.mly", line 78, characters 7-12:
Warning: the token CARET is unused.
(cd _build/.sandbox/681a44996e716faaeb71b1fac2b6d973/default && /home/opam/.opam/5.4/bin/menhir --table --explain tensor/parser.mly --base tensor/parser --infer-read-reply tensor/parser__mock.mli.inferred)
Warning: 11 states have shift/reduce conflicts.
Warning: 2 states have reduce/reduce conflicts.
Warning: 19 shift/reduce conflicts were arbitrarily resolved.
Warning: 10 reduce/reduce conflicts were arbitrarily resolved.
File "tensor/parser.mly", line 218, characters 4-70:
Warning: production row_spec -> axes_spec option(COMMA) ellipsis_spec option(COMMA) is never reduced.
File "tensor/parser.mly", line 224, characters 4-38:
Warning: production row_spec -> ellipsis_spec option(COMMA) is never reduced.
Warning: in total, 2 productions are never reduced.
(cd _build/default/test/operations/config && ./ocannl_read_config.exe --read=backend_extension)
Retrieving commandline, environment, or config file variable ocannl_log_level
Found 0, in the config file
Wrote value of 'backend_extension' to ocannl_backend_extension.txt
(cd _build/default/test/operations/config && ./ocannl_read_config.exe --read=backend)
Retrieving commandline, environment, or config file variable ocannl_log_level
Found 0, in the config file
Wrote value of 'backend' to ocannl_backend.txt
File "test/ppx/test_ppx_name_conflict_expected.ml", line 1, characters 0-0:
/usr/bin/git --no-pager diff --no-index --color=always -u _build/default/test/ppx/test_ppx_name_conflict_expected.ml _build/default/test/ppx/test_ppx_name_conflict_actual.ml
diff --git a/_build/default/test/ppx/test_ppx_name_conflict_expected.ml b/_build/default/test/ppx/test_ppx_name_conflict_actual.ml
index 90928e1..033b18d 100644
--- a/_build/default/test/ppx/test_ppx_name_conflict_expected.ml
+++ b/_build/default/test/ppx/test_ppx_name_conflict_actual.ml
@@ -4,6 +4,12 @@ let test_inline_defs =
   let w =
     [%ocaml.error
       "ppx_ocannl: name clash for inline definition or variable capture 'w' - the name is already defined"] in
+  let w =
+    [%ocaml.error
+      "ppx_ocannl: name clash for inline definition or variable capture 'w' - the name is already defined"] in
+  let w =
+    (TDSL.param ?more_label:None ?value:None ?values:None ?param_init:None
+       "w") () in
   let open! TDSL.O in
     fun x ->
       let q = ( * ) ?label:(Some ["q"]) w x in
@@ -15,8 +21,8 @@ let test_inline_defs =
                        (x.Tensor.value).Ir.Tnode.label]))
         (( * ) ?label:None q k) v
 let test_variable_capture =
-  let a = Shape.get_variable_ref "a"
-  and b = Shape.get_variable_ref "b" in
+  let b = Shape.get_variable_ref "b" in
+  let a = Shape.get_variable_ref "a" in
   let open! TDSL.O in
     fun x ->
       Shape.set_equal a b;
@@ -30,10 +36,11 @@ let test_variable_capture =
                       b;
                       a] "a, b => b, a" x
 let test_mixed =
-  let a = Shape.get_variable_ref "a"
-  and b =
+  let b =
     [%ocaml.error
       "ppx_ocannl: name clash for inline definition or variable capture 'b' - the name is already defined"] in
+  let b = Shape.get_variable_ref "b" in
+  let a = Shape.get_variable_ref "a" in
   let open! TDSL.O in
     fun x ->
       Shape.set_equal a b;
File "test/ppx/test_ppx_op_expected.ml", line 1, characters 0-0:
/usr/bin/git --no-pager diff --no-index --color=always -u _build/default/test/ppx/test_ppx_op_expected.ml _build/default/test/ppx/test_ppx_op_actual.ml
diff --git a/_build/default/test/ppx/test_ppx_op_expected.ml b/_build/default/test/ppx/test_ppx_op_actual.ml
index fb7e966..9b72a53 100644
--- a/_build/default/test/ppx/test_ppx_op_expected.ml
+++ b/_build/default/test/ppx/test_ppx_op_actual.ml
@@ -52,8 +52,8 @@ let y =
 let z =
   let hey5 =
     (TDSL.param ?more_label:None ?value:None ?values:None ?param_init:None
-       "hey5") ()
-  and hey6 =
+       "hey5") () in
+  let hey6 =
     (TDSL.param ?more_label:None ?value:None ?values:None ?param_init:None
        "hey6") () in
   let open! TDSL.O in
@@ -66,8 +66,8 @@ and use_padding = true
 let z2 =
   let hey7 =
     (TDSL.param ?more_label:None ?value:None ?values:None ?param_init:None
-       "hey7") ()
-  and hey8 =
+       "hey7") () in
+  let hey8 =
     (TDSL.param ?more_label:None ?value:None ?values:None ?param_init:None
        "hey8") () in
   let open! TDSL.O in
@@ -88,12 +88,12 @@ let z2 =
 let z3 =
   let s = 2
   and d = 3 in
-  let hey10 =
-    (TDSL.param ?more_label:None ?value:None ?values:None ?param_init:None
-       "hey10") ()
-  and hey9 =
+  let hey9 =
     (TDSL.param ?more_label:None ?value:None ?values:None ?param_init:None
        "hey9") () in
+  let hey10 =
+    (TDSL.param ?more_label:None ?value:None ?values:None ?param_init:None
+       "hey10") () in
   let open! TDSL.O in
     einsum ?label:(Some [])
       (String.concat ~sep:""
@@ -120,12 +120,12 @@ let () = ignore (z, z2, z3)
 let mlp_layer =
   let open! TDSL.O in
     fun ~label ~hid_dim () ->
-      let b =
-        ((TDSL.param ?more_label:(Some label) ?value:None ?values:None
-            ?param_init:None "b") ~output_dims:[hid_dim]) ()
-      and w =
+      let w =
         (TDSL.param ?more_label:(Some label) ?value:None ?values:None
            ?param_init:None "w") () in
+      let b =
+        ((TDSL.param ?more_label:(Some label) ?value:None ?values:None
+            ?param_init:None "b") ~output_dims:[hid_dim]) () in
       fun ~x ->
         relu ?label:(Some ["mlp_layer"])
           ((+) ?label:None (( * ) ?label:None w x) b)
(cd _build/default/test/operations && ./test_record_syntax.exe)
Retrieving commandline, environment, or config file variable ocannl_log_level
Found 0, in the config file
Test compilation successful!
Record syntax for both %op and %cd extensions works correctly.
All initialization patterns and shorthand notation supported.
(cd _build/default/test/ppx && ./test_ppx_op_expected.exe)
Retrieving commandline, environment, or config file variable ocannl_log_level
Found 0, in the config file
(cd _build/default/test/operations && ./test_where_precision.exe --ocannl_output_prec_in_ll_files=true --ocannl_output_debug_files_in_build_directory=true)
Retrieving commandline, environment, or config file variable ocannl_log_level
Found 0, in the config file
                 #3 where
                 scalar 2.00
#0 cond_conditionβ”‚#1 a_then_valβ”‚#2 b_else_val
scalar 0.00      β”‚scalar 1.00  β”‚scalar 2.00
(cd _build/default/test/operations && ./threefry4x32_demo.exe --ocannl_output_prec_in_ll_files=true --ocannl_output_debug_files_in_build_directory=true)
Retrieving commandline, environment, or config file variable ocannl_log_level
Found 0, in the config file
Generated 40 uniform random numbers:
  [0]: 0.4434
  [1]: 0.4639
  [2]: 0.6729
  [3]: 0.7324
  [4]: 0.3328
  [5]: 0.5605
  [6]: 0.8516
  [7]: 0.5068
  [8]: 0.3779
  [9]: 0.502
  [10]: 0.6562
  [11]: 0.9658
  [12]: 0.3562
  [13]: 0.8032
  [14]: 0.334
  [15]: 0.9951
  [16]: 0.8125
  [17]: 0.519
  [18]: 0.2344
  [19]: 0.1653
  [20]: 0.8521
  [21]: 0.1011
  [22]: 0.1813
  [23]: 0.312
  [24]: 0.9619
  [25]: 0.418
  [26]: 0.02972
  [27]: 0.4482
  [28]: 0.9067
  [29]: 0.3435
  [30]: 0.8198
  [31]: 0.4685
  [32]: 0.2257
  [33]: 0.1777
  [34]: 0.7402
  [35]: 0.8398
  [36]: 0.3726
  [37]: 0.5464
  [38]: 0.8584
  [39]: 0.5469
(cd _build/default/test/operations && ./top_down_prec.exe --ocannl_output_prec_in_ll_files=true --ocannl_output_debug_files_in_build_directory=true)
Retrieving commandline, environment, or config file variable ocannl_log_level
Found 0, in the config file
                      #8 *._d
                       8.00
                      #9 grad_*._d Virt/30
                      <void>
             #6 + Virt/152                 β”‚#4 c non-emb
             <void>                        β”‚ 2.00
             #7 grad_+ Virt/30             β”‚#5 grad_c Local/26030
             <void>                        β”‚<void>
#0 a non-emb         β”‚#2 b non-emb         β”‚
 2.00                β”‚ 2.00                β”‚
#1 grad_a Local/26030β”‚#3 grad_b Local/26030β”‚
<void>               β”‚<void>               β”‚
(cd _build/default/test/ppx && ./test_ppx_op.exe)
Retrieving commandline, environment, or config file variable ocannl_log_level
Found 0, in the config file
(cd _build/default/test/operations && ./test_threefry_precision.exe)
Retrieving commandline, environment, or config file variable ocannl_log_level
Found 0, in the config file
Retrieving commandline, environment, or config file variable ocannl_max_shape_error_origins
Not found, using default 20
Threefry4x32 result precision: uint4x32
Uniform result precision: single
Retrieving commandline, environment, or config file variable ocannl_backend
Found sync_cc, in the config file
Retrieving commandline, environment, or config file variable ocannl_cd_ident_style
Not found, using default heuristic
Retrieving commandline, environment, or config file variable ocannl_ll_ident_style
Not found, using default heuristic
Retrieving commandline, environment, or config file variable ocannl_output_prec_in_ll_files
Not found, using default false
Retrieving commandline, environment, or config file variable ocannl_prefer_backend_uniformity
Found true, in the config file
Retrieving commandline, environment, or config file variable ocannl_debug_log_to_stream_files
Not found, using default false
Retrieving commandline, environment, or config file variable ocannl_output_dlls_in_build_directory
Not found, using default false
Retrieving commandline, environment, or config file variable ocannl_cc_backend_optimization_level
Not found, using default 3
Retrieving commandline, environment, or config file variable ocannl_cc_backend_compiler_command
Not found, using default gcc
Retrieving commandline, environment, or config file variable ocannl_cc_backend_post_compile_timeout
Not found, using default 10.0
Retrieving commandline, environment, or config file variable ocannl_cc_backend_verify_codesign
Not found, using default false
Compilation successful!
Actual tensor precision in context: uint4x32
(cd _build/.sandbox/19b504106e49edf7a673a55b6d525583/default/test/operations && .operations_tutorials.inline-tests/inline-test-runner.exe inline-test-runner operations_tutorials -partition 'Found 0, in the config file' -source-tree-root ../.. -diff-cmd -)
Retrieving commandline, environment, or config file variable ocannl_log_level
Found 0, in the config file
(cd _build/.sandbox/19b504106e49edf7a673a55b6d525583/default/test/operations && .operations_tutorials.inline-tests/inline-test-runner.exe inline-test-runner operations_tutorials -partition 'Retrieving commandline, environment, or config file variable ocannl_log_level' -source-tree-root ../.. -diff-cmd -)
Retrieving commandline, environment, or config file variable ocannl_log_level
Found 0, in the config file
(cd _build/default/test/einsum && ./inline_permuted_view.exe)
Retrieving commandline, environment, or config file variable ocannl_log_level
Found 0, in the config file
HERE: test/einsum/inline_permuted_view.ml:20:21
β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚[3]: =>_c shape 0:4,1:3             β”‚
β”‚β”Œβ”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”β”‚
β”‚β”‚      β”‚axis 1                     β”‚β”‚
β”‚β”œβ”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”‚
β”‚β”‚axis 0β”‚ 1.20e+2  3.20e+2  5.20e+2 β”‚β”‚
β”‚β”‚      β”‚ 1.30e+2  3.55e+2  5.80e+2 β”‚β”‚
β”‚β”‚      β”‚ 1.40e+2  3.90e+2  6.40e+2 β”‚β”‚
β”‚β”‚      β”‚ 1.50e+2  4.25e+2  7.00e+2 β”‚β”‚
β”‚β””β”€β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜

HERE: test/einsum/inline_permuted_view.ml:34:26
                                  #5 +_d
                                   1.21e+2  3.21e+2  5.21e+2
                                   1.31e+2  3.56e+2  5.81e+2
                                   1.41e+2  3.91e+2  6.41e+2
                                   1.51e+2  4.26e+2  7.01e+2
                                 #3 =>_c1 Virt/15                                 β”‚#4 1 Virt/40
                                 <void>                                           β”‚<void>
                                 #2 * Local/1046                                  β”‚
                                 <void>                                           β”‚
#0 r3x5_a                                    β”‚#1 r5x4_b                           β”‚
 0.00     1.00     2.00     3.00     4.00    β”‚ 0.00     1.00     2.00     3.00    β”‚
 5.00     6.00     7.00     8.00     9.00    β”‚ 4.00     5.00     6.00     7.00    β”‚
 1.00e+1  1.10e+1  1.20e+1  1.30e+1  1.40e+1 β”‚ 8.00     9.00     1.00e+1  1.10e+1 β”‚
                                             β”‚ 1.20e+1  1.30e+1  1.40e+1  1.50e+1 β”‚
                                             β”‚ 1.60e+1  1.70e+1  1.80e+1  1.90e+1 β”‚
(cd _build/default/test/einsum && ./inline_permuted_view.exe --ocannl_output_debug_files_in_build_directory=true)
Retrieving commandline, environment, or config file variable ocannl_log_level
Found 0, in the config file
HERE: test/einsum/inline_permuted_view.ml:20:21
β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚[3]: =>_c shape 0:4,1:3             β”‚
β”‚β”Œβ”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”β”‚
β”‚β”‚      β”‚axis 1                     β”‚β”‚
β”‚β”œβ”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”‚
β”‚β”‚axis 0β”‚ 1.20e+2  3.20e+2  5.20e+2 β”‚β”‚
β”‚β”‚      β”‚ 1.30e+2  3.55e+2  5.80e+2 β”‚β”‚
β”‚β”‚      β”‚ 1.40e+2  3.90e+2  6.40e+2 β”‚β”‚
β”‚β”‚      β”‚ 1.50e+2  4.25e+2  7.00e+2 β”‚β”‚
β”‚β””β”€β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜

HERE: test/einsum/inline_permuted_view.ml:34:26
                                  #5 +_d
                                   1.21e+2  3.21e+2  5.21e+2
                                   1.31e+2  3.56e+2  5.81e+2
                                   1.41e+2  3.91e+2  6.41e+2
                                   1.51e+2  4.26e+2  7.01e+2
                                 #3 =>_c1 Virt/15                                 β”‚#4 1 Virt/40
                                 <void>                                           β”‚<void>
                                 #2 * Local/1046                                  β”‚
                                 <void>                                           β”‚
#0 r3x5_a                                    β”‚#1 r5x4_b                           β”‚
 0.00     1.00     2.00     3.00     4.00    β”‚ 0.00     1.00     2.00     3.00    β”‚
 5.00     6.00     7.00     8.00     9.00    β”‚ 4.00     5.00     6.00     7.00    β”‚
 1.00e+1  1.10e+1  1.20e+1  1.30e+1  1.40e+1 β”‚ 8.00     9.00     1.00e+1  1.10e+1 β”‚
                                             β”‚ 1.20e+1  1.30e+1  1.40e+1  1.50e+1 β”‚
                                             β”‚ 1.60e+1  1.70e+1  1.80e+1  1.90e+1 β”‚
File "test/training/dune", line 51, characters 7-19:
51 |  (name circles_conv)
            ^^^^^^^^^^^^
(cd _build/default/test/training && ./circles_conv.exe) > _build/default/test/training/circles_conv.exe.output
Fatal error: exception Invalid_argument("Assignments.to_low_level: indexing mismatch for cond_lhs: shape - vs. ((Iterator (Symbol 226)) (Fixed_idx 0))")
Raised at Stdlib.invalid_arg in file "stdlib.ml", line 30, characters 20-45
Called from Ir__Assignments.to_low_level.get in file "arrayjit/lib/assignments.ml", lines 186-189, characters 10-28
Called from Ir__Assignments.to_low_level.loop_accum.basecase in file "arrayjit/lib/assignments.ml", line 248, characters 19-42
Called from Ir__Assignments.to_low_level.loop_accum.for_loop.(fun) in file "arrayjit/lib/assignments.ml", line 263, characters 21-58
Called from Ir__Assignments.to_low_level.loop_accum.for_loop.(fun) in file "arrayjit/lib/assignments.ml", line 263, characters 21-58
Called from Ir__Assignments.to_low_level.loop_accum in file "arrayjit/lib/assignments.ml", line 267, characters 20-73
Called from Ir__Assignments.to_low_level.loop in file "arrayjit/lib/assignments.ml", line 362, characters 17-24
Called from Ir__Assignments.to_low_level.loop in file "arrayjit/lib/assignments.ml", line 361, characters 17-24
Called from Ir__Assignments.to_low_level.loop in file "arrayjit/lib/assignments.ml", line 361, characters 17-24
Called from Ir__Assignments.to_low_level.loop in file "arrayjit/lib/assignments.ml", line 362, characters 17-24
Called from Ir__Assignments.to_low_level.loop in file "arrayjit/lib/assignments.ml", line 362, characters 17-24
Called from Ir__Assignments.to_low_level.loop in file "arrayjit/lib/assignments.ml", line 362, characters 17-24
Called from Ir__Assignments.to_low_level.loop in file "arrayjit/lib/assignments.ml", line 362, characters 17-24
Called from Ir__Assignments.to_low_level.loop in file "arrayjit/lib/assignments.ml", line 362, characters 17-24
Called from Ir__Assignments.to_low_level.loop in file "arrayjit/lib/assignments.ml", line 362, characters 17-24
Called from Ir__Assignments.to_low_level.loop in file "arrayjit/lib/assignments.ml", line 362, characters 17-24
Called from Ir__Assignments.to_low_level.loop in file "arrayjit/lib/assignments.ml", line 362, characters 17-24
Called from Ir__Assignments.to_low_level.loop in file "arrayjit/lib/assignments.ml", line 362, characters 17-24
Called from Ir__Assignments.to_low_level.loop in file "arrayjit/lib/assignments.ml", line 362, characters 17-24
Called from Ir__Assignments.to_low_level.loop in file "arrayjit/lib/assignments.ml", line 362, characters 17-24
Called from Ir__Assignments.to_low_level.loop in file "arrayjit/lib/assignments.ml", line 362, characters 17-24
Called from Ir__Assignments.to_low_level.loop in file "arrayjit/lib/assignments.ml", line 359, characters 66-72
Called from Ir__Assignments.to_low_level.loop in file "arrayjit/lib/assignments.ml", line 362, characters 17-24
Called from Ir__Assignments.to_low_level.loop in file "arrayjit/lib/assignments.ml", line 359, characters 66-72
Called from Ir__Assignments.to_low_level.loop in file "arrayjit/lib/assignments.ml", line 361, characters 17-24
Called from Ir__Assignments.lower in file "arrayjit/lib/assignments.ml", line 596, characters 26-43
Called from Context__Backends.lower_assignments in file "arrayjit/lib/backends.ml", lines 256-257, characters 4-45
Called from Context__Backends.Raise_backend.compile in file "arrayjit/lib/backends.ml", line 441, characters 6-59
Called from Context.compile in file "arrayjit/lib/context.ml", line 96, characters 13-71
Called from Ocannl__Train.to_routine in file "lib/train.ml", line 201, characters 22-55
Called from Dune__exe__Circles_conv in file "test/training/circles_conv.ml", line 128, characters 20-82
(cd _build/.sandbox/8ccd20a4f59e33ad098c0823a976427f/default/test/einsum && .einsum_tutorials.inline-tests/inline-test-runner.exe inline-test-runner einsum_tutorials -partition 'Retrieving commandline, environment, or config file variable ocannl_log_level' -source-tree-root ../.. -diff-cmd -)
Retrieving commandline, environment, or config file variable ocannl_log_level
Found 0, in the config file
(cd _build/.sandbox/8ccd20a4f59e33ad098c0823a976427f/default/test/einsum && .einsum_tutorials.inline-tests/inline-test-runner.exe inline-test-runner einsum_tutorials -partition 'Found 0, in the config file' -source-tree-root ../.. -diff-cmd -)
Retrieving commandline, environment, or config file variable ocannl_log_level
Found 0, in the config file
(cd _build/default/test/operations && ./micrograd_demo_logging.exe --ocannl_debug_backend=text --ocannl_log_file_stem=micrograd_demo_logging --ocannl_log_main_domain_to_stdout=false --ocannl_debug_log_to_stream_files=true --ocannl_clean_up_log_files_on_startup=true)
Retrieving commandline, environment, or config file variable ocannl_log_level
Found 0, in the config file
Retrieving commandline, environment, or config file variable ocannl_backend
Found sync_cc, in the config file
Retrieving commandline, environment, or config file variable ocannl_max_shape_error_origins
Not found, using default 20
Retrieving commandline, environment, or config file variable ocannl_never_capture_stdout
Not found, using default false
Retrieving commandline, environment, or config file variable ocannl_cd_ident_style
Not found, using default heuristic
Retrieving commandline, environment, or config file variable ocannl_ll_ident_style
Not found, using default heuristic
Retrieving commandline, environment, or config file variable ocannl_output_prec_in_ll_files
Not found, using default false
Retrieving commandline, environment, or config file variable ocannl_prefer_backend_uniformity
Found true, in the config file
Retrieving commandline, environment, or config file variable ocannl_debug_log_to_stream_files
Found true, commandline --ocannl_debug_log_to_stream_files=true
Retrieving commandline, environment, or config file variable ocannl_output_dlls_in_build_directory
Not found, using default false
Retrieving commandline, environment, or config file variable ocannl_cc_backend_optimization_level
Not found, using default 3
Retrieving commandline, environment, or config file variable ocannl_cc_backend_compiler_command
Not found, using default gcc
Retrieving commandline, environment, or config file variable ocannl_cc_backend_post_compile_timeout
Not found, using default 10.0
Retrieving commandline, environment, or config file variable ocannl_cc_backend_verify_codesign
Not found, using default false
Retrieving commandline, environment, or config file variable ocannl_stack_threshold_in_bytes
Not found, using default 16384
HERE: test/operations/micrograd_demo_logging.ml:31:21
β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚[70]: +_g shape 0:1 β”‚
β”‚β”Œβ”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”        β”‚
β”‚β”‚β”‚axis 0   β”‚        β”‚
β”‚β”œβ”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€        β”‚
β”‚β”‚β”‚ 2.47e+1 β”‚        β”‚
β”‚β””β”΄β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜        β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
HERE: test/operations/micrograd_demo_logging.ml:32:21
β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚[0]: a shape 0:1 β”‚
β”‚β”Œβ”¬β”€β”€β”€β”€β”€β”€β”€β”       β”‚
β”‚β”‚β”‚axis 0 β”‚       β”‚
β”‚β”œβ”Όβ”€β”€β”€β”€β”€β”€β”€β”€       β”‚
β”‚β”‚β”‚ -4.00 β”‚       β”‚
β”‚β””β”΄β”€β”€β”€β”€β”€β”€β”€β”˜       β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚[0]: a shape 0:1  grad_aβ”‚
β”‚β”Œβ”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”            β”‚
β”‚β”‚β”‚axis 0   β”‚            β”‚
β”‚β”œβ”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€            β”‚
β”‚β”‚β”‚ 1.38e+2 β”‚            β”‚
β”‚β””β”΄β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜            β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
HERE: test/operations/micrograd_demo_logging.ml:33:21
β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚[2]: b shape 0:1 β”‚
β”‚β”Œβ”¬β”€β”€β”€β”€β”€β”€β”        β”‚
β”‚β”‚β”‚axis 0β”‚        β”‚
β”‚β”œβ”Όβ”€β”€β”€β”€β”€β”€β”€        β”‚
β”‚β”‚β”‚ 2.00 β”‚        β”‚
β”‚β””β”΄β”€β”€β”€β”€β”€β”€β”˜        β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚[2]: b shape 0:1  grad_bβ”‚
β”‚β”Œβ”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”            β”‚
β”‚β”‚β”‚axis 0   β”‚            β”‚
β”‚β”œβ”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€            β”‚
β”‚β”‚β”‚ 6.45e+2 β”‚            β”‚
β”‚β””β”΄β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜            β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
File "test/einsum/test_max_pool2d.expected", line 1, characters 0-0:
/usr/bin/git --no-pager diff --no-index --color=always -u _build/default/test/einsum/test_max_pool2d.expected _build/default/test/einsum/test_max_pool2d.exe.output
diff --git a/_build/default/test/einsum/test_max_pool2d.expected b/_build/default/test/einsum/test_max_pool2d.exe.output
index 65c12e6..a0e7280 100644
--- a/_build/default/test/einsum/test_max_pool2d.expected
+++ b/_build/default/test/einsum/test_max_pool2d.exe.output
@@ -34,7 +34,7 @@ HERE: test/einsum/test_max_pool2d.ml:31:21
 β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
 HERE: test/einsum/test_max_pool2d.ml:32:21
 β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
-β”‚[4]: @^=>+_max_pool2d shape 0:2,1:2,2:1 β”‚
+β”‚[6]: @^=>+_max_pool2d shape 0:2,1:2,2:1 β”‚
 β”‚β”Œβ”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”                      β”‚
 β”‚β”‚      β”‚axis 2   β”‚                      β”‚
 β”‚β”œβ”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€                      β”‚
@@ -86,7 +86,7 @@ HERE: test/einsum/test_max_pool2d.ml:58:21
 β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
 HERE: test/einsum/test_max_pool2d.ml:59:21
 β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
-β”‚[4]: @^=>+_max_pool2d shape 0:3,1:3,2:2 β”‚
+β”‚[6]: @^=>+_max_pool2d shape 0:3,1:3,2:2 β”‚
 β”‚β”Œβ”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”             β”‚
 β”‚β”‚      β”‚axis 2            β”‚             β”‚
 β”‚β”œβ”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€             β”‚
@@ -130,7 +130,7 @@ HERE: test/einsum/test_max_pool2d.ml:86:21
 β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
 HERE: test/einsum/test_max_pool2d.ml:87:21
 β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
-β”‚[4]: @^=>+_max_pool2d shape 0:1,1:1,2:1 β”‚
+β”‚[6]: @^=>+_max_pool2d shape 0:1,1:1,2:1 β”‚
 β”‚β”Œβ”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”                         β”‚
 β”‚β”‚      β”‚axis 2β”‚                         β”‚
 β”‚β”œβ”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€                         β”‚
@@ -144,7 +144,7 @@ Input shape: 4x4x3
 Expected output shape: 2x2x3 (channels preserved)
 HERE: test/einsum/test_max_pool2d.ml:109:21
 β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
-β”‚[4]: @^=>+_max_pool2d shape 0:2,1:2,2:3 β”‚
+β”‚[6]: @^=>+_max_pool2d shape 0:2,1:2,2:3 β”‚
 β”‚β”Œβ”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”    β”‚
 β”‚β”‚      β”‚axis 2                     β”‚    β”‚
 β”‚β”œβ”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€    β”‚
(cd _build/.sandbox/8ccd20a4f59e33ad098c0823a976427f/default/test/einsum && .einsum_tutorials.inline-tests/inline-test-runner.exe inline-test-runner einsum_tutorials -partition surjectivity.ml -source-tree-root ../.. -diff-cmd -)
Retrieving commandline, environment, or config file variable ocannl_log_level
Found 0, in the config file
(cd _build/.sandbox/19b504106e49edf7a673a55b6d525583/default/test/operations && .operations_tutorials.inline-tests/inline-test-runner.exe inline-test-runner operations_tutorials -partition test_threefry4x32.ml -source-tree-root ../.. -diff-cmd -)
Retrieving commandline, environment, or config file variable ocannl_log_level
Found 0, in the config file
File "test/operations/dune", line 326, characters 7-23:
326 |  (name transformer_test)
             ^^^^^^^^^^^^^^^^
(cd _build/default/test/operations && ./transformer_test.exe) > _build/default/test/operations/transformer_test.exe.output
Fatal error: exception Invalid_argument("Tnode.update_memory_mode: update 24 -> 37 inconsistent for 42_random_seed")
Raised at Stdlib.invalid_arg in file "stdlib.ml", line 30, characters 20-45
Called from Ir__Low_level.visit_llc.(fun) in file "arrayjit/lib/low_level.ml", line 423, characters 42-91
Called from Base__Avltree.iter in file "src/avltree.ml", line 491, characters 4-16
Called from Base__Hashtbl.iteri in file "src/hashtbl.ml", line 282, characters 20-42
Re-raised at Base__Hashtbl.iteri in file "src/hashtbl.ml", line 288, characters 6-15
Called from Ir__Low_level.optimize_proc in file "arrayjit/lib/low_level.ml", lines 1204-1205, characters 2-7
Called from Ir__Low_level.optimize in file "arrayjit/lib/low_level.ml", line 1499, characters 15-57
Called from Context__Backends.lower_assignments in file "arrayjit/lib/backends.ml", lines 256-257, characters 4-45
Called from Context__Backends.Raise_backend.compile in file "arrayjit/lib/backends.ml", line 441, characters 6-59
Called from Context.compile in file "arrayjit/lib/context.ml", line 96, characters 13-71
Called from Ocannl__Train.init_params in file "lib/train.ml", line 222, characters 21-54
Called from Ocannl__Train.run_once in file "lib/train.ml", line 268, characters 9-55
Called from Ocannl__Train.forward_once in file "lib/train.ml", line 278, characters 12-94
Called from Dune__exe__Transformer_test in file "test/operations/transformer_test.ml", line 80, characters 13-79
File "test/operations/zero2hero_1of7_exec.expected", line 1, characters 0-0:
/usr/bin/git --no-pager diff --no-index --color=always -u _build/default/test/operations/zero2hero_1of7_exec.expected _build/default/test/operations/zero2hero_1of7_exec.exe.output
diff --git a/_build/default/test/operations/zero2hero_1of7_exec.expected b/_build/default/test/operations/zero2hero_1of7_exec.exe.output
index 75f4908..264a7ec 100644
--- a/_build/default/test/operations/zero2hero_1of7_exec.expected
+++ b/_build/default/test/operations/zero2hero_1of7_exec.exe.output
@@ -229,22 +229,22 @@ Found 0, in the config file
                7.00e-1
               #9 grad_+_v
                1.00
-         #6 *              β”‚#0 b non-emb
+         #6 *              β”‚#4 b non-emb
           -6.00            β”‚ 6.70
-         #7 grad_*         β”‚#1 grad_b
+         #7 grad_*         β”‚#5 grad_b
           1.00             β”‚ 1.00
-#2 w non-emb β”‚#4 x non-emb β”‚
+#0 w non-emb β”‚#2 x non-emb β”‚
  -3.00  1.00 β”‚ 2.00  0.00  β”‚
-#3 grad_w    β”‚#5 grad_x    β”‚
+#1 grad_w    β”‚#3 grad_x    β”‚
  2.00  0.00  β”‚ -3.00  1.00 β”‚          #8 +_v
            7.00e-1
           #9 grad_+_v Virt/40
           <void>
-     #6 * Local/1046       β”‚#0 b non-emb
+     #6 * Local/1046       β”‚#4 b non-emb
      <void>                β”‚ 6.70
-     #7 grad_* Virt/40     β”‚#1 grad_b
+     #7 grad_* Virt/40     β”‚#5 grad_b
      <void>                β”‚ 1.00
-#2 w non-emb β”‚#4 x non-emb β”‚
+#0 w non-emb β”‚#2 x non-emb β”‚
  -3.00  1.00 β”‚ 2.00  0.00  β”‚
-#3 grad_w    β”‚#5 grad_x    β”‚
+#1 grad_w    β”‚#3 grad_x    β”‚
  2.00  0.00  β”‚ -3.00  1.00 β”‚
\ No newline at end of file
File "test/einsum/moons_demo_variant.expected", line 1, characters 0-0:
/usr/bin/git --no-pager diff --no-index --color=always -u _build/default/test/einsum/moons_demo_variant.expected _build/default/test/einsum/moons_demo_variant.exe.output
diff --git a/_build/default/test/einsum/moons_demo_variant.expected b/_build/default/test/einsum/moons_demo_variant.exe.output
index 1d20645..6d4113e 100644
--- a/_build/default/test/einsum/moons_demo_variant.expected
+++ b/_build/default/test/einsum/moons_demo_variant.exe.output
@@ -3,25 +3,25 @@ Found 0, in the config file
 Tnode: collecting accessible arrays...
 n0 moons_flat as moons_flat: Host&shared/49039; single prec 40x10x2; mem in bytes: 3_200
 n1 moons_classes as moons_classes: Host&shared/49039; single prec 40x10x1; mem in bytes: 1_600
-n2 range_over_offsets as range_over_offsets: Virt/15; uint4x32 prec 16; mem in bytes: <not-in-yet>
+n2 range_over_offsets as range_over_offsets: Virt/15; uint4x32 prec 1x16; mem in bytes: <not-in-yet>
 n3 42_random_seed as random_seed_42: Virt/40; uint4x32 prec 1; mem in bytes: <not-in-yet>
 n4 !@self_id as n4: Virt/40; uint4x32 prec 1; mem in bytes: <not-in-yet>
-n5 threefry4x32_light as threefry4x32_light: Virt/15; uint4x32 prec 16; mem in bytes: <not-in-yet>
-n6 threefry4x32_light as threefry4x32_light: Virt/15; uint4x32 prec 16; mem in bytes: <not-in-yet>
-n7 b1 as b1: Host&stream/412410; single prec 16; mem in bytes: <not-in-yet>
-n8 grad_b1 as b1.grad: Local/26046; single prec 16; mem in bytes: <not-in-yet>
-n9 range_over_offsets as range_over_offsets: Virt/15; uint4x32 prec 16x2; mem in bytes: <not-in-yet>
+n5 threefry4x32_light as threefry4x32_light: Virt/15; uint4x32 prec 1x16; mem in bytes: <not-in-yet>
+n6 threefry4x32_light as threefry4x32_light: Virt/15; uint4x32 prec 1x16; mem in bytes: <not-in-yet>
+n7 w2 as w2: Host&stream/412410; single prec 1x16; mem in bytes: <not-in-yet>
+n8 grad_w2 as w2.grad: Local/26046; single prec 1x16; mem in bytes: <not-in-yet>
+n9 range_over_offsets as range_over_offsets: Virt/15; uint4x32 prec 16; mem in bytes: <not-in-yet>
 n10 !@self_id as n10: Virt/40; uint4x32 prec 1; mem in bytes: <not-in-yet>
-n11 threefry4x32_light as threefry4x32_light: Virt/15; uint4x32 prec 16x2; mem in bytes: <not-in-yet>
-n12 threefry4x32_light as threefry4x32_light: Virt/15; uint4x32 prec 16x2; mem in bytes: <not-in-yet>
-n13 w1 as w1: Host&stream/412410; single prec 16x2; mem in bytes: <not-in-yet>
-n14 grad_w1 as w1.grad: Local/26046; single prec 16x2; mem in bytes: <not-in-yet>
-n15 range_over_offsets as range_over_offsets: Virt/15; uint4x32 prec 1x16; mem in bytes: <not-in-yet>
+n11 threefry4x32_light as threefry4x32_light: Virt/15; uint4x32 prec 16; mem in bytes: <not-in-yet>
+n12 threefry4x32_light as threefry4x32_light: Virt/15; uint4x32 prec 16; mem in bytes: <not-in-yet>
+n13 b1 as b1: Host&stream/412410; single prec 16; mem in bytes: <not-in-yet>
+n14 grad_b1 as b1.grad: Local/26046; single prec 16; mem in bytes: <not-in-yet>
+n15 range_over_offsets as range_over_offsets: Virt/15; uint4x32 prec 16x2; mem in bytes: <not-in-yet>
 n16 !@self_id as n16: Virt/40; uint4x32 prec 1; mem in bytes: <not-in-yet>
-n17 threefry4x32_light as threefry4x32_light: Virt/15; uint4x32 prec 1x16; mem in bytes: <not-in-yet>
-n18 threefry4x32_light as threefry4x32_light: Virt/15; uint4x32 prec 1x16; mem in bytes: <not-in-yet>
-n19 w2 as w2: Host&stream/412410; single prec 1x16; mem in bytes: <not-in-yet>
-n20 grad_w2 as w2.grad: Local/26046; single prec 1x16; mem in bytes: <not-in-yet>
+n17 threefry4x32_light as threefry4x32_light: Virt/15; uint4x32 prec 16x2; mem in bytes: <not-in-yet>
+n18 threefry4x32_light as threefry4x32_light: Virt/15; uint4x32 prec 16x2; mem in bytes: <not-in-yet>
+n19 w1 as w1: Host&stream/412410; single prec 16x2; mem in bytes: <not-in-yet>
+n20 grad_w1 as w1.grad: Local/26046; single prec 16x2; mem in bytes: <not-in-yet>
 n21 @|_moons_input as moons_input: Virt/15; single prec 10x2; mem in bytes: <not-in-yet>
 n24 @|_moons_class as moons_class: Virt/15; single prec 10x1; mem in bytes: <not-in-yet>
 n27 * as n27: Local/1046; single prec 10x16; mem in bytes: <not-in-yet>
@@ -54,69 +54,69 @@ n53 - as n53: Virt/152; single prec 1; mem in bytes: <not-in-yet>
 n54 0.1 as n54: Virt/40; single prec 1; mem in bytes: <not-in-yet>
 n55 *. as n55: Virt/152; single prec 1; mem in bytes: <not-in-yet>
 n56 /._learning_rate as learning_rate: Host&stream/412410; single prec 1; mem in bytes: <not-in-yet>
-n57 sgd_delta_b1 as sgd_delta_b1: Virt/15; single prec 16; mem in bytes: <not-in-yet>
-n58 sgd_momentum_b1 as sgd_momentum_b1: unknown; single prec <not-in-yet>; mem in bytes: <not-in-yet>
+n57 sgd_delta_w2 as sgd_delta_w2: Virt/15; single prec 1x16; mem in bytes: <not-in-yet>
+n58 sgd_momentum_w2 as sgd_momentum_w2: unknown; single prec <not-in-yet>; mem in bytes: <not-in-yet>
 n59 0.0001 as n59: Virt/40; single prec 1; mem in bytes: <not-in-yet>
-n60 *. as n60: Virt/15; single prec 16; mem in bytes: <not-in-yet>
-n61 sgd_delta_w1 as sgd_delta_w1: Virt/15; single prec 16x2; mem in bytes: <not-in-yet>
-n62 sgd_momentum_w1 as sgd_momentum_w1: unknown; single prec <not-in-yet>; mem in bytes: <not-in-yet>
+n60 *. as n60: Virt/15; single prec 1x16; mem in bytes: <not-in-yet>
+n61 sgd_delta_b1 as sgd_delta_b1: Virt/15; single prec 16; mem in bytes: <not-in-yet>
+n62 sgd_momentum_b1 as sgd_momentum_b1: unknown; single prec <not-in-yet>; mem in bytes: <not-in-yet>
 n63 0.0001 as n63: Virt/40; single prec 1; mem in bytes: <not-in-yet>
-n64 *. as n64: Virt/15; single prec 16x2; mem in bytes: <not-in-yet>
-n65 sgd_delta_w2 as sgd_delta_w2: Virt/15; single prec 1x16; mem in bytes: <not-in-yet>
-n66 sgd_momentum_w2 as sgd_momentum_w2: unknown; single prec <not-in-yet>; mem in bytes: <not-in-yet>
+n64 *. as n64: Virt/15; single prec 16; mem in bytes: <not-in-yet>
+n65 sgd_delta_w1 as sgd_delta_w1: Virt/15; single prec 16x2; mem in bytes: <not-in-yet>
+n66 sgd_momentum_w1 as sgd_momentum_w1: unknown; single prec <not-in-yet>; mem in bytes: <not-in-yet>
 n67 0.0001 as n67: Virt/40; single prec 1; mem in bytes: <not-in-yet>
-n68 *. as n68: Virt/15; single prec 1x16; mem in bytes: <not-in-yet>
+n68 *. as n68: Virt/15; single prec 16x2; mem in bytes: <not-in-yet>
 Tnode: Finished printing headers.
-                                                                                                                                           #45 /._scalar_loss
-                                                                                                                                            3.51
-                                                                                                                                           #46 grad_/._scalar_loss Virt/40
-                                                                                                                                           <void>
-                                                                                                                                          #43 => Local/1046                                                                                                                                            β”‚#42 10 Virt/40
-                                                                                                                                          <void>                                                                                                                                                       β”‚<void>
-                                                                                                                                          #44 grad_=> Virt/40                                                                                                                                          β”‚
-                                                                                                                                          <void>                                                                                                                                                       β”‚
-                                                                                                                                 #40 relu_margin_loss Virt/15                                                                                                                                          β”‚
-                                                                                                                                 <void>                                                                                                                                                                β”‚
-                                                                                                                                 #41 grad_relu_margin_loss Local/1046                                                                                                                                  β”‚
-                                                                                                                                 <void>                                                                                                                                                                β”‚
-                                                                                                                                         #38 - Local/1046                                                                                                                                              β”‚
-                                                                                                                                         <void>                                                                                                                                                        β”‚
-                                                                                                                                         #39 grad_- Local/1046                                                                                                                                         β”‚
-                                                                                                                                         <void>                                                                                                                                                        β”‚
-#37 1 Virt/40β”‚                                                                                                                                 #35 *. Virt/15                                                                                                                                          β”‚
-<void>       β”‚                                                                                                                                 <void>                                                                                                                                                  β”‚
-             β”‚                                                                                                                                 #36 grad_*. Local/1046                                                                                                                                  β”‚
-             β”‚                                                                                                                                 <void>                                                                                                                                                  β”‚
-             β”‚     #24 @|_moons_class Virt/15      β”‚                                                                                                     #33 *_mlp_@|_moons_input Local/1046                                                                                                           β”‚
-             β”‚     <void>                          β”‚                                                                                                     <void>                                                                                                                                        β”‚
-             β”‚#1 moons_classes                     β”‚                                                                                                     #34 grad_*_mlp_@|_moons_input Local/1046                                                                                                      β”‚
-             β”‚ 1.00  β”‚ 1.00  β”‚ ... β”‚ 1.00  β”‚ 1.00  β”‚                                                                                                     <void>                                                                                                                                        β”‚
-             β”‚ -1.00 β”‚ -1.00 β”‚     β”‚ -1.00 β”‚ -1.00 β”‚               #19 w2 non-emb                                           β”‚                                                                         #31 relu Local/1046                                                                              β”‚
-             β”‚ ...   β”‚ ...   β”‚     β”‚ ...   β”‚ ...   β”‚                5.02e-1  6.60e-1  ...  1.84e-1  1.36e-1                 β”‚                                                                         <void>                                                                                           β”‚
-             β”‚ 1.00  β”‚ 1.00  β”‚     β”‚ 1.00  β”‚ 1.00  β”‚               #20 grad_w2 Local/26046                                  β”‚                                                                         #32 grad_relu Local/1046                                                                         β”‚
-             β”‚ -1.00 β”‚ -1.00 β”‚     β”‚ -1.00 β”‚ -1.00 β”‚               <void>                                                   β”‚                                                                         <void>                                                                                           β”‚
-             β”‚                                     β”‚                     #18 threefry4x32_light Virt/15                     β”‚                                                                          #29 + Local/1046                                                                                β”‚
-             β”‚                                     β”‚                     <void>                                             β”‚                                                                          <void>                                                                                          β”‚
-             β”‚                                     β”‚     #17 threefry4x32_light Virt/15      β”‚#15 range_over_offsets Virt/15β”‚                                                                          #30 grad_+ Local/1046                                                                           β”‚
-             β”‚                                     β”‚     <void>                              β”‚<void>                        β”‚                                                                          <void>                                                                                          β”‚
-             β”‚                                     β”‚#16 !@self_id Virt/40β”‚[#3 42_random_seed]β”‚                              β”‚#7 b1 non-emb                            β”‚                                                     #27 * Local/1046                                                           β”‚
-             β”‚                                     β”‚<void>               β”‚                   β”‚                              β”‚ 2.07e-2  5.33e-2  ...  2.57e-1  3.16e-1 β”‚                                                     <void>                                                                     β”‚
-             β”‚                                     β”‚                     β”‚                   β”‚                              β”‚#8 grad_b1 Local/26046                   β”‚                                                     #28 grad_* Local/1046                                                      β”‚
-             β”‚                                     β”‚                     β”‚                   β”‚                              β”‚<void>                                   β”‚                                                     <void>                                                                     β”‚
-             β”‚                                     β”‚                     β”‚                   β”‚                              β”‚#6 threefry4x32_light Virt/15            β”‚#13 w1 non-emb                      β”‚#21 @|_moons_input Virt/15                                                                 β”‚
-             β”‚                                     β”‚                     β”‚                   β”‚                              β”‚<void>                                   β”‚ 8.45e-1  2.85e-1                   β”‚<void>                                                                                     β”‚
-             β”‚                                     β”‚                     β”‚                   β”‚                              β”‚β”œβ”€#5 threefry4x32_light Virt/15          β”‚ 2.12e-1  1.10e-1                   │└─#0 moons_flat                                                                            β”‚
-             β”‚                                     β”‚                     β”‚                   β”‚                              β”‚β”‚ <void>                                 β”‚ ...      ...                       β”‚   9.44e-1   3.22e-2  β”‚ 9.34e-1   1.33e-1  β”‚ ... β”‚ -9.33e-1  1.64e-2 β”‚ -9.78e-1  -1.39e-1  β”‚
-             β”‚                                     β”‚                     β”‚                   β”‚                              β”‚β”‚ β”œβ”€#4 !@self_id Virt/40                 β”‚ 4.83e-3  6.10e-1                   β”‚   -1.66e-1  5.42e-1  β”‚ 6.02e-2   1.67e-1  β”‚     β”‚ 1.96      2.98e-1 β”‚ 1.82      2.55e-1   β”‚
-             β”‚                                     β”‚                     β”‚                   β”‚                              β”‚β”‚ β”‚ <void>                               β”‚ 8.89e-2  2.74e-1                   β”‚   ...       ...      β”‚ ...       ...      β”‚     β”‚ ...       ...     β”‚ ...       ...       β”‚
-             β”‚                                     β”‚                     β”‚                   β”‚                              β”‚β”‚ └─#3 42_random_seed Virt/40            β”‚#14 grad_w1 Local/26046             β”‚   1.07      -1.52e-1 β”‚ 9.09e-1   -8.51e-2 β”‚     β”‚ -1.24     1.02e-1 β”‚ -9.39e-1  6.62e-2   β”‚
-             β”‚                                     β”‚                     β”‚                   β”‚                              β”‚β”‚   <void>                               β”‚<void>                              β”‚   -2.67e-1  4.14e-1  β”‚ -1.25e-1  6.30e-2  β”‚     β”‚ 1.93      2.44e-1 β”‚ 1.77      4.79e-1   β”‚
-             β”‚                                     β”‚                     β”‚                   β”‚                              │└─#2 range_over_offsets Virt/15          │└─#12 threefry4x32_light Virt/15    β”‚                                                                                           β”‚
-             β”‚                                     β”‚                     β”‚                   β”‚                              β”‚  <void>                                 β”‚  <void>                            β”‚                                                                                           β”‚
-             β”‚                                     β”‚                     β”‚                   β”‚                              β”‚                                         β”‚  β”œβ”€#11 threefry4x32_light Virt/15  β”‚                                                                                           β”‚
-             β”‚                                     β”‚                     β”‚                   β”‚                              β”‚                                         β”‚  β”‚ <void>                          β”‚                                                                                           β”‚
-             β”‚                                     β”‚                     β”‚                   β”‚                              β”‚                                         β”‚  β”‚ β”œβ”€#10 !@self_id Virt/40         β”‚                                                                                           β”‚
-             β”‚                                     β”‚                     β”‚                   β”‚                              β”‚                                         β”‚  β”‚ β”‚ <void>                        β”‚                                                                                           β”‚
-             β”‚                                     β”‚                     β”‚                   β”‚                              β”‚                                         β”‚  β”‚ └─[#3 42_random_seed]           β”‚                                                                                           β”‚
-             β”‚                                     β”‚                     β”‚                   β”‚                              β”‚                                         β”‚  └─#9 range_over_offsets Virt/15   β”‚                                                                                           β”‚
-             β”‚                                     β”‚                     β”‚                   β”‚                              β”‚                                         β”‚    <void>                          β”‚                                                                                           β”‚
\ No newline at end of file
+                                                                                                                                             #45 /._scalar_loss
+                                                                                                                                              3.55
+                                                                                                                                             #46 grad_/._scalar_loss Virt/40
+                                                                                                                                             <void>
+                                                                                                                                            #43 => Local/1046                                                                                                                                              β”‚#42 10 Virt/40
+                                                                                                                                            <void>                                                                                                                                                         β”‚<void>
+                                                                                                                                            #44 grad_=> Virt/40                                                                                                                                            β”‚
+                                                                                                                                            <void>                                                                                                                                                         β”‚
+                                                                                                                                   #40 relu_margin_loss Virt/15                                                                                                                                            β”‚
+                                                                                                                                   <void>                                                                                                                                                                  β”‚
+                                                                                                                                   #41 grad_relu_margin_loss Local/1046                                                                                                                                    β”‚
+                                                                                                                                   <void>                                                                                                                                                                  β”‚
+                                                                                                                                           #38 - Local/1046                                                                                                                                                β”‚
+                                                                                                                                           <void>                                                                                                                                                          β”‚
+                                                                                                                                           #39 grad_- Local/1046                                                                                                                                           β”‚
+                                                                                                                                           <void>                                                                                                                                                          β”‚
+#37 1 Virt/40β”‚                                                                                                                                   #35 *. Virt/15                                                                                                                                            β”‚
+<void>       β”‚                                                                                                                                   <void>                                                                                                                                                    β”‚
+             β”‚                                                                                                                                   #36 grad_*. Local/1046                                                                                                                                    β”‚
+             β”‚                                                                                                                                   <void>                                                                                                                                                    β”‚
+             β”‚     #24 @|_moons_class Virt/15      β”‚                                                                                                       #33 *_mlp_@|_moons_input Local/1046                                                                                                             β”‚
+             β”‚     <void>                          β”‚                                                                                                       <void>                                                                                                                                          β”‚
+             β”‚#1 moons_classes                     β”‚                                                                                                       #34 grad_*_mlp_@|_moons_input Local/1046                                                                                                        β”‚
+             β”‚ 1.00  β”‚ 1.00  β”‚ ... β”‚ 1.00  β”‚ 1.00  β”‚                                                                                                       <void>                                                                                                                                          β”‚
+             β”‚ -1.00 β”‚ -1.00 β”‚     β”‚ -1.00 β”‚ -1.00 β”‚                 #7 w2 non-emb                                              β”‚                                                                         #31 relu Local/1046                                                                              β”‚
+             β”‚ ...   β”‚ ...   β”‚     β”‚ ...   β”‚ ...   β”‚                  -5.35e-2  9.06e-2  ...  2.52e-1  3.03e-1                  β”‚                                                                         <void>                                                                                           β”‚
+             β”‚ 1.00  β”‚ 1.00  β”‚     β”‚ 1.00  β”‚ 1.00  β”‚                 #8 grad_w2 Local/26046                                     β”‚                                                                         #32 grad_relu Local/1046                                                                         β”‚
+             β”‚ -1.00 β”‚ -1.00 β”‚     β”‚ -1.00 β”‚ -1.00 β”‚                 <void>                                                     β”‚                                                                         <void>                                                                                           β”‚
+             β”‚                                     β”‚                       #6 threefry4x32_light Virt/15                        β”‚                                                                          #29 + Local/1046                                                                                β”‚
+             β”‚                                     β”‚                       <void>                                               β”‚                                                                          <void>                                                                                          β”‚
+             β”‚                                     β”‚        #5 threefry4x32_light Virt/15         β”‚#2 range_over_offsets Virt/15β”‚                                                                          #30 grad_+ Local/1046                                                                           β”‚
+             β”‚                                     β”‚        <void>                                β”‚<void>                       β”‚                                                                          <void>                                                                                          β”‚
+             β”‚                                     β”‚#4 !@self_id Virt/40β”‚#3 42_random_seed Virt/40β”‚                             β”‚#13 b1 non-emb                           β”‚                                                     #27 * Local/1046                                                           β”‚
+             β”‚                                     β”‚<void>              β”‚<void>                   β”‚                             β”‚ 8.40e-1  2.86e-1  ...  1.11e-1  1.78e-1 β”‚                                                     <void>                                                                     β”‚
+             β”‚                                     β”‚                    β”‚                         β”‚                             β”‚#14 grad_b1 Local/26046                  β”‚                                                     #28 grad_* Local/1046                                                      β”‚
+             β”‚                                     β”‚                    β”‚                         β”‚                             β”‚<void>                                   β”‚                                                     <void>                                                                     β”‚
+             β”‚                                     β”‚                    β”‚                         β”‚                             β”‚#12 threefry4x32_light Virt/15           β”‚#19 w1 non-emb                      β”‚#21 @|_moons_input Virt/15                                                                 β”‚
+             β”‚                                     β”‚                    β”‚                         β”‚                             β”‚<void>                                   β”‚ 5.13e-1  6.73e-1                   β”‚<void>                                                                                     β”‚
+             β”‚                                     β”‚                    β”‚                         β”‚                             β”‚β”œβ”€#11 threefry4x32_light Virt/15         β”‚ 7.47e-2  2.77e-2                   │└─#0 moons_flat                                                                            β”‚
+             β”‚                                     β”‚                    β”‚                         β”‚                             β”‚β”‚ <void>                                 β”‚ ...      ...                       β”‚   9.44e-1   3.22e-2  β”‚ 9.34e-1   1.33e-1  β”‚ ... β”‚ -9.33e-1  1.64e-2 β”‚ -9.78e-1  -1.39e-1  β”‚
+             β”‚                                     β”‚                    β”‚                         β”‚                             β”‚β”‚ β”œβ”€#10 !@self_id Virt/40                β”‚ 6.08e-1  5.24e-1                   β”‚   -1.66e-1  5.42e-1  β”‚ 6.02e-2   1.67e-1  β”‚     β”‚ 1.96      2.98e-1 β”‚ 1.82      2.55e-1   β”‚
+             β”‚                                     β”‚                    β”‚                         β”‚                             β”‚β”‚ β”‚ <void>                               β”‚ 2.56e-1  3.09e-1                   β”‚   ...       ...      β”‚ ...       ...      β”‚     β”‚ ...       ...     β”‚ ...       ...       β”‚
+             β”‚                                     β”‚                    β”‚                         β”‚                             β”‚β”‚ └─[#3 42_random_seed]                  β”‚#20 grad_w1 Local/26046             β”‚   1.07      -1.52e-1 β”‚ 9.09e-1   -8.51e-2 β”‚     β”‚ -1.24     1.02e-1 β”‚ -9.39e-1  6.62e-2   β”‚
+             β”‚                                     β”‚                    β”‚                         β”‚                             │└─#9 range_over_offsets Virt/15          β”‚<void>                              β”‚   -2.67e-1  4.14e-1  β”‚ -1.25e-1  6.30e-2  β”‚     β”‚ 1.93      2.44e-1 β”‚ 1.77      4.79e-1   β”‚
+             β”‚                                     β”‚                    β”‚                         β”‚                             β”‚  <void>                                 │└─#18 threefry4x32_light Virt/15    β”‚                                                                                           β”‚
+             β”‚                                     β”‚                    β”‚                         β”‚                             β”‚                                         β”‚  <void>                            β”‚                                                                                           β”‚
+             β”‚                                     β”‚                    β”‚                         β”‚                             β”‚                                         β”‚  β”œβ”€#17 threefry4x32_light Virt/15  β”‚                                                                                           β”‚
+             β”‚                                     β”‚                    β”‚                         β”‚                             β”‚                                         β”‚  β”‚ <void>                          β”‚                                                                                           β”‚
+             β”‚                                     β”‚                    β”‚                         β”‚                             β”‚                                         β”‚  β”‚ β”œβ”€#16 !@self_id Virt/40         β”‚                                                                                           β”‚
+             β”‚                                     β”‚                    β”‚                         β”‚                             β”‚                                         β”‚  β”‚ β”‚ <void>                        β”‚                                                                                           β”‚
+             β”‚                                     β”‚                    β”‚                         β”‚                             β”‚                                         β”‚  β”‚ └─[#3 42_random_seed]           β”‚                                                                                           β”‚
+             β”‚                                     β”‚                    β”‚                         β”‚                             β”‚                                         β”‚  └─#15 range_over_offsets Virt/15  β”‚                                                                                           β”‚
+             β”‚                                     β”‚                    β”‚                         β”‚                             β”‚                                         β”‚    <void>                          β”‚                                                                                           β”‚
\ No newline at end of file
File "test/training/moons_demo_mini.expected", line 1, characters 0-0:
/usr/bin/git --no-pager diff --no-index --color=always -u _build/default/test/training/moons_demo_mini.expected _build/default/test/training/moons_demo_mini.exe.output
diff --git a/_build/default/test/training/moons_demo_mini.expected b/_build/default/test/training/moons_demo_mini.exe.output
index 087c0cb..c6e22af 100644
--- a/_build/default/test/training/moons_demo_mini.expected
+++ b/_build/default/test/training/moons_demo_mini.exe.output
@@ -3,19 +3,18 @@ Found 0, in the config file
 Half-moons scatterplot and decision boundary:
 β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
 β”‚********#****************β”‚
-β”‚***###########*********..β”‚
-β”‚**#############****......β”‚
+β”‚***###########*******....β”‚
+β”‚**#############***.......β”‚
 β”‚*######%*#*#####.....%%%.β”‚
-β”‚#####**%%%*.#####....%%%%β”‚
+β”‚#####**%%%..#####....%%%%β”‚
 β”‚####***%%%%..####...%%%%.β”‚
-β”‚###**..%%%%...###..%%%%%.β”‚
+β”‚###***.%%%%...###..%%%%%.β”‚
 β”‚###*...%%%%%%%.#..%%%%%..β”‚
 β”‚***.....%%%%%%%%%%%%%%...β”‚
-β”‚**.........%%%%%%%%%%....β”‚
+β”‚***........%%%%%%%%%%....β”‚
 β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜Loss:
 β”Œβ”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
-β”‚ 2.49β”‚-                                                                                                   β”‚
-β”‚     β”‚                                                                                                    β”‚
+β”‚ 3.17β”‚-                                                                                                   β”‚
 β”‚     β”‚                                                                                                    β”‚
 β”‚     β”‚                                                                                                    β”‚
 β”‚     β”‚                                                                                                    β”‚
@@ -32,7 +31,8 @@ Half-moons scatterplot and decision boundary:
 β”‚     β”‚                                                                                                    β”‚
 β”‚     β”‚                                                                                                    β”‚
 β”‚     β”‚                                                                                                    β”‚
-β”‚l    β”‚  -                                                                                                 β”‚
+β”‚     β”‚  -                                                                                                 β”‚
+β”‚l    β”‚                                                                                                    β”‚
 β”‚o    β”‚                                                                                                    β”‚
 β”‚s    β”‚                                                                                                    β”‚
 β”‚s    β”‚                                                                                                    β”‚
@@ -43,62 +43,62 @@ Half-moons scatterplot and decision boundary:
 β”‚     β”‚                                                                                                    β”‚
 β”‚     β”‚                                                                                                    β”‚
 β”‚     β”‚                                                                                                    β”‚
-β”‚     β”‚                                                                                                    β”‚
 β”‚     β”‚     -                                                                                              β”‚
 β”‚     β”‚                                                                                                    β”‚
+β”‚     β”‚                                                                                                    β”‚
+β”‚     β”‚                                                                                                    β”‚
+β”‚     β”‚                                                                                                    β”‚
 β”‚     β”‚      -                                                                                             β”‚
-β”‚     β”‚       -                                                                                            β”‚
-β”‚     β”‚        - -                                                                                         β”‚
+β”‚     β”‚       --   --                                                                                      β”‚
 β”‚     β”‚                                                                                                    β”‚
-β”‚     β”‚             -                           -         -                                                β”‚
-β”‚     β”‚            -  -         -     -                - -            -                          -         β”‚
-β”‚     β”‚           -         - -      -  -  ---   -  -         -    -       -   -   - -    -  -    -        β”‚
-β”‚ 0.00β”‚                --- - -   ---   -  -    -  -  --    --  ---  --  ---  -- - - -  ---  - --   -- ---- β”‚
+β”‚     β”‚          -      -            -                                                                     β”‚
+β”‚     β”‚           -         -   -               -         -   -       -        -                           β”‚
+β”‚ 0.00β”‚               -- - - --  ---  --- ---- - -- ---- - --  --- ---  ---- -- - ---- ---- ---- ---- ---- β”‚
 β”œβ”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€
 β”‚     β”‚0.00                                                                                         7.90e+1β”‚
 β”‚     β”‚                                                step                                                β”‚
 β””β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜Log-loss, for better visibility:
 β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
-β”‚ 9.14e-1 β”‚-                                                                                                   β”‚
+β”‚ 1.15    β”‚-                                                                                                   β”‚
 β”‚         β”‚                                                                                                    β”‚
-β”‚         β”‚ -                                                                                                  β”‚
-β”‚         β”‚  -                                                                                                 β”‚
-β”‚         β”‚   -                                                                                                β”‚
+β”‚         β”‚ --                                                                                                 β”‚
 β”‚         β”‚                                                                                                    β”‚
+β”‚         β”‚   -                                                                                                β”‚
 β”‚         β”‚     -                                                                                              β”‚
-β”‚         β”‚      --  -                                                                                         β”‚
-β”‚         β”‚        -                                                                                           β”‚
-β”‚         β”‚             -                           -         -                                                β”‚
-β”‚         β”‚               -         -                      -                                         -         β”‚
-β”‚         β”‚           --                  -             -    -    -       -                                    β”‚
-β”‚         β”‚                       -                  -                             -   - -    -                β”‚
-β”‚         β”‚                     -        -  -  ---                     -       -                      -        β”‚
-β”‚         β”‚                                                                                      -      -  - - β”‚
-β”‚         β”‚                  - - -                              -                 -                -           β”‚
-β”‚l        β”‚                -                  -           -    -   - -           -  - -    -           -    -  β”‚
-β”‚o        β”‚                          -                                       -                                 β”‚
-β”‚g        β”‚                 -          -                                                -       -              β”‚
-β”‚         β”‚                           -                             -                                          β”‚
-β”‚l        β”‚                                                                 -                                  β”‚
-β”‚o        β”‚                                                                                                    β”‚
-β”‚s        β”‚                                        -                    -                                 -    β”‚
-β”‚s        β”‚                                                                                                    β”‚
 β”‚         β”‚                                                                                                    β”‚
-β”‚         β”‚                                                                                 -                  β”‚
+β”‚         β”‚      -                                                                                             β”‚
+β”‚         β”‚       --   --                                                                                      β”‚
+β”‚         β”‚                                                                                                    β”‚
+β”‚         β”‚          -                                                                                         β”‚
+β”‚         β”‚                 -            -                                                                     β”‚
+β”‚         β”‚           -             -               -                                                          β”‚
+β”‚         β”‚                     -                             -   -       -        -                           β”‚
+β”‚         β”‚                               -                                         -  -                       β”‚
+β”‚         β”‚                -      -    -       --    -                         -                     -       - β”‚
+β”‚l        β”‚                  - -            -                                            -                     β”‚
+β”‚o        β”‚                                   -  -         -       -             -            -                β”‚
+β”‚g        β”‚                      -                      -                -                                  -  β”‚
+β”‚         β”‚               -          -                       -                                   -             β”‚
+β”‚l        β”‚                                                                       -                   -    -   β”‚
+β”‚o        β”‚                                                          -                                  -      β”‚
+β”‚s        β”‚                                               -                                                    β”‚
+β”‚s        β”‚                                                                                            -       β”‚
+β”‚         β”‚                           -    -                                -         -                        β”‚
+β”‚         β”‚                                                             -                                      β”‚
 β”‚         β”‚                                                                                                    β”‚
 β”‚         β”‚                                                                                                    β”‚
 β”‚         β”‚                                                                                                    β”‚
-β”‚         β”‚                                -                                                                   β”‚
 β”‚         β”‚                                                                                                    β”‚
 β”‚         β”‚                                                                                                    β”‚
 β”‚         β”‚                                                                                                    β”‚
+β”‚         β”‚                                                                                        -           β”‚
 β”‚         β”‚                                                                                                    β”‚
 β”‚         β”‚                                                                                                    β”‚
 β”‚         β”‚                                                                                                    β”‚
 β”‚         β”‚                                                                                                    β”‚
 β”‚         β”‚                                                                                                    β”‚
 β”‚         β”‚                                                                                                    β”‚
-β”‚ -1.00e+1β”‚                                           -  -               -    -              -    -            β”‚
+β”‚ -1.00e+1β”‚                                        -  -  -     --   -  -     --         -  ---  - -       -    β”‚
 β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€
 β”‚         β”‚0.00                                                                                         7.90e+1β”‚
 β”‚         β”‚                                                step                                                β”‚
(cd _build/.sandbox/19b504106e49edf7a673a55b6d525583/default/test/operations && .operations_tutorials.inline-tests/inline-test-runner.exe inline-test-runner operations_tutorials -partition zero2hero_1of7.ml -source-tree-root ../.. -diff-cmd -)
Retrieving commandline, environment, or config file variable ocannl_log_level
Found 0, in the config file
(cd _build/.sandbox/19b504106e49edf7a673a55b6d525583/default/test/operations && .operations_tutorials.inline-tests/inline-test-runner.exe inline-test-runner operations_tutorials -partition hello_world_op.ml -source-tree-root ../.. -diff-cmd -)
Retrieving commandline, environment, or config file variable ocannl_log_level
Found 0, in the config file
(cd _build/.sandbox/19b504106e49edf7a673a55b6d525583/default/test/operations && .operations_tutorials.inline-tests/inline-test-runner.exe inline-test-runner operations_tutorials -partition primitive_ops.ml -source-tree-root ../.. -diff-cmd -)
Retrieving commandline, environment, or config file variable ocannl_log_level
Found 0, in the config file
File "test/operations/zero2hero_1of7.ml", line 1, characters 0-0:
/usr/bin/git --no-pager diff --no-index --color=always -u _build/default/test/operations/zero2hero_1of7.ml _build/.sandbox/19b504106e49edf7a673a55b6d525583/default/test/operations/zero2hero_1of7.ml.corrected
diff --git a/_build/default/test/operations/zero2hero_1of7.ml b/_build/.sandbox/19b504106e49edf7a673a55b6d525583/default/test/operations/zero2hero_1of7.ml.corrected
index d2bc5e2..cf6323c 100644
--- a/_build/default/test/operations/zero2hero_1of7.ml
+++ b/_build/.sandbox/19b504106e49edf7a673a55b6d525583/default/test/operations/zero2hero_1of7.ml.corrected
@@ -438,13 +438,13 @@ let%expect_test "2D neuron hosted" =
                    7.00e-1
                   #9 grad_+_v
                    1.00
-             #6 *              β”‚#0 b non-emb
+             #6 *              β”‚#4 b non-emb
               -6.00            β”‚ 6.70
-             #7 grad_*         β”‚#1 grad_b
+             #7 grad_*         β”‚#5 grad_b
               1.00             β”‚ 1.00
-    #2 w non-emb β”‚#4 x non-emb β”‚
+    #0 w non-emb β”‚#2 x non-emb β”‚
      -3.00  1.00 β”‚ 2.00  0.00  β”‚
-    #3 grad_w    β”‚#5 grad_x    β”‚
+    #1 grad_w    β”‚#3 grad_x    β”‚
      2.00  0.00  β”‚ -3.00  1.00 β”‚
     |}]
 
@@ -463,12 +463,12 @@ let%expect_test "2D neuron virtual" =
                7.00e-1
               #9 grad_+_v Virt/40
               <void>
-         #6 * Local/1046       β”‚#0 b non-emb
+         #6 * Local/1046       β”‚#4 b non-emb
          <void>                β”‚ 6.70
-         #7 grad_* Virt/40     β”‚#1 grad_b
+         #7 grad_* Virt/40     β”‚#5 grad_b
          <void>                β”‚ 1.00
-    #2 w non-emb β”‚#4 x non-emb β”‚
+    #0 w non-emb β”‚#2 x non-emb β”‚
      -3.00  1.00 β”‚ 2.00  0.00  β”‚
-    #3 grad_w    β”‚#5 grad_x    β”‚
+    #1 grad_w    β”‚#3 grad_x    β”‚
      2.00  0.00  β”‚ -3.00  1.00 β”‚
     |}]
File "test/einsum/test_conv_padding.expected", line 1, characters 0-0:
/usr/bin/git --no-pager diff --no-index --color=always -u _build/default/test/einsum/test_conv_padding.expected _build/default/test/einsum/test_conv_padding.exe.output
diff --git a/_build/default/test/einsum/test_conv_padding.expected b/_build/default/test/einsum/test_conv_padding.exe.output
index 7aa1ab6..cabe6c4 100644
--- a/_build/default/test/einsum/test_conv_padding.expected
+++ b/_build/default/test/einsum/test_conv_padding.exe.output
@@ -13,35 +13,35 @@ HERE: test/einsum/test_conv_padding.ml:35:21
 β”‚β”Œβ”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”β”‚
 β”‚β”‚      β”‚axis 2                              β”‚β”‚
 β”‚β”œβ”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”‚
-β”‚β”‚0 @ 0 β”‚ 4.23     3.41     5.10     6.57    β”‚β”‚
-β”‚β”‚axis 1β”‚ 7.89     9.82     1.03e+1  1.23e+1 β”‚β”‚
-β”‚β”‚      β”‚ 1.03e+1  1.34e+1  1.43e+1  1.55e+1 β”‚β”‚
-β”‚β”‚      β”‚ 1.28e+1  1.70e+1  1.83e+1  1.87e+1 β”‚β”‚
-β”‚β”‚      β”‚ 9.06     1.34e+1  1.48e+1  1.56e+1 β”‚β”‚
+β”‚β”‚0 @ 0 β”‚ 5.30     1.05e+1  4.57     4.77    β”‚β”‚
+β”‚β”‚axis 1β”‚ 1.00e+1  1.71e+1  9.76     7.96    β”‚β”‚
+β”‚β”‚      β”‚ 1.31e+1  2.16e+1  1.26e+1  1.03e+1 β”‚β”‚
+β”‚β”‚      β”‚ 1.62e+1  2.61e+1  1.54e+1  1.26e+1 β”‚β”‚
+β”‚β”‚      β”‚ 1.06e+1  1.76e+1  1.38e+1  8.60    β”‚β”‚
 β”‚β”œβ”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”‚
-β”‚β”‚1 @ 0 β”‚ 1.26e+1  1.44e+1  1.74e+1  1.59e+1 β”‚β”‚
-β”‚β”‚axis 1β”‚ 2.18e+1  2.95e+1  3.04e+1  3.04e+1 β”‚β”‚
-β”‚β”‚      β”‚ 2.57e+1  3.47e+1  3.47e+1  3.57e+1 β”‚β”‚
-β”‚β”‚      β”‚ 2.97e+1  3.99e+1  3.90e+1  4.11e+1 β”‚β”‚
-β”‚β”‚      β”‚ 2.06e+1  2.91e+1  3.02e+1  3.21e+1 β”‚β”‚
+β”‚β”‚1 @ 0 β”‚ 1.82e+1  2.73e+1  1.48e+1  1.30e+1 β”‚β”‚
+β”‚β”‚axis 1β”‚ 2.62e+1  4.15e+1  2.53e+1  2.07e+1 β”‚β”‚
+β”‚β”‚      β”‚ 2.98e+1  4.73e+1  3.02e+1  2.38e+1 β”‚β”‚
+β”‚β”‚      β”‚ 3.34e+1  5.31e+1  3.51e+1  2.70e+1 β”‚β”‚
+β”‚β”‚      β”‚ 2.06e+1  3.27e+1  3.05e+1  1.77e+1 β”‚β”‚
 β”‚β”œβ”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”‚
-β”‚β”‚2 @ 0 β”‚ 2.56e+1  3.05e+1  2.98e+1  3.16e+1 β”‚β”‚
-β”‚β”‚axis 1β”‚ 4.15e+1  5.55e+1  5.19e+1  5.71e+1 β”‚β”‚
-β”‚β”‚      β”‚ 4.54e+1  6.07e+1  5.63e+1  6.24e+1 β”‚β”‚
-β”‚β”‚      β”‚ 4.94e+1  6.59e+1  6.06e+1  6.78e+1 β”‚β”‚
-β”‚β”‚      β”‚ 3.36e+1  4.62e+1  4.62e+1  5.07e+1 β”‚β”‚
+β”‚β”‚2 @ 0 β”‚ 3.28e+1  4.83e+1  3.06e+1  2.46e+1 β”‚β”‚
+β”‚β”‚axis 1β”‚ 4.41e+1  7.06e+1  4.98e+1  3.64e+1 β”‚β”‚
+β”‚β”‚      β”‚ 4.77e+1  7.64e+1  5.47e+1  3.95e+1 β”‚β”‚
+β”‚β”‚      β”‚ 5.13e+1  8.23e+1  5.96e+1  4.26e+1 β”‚β”‚
+β”‚β”‚      β”‚ 3.10e+1  4.85e+1  4.99e+1  2.73e+1 β”‚β”‚
 β”‚β”œβ”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”‚
-β”‚β”‚3 @ 0 β”‚ 3.86e+1  4.65e+1  4.22e+1  4.73e+1 β”‚β”‚
-β”‚β”‚axis 1β”‚ 6.12e+1  8.15e+1  7.35e+1  8.38e+1 β”‚β”‚
-β”‚β”‚      β”‚ 6.52e+1  8.67e+1  7.78e+1  8.92e+1 β”‚β”‚
-β”‚β”‚      β”‚ 6.91e+1  9.19e+1  8.22e+1  9.45e+1 β”‚β”‚
-β”‚β”‚      β”‚ 4.66e+1  6.33e+1  6.22e+1  6.94e+1 β”‚β”‚
+β”‚β”‚3 @ 0 β”‚ 4.74e+1  6.94e+1  4.64e+1  3.61e+1 β”‚β”‚
+β”‚β”‚axis 1β”‚ 6.21e+1  9.98e+1  7.43e+1  5.21e+1 β”‚β”‚
+β”‚β”‚      β”‚ 6.56e+1  1.05e+2  7.92e+1  5.52e+1 β”‚β”‚
+β”‚β”‚      β”‚ 6.92e+1  1.11e+2  8.41e+1  5.83e+1 β”‚β”‚
+β”‚β”‚      β”‚ 4.13e+1  6.43e+1  6.94e+1  3.70e+1 β”‚β”‚
 β”‚β”œβ”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”‚
-β”‚β”‚4 @ 0 β”‚ 3.42e+1  5.08e+1  3.43e+1  3.44e+1 β”‚β”‚
-β”‚β”‚axis 1β”‚ 5.24e+1  7.37e+1  5.99e+1  6.09e+1 β”‚β”‚
-β”‚β”‚      β”‚ 5.53e+1  7.76e+1  6.29e+1  6.43e+1 β”‚β”‚
-β”‚β”‚      β”‚ 5.81e+1  8.14e+1  6.59e+1  6.77e+1 β”‚β”‚
-β”‚β”‚      β”‚ 4.03e+1  5.20e+1  5.09e+1  4.26e+1 β”‚β”‚
+β”‚β”‚4 @ 0 β”‚ 4.16e+1  4.53e+1  4.29e+1  2.76e+1 β”‚β”‚
+β”‚β”‚axis 1β”‚ 4.80e+1  6.46e+1  6.29e+1  3.90e+1 β”‚β”‚
+β”‚β”‚      β”‚ 5.03e+1  6.80e+1  6.64e+1  4.10e+1 β”‚β”‚
+β”‚β”‚      β”‚ 5.27e+1  7.13e+1  6.99e+1  4.31e+1 β”‚β”‚
+β”‚β”‚      β”‚ 2.89e+1  3.55e+1  5.29e+1  2.72e+1 β”‚β”‚
 β”‚β””β”€β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜β”‚
 β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
 
@@ -58,17 +58,17 @@ HERE: test/einsum/test_conv_padding.ml:65:21
 β”‚β”Œβ”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”β”‚
 β”‚β”‚      β”‚axis 2                              β”‚β”‚
 β”‚β”œβ”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”‚
-β”‚β”‚0 @ 0 β”‚ 2.18e+1  2.95e+1  3.04e+1  3.04e+1 β”‚β”‚
-β”‚β”‚axis 1β”‚ 2.57e+1  3.47e+1  3.47e+1  3.57e+1 β”‚β”‚
-β”‚β”‚      β”‚ 2.97e+1  3.99e+1  3.90e+1  4.11e+1 β”‚β”‚
+β”‚β”‚0 @ 0 β”‚ 2.62e+1  4.15e+1  2.53e+1  2.07e+1 β”‚β”‚
+β”‚β”‚axis 1β”‚ 2.98e+1  4.73e+1  3.02e+1  2.38e+1 β”‚β”‚
+β”‚β”‚      β”‚ 3.34e+1  5.31e+1  3.51e+1  2.70e+1 β”‚β”‚
 β”‚β”œβ”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”‚
-β”‚β”‚1 @ 0 β”‚ 4.15e+1  5.55e+1  5.19e+1  5.71e+1 β”‚β”‚
-β”‚β”‚axis 1β”‚ 4.54e+1  6.07e+1  5.63e+1  6.24e+1 β”‚β”‚
-β”‚β”‚      β”‚ 4.94e+1  6.59e+1  6.06e+1  6.78e+1 β”‚β”‚
+β”‚β”‚1 @ 0 β”‚ 4.41e+1  7.06e+1  4.98e+1  3.64e+1 β”‚β”‚
+β”‚β”‚axis 1β”‚ 4.77e+1  7.64e+1  5.47e+1  3.95e+1 β”‚β”‚
+β”‚β”‚      β”‚ 5.13e+1  8.23e+1  5.96e+1  4.26e+1 β”‚β”‚
 β”‚β”œβ”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”‚
-β”‚β”‚2 @ 0 β”‚ 6.12e+1  8.15e+1  7.35e+1  8.38e+1 β”‚β”‚
-β”‚β”‚axis 1β”‚ 6.52e+1  8.67e+1  7.78e+1  8.92e+1 β”‚β”‚
-β”‚β”‚      β”‚ 6.91e+1  9.19e+1  8.22e+1  9.45e+1 β”‚β”‚
+β”‚β”‚2 @ 0 β”‚ 6.21e+1  9.98e+1  7.43e+1  5.21e+1 β”‚β”‚
+β”‚β”‚axis 1β”‚ 6.56e+1  1.05e+2  7.92e+1  5.52e+1 β”‚β”‚
+β”‚β”‚      β”‚ 6.92e+1  1.11e+2  8.41e+1  5.83e+1 β”‚β”‚
 β”‚β””β”€β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜β”‚
 β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
 
@@ -85,17 +85,17 @@ HERE: test/einsum/test_conv_padding.ml:95:21
 β”‚β”Œβ”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”β”‚
 β”‚β”‚      β”‚axis 2                              β”‚β”‚
 β”‚β”œβ”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”‚
-β”‚β”‚0 @ 0 β”‚ 4.91     3.87     5.90     7.70    β”‚β”‚
-β”‚β”‚axis 1β”‚ 1.14e+1  1.47e+1  1.57e+1  1.74e+1 β”‚β”‚
-β”‚β”‚      β”‚ 1.64e+1  2.19e+1  2.37e+1  2.38e+1 β”‚β”‚
+β”‚β”‚0 @ 0 β”‚ 6.10     1.22e+1  5.33     5.55    β”‚β”‚
+β”‚β”‚axis 1β”‚ 1.44e+1  2.41e+1  1.40e+1  1.14e+1 β”‚β”‚
+β”‚β”‚      β”‚ 2.06e+1  3.30e+1  1.96e+1  1.60e+1 β”‚β”‚
 β”‚β”œβ”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”‚
-β”‚β”‚1 @ 0 β”‚ 3.05e+1  3.63e+1  3.56e+1  3.76e+1 β”‚β”‚
-β”‚β”‚axis 1β”‚ 5.30e+1  7.08e+1  6.59e+1  7.29e+1 β”‚β”‚
-β”‚β”‚      β”‚ 6.08e+1  8.12e+1  7.46e+1  8.36e+1 β”‚β”‚
+β”‚β”‚1 @ 0 β”‚ 3.91e+1  5.75e+1  3.66e+1  2.93e+1 β”‚β”‚
+β”‚β”‚axis 1β”‚ 5.57e+1  8.92e+1  6.39e+1  4.61e+1 β”‚β”‚
+β”‚β”‚      β”‚ 6.28e+1  1.00e+2  7.37e+1  5.24e+1 β”‚β”‚
 β”‚β”œβ”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”‚
-β”‚β”‚2 @ 0 β”‚ 6.17e+1  7.48e+1  6.54e+1  7.52e+1 β”‚β”‚
-β”‚β”‚axis 1β”‚ 1.00e+2  1.33e+2  1.17e+2  1.37e+2 β”‚β”‚
-β”‚β”‚      β”‚ 1.08e+2  1.43e+2  1.26e+2  1.47e+2 β”‚β”‚
+β”‚β”‚2 @ 0 β”‚ 7.41e+1  1.08e+2  7.45e+1  5.69e+1 β”‚β”‚
+β”‚β”‚axis 1β”‚ 9.87e+1  1.59e+2  1.22e+2  8.38e+1 β”‚β”‚
+β”‚β”‚      β”‚ 1.05e+2  1.70e+2  1.32e+2  9.00e+1 β”‚β”‚
 β”‚β””β”€β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜β”‚
 β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
 
@@ -131,25 +131,25 @@ HERE: test/einsum/test_conv_padding.ml:159:21
 β”‚β”Œβ”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”β”‚
 β”‚β”‚      β”‚axis 2                              β”‚β”‚
 β”‚β”œβ”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”‚
-β”‚β”‚0 @ 0 β”‚ 3.61e+1  4.92e+1  5.18e+1  5.09e+1 β”‚β”‚
-β”‚β”‚axis 1β”‚ 4.40e+1  5.96e+1  6.04e+1  6.16e+1 β”‚β”‚
-β”‚β”‚      β”‚ 5.18e+1  7.00e+1  6.91e+1  7.23e+1 β”‚β”‚
-β”‚β”‚      β”‚ 5.97e+1  8.04e+1  7.77e+1  8.30e+1 β”‚β”‚
+β”‚β”‚0 @ 0 β”‚ 4.36e+1  6.92e+1  4.23e+1  3.44e+1 β”‚β”‚
+β”‚β”‚axis 1β”‚ 5.08e+1  8.08e+1  5.21e+1  4.07e+1 β”‚β”‚
+β”‚β”‚      β”‚ 5.80e+1  9.25e+1  6.19e+1  4.70e+1 β”‚β”‚
+β”‚β”‚      β”‚ 6.52e+1  1.04e+2  7.17e+1  5.33e+1 β”‚β”‚
 β”‚β”œβ”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”‚
-β”‚β”‚1 @ 0 β”‚ 1.07e+2  1.42e+2  1.29e+2  1.47e+2 β”‚β”‚
-β”‚β”‚axis 1β”‚ 1.15e+2  1.53e+2  1.38e+2  1.57e+2 β”‚β”‚
-β”‚β”‚      β”‚ 1.22e+2  1.63e+2  1.46e+2  1.68e+2 β”‚β”‚
-β”‚β”‚      β”‚ 1.30e+2  1.74e+2  1.55e+2  1.79e+2 β”‚β”‚
+β”‚β”‚1 @ 0 β”‚ 1.08e+2  1.74e+2  1.30e+2  9.09e+1 β”‚β”‚
+β”‚β”‚axis 1β”‚ 1.15e+2  1.85e+2  1.40e+2  9.72e+1 β”‚β”‚
+β”‚β”‚      β”‚ 1.22e+2  1.97e+2  1.50e+2  1.03e+2 β”‚β”‚
+β”‚β”‚      β”‚ 1.29e+2  2.09e+2  1.59e+2  1.09e+2 β”‚β”‚
 β”‚β”œβ”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”‚
-β”‚β”‚2 @ 0 β”‚ 1.78e+2  2.36e+2  2.07e+2  2.43e+2 β”‚β”‚
-β”‚β”‚axis 1β”‚ 1.86e+2  2.46e+2  2.15e+2  2.54e+2 β”‚β”‚
-β”‚β”‚      β”‚ 1.93e+2  2.57e+2  2.24e+2  2.64e+2 β”‚β”‚
-β”‚β”‚      β”‚ 2.01e+2  2.67e+2  2.33e+2  2.75e+2 β”‚β”‚
+β”‚β”‚2 @ 0 β”‚ 1.72e+2  2.79e+2  2.18e+2  1.47e+2 β”‚β”‚
+β”‚β”‚axis 1β”‚ 1.79e+2  2.90e+2  2.28e+2  1.53e+2 β”‚β”‚
+β”‚β”‚      β”‚ 1.87e+2  3.02e+2  2.38e+2  1.60e+2 β”‚β”‚
+β”‚β”‚      β”‚ 1.94e+2  3.14e+2  2.48e+2  1.66e+2 β”‚β”‚
 β”‚β”œβ”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”‚
-β”‚β”‚3 @ 0 β”‚ 2.49e+2  3.29e+2  2.84e+2  3.39e+2 β”‚β”‚
-β”‚β”‚axis 1β”‚ 2.57e+2  3.40e+2  2.93e+2  3.50e+2 β”‚β”‚
-β”‚β”‚      β”‚ 2.64e+2  3.50e+2  3.02e+2  3.60e+2 β”‚β”‚
-β”‚β”‚      β”‚ 2.72e+2  3.61e+2  3.10e+2  3.71e+2 β”‚β”‚
+β”‚β”‚3 @ 0 β”‚ 2.37e+2  3.84e+2  3.07e+2  2.03e+2 β”‚β”‚
+β”‚β”‚axis 1β”‚ 2.44e+2  3.95e+2  3.16e+2  2.10e+2 β”‚β”‚
+β”‚β”‚      β”‚ 2.51e+2  4.07e+2  3.26e+2  2.16e+2 β”‚β”‚
+β”‚β”‚      β”‚ 2.58e+2  4.19e+2  3.36e+2  2.22e+2 β”‚β”‚
 β”‚β””β”€β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜β”‚
 β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
 
@@ -168,7 +168,7 @@ HERE: test/einsum/test_conv_padding.ml:198:21
 β”‚β”Œβ”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”            β”‚
 β”‚β”‚β”‚axis 0   β”‚            β”‚
 β”‚β”œβ”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€            β”‚
-β”‚β”‚β”‚ 1.20e+4 β”‚            β”‚
+β”‚β”‚β”‚ 1.14e+4 β”‚            β”‚
 β”‚β””β”΄β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜            β”‚
 β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
 grad_=>_loss <not-hosted>
File "test/training/moons_demo.expected", line 1, characters 0-0:
/usr/bin/git --no-pager diff --no-index --color=always -u _build/default/test/training/moons_demo.expected _build/default/test/training/moons_demo.exe.output
diff --git a/_build/default/test/training/moons_demo.expected b/_build/default/test/training/moons_demo.exe.output
index 7b6ecab..b37e961 100644
--- a/_build/default/test/training/moons_demo.expected
+++ b/_build/default/test/training/moons_demo.exe.output
@@ -1,28 +1,28 @@
 Retrieving commandline, environment, or config file variable ocannl_log_level
 Found 0, in the config file
-Epoch=1, step=0, batch=0, lr=0.2, loss=27.29, epoch loss=27.29
-Epoch=1, step=1, batch=1, lr=0.2, loss=1.051, epoch loss=28.34
-Epoch=1, step=2, batch=2, lr=0.2, loss=3.316, epoch loss=31.65
-Epoch=1, step=3, batch=3, lr=0.2, loss=0.6153, epoch loss=32.27
-Epoch=1, step=4, batch=4, lr=0.2, loss=2.469, epoch loss=34.74
-Epoch=1, step=5, batch=5, lr=0.2, loss=0.6122, epoch loss=35.35
-Epoch=1, step=6, batch=6, lr=0.2, loss=0.08047, epoch loss=35.43
-Epoch=1, step=7, batch=7, lr=0.2, loss=0.4598, epoch loss=35.89
-Epoch=1, step=8, batch=8, lr=0.2, loss=0.009037, epoch loss=35.9
-Epoch=1, step=9, batch=9, lr=0.2, loss=0.0162, epoch loss=35.91
+Epoch=1, step=0, batch=0, lr=0.2, loss=27.98, epoch loss=27.98
+Epoch=1, step=1, batch=1, lr=0.2, loss=8.779, epoch loss=36.76
+Epoch=1, step=2, batch=2, lr=0.2, loss=8.451, epoch loss=45.21
+Epoch=1, step=3, batch=3, lr=0.2, loss=1.793, epoch loss=47.01
+Epoch=1, step=4, batch=4, lr=0.2, loss=0.9315, epoch loss=47.94
+Epoch=1, step=5, batch=5, lr=0.2, loss=0.5725, epoch loss=48.51
+Epoch=1, step=6, batch=6, lr=0.2, loss=0.3079, epoch loss=48.82
+Epoch=1, step=7, batch=7, lr=0.2, loss=0.05887, epoch loss=48.88
+Epoch=1, step=8, batch=8, lr=0.2, loss=0.1126, epoch loss=48.99
+Epoch=1, step=9, batch=9, lr=0.2, loss=0.3386, epoch loss=49.33
 ...............................................................
 
 Loss:
 β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
-β”‚ 2.72e+1β”‚-                        β”‚
+β”‚ 2.79e+1β”‚-                        β”‚
 β”‚        β”‚                         β”‚
 β”‚        β”‚                         β”‚
 β”‚l       β”‚                         β”‚
 β”‚o       β”‚                         β”‚
 β”‚s       β”‚                         β”‚
 β”‚s       β”‚                         β”‚
+β”‚        β”‚-                        β”‚
 β”‚        β”‚                         β”‚
-β”‚        β”‚- -                      β”‚
 β”‚ 0.00   β”‚-------------------------β”‚
 β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€
 β”‚        β”‚0.00              6.39e+3β”‚
(cd _build/.sandbox/8ccd20a4f59e33ad098c0823a976427f/default/test/einsum && .einsum_tutorials.inline-tests/inline-test-runner.exe inline-test-runner einsum_tutorials -partition einsum_trivia.ml -source-tree-root ../.. -diff-cmd -)
Retrieving commandline, environment, or config file variable ocannl_log_level
Found 0, in the config file
File "test/training/bigram_mlp.expected", line 1, characters 0-0:
/usr/bin/git --no-pager diff --no-index --color=always -u _build/default/test/training/bigram_mlp.expected _build/default/test/training/bigram_mlp.exe.output
diff --git a/_build/default/test/training/bigram_mlp.expected b/_build/default/test/training/bigram_mlp.exe.output
index 0f6673a..d2f3991 100644
--- a/_build/default/test/training/bigram_mlp.expected
+++ b/_build/default/test/training/bigram_mlp.exe.output
@@ -2,11 +2,11 @@ Retrieving commandline, environment, or config file variable ocannl_log_level
 Found 0, in the config file
 bigrams: 228146
 input_size: 229000
-Epoch 0, epoch loss below 595=true
-Epoch 1, epoch loss below 567=true
-Epoch 2, epoch loss below 565=true
-Epoch 3, epoch loss below 563=true
-Epoch 4, epoch loss below 562=true
-delousacaro
-bigwall
-f
+Epoch 0, epoch loss below 595=false, actual loss: -nan
+Epoch 1, epoch loss below 567=false, actual loss: -nan
+Epoch 2, epoch loss below 565=false, actual loss: -nan
+Epoch 3, epoch loss below 563=false, actual loss: -nan
+Epoch 4, epoch loss below 562=false, actual loss: -nan
+
+
+
"/usr/bin/env" "bash" "-c" "opam exec -- dune build @install @check @runtest && rm -rf _build" failed with exit status 1
2025-12-10 15:13.21: Job failed: Failed: Build failed