Skip to content

Instantly share code, notes, and snippets.

@bbpbuildbot
Created June 3, 2024 10:45
Show Gist options
  • Save bbpbuildbot/188e106ef71be8280ac86ddbd1ef9117 to your computer and use it in GitHub Desktop.
Save bbpbuildbot/188e106ef71be8280ac86ddbd1ef9117 to your computer and use it in GitHub Desktop.
Logfiles for GitLab pipeline https://bbpgitlab.epfl.ch/hpc/nmodl/-/pipelines/214443 (:no_entry:) running on GitHub PR BlueBrain/nmodl#1289.
Running with gitlab-runner 15.5.0 (0d4137b8)
 on BB5 map runner pnPo3yJy
section_start:1717410604:resolve_secrets Resolving secrets
section_end:1717410604:resolve_secrets section_start:1717410604:prepare_executor Preparing the "custom" executor
Using Custom executor with driver BB5 PROD runner v0.0.3...
BB5 PROD runner running on bbpv1.epfl.ch, version 15.5.0, user
TMPDIR is /gpfs/bbp.cscs.ch/ssd/gitlab_map_jobs/tmp/custom-executor226411378, slurm job id , CUSTOM_ENV_CI_RUNNER_TAGS is ["bb5_map"]
Runner ID 29, project root hpc, project name nmodl
Pipeline ID 214443, build ref , job ID 1304407
Build dir /gpfs/bbp.cscs.ch/ssd/gitlab_map_jobs//bbpcihpcproj12/P214443, optional exclusive flag , optional cpus per task flag --cpus-per-task=6, optional qos flag , optional reservation flag
A slurm job will be created with name GL_J1304407_PROD_P30_CP0_C0
Job parameters: memory=30750M, cpus_per_task=6, duration=1:00:00, constraint=cpu ntasks=1 account=proj9998 user=bbpcihpcproj12 partition=prod qos= reservation=
Not executing the chown -R
sbatch: INFO: Activating auto partition selection plugin, please report errors to HPC/CS
sbatch: INFO: Job specifies cpu constraint, setting --constraint=[skl|clx]
Submitted batch job 2231030
job state: R
sbatch: sbatch -p prod -A proj9998 --ntasks=1 --cpus-per-task=6 --mem=30750M --job-name=GL_J1304407_PROD_P30_CP0_C0 -C cpu --no-requeue -D /gpfs/bbp.cscs.ch/ssd/gitlab_map_jobs//bbpcihpcproj12/P214443 --time=1:00:00 --wrap="sleep infinity"
srun: srun --mpi=none --chdir=/gpfs/bbp.cscs.ch/ssd/gitlab_map_jobs//bbpcihpcproj12/P214443 --ntasks=1 --jobid=2231030 --cpus-per-task=6 --mem=30750M
section_end:1717410606:prepare_executor section_start:1717410606:prepare_script Preparing environment
Using git from spack modules
Running on r1i4n11 via bbpv1.epfl.ch...
section_end:1717410612:prepare_script section_start:1717410612:get_sources Getting source from Git repository
Using git from spack modules
Skipping Git repository setup
Skipping Git checkout
Skipping Git submodules setup
section_end:1717410613:get_sources section_start:1717410613:restore_cache Restoring cache
Using git from spack modules
Checking cache for build:intel-2-non_protected...
Runtime platform  arch=amd64 os=linux pid=280362 revision=58ba2b95 version=14.2.0
cache.zip is up to date 
Successfully extracted cache
section_end:1717410618:restore_cache section_start:1717410618:download_artifacts Downloading artifacts
Using git from spack modules
Downloading artifacts for spack_setup (1304406)...
Runtime platform  arch=amd64 os=linux pid=280455 revision=58ba2b95 version=14.2.0
Downloading artifacts from coordinator... ok  id=1304406 responseStatus=200 OK token=glcbt-64
section_end:1717410620:download_artifacts section_start:1717410620:step_script Executing "step_script" stage of the job script
WARNING: Starting with version 14.0 the 'build_script' stage will be replaced with 'step_script': https://gitlab.com/gitlab-org/gitlab-runner/-/issues/26426
Using git from spack modules
$ SPACK_BUILD="${PWD}/spack-build"
$ env -0 | sort -z | xargs -0 -L 1 echo > initial_environment.env
$ . ${SPACK_ROOT}/share/spack/setup-env.sh
$ export SPACK_USER_CONFIG_PATH=${PWD}/spack-config
$ mkdir ${SPACK_USER_CONFIG_PATH}
$ cat > ${SPACK_USER_CONFIG_PATH}/config.yaml << END_SCRIPT # collapsed multi-line command
$ spack ${SPACK_EXTRA_FLAGS} config add concretizer:reuse:false
$ spack ${SPACK_EXTRA_FLAGS} config blame config
--- config:
/gpfs/bbp.cscs.ch/ssd/gitlab_map_jobs/bbpcihpcproj12/P214443/J1304407/spack-config/config.yaml:2 build_stage:
/gpfs/bbp.cscs.ch/ssd/gitlab_map_jobs/bbpcihpcproj12/P214443/J1304407/spack-config/config.yaml:3 - /gpfs/bbp.cscs.ch/ssd/gitlab_map_jobs/bbpcihpcproj12/P214443/J1304407/spack-build
/gpfs/bbp.cscs.ch/ssd/gitlab_map_jobs/bbpcihpcproj12/P214443/J1304407/spack-config/config.yaml:4 source_cache: /gpfs/bbp.cscs.ch/ssd/gitlab_map_jobs/bbpcihpcproj12/P214443/J1304407/spack-source-cache
/gpfs/bbp.cscs.ch/ssd/gitlab_map_jobs/bbpcihpcproj12/P214443/J1304406/spack/etc/spack/config.yaml:2 ccache: True
/gpfs/bbp.cscs.ch/ssd/apps/bsd//config/config.yaml:2 install_tree:
/gpfs/bbp.cscs.ch/ssd/apps/bsd//config/config.yaml:3 root: $user_cache_path/software
/gpfs/bbp.cscs.ch/ssd/apps/bsd//config/config.yaml:4 projections:
/gpfs/bbp.cscs.ch/ssd/apps/bsd//config/config.yaml:5 all: install_{compiler.name}-{compiler.version}-{target}/{name}-{version}-{hash:6}
/gpfs/bbp.cscs.ch/ssd/apps/bsd//config/config.yaml:7 environments_root: $user_cache_path/environments
/gpfs/bbp.cscs.ch/ssd/apps/bsd//config/config.yaml:9 build_jobs: 8
/gpfs/bbp.cscs.ch/ssd/gitlab_map_jobs/bbpcihpcproj12/P214443/J1304406/spack/etc/spack/defaults/config.yaml:18 extensions:
/gpfs/bbp.cscs.ch/ssd/gitlab_map_jobs/bbpcihpcproj12/P214443/J1304406/spack/etc/spack/defaults/config.yaml:19 - $spack/bluebrain/spack-scripting
/gpfs/bbp.cscs.ch/ssd/gitlab_map_jobs/bbpcihpcproj12/P214443/J1304406/spack/etc/spack/defaults/config.yaml:37 template_dirs:
/gpfs/bbp.cscs.ch/ssd/gitlab_map_jobs/bbpcihpcproj12/P214443/J1304406/spack/etc/spack/defaults/config.yaml:38 - $spack/share/spack/templates
/gpfs/bbp.cscs.ch/ssd/gitlab_map_jobs/bbpcihpcproj12/P214443/J1304406/spack/etc/spack/defaults/config.yaml:41 license_dir: $spack/etc/spack/licenses
/gpfs/bbp.cscs.ch/ssd/gitlab_map_jobs/bbpcihpcproj12/P214443/J1304406/spack/etc/spack/defaults/config.yaml:81 test_stage: $user_cache_path/test
/gpfs/bbp.cscs.ch/ssd/gitlab_map_jobs/bbpcihpcproj12/P214443/J1304406/spack/etc/spack/defaults/config.yaml:94 misc_cache: $user_cache_path/cache
/gpfs/bbp.cscs.ch/ssd/gitlab_map_jobs/bbpcihpcproj12/P214443/J1304406/spack/etc/spack/defaults/config.yaml:100 connect_timeout: 10
/gpfs/bbp.cscs.ch/ssd/gitlab_map_jobs/bbpcihpcproj12/P214443/J1304406/spack/etc/spack/defaults/config.yaml:105 verify_ssl: True
/gpfs/bbp.cscs.ch/ssd/gitlab_map_jobs/bbpcihpcproj12/P214443/J1304406/spack/etc/spack/defaults/config.yaml:113 suppress_gpg_warnings: False
/gpfs/bbp.cscs.ch/ssd/gitlab_map_jobs/bbpcihpcproj12/P214443/J1304406/spack/etc/spack/defaults/config.yaml:119 install_missing_compilers: False
/gpfs/bbp.cscs.ch/ssd/gitlab_map_jobs/bbpcihpcproj12/P214443/J1304406/spack/etc/spack/defaults/config.yaml:124 checksum: True
/gpfs/bbp.cscs.ch/ssd/gitlab_map_jobs/bbpcihpcproj12/P214443/J1304406/spack/etc/spack/defaults/config.yaml:129 deprecated: False
/gpfs/bbp.cscs.ch/ssd/gitlab_map_jobs/bbpcihpcproj12/P214443/J1304406/spack/etc/spack/defaults/config.yaml:134 dirty: False
/gpfs/bbp.cscs.ch/ssd/gitlab_map_jobs/bbpcihpcproj12/P214443/J1304406/spack/etc/spack/defaults/config.yaml:142 build_language: C
/gpfs/bbp.cscs.ch/ssd/gitlab_map_jobs/bbpcihpcproj12/P214443/J1304406/spack/etc/spack/defaults/config.yaml:151 locks: True
/gpfs/bbp.cscs.ch/ssd/gitlab_map_jobs/bbpcihpcproj12/P214443/J1304406/spack/etc/spack/defaults/config.yaml:156 url_fetch_method: urllib
/gpfs/bbp.cscs.ch/ssd/gitlab_map_jobs/bbpcihpcproj12/P214443/J1304406/spack/etc/spack/defaults/config.yaml:185 concretizer: clingo
/gpfs/bbp.cscs.ch/ssd/gitlab_map_jobs/bbpcihpcproj12/P214443/J1304406/spack/etc/spack/defaults/config.yaml:192 db_lock_timeout: 60
/gpfs/bbp.cscs.ch/ssd/gitlab_map_jobs/bbpcihpcproj12/P214443/J1304406/spack/etc/spack/defaults/config.yaml:200 package_lock_timeout: null
/gpfs/bbp.cscs.ch/ssd/gitlab_map_jobs/bbpcihpcproj12/P214443/J1304406/spack/etc/spack/defaults/config.yaml:205 shared_linking:
/gpfs/bbp.cscs.ch/ssd/gitlab_map_jobs/bbpcihpcproj12/P214443/J1304406/spack/etc/spack/defaults/config.yaml:210 type: rpath
/gpfs/bbp.cscs.ch/ssd/gitlab_map_jobs/bbpcihpcproj12/P214443/J1304406/spack/etc/spack/defaults/config.yaml:216 bind: False
/gpfs/bbp.cscs.ch/ssd/gitlab_map_jobs/bbpcihpcproj12/P214443/J1304406/spack/etc/spack/defaults/config.yaml:221 allow_sgid: True
/gpfs/bbp.cscs.ch/ssd/gitlab_map_jobs/bbpcihpcproj12/P214443/J1304406/spack/etc/spack/defaults/config.yaml:227 install_status: True
/gpfs/bbp.cscs.ch/ssd/gitlab_map_jobs/bbpcihpcproj12/P214443/J1304406/spack/etc/spack/defaults/config.yaml:231 binary_index_ttl: 600
/gpfs/bbp.cscs.ch/ssd/gitlab_map_jobs/bbpcihpcproj12/P214443/J1304406/spack/etc/spack/defaults/config.yaml:233 flags:
/gpfs/bbp.cscs.ch/ssd/gitlab_map_jobs/bbpcihpcproj12/P214443/J1304406/spack/etc/spack/defaults/config.yaml:235 keep_werror: none
/gpfs/bbp.cscs.ch/ssd/gitlab_map_jobs/bbpcihpcproj12/P214443/J1304406/spack/etc/spack/defaults/config.yaml:240 aliases:
/gpfs/bbp.cscs.ch/ssd/gitlab_map_jobs/bbpcihpcproj12/P214443/J1304406/spack/etc/spack/defaults/config.yaml:241 concretise: concretize
/gpfs/bbp.cscs.ch/ssd/gitlab_map_jobs/bbpcihpcproj12/P214443/J1304406/spack/etc/spack/defaults/config.yaml:242 containerise: containerize
/gpfs/bbp.cscs.ch/ssd/gitlab_map_jobs/bbpcihpcproj12/P214443/J1304406/spack/etc/spack/defaults/config.yaml:243 rm: remove
_builtin debug: False
$ spack ${SPACK_EXTRA_FLAGS} config blame concretizer
--- concretizer:
/gpfs/bbp.cscs.ch/ssd/gitlab_map_jobs/bbpcihpcproj12/P214443/J1304407/spack-config/concretizer.yaml:2 reuse: False
/gpfs/bbp.cscs.ch/ssd/gitlab_map_jobs/bbpcihpcproj12/P214443/J1304406/spack/etc/spack/defaults/concretizer.yaml:23 targets:
/gpfs/bbp.cscs.ch/ssd/gitlab_map_jobs/bbpcihpcproj12/P214443/J1304406/spack/etc/spack/defaults/concretizer.yaml:28 granularity: microarchitectures
/gpfs/bbp.cscs.ch/ssd/gitlab_map_jobs/bbpcihpcproj12/P214443/J1304406/spack/etc/spack/defaults/concretizer.yaml:32 host_compatible: True
/gpfs/bbp.cscs.ch/ssd/gitlab_map_jobs/bbpcihpcproj12/P214443/J1304406/spack/etc/spack/defaults/concretizer.yaml:38 unify: True
/gpfs/bbp.cscs.ch/ssd/gitlab_map_jobs/bbpcihpcproj12/P214443/J1304406/spack/etc/spack/defaults/concretizer.yaml:40 duplicates:
/gpfs/bbp.cscs.ch/ssd/gitlab_map_jobs/bbpcihpcproj12/P214443/J1304406/spack/etc/spack/defaults/concretizer.yaml:44 strategy: minimal
$ export XDG_CONFIG_HOME=${CI_BUILDS_DIR}/J${CI_JOB_ID}_local_config
$ echo "Configuring git to use CI_JOB_TOKEN to access git@bbpgitlab.epfl.ch (${XDG_CONFIG_HOME})"
Configuring git to use CI_JOB_TOKEN to access git@bbpgitlab.epfl.ch (/gpfs/bbp.cscs.ch/ssd/gitlab_map_jobs//bbpcihpcproj12/P214443/J1304407_local_config)
$ mkdir -p "${XDG_CONFIG_HOME}/git"
$ echo -e "[url \"https://gitlab-ci-token:${CI_JOB_TOKEN}@bbpgitlab.epfl.ch/\"]\n insteadOf = git@bbpgitlab.epfl.ch:" > "${XDG_CONFIG_HOME}/git/config"
$ echo -e "[url \"https://gitlab-ci-token:${CI_JOB_TOKEN}@bbpgitlab.epfl.ch/\"]\n insteadOf = ssh://git@bbpgitlab.epfl.ch/" >> "${XDG_CONFIG_HOME}/git/config"
$ cat "${XDG_CONFIG_HOME}/git/config"
[url "https://gitlab-ci-token:[MASKED]@bbpgitlab.epfl.ch/"]
insteadOf = git@bbpgitlab.epfl.ch:
[url "https://gitlab-ci-token:[MASKED]@bbpgitlab.epfl.ch/"]
insteadOf = ssh://git@bbpgitlab.epfl.ch/
$ SPACK_FULL_SPEC="${SPACK_PACKAGE}${SPACK_PACKAGE_COMPILER:+%}${SPACK_PACKAGE_COMPILER} ${SPACK_PACKAGE_SPEC} ${SPACK_PACKAGE_DEPENDENCIES} ${SPACK_PACKAGE_DEPENDENCY_ON_PREVIOUS_JOB}"
$ echo "Preparing to install ${SPACK_FULL_SPEC}"
Preparing to install nmodl%oneapi +python+tests
$ if [ ${SPACK_USE_CCACHE+x} ]; then
$ module load unstable ccache
$ export CCACHE_BASEDIR=$(realpath -P ${CI_BUILDS_DIR})
$ echo CCACHE_BASEDIR=${CCACHE_BASEDIR}
CCACHE_BASEDIR=/gpfs/bbp.cscs.ch/ssd/gitlab_map_jobs/bbpcihpcproj12/P214443
$ export CCACHE_MAXSIZE=512M
$ export CCACHE_DIR="${TMPDIR}/ccache"
$ mkdir -p ${CCACHE_DIR}
$ if [ -f ${CI_PROJECT_DIR}/ccache.tar ]; then
$ tar -C "${CCACHE_DIR}" -xf "${CI_PROJECT_DIR}/ccache.tar"
$ fi
$ ccache --zero-stats
Statistics zeroed
$ ccache --show-stats --verbose
Cache directory: /nvme/bbpcihpcproj12/2231030/ccache
Config file: /nvme/bbpcihpcproj12/2231030/ccache/ccache.conf
System config file: /gpfs/bbp.cscs.ch/ssd/apps/bsd/2024-02-01/stage_externals/install_gcc-12.3.0-skylake/ccache-4.7.4-eompz5/etc/ccache.conf
Stats updated: Mon Jun 3 12:30:25 2024
Local storage:
Cache size (GB): 0.45 / 0.51 (88.70%)
Files: 4038
Hits: 0
Misses: 0
Reads: 0
Writes: 0
$ fi
$ module load unstable git ${SPACK_EXTRA_MODULES}
$ spack ${SPACK_EXTRA_FLAGS} spec -Il ${SPACK_FULL_SPEC}
Input spec
--------------------------------
- nmodl%oneapi+python+tests
Concretized
--------------------------------
- i3ecjr2 nmodl@git.af35cc09bee0bdd03143ac257f12079e446434f3=develop%oneapi@2023.2.0~ipo~legacy-unit~llvm~llvm_cuda+python+tests build_system=cmake build_type=Release generator=ninja arch=linux-rhel7-skylake
[e] yn5fbwg ^bison@3.8.2%gcc@12.3.0 build_system=autotools arch=linux-rhel7-skylake
[^] pywly2v ^catch2@3.4.0%gcc@12.3.0~ipo+pic~shared build_system=cmake build_type=Release generator=make arch=linux-rhel7-skylake
[^] swjylul ^gmake@4.4.1%gcc@12.3.0~guile build_system=generic arch=linux-rhel7-skylake
[^] ud3echq ^cli11@2.3.2%gcc@12.3.0~ipo build_system=cmake build_type=Release generator=make arch=linux-rhel7-skylake
[e] b5zzpr3 ^cmake@3.27.7%gcc@12.3.0~doc+ncurses+ownlibs build_system=generic build_type=Release arch=linux-rhel7-skylake
[e] 77vzaxs ^flex@2.6.3%gcc@12.3.0+lex~nls build_system=autotools arch=linux-rhel7-skylake
[^] evtttrh ^fmt@10.1.1%gcc@12.3.0~ipo+pic~shared build_system=cmake build_type=Release cxxstd=11 generator=make arch=linux-rhel7-skylake
[e] omn6mm4 ^ninja@1.11.1%gcc@12.3.0+re2c build_system=generic arch=linux-rhel7-skylake
[^] teske2k ^nlohmann-json@3.9.1%gcc@12.3.0~ipo+multiple_headers build_system=cmake build_type=Release generator=make arch=linux-rhel7-skylake
[^] 5dylnca ^py-find-libpython@0.3.1%gcc@12.3.0 build_system=python_pip arch=linux-rhel7-skylake
[^] 77ku3vv ^py-pip@23.1.2%gcc@12.3.0 build_system=generic arch=linux-rhel7-skylake
[^] p3xbqxj ^py-setuptools@68.0.0%gcc@12.3.0 build_system=generic arch=linux-rhel7-skylake
[^] aj3rk42 ^py-wheel@0.41.2%gcc@12.3.0 build_system=generic arch=linux-rhel7-skylake
[^] 7validy ^py-jinja2@3.1.2%gcc@12.3.0~i18n build_system=python_pip arch=linux-rhel7-skylake
[^] r3ehtmw ^py-markupsafe@2.1.3%gcc@12.3.0 build_system=python_pip arch=linux-rhel7-skylake
[^] wnagrhw ^py-numpy@1.26.1%gcc@12.3.0 build_system=python_pip patches=873745d arch=linux-rhel7-skylake
[e] w2ldcy2 ^intel-oneapi-mkl@2023.2.0%gcc@12.3.0~cluster+envmods~ilp64+shared build_system=generic mpi_family=none threads=none arch=linux-rhel7-skylake
[^] e533uuv ^pkgconf@1.9.5%gcc@12.3.0 build_system=autotools arch=linux-rhel7-skylake
[^] 3rx3xab ^py-cython@3.0.4%gcc@12.3.0 build_system=python_pip arch=linux-rhel7-skylake
[^] 3y7uuwr ^py-pyproject-metadata@0.7.1%gcc@12.3.0 build_system=python_pip arch=linux-rhel7-skylake
[^] tabj2mo ^py-pybind11@2.11.1%gcc@12.3.0~ipo build_system=cmake build_type=Release generator=ninja arch=linux-rhel7-skylake
[^] tdpazhn ^py-pytest@7.3.2%gcc@12.3.0 build_system=python_pip arch=linux-rhel7-skylake
[^] p4lv577 ^py-iniconfig@2.0.0%gcc@12.3.0 build_system=python_pip arch=linux-rhel7-skylake
[^] 4r6gjx7 ^py-hatch-vcs@0.3.0%gcc@12.3.0 build_system=python_pip arch=linux-rhel7-skylake
[^] ou7zcb6 ^py-hatchling@1.21.0%gcc@12.3.0 build_system=python_pip arch=linux-rhel7-skylake
[^] 6domhtg ^py-editables@0.3%gcc@12.3.0 build_system=python_pip arch=linux-rhel7-skylake
[^] edobf76 ^py-pathspec@0.11.1%gcc@12.3.0 build_system=python_pip arch=linux-rhel7-skylake
[^] a6ialdh ^py-trove-classifiers@2023.8.7%gcc@12.3.0 build_system=python_pip arch=linux-rhel7-skylake
[^] jurd5ga ^py-calver@2022.6.26%gcc@12.3.0 build_system=python_pip arch=linux-rhel7-skylake
[^] uqml2to ^py-packaging@23.1%gcc@12.3.0 build_system=python_pip arch=linux-rhel7-skylake
[^] h6f6feu ^py-flit-core@3.9.0%gcc@12.3.0 build_system=python_pip arch=linux-rhel7-skylake
[^] lxhgsum ^py-pluggy@1.0.0%gcc@12.3.0 build_system=python_pip arch=linux-rhel7-skylake
[^] slwtska ^py-setuptools-scm@7.1.0%gcc@12.3.0+toml build_system=python_pip arch=linux-rhel7-skylake
[e] 2sazdxk ^git@2.42.0%gcc@12.3.0+man+nls+perl+subtree~svn~tcltk build_system=autotools arch=linux-rhel7-skylake
[^] xwl5l6q ^py-tomli@2.0.1%gcc@12.3.0 build_system=python_pip arch=linux-rhel7-skylake
[^] 275jtek ^py-typing-extensions@4.8.0%gcc@12.3.0 build_system=python_pip arch=linux-rhel7-skylake
[^] 5xwjejc ^py-pytest-cov@4.0.0%gcc@12.3.0 build_system=python_pip arch=linux-rhel7-skylake
[^] wuxetkw ^py-coverage@7.2.6%gcc@12.3.0+toml build_system=python_pip arch=linux-rhel7-skylake
[^] 2inh3rt ^py-pyyaml@5.4.1%gcc@12.3.0+libyaml build_system=python_pip arch=linux-rhel7-skylake
[^] bzl4xcz ^libyaml@0.2.5%gcc@12.3.0 build_system=autotools arch=linux-rhel7-skylake
[^] dw56njg ^py-sympy@1.11.1%gcc@12.3.0 build_system=python_pip arch=linux-rhel7-skylake
[^] quibu6o ^py-mpmath@1.2.1%gcc@12.3.0 build_system=python_pip arch=linux-rhel7-skylake
[e] 5wl76vp ^python@3.11.6%gcc@12.3.0+bz2+crypt+ctypes+dbm~debug+libxml2+lzma~nis~optimizations+pic+pyexpat+pythoncmd+readline+shared+sqlite3+ssl~tkinter+uuid+zlib build_system=generic patches=13fa8bf,b0615b2,ebdca64,f2fd060 arch=linux-rhel7-skylake
[^] ihotvbs ^spdlog@1.12.0%gcc@12.3.0+fmt_external~ipo+shared build_system=cmake build_type=Release generator=make arch=linux-rhel7-skylake
$ set -o pipefail
$ (spack ${SPACK_EXTRA_FLAGS} install --overwrite -y -j${SLURM_CPUS_PER_TASK} --log-format=junit --log-file=${CI_PROJECT_DIR}/install.xml --keep-stage ${SPACK_FULL_SPEC} | tee log) || install_failed=1
==> Warning: Expected user 904556 to own /gpfs/bbp.cscs.ch/ssd/gitlab_map_jobs/bbpcihpcproj12/P214443, but it is owned by 0
==> bison@3.8.2 : has external module in ['bison/3.8.2']
[+] /gpfs/bbp.cscs.ch/ssd/apps/bsd/2024-02-01/stage_externals/install_gcc-12.3.0-skylake/bison-3.8.2-qcx3sg (external bison-3.8.2-yn5fbwgteilgqg6b62shkhkjg3hlwmrq)
[+] /gpfs/bbp.cscs.ch/ssd/apps/bsd/2024-02-01/stage_applications/install_gcc-12.3.0-skylake/catch2-3.4.0-pywly2
[+] /gpfs/bbp.cscs.ch/ssd/apps/bsd/2024-02-01/stage_applications/install_gcc-12.3.0-skylake/cli11-2.3.2-ud3ech
==> cmake@3.27.7 : has external module in ['cmake/3.27.7']
[+] /gpfs/bbp.cscs.ch/ssd/apps/bsd/2024-02-01/stage_externals/install_gcc-12.3.0-skylake/cmake-3.27.7-slyoes (external cmake-3.27.7-b5zzpr3mwm7jxv6bvvrs6zpeg62cfhbu)
==> flex@2.6.3 : has external module in ['flex/2.6.3']
[+] /gpfs/bbp.cscs.ch/ssd/apps/bsd/2024-02-01/stage_externals/install_gcc-12.3.0-skylake/flex-2.6.3-edx4lf (external flex-2.6.3-77vzaxsa3g7wr3omktr4skpetx5ds4pt)
==> ninja@1.11.1 : has external module in ['ninja/1.11.1']
[+] /gpfs/bbp.cscs.ch/ssd/apps/bsd/2024-02-01/stage_externals/install_gcc-12.3.0-skylake/ninja-1.11.1-nxtlgo (external ninja-1.11.1-omn6mm4a3zsbpbkptvdwxs6kkrh6yafw)
==> python@3.11.6 : has external module in ['python/3.11.6']
[+] /gpfs/bbp.cscs.ch/ssd/apps/bsd/2024-02-01/stage_externals/install_gcc-12.3.0-skylake/python-3.11.6-bj4i6m (external python-3.11.6-5wl76vphfvpcapfaipipf7xn2xylnc4o)
==> intel-oneapi-mkl@2023.2.0 : has external module in ['intel-oneapi-mkl/2023.2.0']
[+] /gpfs/bbp.cscs.ch/ssd/apps/bsd/2024-02-01/stage_externals/install_gcc-12.3.0-skylake/intel-oneapi-mkl-2023.2.0-twl2n4 (external intel-oneapi-mkl-2023.2.0-w2ldcy2y2urm3uaa7omu3w7nhwsqt433)
[+] /gpfs/bbp.cscs.ch/ssd/apps/bsd/2024-02-01/stage_applications/install_gcc-12.3.0-skylake/libyaml-0.2.5-bzl4xc
[+] /gpfs/bbp.cscs.ch/ssd/apps/bsd/2024-02-01/stage_applications/install_gcc-12.3.0-skylake/nlohmann-json-3.9.1-teske2
[+] /gpfs/bbp.cscs.ch/ssd/apps/bsd/2024-02-01/stage_applications/install_gcc-12.3.0-skylake/fmt-10.1.1-evtttr
[+] /gpfs/bbp.cscs.ch/ssd/apps/bsd/2024-02-01/stage_applications/install_gcc-12.3.0-skylake/py-coverage-7.2.6-wuxetk
[+] /gpfs/bbp.cscs.ch/ssd/apps/bsd/2024-02-01/stage_applications/install_gcc-12.3.0-skylake/py-pybind11-2.11.1-tabj2m
[+] /gpfs/bbp.cscs.ch/ssd/apps/bsd/2024-02-01/stage_applications/install_gcc-12.3.0-skylake/py-iniconfig-2.0.0-p4lv57
[+] /gpfs/bbp.cscs.ch/ssd/apps/bsd/2024-02-01/stage_applications/install_gcc-12.3.0-skylake/py-setuptools-68.0.0-p3xbqx
[+] /gpfs/bbp.cscs.ch/ssd/apps/bsd/2024-02-01/stage_applications/install_gcc-12.3.0-skylake/py-packaging-23.1-uqml2t
[+] /gpfs/bbp.cscs.ch/ssd/apps/bsd/2024-02-01/stage_applications/install_gcc-12.3.0-skylake/py-numpy-1.26.1-wnagrh
[+] /gpfs/bbp.cscs.ch/ssd/apps/bsd/2024-02-01/stage_applications/install_gcc-12.3.0-skylake/spdlog-1.12.0-ihotvb
[+] /gpfs/bbp.cscs.ch/ssd/apps/bsd/2024-02-01/stage_applications/install_gcc-12.3.0-skylake/py-pyyaml-5.4.1-2inh3r
[+] /gpfs/bbp.cscs.ch/ssd/apps/bsd/2024-02-01/stage_applications/install_gcc-12.3.0-skylake/py-pluggy-1.0.0-lxhgsu
[+] /gpfs/bbp.cscs.ch/ssd/apps/bsd/2024-02-01/stage_applications/install_gcc-12.3.0-skylake/py-markupsafe-2.1.3-r3ehtm
[+] /gpfs/bbp.cscs.ch/ssd/apps/bsd/2024-02-01/stage_applications/install_gcc-12.3.0-skylake/py-mpmath-1.2.1-quibu6
[+] /gpfs/bbp.cscs.ch/ssd/apps/bsd/2024-02-01/stage_applications/install_gcc-12.3.0-skylake/py-find-libpython-0.3.1-5dylnc
[+] /gpfs/bbp.cscs.ch/ssd/apps/bsd/2024-02-01/stage_applications/install_gcc-12.3.0-skylake/py-pytest-7.3.2-tdpazh
[+] /gpfs/bbp.cscs.ch/ssd/apps/bsd/2024-02-01/stage_applications/install_gcc-12.3.0-skylake/py-jinja2-3.1.2-7valid
[+] /gpfs/bbp.cscs.ch/ssd/apps/bsd/2024-02-01/stage_applications/install_gcc-12.3.0-skylake/py-sympy-1.11.1-dw56nj
[+] /gpfs/bbp.cscs.ch/ssd/apps/bsd/2024-02-01/stage_applications/install_gcc-12.3.0-skylake/py-pytest-cov-4.0.0-5xwjej
==> Installing nmodl-git.af35cc09bee0bdd03143ac257f12079e446434f3=develop-i3ecjr2jrbp34b4gwtcofff2rdsfnihg [28/28]
==> No binary for nmodl-git.af35cc09bee0bdd03143ac257f12079e446434f3=develop-i3ecjr2jrbp34b4gwtcofff2rdsfnihg found: installing from source
==> No patches needed for nmodl
==> nmodl: Executing phase: 'cmake'
==> nmodl: Executing phase: 'build'
==> nmodl: Executing phase: 'install'
==> nmodl: Successfully installed nmodl-git.af35cc09bee0bdd03143ac257f12079e446434f3=develop-i3ecjr2jrbp34b4gwtcofff2rdsfnihg
Stage: 57.15s. Cmake: 11.66s. Build: 1m 50.44s. Install: 0.85s. Post-install: 0.42s. Total: 3m 0.97s
[+] /gpfs/bbp.cscs.ch/ssd/gitlab_map_jobs/bbpcihpcproj12/P214443/software/install_oneapi-2023.2.0-skylake/nmodl-git.af35cc09bee0bdd03143ac257f12079e446434f3_develop-i3ecjr
$ set +o pipefail
$ chmod -R g+rX "${SPACK_BUILD}"
$ if [[ ${install_failed} == 1 ]]; then exit 1; fi
$ SPACK_INSTALLED_HASH=$(spack ${SPACK_EXTRA_FLAGS} find --format "{hash}" /$(sed -ne '${s/.*-//;p}' log))
$ echo "Determined the installed hash to be ${SPACK_INSTALLED_HASH}"
Determined the installed hash to be i3ecjr2jrbp34b4gwtcofff2rdsfnihg
$ SPACK_STAGE_DIR=$(spack location -s "${SPACK_FULL_SPEC}")
$ SPACK_BUILD_DIR=$(spack location -b "${SPACK_FULL_SPEC}")
$ SPACK_SOURCE_DIR=${SPACK_STAGE_DIR}/spack-src
$ if [ ${SPACK_USE_CCACHE+x} ]; then
$ ccache --cleanup
$ ccache --show-stats --verbose
Cache directory: /nvme/bbpcihpcproj12/2231030/ccache
Config file: /nvme/bbpcihpcproj12/2231030/ccache/ccache.conf
System config file: /gpfs/bbp.cscs.ch/ssd/apps/bsd/2024-02-01/stage_externals/install_gcc-12.3.0-skylake/ccache-4.7.4-eompz5/etc/ccache.conf
Stats updated: Mon Jun 3 12:35:46 2024
Cacheable calls: 144 / 174 (82.76%)
Hits: 132 / 144 (91.67%)
Direct: 28 / 132 (21.21%)
Preprocessed: 104 / 132 (78.79%)
Misses: 12 / 144 ( 8.33%)
Uncacheable calls: 30 / 174 (17.24%)
Called for linking: 28 / 30 (93.33%)
No input file: 2 / 30 ( 6.67%)
Successful lookups:
Direct: 28 / 144 (19.44%)
Preprocessed: 104 / 116 (89.66%)
Local storage:
Cache size (GB): 0.45 / 0.51 (87.50%)
Files: 4013
Cleanups: 1
Hits: 132 / 144 (91.67%)
Misses: 12 / 144 ( 8.33%)
Reads: 288
Writes: 14
$ tar -C "${CCACHE_DIR}" -cf "${CI_PROJECT_DIR}/ccache.tar" .
$ fi
$ touch ${SPACK_STAGE_DIR}/spack-configure-args.txt
$ cp ${SPACK_STAGE_DIR}/spack-{build-env,build-out,configure-args}.txt ${CI_PROJECT_DIR}/
$ echo "SPACK_BUILD_DIR=${SPACK_BUILD_DIR}" > ${CI_PROJECT_DIR}/spack_build_info.env
$ echo "SPACK_FULL_SPEC=${SPACK_FULL_SPEC}" >> ${CI_PROJECT_DIR}/spack_build_info.env
$ echo "SPACK_SOURCE_DIR=${SPACK_SOURCE_DIR}" >> ${CI_PROJECT_DIR}/spack_build_info.env
$ echo "SPACK_INSTALLED_HASH=${SPACK_INSTALLED_HASH}" >> ${CI_PROJECT_DIR}/spack_build_info.env
$ SPACK_PACKAGE_SLUGIFY=$(echo -n ${SPACK_PACKAGE} | tr -c '[:alnum:]' '_' | tr '[:lower:]' '[:upper:]')
$ echo "${SPACK_PACKAGE_SLUGIFY}_INSTALLED_HASH=${SPACK_INSTALLED_HASH}" >> ${CI_PROJECT_DIR}/spack_build_info.env
$ echo "SPACK_PACKAGE_DEPENDENCY_ON_PREVIOUS_JOB=^/${SPACK_INSTALLED_HASH}" >> ${CI_PROJECT_DIR}/spack_build_info.env
$ num_failures=$(module load unstable python-dev; python -c "from lxml import etree; xml = etree.parse('${CI_PROJECT_DIR}/install.xml'); print(sum(1 for _ in xml.getroot().iter('failure')) + sum(1 for _ in xml.getroot().iter('error')))")
$ if [[ ${num_failures} > 0 ]]; then exit ${num_failures}; fi
section_end:1717410948:step_script section_start:1717410948:archive_cache Saving cache for successful job
Using git from spack modules
Creating cache build:intel-2-non_protected...
Runtime platform  arch=amd64 os=linux pid=285663 revision=58ba2b95 version=14.2.0
ccache.tar: found 1 matching files and directories
Uploading cache.zip to https://bbpobjectstorage.epfl.ch/gitlab-runners-cache/project/30/build%3Aintel-2-non_protected
Created cache
section_end:1717410971:archive_cache section_start:1717410971:upload_artifacts_on_success Uploading artifacts for successful job
Using git from spack modules
Uploading artifacts...
Runtime platform  arch=amd64 os=linux pid=285889 revision=58ba2b95 version=14.2.0
install.xml: found 1 matching files and directories
spack_build_info.env: found 1 matching files and directories
spack_clone_variables.env: found 1 matching files and directories
initial_environment.env: found 1 matching files and directories
spack-build-env.txt: found 1 matching files and directories
spack-build-out.txt: found 1 matching files and directories
spack-configure-args.txt: found 1 matching files and directories
Uploading artifacts as "archive" to coordinator... ok id=1304407 responseStatus=201 Created token=glcbt-64
Uploading artifacts...
Runtime platform  arch=amd64 os=linux pid=285914 revision=58ba2b95 version=14.2.0
install.xml: found 1 matching files and directories
Uploading artifacts as "junit" to coordinator... ok id=1304407 responseStatus=201 Created token=glcbt-64
Uploading artifacts...
Runtime platform  arch=amd64 os=linux pid=285939 revision=58ba2b95 version=14.2.0
spack_build_info.env: found 1 matching files and directories
spack_clone_variables.env: found 1 matching files and directories
Uploading artifacts as "dotenv" to coordinator... ok id=1304407 responseStatus=201 Created token=glcbt-64
section_end:1717410973:upload_artifacts_on_success section_start:1717410973:cleanup_file_variables Cleaning up project directory and file based variables
Using git from spack modules
section_end:1717410973:cleanup_file_variables Job succeeded
Running with gitlab-runner 15.5.0 (0d4137b8)
 on BB5 map runner pnPo3yJy
section_start:1717410605:resolve_secrets Resolving secrets
section_end:1717410605:resolve_secrets section_start:1717410605:prepare_executor Preparing the "custom" executor
Using Custom executor with driver BB5 PROD runner v0.0.3...
BB5 PROD runner running on bbpv1.epfl.ch, version 15.5.0, user
TMPDIR is /gpfs/bbp.cscs.ch/ssd/gitlab_map_jobs/tmp/custom-executor771082543, slurm job id , CUSTOM_ENV_CI_RUNNER_TAGS is ["bb5_map"]
Runner ID 29, project root hpc, project name nmodl
Pipeline ID 214443, build ref , job ID 1304408
Build dir /gpfs/bbp.cscs.ch/ssd/gitlab_map_jobs//bbpcihpcproj12/P214443, optional exclusive flag , optional cpus per task flag --cpus-per-task=6, optional qos flag , optional reservation flag
A slurm job will be created with name GL_J1304408_PROD_P30_CP1_C1
Job parameters: memory=30750M, cpus_per_task=6, duration=1:00:00, constraint=cpu ntasks=1 account=proj9998 user=bbpcihpcproj12 partition=prod qos= reservation=
Not executing the chown -R
sbatch: INFO: Activating auto partition selection plugin, please report errors to HPC/CS
sbatch: INFO: Job specifies cpu constraint, setting --constraint=[skl|clx]
Submitted batch job 2231031
job state: R
sbatch: sbatch -p prod -A proj9998 --ntasks=1 --cpus-per-task=6 --mem=30750M --job-name=GL_J1304408_PROD_P30_CP1_C1 -C cpu --no-requeue -D /gpfs/bbp.cscs.ch/ssd/gitlab_map_jobs//bbpcihpcproj12/P214443 --time=1:00:00 --wrap="sleep infinity"
srun: srun --mpi=none --chdir=/gpfs/bbp.cscs.ch/ssd/gitlab_map_jobs//bbpcihpcproj12/P214443 --ntasks=1 --jobid=2231031 --cpus-per-task=6 --mem=30750M
section_end:1717410607:prepare_executor section_start:1717410607:prepare_script Preparing environment
Using git from spack modules
Running on r1i4n11 via bbpv1.epfl.ch...
section_end:1717410612:prepare_script section_start:1717410612:get_sources Getting source from Git repository
Using git from spack modules
Skipping Git repository setup
Skipping Git checkout
Skipping Git submodules setup
section_end:1717410613:get_sources section_start:1717410613:restore_cache Restoring cache
Using git from spack modules
Checking cache for build:nvhpc-2-non_protected...
Runtime platform  arch=amd64 os=linux pid=280353 revision=58ba2b95 version=14.2.0
cache.zip is up to date 
Successfully extracted cache
section_end:1717410618:restore_cache section_start:1717410618:download_artifacts Downloading artifacts
Using git from spack modules
Downloading artifacts for spack_setup (1304406)...
Runtime platform  arch=amd64 os=linux pid=280516 revision=58ba2b95 version=14.2.0
Downloading artifacts from coordinator... ok  id=1304406 responseStatus=200 OK token=glcbt-64
section_end:1717410620:download_artifacts section_start:1717410620:step_script Executing "step_script" stage of the job script
WARNING: Starting with version 14.0 the 'build_script' stage will be replaced with 'step_script': https://gitlab.com/gitlab-org/gitlab-runner/-/issues/26426
Using git from spack modules
$ SPACK_BUILD="${PWD}/spack-build"
$ env -0 | sort -z | xargs -0 -L 1 echo > initial_environment.env
$ . ${SPACK_ROOT}/share/spack/setup-env.sh
$ export SPACK_USER_CONFIG_PATH=${PWD}/spack-config
$ mkdir ${SPACK_USER_CONFIG_PATH}
$ cat > ${SPACK_USER_CONFIG_PATH}/config.yaml << END_SCRIPT # collapsed multi-line command
$ spack ${SPACK_EXTRA_FLAGS} config add concretizer:reuse:false
$ spack ${SPACK_EXTRA_FLAGS} config blame config
--- config:
/gpfs/bbp.cscs.ch/ssd/gitlab_map_jobs/bbpcihpcproj12/P214443/J1304408/spack-config/config.yaml:2 build_stage:
/gpfs/bbp.cscs.ch/ssd/gitlab_map_jobs/bbpcihpcproj12/P214443/J1304408/spack-config/config.yaml:3 - /gpfs/bbp.cscs.ch/ssd/gitlab_map_jobs/bbpcihpcproj12/P214443/J1304408/spack-build
/gpfs/bbp.cscs.ch/ssd/gitlab_map_jobs/bbpcihpcproj12/P214443/J1304408/spack-config/config.yaml:4 source_cache: /gpfs/bbp.cscs.ch/ssd/gitlab_map_jobs/bbpcihpcproj12/P214443/J1304408/spack-source-cache
/gpfs/bbp.cscs.ch/ssd/gitlab_map_jobs/bbpcihpcproj12/P214443/J1304406/spack/etc/spack/config.yaml:2 ccache: True
/gpfs/bbp.cscs.ch/ssd/apps/bsd//config/config.yaml:2 install_tree:
/gpfs/bbp.cscs.ch/ssd/apps/bsd//config/config.yaml:3 root: $user_cache_path/software
/gpfs/bbp.cscs.ch/ssd/apps/bsd//config/config.yaml:4 projections:
/gpfs/bbp.cscs.ch/ssd/apps/bsd//config/config.yaml:5 all: install_{compiler.name}-{compiler.version}-{target}/{name}-{version}-{hash:6}
/gpfs/bbp.cscs.ch/ssd/apps/bsd//config/config.yaml:7 environments_root: $user_cache_path/environments
/gpfs/bbp.cscs.ch/ssd/apps/bsd//config/config.yaml:9 build_jobs: 8
/gpfs/bbp.cscs.ch/ssd/gitlab_map_jobs/bbpcihpcproj12/P214443/J1304406/spack/etc/spack/defaults/config.yaml:18 extensions:
/gpfs/bbp.cscs.ch/ssd/gitlab_map_jobs/bbpcihpcproj12/P214443/J1304406/spack/etc/spack/defaults/config.yaml:19 - $spack/bluebrain/spack-scripting
/gpfs/bbp.cscs.ch/ssd/gitlab_map_jobs/bbpcihpcproj12/P214443/J1304406/spack/etc/spack/defaults/config.yaml:37 template_dirs:
/gpfs/bbp.cscs.ch/ssd/gitlab_map_jobs/bbpcihpcproj12/P214443/J1304406/spack/etc/spack/defaults/config.yaml:38 - $spack/share/spack/templates
/gpfs/bbp.cscs.ch/ssd/gitlab_map_jobs/bbpcihpcproj12/P214443/J1304406/spack/etc/spack/defaults/config.yaml:41 license_dir: $spack/etc/spack/licenses
/gpfs/bbp.cscs.ch/ssd/gitlab_map_jobs/bbpcihpcproj12/P214443/J1304406/spack/etc/spack/defaults/config.yaml:81 test_stage: $user_cache_path/test
/gpfs/bbp.cscs.ch/ssd/gitlab_map_jobs/bbpcihpcproj12/P214443/J1304406/spack/etc/spack/defaults/config.yaml:94 misc_cache: $user_cache_path/cache
/gpfs/bbp.cscs.ch/ssd/gitlab_map_jobs/bbpcihpcproj12/P214443/J1304406/spack/etc/spack/defaults/config.yaml:100 connect_timeout: 10
/gpfs/bbp.cscs.ch/ssd/gitlab_map_jobs/bbpcihpcproj12/P214443/J1304406/spack/etc/spack/defaults/config.yaml:105 verify_ssl: True
/gpfs/bbp.cscs.ch/ssd/gitlab_map_jobs/bbpcihpcproj12/P214443/J1304406/spack/etc/spack/defaults/config.yaml:113 suppress_gpg_warnings: False
/gpfs/bbp.cscs.ch/ssd/gitlab_map_jobs/bbpcihpcproj12/P214443/J1304406/spack/etc/spack/defaults/config.yaml:119 install_missing_compilers: False
/gpfs/bbp.cscs.ch/ssd/gitlab_map_jobs/bbpcihpcproj12/P214443/J1304406/spack/etc/spack/defaults/config.yaml:124 checksum: True
/gpfs/bbp.cscs.ch/ssd/gitlab_map_jobs/bbpcihpcproj12/P214443/J1304406/spack/etc/spack/defaults/config.yaml:129 deprecated: False
/gpfs/bbp.cscs.ch/ssd/gitlab_map_jobs/bbpcihpcproj12/P214443/J1304406/spack/etc/spack/defaults/config.yaml:134 dirty: False
/gpfs/bbp.cscs.ch/ssd/gitlab_map_jobs/bbpcihpcproj12/P214443/J1304406/spack/etc/spack/defaults/config.yaml:142 build_language: C
/gpfs/bbp.cscs.ch/ssd/gitlab_map_jobs/bbpcihpcproj12/P214443/J1304406/spack/etc/spack/defaults/config.yaml:151 locks: True
/gpfs/bbp.cscs.ch/ssd/gitlab_map_jobs/bbpcihpcproj12/P214443/J1304406/spack/etc/spack/defaults/config.yaml:156 url_fetch_method: urllib
/gpfs/bbp.cscs.ch/ssd/gitlab_map_jobs/bbpcihpcproj12/P214443/J1304406/spack/etc/spack/defaults/config.yaml:185 concretizer: clingo
/gpfs/bbp.cscs.ch/ssd/gitlab_map_jobs/bbpcihpcproj12/P214443/J1304406/spack/etc/spack/defaults/config.yaml:192 db_lock_timeout: 60
/gpfs/bbp.cscs.ch/ssd/gitlab_map_jobs/bbpcihpcproj12/P214443/J1304406/spack/etc/spack/defaults/config.yaml:200 package_lock_timeout: null
/gpfs/bbp.cscs.ch/ssd/gitlab_map_jobs/bbpcihpcproj12/P214443/J1304406/spack/etc/spack/defaults/config.yaml:205 shared_linking:
/gpfs/bbp.cscs.ch/ssd/gitlab_map_jobs/bbpcihpcproj12/P214443/J1304406/spack/etc/spack/defaults/config.yaml:210 type: rpath
/gpfs/bbp.cscs.ch/ssd/gitlab_map_jobs/bbpcihpcproj12/P214443/J1304406/spack/etc/spack/defaults/config.yaml:216 bind: False
/gpfs/bbp.cscs.ch/ssd/gitlab_map_jobs/bbpcihpcproj12/P214443/J1304406/spack/etc/spack/defaults/config.yaml:221 allow_sgid: True
/gpfs/bbp.cscs.ch/ssd/gitlab_map_jobs/bbpcihpcproj12/P214443/J1304406/spack/etc/spack/defaults/config.yaml:227 install_status: True
/gpfs/bbp.cscs.ch/ssd/gitlab_map_jobs/bbpcihpcproj12/P214443/J1304406/spack/etc/spack/defaults/config.yaml:231 binary_index_ttl: 600
/gpfs/bbp.cscs.ch/ssd/gitlab_map_jobs/bbpcihpcproj12/P214443/J1304406/spack/etc/spack/defaults/config.yaml:233 flags:
/gpfs/bbp.cscs.ch/ssd/gitlab_map_jobs/bbpcihpcproj12/P214443/J1304406/spack/etc/spack/defaults/config.yaml:235 keep_werror: none
/gpfs/bbp.cscs.ch/ssd/gitlab_map_jobs/bbpcihpcproj12/P214443/J1304406/spack/etc/spack/defaults/config.yaml:240 aliases:
/gpfs/bbp.cscs.ch/ssd/gitlab_map_jobs/bbpcihpcproj12/P214443/J1304406/spack/etc/spack/defaults/config.yaml:241 concretise: concretize
/gpfs/bbp.cscs.ch/ssd/gitlab_map_jobs/bbpcihpcproj12/P214443/J1304406/spack/etc/spack/defaults/config.yaml:242 containerise: containerize
/gpfs/bbp.cscs.ch/ssd/gitlab_map_jobs/bbpcihpcproj12/P214443/J1304406/spack/etc/spack/defaults/config.yaml:243 rm: remove
_builtin debug: False
$ spack ${SPACK_EXTRA_FLAGS} config blame concretizer
--- concretizer:
/gpfs/bbp.cscs.ch/ssd/gitlab_map_jobs/bbpcihpcproj12/P214443/J1304408/spack-config/concretizer.yaml:2 reuse: False
/gpfs/bbp.cscs.ch/ssd/gitlab_map_jobs/bbpcihpcproj12/P214443/J1304406/spack/etc/spack/defaults/concretizer.yaml:23 targets:
/gpfs/bbp.cscs.ch/ssd/gitlab_map_jobs/bbpcihpcproj12/P214443/J1304406/spack/etc/spack/defaults/concretizer.yaml:28 granularity: microarchitectures
/gpfs/bbp.cscs.ch/ssd/gitlab_map_jobs/bbpcihpcproj12/P214443/J1304406/spack/etc/spack/defaults/concretizer.yaml:32 host_compatible: True
/gpfs/bbp.cscs.ch/ssd/gitlab_map_jobs/bbpcihpcproj12/P214443/J1304406/spack/etc/spack/defaults/concretizer.yaml:38 unify: True
/gpfs/bbp.cscs.ch/ssd/gitlab_map_jobs/bbpcihpcproj12/P214443/J1304406/spack/etc/spack/defaults/concretizer.yaml:40 duplicates:
/gpfs/bbp.cscs.ch/ssd/gitlab_map_jobs/bbpcihpcproj12/P214443/J1304406/spack/etc/spack/defaults/concretizer.yaml:44 strategy: minimal
$ export XDG_CONFIG_HOME=${CI_BUILDS_DIR}/J${CI_JOB_ID}_local_config
$ echo "Configuring git to use CI_JOB_TOKEN to access git@bbpgitlab.epfl.ch (${XDG_CONFIG_HOME})"
Configuring git to use CI_JOB_TOKEN to access git@bbpgitlab.epfl.ch (/gpfs/bbp.cscs.ch/ssd/gitlab_map_jobs//bbpcihpcproj12/P214443/J1304408_local_config)
$ mkdir -p "${XDG_CONFIG_HOME}/git"
$ echo -e "[url \"https://gitlab-ci-token:${CI_JOB_TOKEN}@bbpgitlab.epfl.ch/\"]\n insteadOf = git@bbpgitlab.epfl.ch:" > "${XDG_CONFIG_HOME}/git/config"
$ echo -e "[url \"https://gitlab-ci-token:${CI_JOB_TOKEN}@bbpgitlab.epfl.ch/\"]\n insteadOf = ssh://git@bbpgitlab.epfl.ch/" >> "${XDG_CONFIG_HOME}/git/config"
$ cat "${XDG_CONFIG_HOME}/git/config"
[url "https://gitlab-ci-token:[MASKED]@bbpgitlab.epfl.ch/"]
insteadOf = git@bbpgitlab.epfl.ch:
[url "https://gitlab-ci-token:[MASKED]@bbpgitlab.epfl.ch/"]
insteadOf = ssh://git@bbpgitlab.epfl.ch/
$ SPACK_FULL_SPEC="${SPACK_PACKAGE}${SPACK_PACKAGE_COMPILER:+%}${SPACK_PACKAGE_COMPILER} ${SPACK_PACKAGE_SPEC} ${SPACK_PACKAGE_DEPENDENCIES} ${SPACK_PACKAGE_DEPENDENCY_ON_PREVIOUS_JOB}"
$ echo "Preparing to install ${SPACK_FULL_SPEC}"
Preparing to install nmodl%nvhpc +python+tests ^bison%gcc^flex%gcc^py-jinja2%gcc^py-sympy%gcc^py-pyyaml%gcc
$ if [ ${SPACK_USE_CCACHE+x} ]; then
$ module load unstable ccache
$ export CCACHE_BASEDIR=$(realpath -P ${CI_BUILDS_DIR})
$ echo CCACHE_BASEDIR=${CCACHE_BASEDIR}
CCACHE_BASEDIR=/gpfs/bbp.cscs.ch/ssd/gitlab_map_jobs/bbpcihpcproj12/P214443
$ export CCACHE_MAXSIZE=512M
$ export CCACHE_DIR="${TMPDIR}/ccache"
$ mkdir -p ${CCACHE_DIR}
$ if [ -f ${CI_PROJECT_DIR}/ccache.tar ]; then
$ tar -C "${CCACHE_DIR}" -xf "${CI_PROJECT_DIR}/ccache.tar"
$ fi
$ ccache --zero-stats
Statistics zeroed
$ ccache --show-stats --verbose
Cache directory: /nvme/bbpcihpcproj12/2231031/ccache
Config file: /nvme/bbpcihpcproj12/2231031/ccache/ccache.conf
System config file: /gpfs/bbp.cscs.ch/ssd/apps/bsd/2024-02-01/stage_externals/install_gcc-12.3.0-skylake/ccache-4.7.4-eompz5/etc/ccache.conf
Stats updated: Mon Jun 3 12:30:25 2024
Local storage:
Cache size (GB): 0.47 / 0.51 (90.89%)
Files: 3671
Hits: 0
Misses: 0
Reads: 0
Writes: 0
$ fi
$ module load unstable git ${SPACK_EXTRA_MODULES}
$ spack ${SPACK_EXTRA_FLAGS} spec -Il ${SPACK_FULL_SPEC}
Input spec
--------------------------------
- nmodl%nvhpc+python+tests
- ^bison%gcc
- ^flex%gcc
- ^py-jinja2%gcc
- ^py-pyyaml%gcc
- ^py-sympy%gcc
Concretized
--------------------------------
- ydgtpjz nmodl@git.af35cc09bee0bdd03143ac257f12079e446434f3=develop%nvhpc@23.1~ipo~legacy-unit~llvm~llvm_cuda+python+tests build_system=cmake build_type=Release generator=ninja arch=linux-rhel7-skylake
[e] yn5fbwg ^bison@3.8.2%gcc@12.3.0 build_system=autotools arch=linux-rhel7-skylake
[^] pywly2v ^catch2@3.4.0%gcc@12.3.0~ipo+pic~shared build_system=cmake build_type=Release generator=make arch=linux-rhel7-skylake
[^] swjylul ^gmake@4.4.1%gcc@12.3.0~guile build_system=generic arch=linux-rhel7-skylake
[^] ud3echq ^cli11@2.3.2%gcc@12.3.0~ipo build_system=cmake build_type=Release generator=make arch=linux-rhel7-skylake
[e] b5zzpr3 ^cmake@3.27.7%gcc@12.3.0~doc+ncurses+ownlibs build_system=generic build_type=Release arch=linux-rhel7-skylake
[e] 77vzaxs ^flex@2.6.3%gcc@12.3.0+lex~nls build_system=autotools arch=linux-rhel7-skylake
[^] evtttrh ^fmt@10.1.1%gcc@12.3.0~ipo+pic~shared build_system=cmake build_type=Release cxxstd=11 generator=make arch=linux-rhel7-skylake
[e] omn6mm4 ^ninja@1.11.1%gcc@12.3.0+re2c build_system=generic arch=linux-rhel7-skylake
[^] teske2k ^nlohmann-json@3.9.1%gcc@12.3.0~ipo+multiple_headers build_system=cmake build_type=Release generator=make arch=linux-rhel7-skylake
[^] 5dylnca ^py-find-libpython@0.3.1%gcc@12.3.0 build_system=python_pip arch=linux-rhel7-skylake
[^] 77ku3vv ^py-pip@23.1.2%gcc@12.3.0 build_system=generic arch=linux-rhel7-skylake
[^] p3xbqxj ^py-setuptools@68.0.0%gcc@12.3.0 build_system=generic arch=linux-rhel7-skylake
[^] aj3rk42 ^py-wheel@0.41.2%gcc@12.3.0 build_system=generic arch=linux-rhel7-skylake
[^] 7validy ^py-jinja2@3.1.2%gcc@12.3.0~i18n build_system=python_pip arch=linux-rhel7-skylake
[^] r3ehtmw ^py-markupsafe@2.1.3%gcc@12.3.0 build_system=python_pip arch=linux-rhel7-skylake
[^] wnagrhw ^py-numpy@1.26.1%gcc@12.3.0 build_system=python_pip patches=873745d arch=linux-rhel7-skylake
[e] w2ldcy2 ^intel-oneapi-mkl@2023.2.0%gcc@12.3.0~cluster+envmods~ilp64+shared build_system=generic mpi_family=none threads=none arch=linux-rhel7-skylake
[^] e533uuv ^pkgconf@1.9.5%gcc@12.3.0 build_system=autotools arch=linux-rhel7-skylake
[^] 3rx3xab ^py-cython@3.0.4%gcc@12.3.0 build_system=python_pip arch=linux-rhel7-skylake
[^] 3y7uuwr ^py-pyproject-metadata@0.7.1%gcc@12.3.0 build_system=python_pip arch=linux-rhel7-skylake
[^] tabj2mo ^py-pybind11@2.11.1%gcc@12.3.0~ipo build_system=cmake build_type=Release generator=ninja arch=linux-rhel7-skylake
[^] tdpazhn ^py-pytest@7.3.2%gcc@12.3.0 build_system=python_pip arch=linux-rhel7-skylake
[^] p4lv577 ^py-iniconfig@2.0.0%gcc@12.3.0 build_system=python_pip arch=linux-rhel7-skylake
[^] 4r6gjx7 ^py-hatch-vcs@0.3.0%gcc@12.3.0 build_system=python_pip arch=linux-rhel7-skylake
[^] ou7zcb6 ^py-hatchling@1.21.0%gcc@12.3.0 build_system=python_pip arch=linux-rhel7-skylake
[^] 6domhtg ^py-editables@0.3%gcc@12.3.0 build_system=python_pip arch=linux-rhel7-skylake
[^] edobf76 ^py-pathspec@0.11.1%gcc@12.3.0 build_system=python_pip arch=linux-rhel7-skylake
[^] a6ialdh ^py-trove-classifiers@2023.8.7%gcc@12.3.0 build_system=python_pip arch=linux-rhel7-skylake
[^] jurd5ga ^py-calver@2022.6.26%gcc@12.3.0 build_system=python_pip arch=linux-rhel7-skylake
[^] uqml2to ^py-packaging@23.1%gcc@12.3.0 build_system=python_pip arch=linux-rhel7-skylake
[^] h6f6feu ^py-flit-core@3.9.0%gcc@12.3.0 build_system=python_pip arch=linux-rhel7-skylake
[^] lxhgsum ^py-pluggy@1.0.0%gcc@12.3.0 build_system=python_pip arch=linux-rhel7-skylake
[^] slwtska ^py-setuptools-scm@7.1.0%gcc@12.3.0+toml build_system=python_pip arch=linux-rhel7-skylake
[e] 2sazdxk ^git@2.42.0%gcc@12.3.0+man+nls+perl+subtree~svn~tcltk build_system=autotools arch=linux-rhel7-skylake
[^] xwl5l6q ^py-tomli@2.0.1%gcc@12.3.0 build_system=python_pip arch=linux-rhel7-skylake
[^] 275jtek ^py-typing-extensions@4.8.0%gcc@12.3.0 build_system=python_pip arch=linux-rhel7-skylake
[^] 5xwjejc ^py-pytest-cov@4.0.0%gcc@12.3.0 build_system=python_pip arch=linux-rhel7-skylake
[^] wuxetkw ^py-coverage@7.2.6%gcc@12.3.0+toml build_system=python_pip arch=linux-rhel7-skylake
[^] 2inh3rt ^py-pyyaml@5.4.1%gcc@12.3.0+libyaml build_system=python_pip arch=linux-rhel7-skylake
[^] bzl4xcz ^libyaml@0.2.5%gcc@12.3.0 build_system=autotools arch=linux-rhel7-skylake
[^] dw56njg ^py-sympy@1.11.1%gcc@12.3.0 build_system=python_pip arch=linux-rhel7-skylake
[^] quibu6o ^py-mpmath@1.2.1%gcc@12.3.0 build_system=python_pip arch=linux-rhel7-skylake
[e] 5wl76vp ^python@3.11.6%gcc@12.3.0+bz2+crypt+ctypes+dbm~debug+libxml2+lzma~nis~optimizations+pic+pyexpat+pythoncmd+readline+shared+sqlite3+ssl~tkinter+uuid+zlib build_system=generic patches=13fa8bf,b0615b2,ebdca64,f2fd060 arch=linux-rhel7-skylake
[^] ihotvbs ^spdlog@1.12.0%gcc@12.3.0+fmt_external~ipo+shared build_system=cmake build_type=Release generator=make arch=linux-rhel7-skylake
$ set -o pipefail
$ (spack ${SPACK_EXTRA_FLAGS} install --overwrite -y -j${SLURM_CPUS_PER_TASK} --log-format=junit --log-file=${CI_PROJECT_DIR}/install.xml --keep-stage ${SPACK_FULL_SPEC} | tee log) || install_failed=1
==> Warning: Expected user 904556 to own /gpfs/bbp.cscs.ch/ssd/gitlab_map_jobs/bbpcihpcproj12/P214443, but it is owned by 0
==> bison@3.8.2 : has external module in ['bison/3.8.2']
[+] /gpfs/bbp.cscs.ch/ssd/apps/bsd/2024-02-01/stage_externals/install_gcc-12.3.0-skylake/bison-3.8.2-qcx3sg (external bison-3.8.2-yn5fbwgteilgqg6b62shkhkjg3hlwmrq)
[+] /gpfs/bbp.cscs.ch/ssd/apps/bsd/2024-02-01/stage_applications/install_gcc-12.3.0-skylake/catch2-3.4.0-pywly2
[+] /gpfs/bbp.cscs.ch/ssd/apps/bsd/2024-02-01/stage_applications/install_gcc-12.3.0-skylake/cli11-2.3.2-ud3ech
==> cmake@3.27.7 : has external module in ['cmake/3.27.7']
[+] /gpfs/bbp.cscs.ch/ssd/apps/bsd/2024-02-01/stage_externals/install_gcc-12.3.0-skylake/cmake-3.27.7-slyoes (external cmake-3.27.7-b5zzpr3mwm7jxv6bvvrs6zpeg62cfhbu)
==> flex@2.6.3 : has external module in ['flex/2.6.3']
[+] /gpfs/bbp.cscs.ch/ssd/apps/bsd/2024-02-01/stage_externals/install_gcc-12.3.0-skylake/flex-2.6.3-edx4lf (external flex-2.6.3-77vzaxsa3g7wr3omktr4skpetx5ds4pt)
==> ninja@1.11.1 : has external module in ['ninja/1.11.1']
[+] /gpfs/bbp.cscs.ch/ssd/apps/bsd/2024-02-01/stage_externals/install_gcc-12.3.0-skylake/ninja-1.11.1-nxtlgo (external ninja-1.11.1-omn6mm4a3zsbpbkptvdwxs6kkrh6yafw)
==> python@3.11.6 : has external module in ['python/3.11.6']
[+] /gpfs/bbp.cscs.ch/ssd/apps/bsd/2024-02-01/stage_externals/install_gcc-12.3.0-skylake/python-3.11.6-bj4i6m (external python-3.11.6-5wl76vphfvpcapfaipipf7xn2xylnc4o)
==> intel-oneapi-mkl@2023.2.0 : has external module in ['intel-oneapi-mkl/2023.2.0']
[+] /gpfs/bbp.cscs.ch/ssd/apps/bsd/2024-02-01/stage_externals/install_gcc-12.3.0-skylake/intel-oneapi-mkl-2023.2.0-twl2n4 (external intel-oneapi-mkl-2023.2.0-w2ldcy2y2urm3uaa7omu3w7nhwsqt433)
[+] /gpfs/bbp.cscs.ch/ssd/apps/bsd/2024-02-01/stage_applications/install_gcc-12.3.0-skylake/libyaml-0.2.5-bzl4xc
[+] /gpfs/bbp.cscs.ch/ssd/apps/bsd/2024-02-01/stage_applications/install_gcc-12.3.0-skylake/fmt-10.1.1-evtttr
[+] /gpfs/bbp.cscs.ch/ssd/apps/bsd/2024-02-01/stage_applications/install_gcc-12.3.0-skylake/nlohmann-json-3.9.1-teske2
[+] /gpfs/bbp.cscs.ch/ssd/apps/bsd/2024-02-01/stage_applications/install_gcc-12.3.0-skylake/py-pybind11-2.11.1-tabj2m
[+] /gpfs/bbp.cscs.ch/ssd/apps/bsd/2024-02-01/stage_applications/install_gcc-12.3.0-skylake/py-coverage-7.2.6-wuxetk
[+] /gpfs/bbp.cscs.ch/ssd/apps/bsd/2024-02-01/stage_applications/install_gcc-12.3.0-skylake/py-markupsafe-2.1.3-r3ehtm
[+] /gpfs/bbp.cscs.ch/ssd/apps/bsd/2024-02-01/stage_applications/install_gcc-12.3.0-skylake/py-iniconfig-2.0.0-p4lv57
[+] /gpfs/bbp.cscs.ch/ssd/apps/bsd/2024-02-01/stage_applications/install_gcc-12.3.0-skylake/py-setuptools-68.0.0-p3xbqx
[+] /gpfs/bbp.cscs.ch/ssd/apps/bsd/2024-02-01/stage_applications/install_gcc-12.3.0-skylake/py-packaging-23.1-uqml2t
[+] /gpfs/bbp.cscs.ch/ssd/apps/bsd/2024-02-01/stage_applications/install_gcc-12.3.0-skylake/py-numpy-1.26.1-wnagrh
[+] /gpfs/bbp.cscs.ch/ssd/apps/bsd/2024-02-01/stage_applications/install_gcc-12.3.0-skylake/spdlog-1.12.0-ihotvb
[+] /gpfs/bbp.cscs.ch/ssd/apps/bsd/2024-02-01/stage_applications/install_gcc-12.3.0-skylake/py-jinja2-3.1.2-7valid
[+] /gpfs/bbp.cscs.ch/ssd/apps/bsd/2024-02-01/stage_applications/install_gcc-12.3.0-skylake/py-pyyaml-5.4.1-2inh3r
[+] /gpfs/bbp.cscs.ch/ssd/apps/bsd/2024-02-01/stage_applications/install_gcc-12.3.0-skylake/py-mpmath-1.2.1-quibu6
[+] /gpfs/bbp.cscs.ch/ssd/apps/bsd/2024-02-01/stage_applications/install_gcc-12.3.0-skylake/py-pluggy-1.0.0-lxhgsu
[+] /gpfs/bbp.cscs.ch/ssd/apps/bsd/2024-02-01/stage_applications/install_gcc-12.3.0-skylake/py-find-libpython-0.3.1-5dylnc
[+] /gpfs/bbp.cscs.ch/ssd/apps/bsd/2024-02-01/stage_applications/install_gcc-12.3.0-skylake/py-sympy-1.11.1-dw56nj
[+] /gpfs/bbp.cscs.ch/ssd/apps/bsd/2024-02-01/stage_applications/install_gcc-12.3.0-skylake/py-pytest-7.3.2-tdpazh
[+] /gpfs/bbp.cscs.ch/ssd/apps/bsd/2024-02-01/stage_applications/install_gcc-12.3.0-skylake/py-pytest-cov-4.0.0-5xwjej
==> Installing nmodl-git.af35cc09bee0bdd03143ac257f12079e446434f3=develop-ydgtpjzf73lgqlisf2zpwvrjsawbtyqz [28/28]
==> No binary for nmodl-git.af35cc09bee0bdd03143ac257f12079e446434f3=develop-ydgtpjzf73lgqlisf2zpwvrjsawbtyqz found: installing from source
==> No patches needed for nmodl
==> nmodl: Executing phase: 'cmake'
==> nmodl: Executing phase: 'build'
==> nmodl: Executing phase: 'install'
==> nmodl: Successfully installed nmodl-git.af35cc09bee0bdd03143ac257f12079e446434f3=develop-ydgtpjzf73lgqlisf2zpwvrjsawbtyqz
Stage: 45.12s. Cmake: 2.60s. Build: 3m 33.16s. Install: 0.80s. Post-install: 0.43s. Total: 4m 22.43s
[+] /gpfs/bbp.cscs.ch/ssd/gitlab_map_jobs/bbpcihpcproj12/P214443/software/install_nvhpc-23.1-skylake/nmodl-git.af35cc09bee0bdd03143ac257f12079e446434f3_develop-ydgtpj
$ set +o pipefail
$ chmod -R g+rX "${SPACK_BUILD}"
$ if [[ ${install_failed} == 1 ]]; then exit 1; fi
$ SPACK_INSTALLED_HASH=$(spack ${SPACK_EXTRA_FLAGS} find --format "{hash}" /$(sed -ne '${s/.*-//;p}' log))
$ echo "Determined the installed hash to be ${SPACK_INSTALLED_HASH}"
Determined the installed hash to be ydgtpjzf73lgqlisf2zpwvrjsawbtyqz
$ SPACK_STAGE_DIR=$(spack location -s "${SPACK_FULL_SPEC}")
$ SPACK_BUILD_DIR=$(spack location -b "${SPACK_FULL_SPEC}")
$ SPACK_SOURCE_DIR=${SPACK_STAGE_DIR}/spack-src
$ if [ ${SPACK_USE_CCACHE+x} ]; then
$ ccache --cleanup
$ ccache --show-stats --verbose
Cache directory: /nvme/bbpcihpcproj12/2231031/ccache
Config file: /nvme/bbpcihpcproj12/2231031/ccache/ccache.conf
System config file: /gpfs/bbp.cscs.ch/ssd/apps/bsd/2024-02-01/stage_externals/install_gcc-12.3.0-skylake/ccache-4.7.4-eompz5/etc/ccache.conf
Stats updated: Mon Jun 3 12:36:50 2024
Cacheable calls: 142 / 165 (86.06%)
Hits: 130 / 142 (91.55%)
Direct: 26 / 130 (20.00%)
Preprocessed: 104 / 130 (80.00%)
Misses: 12 / 142 ( 8.45%)
Uncacheable calls: 23 / 165 (13.94%)
Called for linking: 23 / 23 (100.0%)
Successful lookups:
Direct: 26 / 142 (18.31%)
Preprocessed: 104 / 116 (89.66%)
Local storage:
Cache size (GB): 0.47 / 0.51 (91.50%)
Files: 3685
Hits: 130 / 142 (91.55%)
Misses: 12 / 142 ( 8.45%)
Reads: 284
Writes: 14
$ tar -C "${CCACHE_DIR}" -cf "${CI_PROJECT_DIR}/ccache.tar" .
$ fi
$ touch ${SPACK_STAGE_DIR}/spack-configure-args.txt
$ cp ${SPACK_STAGE_DIR}/spack-{build-env,build-out,configure-args}.txt ${CI_PROJECT_DIR}/
$ echo "SPACK_BUILD_DIR=${SPACK_BUILD_DIR}" > ${CI_PROJECT_DIR}/spack_build_info.env
$ echo "SPACK_FULL_SPEC=${SPACK_FULL_SPEC}" >> ${CI_PROJECT_DIR}/spack_build_info.env
$ echo "SPACK_SOURCE_DIR=${SPACK_SOURCE_DIR}" >> ${CI_PROJECT_DIR}/spack_build_info.env
$ echo "SPACK_INSTALLED_HASH=${SPACK_INSTALLED_HASH}" >> ${CI_PROJECT_DIR}/spack_build_info.env
$ SPACK_PACKAGE_SLUGIFY=$(echo -n ${SPACK_PACKAGE} | tr -c '[:alnum:]' '_' | tr '[:lower:]' '[:upper:]')
$ echo "${SPACK_PACKAGE_SLUGIFY}_INSTALLED_HASH=${SPACK_INSTALLED_HASH}" >> ${CI_PROJECT_DIR}/spack_build_info.env
$ echo "SPACK_PACKAGE_DEPENDENCY_ON_PREVIOUS_JOB=^/${SPACK_INSTALLED_HASH}" >> ${CI_PROJECT_DIR}/spack_build_info.env
$ num_failures=$(module load unstable python-dev; python -c "from lxml import etree; xml = etree.parse('${CI_PROJECT_DIR}/install.xml'); print(sum(1 for _ in xml.getroot().iter('failure')) + sum(1 for _ in xml.getroot().iter('error')))")
$ if [[ ${num_failures} > 0 ]]; then exit ${num_failures}; fi
section_end:1717411011:step_script section_start:1717411011:archive_cache Saving cache for successful job
Using git from spack modules
Creating cache build:nvhpc-2-non_protected...
Runtime platform  arch=amd64 os=linux pid=287236 revision=58ba2b95 version=14.2.0
ccache.tar: found 1 matching files and directories
Uploading cache.zip to https://bbpobjectstorage.epfl.ch/gitlab-runners-cache/project/30/build%3Anvhpc-2-non_protected
Created cache
section_end:1717411035:archive_cache section_start:1717411035:upload_artifacts_on_success Uploading artifacts for successful job
Using git from spack modules
Uploading artifacts...
Runtime platform  arch=amd64 os=linux pid=287615 revision=58ba2b95 version=14.2.0
install.xml: found 1 matching files and directories
spack_build_info.env: found 1 matching files and directories
spack_clone_variables.env: found 1 matching files and directories
initial_environment.env: found 1 matching files and directories
spack-build-env.txt: found 1 matching files and directories
spack-build-out.txt: found 1 matching files and directories
spack-configure-args.txt: found 1 matching files and directories
Uploading artifacts as "archive" to coordinator... ok id=1304408 responseStatus=201 Created token=glcbt-64
Uploading artifacts...
Runtime platform  arch=amd64 os=linux pid=287637 revision=58ba2b95 version=14.2.0
install.xml: found 1 matching files and directories
Uploading artifacts as "junit" to coordinator... ok id=1304408 responseStatus=201 Created token=glcbt-64
Uploading artifacts...
Runtime platform  arch=amd64 os=linux pid=287660 revision=58ba2b95 version=14.2.0
spack_build_info.env: found 1 matching files and directories
spack_clone_variables.env: found 1 matching files and directories
Uploading artifacts as "dotenv" to coordinator... ok id=1304408 responseStatus=201 Created token=glcbt-64
section_end:1717411037:upload_artifacts_on_success section_start:1717411037:cleanup_file_variables Cleaning up project directory and file based variables
Using git from spack modules
section_end:1717411038:cleanup_file_variables Job succeeded
Running with gitlab-runner 15.5.0 (0d4137b8)
 on BB5 map runner pnPo3yJy
section_start:1717410493:resolve_secrets Resolving secrets
section_end:1717410493:resolve_secrets section_start:1717410493:prepare_executor Preparing the "custom" executor
Using Custom executor with driver BB5 PROD runner v0.0.3...
BB5 PROD runner running on bbpv1.epfl.ch, version 15.5.0, user
TMPDIR is /gpfs/bbp.cscs.ch/ssd/gitlab_map_jobs/tmp/custom-executor4129753138, slurm job id , CUSTOM_ENV_CI_RUNNER_TAGS is ["bb5_map"]
Runner ID 29, project root hpc, project name nmodl
Pipeline ID 214443, build ref , job ID 1304406
Build dir /gpfs/bbp.cscs.ch/ssd/gitlab_map_jobs//bbpcihpcproj12/P214443, optional exclusive flag , optional cpus per task flag --cpus-per-task=6, optional qos flag , optional reservation flag
A slurm job will be created with name GL_J1304406_PROD_P30_CP0_C0
Job parameters: memory=30750M, cpus_per_task=6, duration=1:00:00, constraint=cpu ntasks=1 account=proj9998 user=bbpcihpcproj12 partition=prod qos= reservation=
Not executing the chown -R
sbatch: INFO: Activating auto partition selection plugin, please report errors to HPC/CS
sbatch: INFO: Job specifies cpu constraint, setting --constraint=[skl|clx]
Submitted batch job 2231029
job state: R
sbatch: sbatch -p prod -A proj9998 --ntasks=1 --cpus-per-task=6 --mem=30750M --job-name=GL_J1304406_PROD_P30_CP0_C0 -C cpu --no-requeue -D /gpfs/bbp.cscs.ch/ssd/gitlab_map_jobs//bbpcihpcproj12/P214443 --time=1:00:00 --wrap="sleep infinity"
srun: srun --mpi=none --chdir=/gpfs/bbp.cscs.ch/ssd/gitlab_map_jobs//bbpcihpcproj12/P214443 --ntasks=1 --jobid=2231029 --cpus-per-task=6 --mem=30750M
section_end:1717410495:prepare_executor section_start:1717410495:prepare_script Preparing environment
Using git from spack modules
Running on r1i4n11 via bbpv1.epfl.ch...
section_end:1717410497:prepare_script section_start:1717410497:get_sources Getting source from Git repository
Using git from spack modules
Skipping Git repository setup
Skipping Git checkout
Skipping Git submodules setup
section_end:1717410498:get_sources section_start:1717410498:step_script Executing "step_script" stage of the job script
WARNING: Starting with version 14.0 the 'build_script' stage will be replaced with 'step_script': https://gitlab.com/gitlab-org/gitlab-runner/-/issues/26426
Using git from spack modules
$ if [[ -n "${SPACK_ENV_FILE_URL}" && "${PARSE_GITHUB_PR_DESCRIPTIONS,,}" == "true" ]]; then
$ cat > parse_description.py << END_SCRIPT # collapsed multi-line command
$ cat parse_description.py
import os
import re
import requests
pr_info = requests.get("https://api.github.com/repos/{}/pulls/{}".format(
os.environ['CI_EXTERNAL_PULL_REQUEST_TARGET_REPOSITORY'],
os.environ['CI_EXTERNAL_PULL_REQUEST_IID']),
headers={'Accept': 'application/vnd.github.v3+json'})
pr_body = pr_info.json()["body"]
# match something like NEURON_BRANCH=foo/bar
# special case for SPACK_DEPLOYMENT_SUFFIX=foo/bar
pat = re.compile('^([A-Z0-9_]+)_([A-Z]+)=([A-Z0-9\-\_\/\+\.]+)$', re.IGNORECASE)
def parse_term(m):
ref_type = m.group(2).lower()
is_deployment_suffix = ref_type == 'suffix' and m.group(1).lower() == 'spack_deployment'
if ref_type not in {'branch', 'tag', 'ref'} and not is_deployment_suffix: return
print(m.group(1).upper() + '_' + ref_type.upper() + '=' + m.group(3))
if pr_body is not None:
for pr_body_line in pr_body.splitlines():
if not pr_body_line.startswith('CI_BRANCHES:'): continue
for config_term in pr_body_line[12:].split(','):
pat.sub(parse_term, config_term)
$ (module load unstable python-dev; python parse_description.py) > input_variables.env
$ else
$ cat input_variables.env
$ for var_to_unset in $(sed 's/^\(.*\?\)_\(BRANCH\|COMMIT\|TAG\)=.*$/\1_BRANCH\n\1_COMMIT\n\1_TAG/' input_variables.env); do # collapsed multi-line command
$ set -o allexport
$ . input_variables.env
$ set +o allexport
$ unset MODULEPATH
$ . /gpfs/bbp.cscs.ch/ssd/apps/bsd/${SPACK_DEPLOYMENT_SUFFIX}/config/modules.sh
$ echo "MODULEPATH=${MODULEPATH}" > spack_clone_variables.env
$ echo Preparing to clone Spack into ${PWD}
Preparing to clone Spack into /gpfs/bbp.cscs.ch/ssd/gitlab_map_jobs/bbpcihpcproj12/P214443/J1304406
$ if [[ -z "${SPACK_BRANCH}" && ( -n "${SPACK_COMMIT}" || -n "${SPACK_TAG}" ) ]]; then
$ echo Checking out the ${SPACK_BRANCH} of Spack...
Checking out the develop of Spack...
$ module load unstable git
$ git clone -c feature.manyFiles=true --depth 1 --single-branch --branch ${SPACK_BRANCH} ${SPACK_URL} spack
Cloning into 'spack'...
Updating files: 16% (1920/11302) Updating files: 17% (1922/11302) Updating files: 18% (2035/11302) Updating files: 19% (2148/11302) Updating files: 20% (2261/11302) Updating files: 21% (2374/11302) Updating files: 22% (2487/11302) Updating files: 23% (2600/11302) Updating files: 24% (2713/11302) Updating files: 25% (2826/11302) Updating files: 26% (2939/11302) Updating files: 27% (3052/11302) Updating files: 28% (3165/11302) Updating files: 29% (3278/11302) Updating files: 30% (3391/11302) Updating files: 30% (3442/11302) Updating files: 31% (3504/11302) Updating files: 32% (3617/11302) Updating files: 33% (3730/11302) Updating files: 34% (3843/11302) Updating files: 35% (3956/11302) Updating files: 36% (4069/11302) Updating files: 37% (4182/11302) Updating files: 38% (4295/11302) Updating files: 39% (4408/11302) Updating files: 40% (4521/11302) Updating files: 41% (4634/11302) Updating files: 42% (4747/11302) Updating files: 43% (4860/11302) Updating files: 43% (4969/11302) Updating files: 44% (4973/11302) Updating files: 45% (5086/11302) Updating files: 46% (5199/11302) Updating files: 47% (5312/11302) Updating files: 48% (5425/11302) Updating files: 49% (5538/11302) Updating files: 50% (5651/11302) Updating files: 51% (5765/11302) Updating files: 52% (5878/11302) Updating files: 53% (5991/11302) Updating files: 54% (6104/11302) Updating files: 55% (6217/11302) Updating files: 56% (6330/11302) Updating files: 57% (6443/11302) Updating files: 58% (6556/11302) Updating files: 58% (6639/11302) Updating files: 59% (6669/11302) Updating files: 60% (6782/11302) Updating files: 61% (6895/11302) Updating files: 62% (7008/11302) Updating files: 63% (7121/11302) Updating files: 64% (7234/11302) Updating files: 65% (7347/11302) Updating files: 66% (7460/11302) Updating files: 67% (7573/11302) Updating files: 68% (7686/11302) Updating files: 69% (7799/11302) Updating files: 70% (7912/11302) Updating files: 71% (8025/11302) Updating files: 71% (8113/11302) Updating files: 72% (8138/11302) Updating files: 73% (8251/11302) Updating files: 74% (8364/11302) Updating files: 75% (8477/11302) Updating files: 76% (8590/11302) Updating files: 77% (8703/11302) Updating files: 78% (8816/11302) Updating files: 79% (8929/11302) Updating files: 80% (9042/11302) Updating files: 81% (9155/11302) Updating files: 82% (9268/11302) Updating files: 83% (9381/11302) Updating files: 84% (9494/11302) Updating files: 84% (9547/11302) Updating files: 85% (9607/11302) Updating files: 86% (9720/11302) Updating files: 87% (9833/11302) Updating files: 88% (9946/11302) Updating files: 89% (10059/11302) Updating files: 90% (10172/11302) Updating files: 91% (10285/11302) Updating files: 92% (10398/11302) Updating files: 93% (10511/11302) Updating files: 94% (10624/11302) Updating files: 95% (10737/11302) Updating files: 96% (10850/11302) Updating files: 97% (10963/11302) Updating files: 98% (11076/11302) Updating files: 98% (11145/11302) Updating files: 99% (11189/11302) Updating files: 100% (11302/11302) Updating files: 100% (11302/11302), done.
$ export SPACK_ROOT=${PWD}/spack
$ export SPACK_RESOLVED_COMMIT=$(cd "${SPACK_ROOT}" && git rev-parse HEAD)
$ export SPACK_USER_CACHE_PATH="${CI_BUILDS_DIR}"
$ export SPACK_SYSTEM_CONFIG_PATH="/gpfs/bbp.cscs.ch/ssd/apps/bsd/${SPACK_DEPLOYMENT_SUFFIX}/config"
$ echo "SPACK_ROOT=${SPACK_ROOT}" >> spack_clone_variables.env
$ echo "SPACK_RESOLVED_COMMIT=${SPACK_RESOLVED_COMMIT}" >> spack_clone_variables.env
$ echo "SPACK_USER_CACHE_PATH=${SPACK_USER_CACHE_PATH}" >> spack_clone_variables.env
$ echo "SPACK_SYSTEM_CONFIG_PATH=${SPACK_SYSTEM_CONFIG_PATH}" >> spack_clone_variables.env
$ . ${SPACK_ROOT}/share/spack/setup-env.sh
$ export XDG_CONFIG_HOME=${CI_BUILDS_DIR}/J${CI_JOB_ID}_local_config
$ echo "Configuring git to use CI_JOB_TOKEN to access git@bbpgitlab.epfl.ch (${XDG_CONFIG_HOME})"
Configuring git to use CI_JOB_TOKEN to access git@bbpgitlab.epfl.ch (/gpfs/bbp.cscs.ch/ssd/gitlab_map_jobs//bbpcihpcproj12/P214443/J1304406_local_config)
$ mkdir -p "${XDG_CONFIG_HOME}/git"
$ echo -e "[url \"https://gitlab-ci-token:${CI_JOB_TOKEN}@bbpgitlab.epfl.ch/\"]\n insteadOf = git@bbpgitlab.epfl.ch:" > "${XDG_CONFIG_HOME}/git/config"
$ echo -e "[url \"https://gitlab-ci-token:${CI_JOB_TOKEN}@bbpgitlab.epfl.ch/\"]\n insteadOf = ssh://git@bbpgitlab.epfl.ch/" >> "${XDG_CONFIG_HOME}/git/config"
$ cat "${XDG_CONFIG_HOME}/git/config"
[url "https://gitlab-ci-token:[MASKED]@bbpgitlab.epfl.ch/"]
insteadOf = git@bbpgitlab.epfl.ch:
[url "https://gitlab-ci-token:[MASKED]@bbpgitlab.epfl.ch/"]
insteadOf = ssh://git@bbpgitlab.epfl.ch/
$ env -0 | sed -nz '/^CUSTOM_ENV_/d;/^[^=]\+_\(BRANCH\|COMMIT\|TAG\)=.\+/p' | xargs -0t spack ${SPACK_EXTRA_FLAGS} configure-pipeline --ignore-packages CI_BUILD CI_COMMIT CI_DEFAULT GITLAB_PIPELINES SPACK SPACK_RESOLVED ${SPACK_SETUP_IGNORE_PACKAGE_VARIABLES} --write-commit-file=commit-mapping.env
spack configure-pipeline --ignore-packages CI_BUILD CI_COMMIT CI_DEFAULT GITLAB_PIPELINES SPACK SPACK_RESOLVED CVF BLUECONFIGS --write-commit-file=commit-mapping.env CI_COMMIT_BRANCH=jelic/cleanup_paramvector NMODL_COMMIT=af35cc09bee0bdd03143ac257f12079e446434f3 SPACK_RESOLVED_COMMIT=df80a3dfd281542d736320ba54bd5c518396075a NEURON_BRANCH=master LIBSONATA_REPORT_BRANCH=master SPACK_BRANCH=develop CI_DEFAULT_BRANCH=master CVF_BRANCH=main BLUECONFIGS_BRANCH=main
==> CI_COMMIT: ignoring CI_COMMIT_BRANCH=jelic/cleanup_paramvector
==> SPACK_RESOLVED: ignoring SPACK_RESOLVED_COMMIT=df80a3dfd281542d736320ba54bd5c518396075a
==> SPACK: ignoring SPACK_BRANCH=develop
==> CI_DEFAULT: ignoring CI_DEFAULT_BRANCH=master
==> CVF: ignoring CVF_BRANCH=main
==> BLUECONFIGS: ignoring BLUECONFIGS_BRANCH=main
==> neuron: resolved branch master to c6aea21514ab74ac49c3edcb1c5fd5976527bcc6
==> libsonata-report: resolved branch master to 5602aadfa710d6766ce23cd151a1855190271bd8
==> adding config: packages:nmodl:require: '@git.af35cc09bee0bdd03143ac257f12079e446434f3=develop'
==> adding config: packages:neuron:require: '@git.c6aea21514ab74ac49c3edcb1c5fd5976527bcc6=develop'
==> adding config: packages:libsonata-report:require: '@git.5602aadfa710d6766ce23cd151a1855190271bd8=develop'
$ (cd "${SPACK_ROOT}" && git diff)
$ cat commit-mapping.env
NMODL_COMMIT=af35cc09bee0bdd03143ac257f12079e446434f3
NEURON_COMMIT=c6aea21514ab74ac49c3edcb1c5fd5976527bcc6
LIBSONATA_REPORT_COMMIT=5602aadfa710d6766ce23cd151a1855190271bd8
$ echo "SPACK_BRANCH=${SPACK_BRANCH}" >> commit-mapping.env
$ echo "SPACK_DEPLOYMENT_SUFFIX=${SPACK_DEPLOYMENT_SUFFIX}" >> commit-mapping.env
$ cat commit-mapping.env >> spack_clone_variables.env
$ spack ${SPACK_EXTRA_FLAGS} spec -IL ninja
==> Warning: Expected user 904556 to own /nvme/bbpcihpcproj12, but it is owned by 0
==> Fetching https://mirror.spack.io/bootstrap/github-actions/v0.5/build_cache/linux-centos7-x86_64-gcc-10.2.1-patchelf-0.18.0-afv7arjarb7nzmlh7c5slkfxykybuqce.spec.json
==> Fetching https://mirror.spack.io/bootstrap/github-actions/v0.5/build_cache/linux-centos7-x86_64/gcc-10.2.1/patchelf-0.18.0/linux-centos7-x86_64-gcc-10.2.1-patchelf-0.18.0-afv7arjarb7nzmlh7c5slkfxykybuqce.spack
==> Installing "patchelf@=0.18.0%gcc@=10.2.1 ldflags="-static-libstdc++ -static-libgcc" build_system=autotools arch=linux-centos7-x86_64" from a buildcache
==> Fetching https://mirror.spack.io/bootstrap/github-actions/v0.5/build_cache/linux-centos7-x86_64-gcc-10.2.1-clingo-bootstrap-spack-t4yf34cuvquqp5xd66zybmcfyhwbdlsf.spec.json
==> Fetching https://mirror.spack.io/bootstrap/github-actions/v0.5/build_cache/linux-centos7-x86_64/gcc-10.2.1/clingo-bootstrap-spack/linux-centos7-x86_64-gcc-10.2.1-clingo-bootstrap-spack-t4yf34cuvquqp5xd66zybmcfyhwbdlsf.spack
==> Installing "clingo-bootstrap@=spack%gcc@=10.2.1~docs+ipo+optimized+python+static_libstdcpp build_system=cmake build_type=Release generator=make patches=bebb819,ec99431 arch=linux-centos7-x86_64" from a buildcache
Input spec
--------------------------------
- ninja
Concretized
--------------------------------
[e] omn6mm4a3zsbpbkptvdwxs6kkrh6yafw ninja@1.11.1%gcc@12.3.0+re2c build_system=generic arch=linux-rhel7-skylake
$ echo "SPACK_SETUP_COMMIT_MAPPING_URL=${CI_API_V4_URL}/projects/${CI_PROJECT_ID}/jobs/${CI_JOB_ID}/artifacts/commit-mapping.env" >> spack_clone_variables.env
$ spack ${SPACK_EXTRA_FLAGS} config --scope site add "config:ccache:true"
$ echo "SPACK_USE_CCACHE=true" >> spack_clone_variables.env
$ echo "CVF_BRANCH=${CVF_BRANCH}" >> spack_clone_variables.env
$ echo "BLUECONFIGS_BRANCH=${BLUECONFIGS_BRANCH}" >> spack_clone_variables.env
section_end:1717410597:step_script section_start:1717410597:upload_artifacts_on_success Uploading artifacts for successful job
Using git from spack modules
Uploading artifacts...
Runtime platform  arch=amd64 os=linux pid=279300 revision=58ba2b95 version=14.2.0
commit-mapping.env: found 1 matching files and directories
input_variables.env: found 1 matching files and directories
spack_clone_variables.env: found 1 matching files and directories
Uploading artifacts as "archive" to coordinator... ok id=1304406 responseStatus=201 Created token=glcbt-64
Uploading artifacts...
Runtime platform  arch=amd64 os=linux pid=279324 revision=58ba2b95 version=14.2.0
spack_clone_variables.env: found 1 matching files and directories
Uploading artifacts as "dotenv" to coordinator... ok id=1304406 responseStatus=201 Created token=glcbt-64
section_end:1717410599:upload_artifacts_on_success section_start:1717410599:cleanup_file_variables Cleaning up project directory and file based variables
Using git from spack modules
section_end:1717410600:cleanup_file_variables Job succeeded
Running with gitlab-runner 15.5.0 (0d4137b8)
 on BB5 map runner pnPo3yJy
section_start:1717410976:resolve_secrets Resolving secrets
section_end:1717410976:resolve_secrets section_start:1717410976:prepare_executor Preparing the "custom" executor
Using Custom executor with driver BB5 PROD runner v0.0.3...
BB5 PROD runner running on bbpv1.epfl.ch, version 15.5.0, user
TMPDIR is /gpfs/bbp.cscs.ch/ssd/gitlab_map_jobs/tmp/custom-executor3206056991, slurm job id , CUSTOM_ENV_CI_RUNNER_TAGS is ["bb5_map"]
Runner ID 29, project root hpc, project name nmodl
Pipeline ID 214443, build ref , job ID 1304409
Build dir /gpfs/bbp.cscs.ch/ssd/gitlab_map_jobs//bbpcihpcproj12/P214443, optional exclusive flag , optional cpus per task flag --cpus-per-task=1, optional qos flag , optional reservation flag
A slurm job will be created with name GL_J1304409_PROD_P30_CP0_C0
Job parameters: memory=30750M, cpus_per_task=1, duration=1:00:00, constraint=cpu ntasks=1 account=proj9998 user=bbpcihpcproj12 partition=prod qos= reservation=
Not executing the chown -R
sbatch: INFO: Activating auto partition selection plugin, please report errors to HPC/CS
sbatch: INFO: Job specifies cpu constraint, setting --constraint=[skl|clx]
Submitted batch job 2231050
job state: R
sbatch: sbatch -p prod -A proj9998 --ntasks=1 --cpus-per-task=1 --mem=30750M --job-name=GL_J1304409_PROD_P30_CP0_C0 -C cpu --no-requeue -D /gpfs/bbp.cscs.ch/ssd/gitlab_map_jobs//bbpcihpcproj12/P214443 --time=1:00:00 --wrap="sleep infinity"
srun: srun --mpi=none --chdir=/gpfs/bbp.cscs.ch/ssd/gitlab_map_jobs//bbpcihpcproj12/P214443 --ntasks=1 --jobid=2231050 --cpus-per-task=1 --mem=30750M
section_end:1717410978:prepare_executor section_start:1717410978:prepare_script Preparing environment
Using git from spack modules
Running on r1i4n11 via bbpv1.epfl.ch...
section_end:1717410981:prepare_script section_start:1717410981:get_sources Getting source from Git repository
Using git from spack modules
Skipping Git repository setup
Skipping Git checkout
Skipping Git submodules setup
section_end:1717410982:get_sources section_start:1717410982:download_artifacts Downloading artifacts
Using git from spack modules
Downloading artifacts for build:intel (1304407)...
Runtime platform  arch=amd64 os=linux pid=286685 revision=58ba2b95 version=14.2.0
Downloading artifacts from coordinator... ok  id=1304407 responseStatus=200 OK token=glcbt-64
section_end:1717410983:download_artifacts section_start:1717410983:step_script Executing "step_script" stage of the job script
WARNING: Starting with version 14.0 the 'build_script' stage will be replaced with 'step_script': https://gitlab.com/gitlab-org/gitlab-runner/-/issues/26426
Using git from spack modules
$ env -0 | sort -z | xargs -0 -L 1 echo > initial_environment.env
$ export CTEST_PARALLEL_LEVEL=${SLURM_TASKS_PER_NODE}
$ . ${SPACK_ROOT}/share/spack/setup-env.sh
$ cd ${SPACK_BUILD_DIR}
$ export BOOST_TEST_COLOR_OUTPUT=no
$ i_am_a_failure=0
$ spack ${SPACK_EXTRA_FLAGS} build-env ${SPACK_FULL_SPEC} -- ctest --no-tests=error --output-on-failure -T Test || i_am_a_failure=1
Site: r1i4n11
Build name: Linux-icpx
Create new tag: 20240603-1036 - Experimental
Test project /gpfs/bbp.cscs.ch/ssd/gitlab_map_jobs/bbpcihpcproj12/P214443/J1304407/spack-build/spack-stage-nmodl-git.af35cc09bee0bdd03143ac257f12079e446434f3_develop-i3ecjr2jrbp34b4gwtcofff2rdsfnihg/spack-build-i3ecjr2
Start 1: testutils/ends_with
1/114 Test #1: testutils/ends_with ................................................................................. Passed 0.01 sec
Start 2: testcodegen/Scenario: unusual / failing mod files
2/114 Test #2: testcodegen/Scenario: unusual / failing mod files ................................................... Passed 0.04 sec
Start 3: testcodegen/Scenario: Check global variable setup
3/114 Test #3: testcodegen/Scenario: Check global variable setup ................................................... Passed 0.04 sec
Start 4: testcodegen/Scenario: C codegen utility functions
4/114 Test #4: testcodegen/Scenario: C codegen utility functions ................................................... Passed 0.04 sec
Start 5: testcodegen/Scenario: Check instance variable definition order
5/114 Test #5: testcodegen/Scenario: Check instance variable definition order ...................................... Passed 0.04 sec
Start 6: testcodegen/Scenario: Check parameter constness with VERBATIM block
6/114 Test #6: testcodegen/Scenario: Check parameter constness with VERBATIM block ................................. Passed 0.04 sec
Start 7: testcodegen/Scenario: Check NEURON globals are added to the instance struct on demand
7/114 Test #7: testcodegen/Scenario: Check NEURON globals are added to the instance struct on demand ............... Passed 0.04 sec
Start 8: testcodegen/Scenario: Check code generation for TABLE statements
8/114 Test #8: testcodegen/Scenario: Check code generation for TABLE statements .................................... Passed 0.04 sec
Start 9: testcodegen/Scenario: Check that BEFORE/AFTER block are well generated
9/114 Test #9: testcodegen/Scenario: Check that BEFORE/AFTER block are well generated .............................. Passed 0.04 sec
Start 10: testcodegen/Scenario: Check CONSTANT variables are added to global variable structure
10/114 Test #10: testcodegen/Scenario: Check CONSTANT variables are added to global variable structure ............... Passed 0.04 sec
Start 11: testcodegen/Scenario: Check code generation for FUNCTION_TABLE block
11/114 Test #11: testcodegen/Scenario: Check code generation for FUNCTION_TABLE block ................................ Passed 0.04 sec
Start 12: testcodegen/Scenario: Check that loops are well generated
12/114 Test #12: testcodegen/Scenario: Check that loops are well generated ........................................... Passed 0.04 sec
Start 13: testcodegen/Scenario: Check that top verbatim blocks are well generated
13/114 Test #13: testcodegen/Scenario: Check that top verbatim blocks are well generated ............................. Passed 0.04 sec
Start 14: testcodegen/Scenario: Check that codegen generate event functions well
14/114 Test #14: testcodegen/Scenario: Check that codegen generate event functions well .............................. Passed 0.04 sec
Start 15: testcodegen/Scenario: Some tests on derivimplicit
15/114 Test #15: testcodegen/Scenario: Some tests on derivimplicit ...................................................***Failed 0.04 sec
Filters: "Scenario: Some tests on derivimplicit"
Randomness seeded to: 3966848869
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
testcodegen is a Catch2 v3.4.0 host application.
Run with -? for options
-------------------------------------------------------------------------------
Scenario: Some tests on derivimplicit
Given: A mod file with derivimplicit
Then: Correct code is generated
-------------------------------------------------------------------------------
../spack-src/test/unit/codegen/codegen_coreneuron_cpp_visitor.cpp:1067
...............................................................................
../spack-src/test/unit/codegen/codegen_coreneuron_cpp_visitor.cpp:1090: FAILED:
REQUIRE_THAT( generated, ContainsSubstring(newton_state_expected_code) )
with expansion:
"/*********************************************************
Model Name :
Filename : temp.mod.mod
NMODL Version : 7.7.0
Vectorized : true
Threadsafe : true
Created : Mon Jun 3 12:36:59 2024
Simulator : CoreNEURON
Backend : C++ (api-compatibility)
NMODL Compiler : 0.6 [af35cc09 2024-06-03 12:26:43 +0200]
*********************************************************/
#include <math.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <coreneuron/gpu/nrn_acc_manager.hpp>
#include <coreneuron/mechanism/mech/mod2c_core_thread.hpp>
#include <coreneuron/mechanism/register_mech.hpp>
#include <coreneuron/nrnconf.h>
#include <coreneuron/nrniv/nrniv_decl.h>
#include <coreneuron/sim/multicore.hpp>
#include <coreneuron/sim/scopmath/newton_thread.hpp>
#include <coreneuron/utils/ivocvect.hpp>
#include <coreneuron/utils/nrnoc_aux.hpp>
#include <coreneuron/utils/randoms/nrnran123.h>
namespace coreneuron {
#ifndef NRN_PRCELLSTATE
#define NRN_PRCELLSTATE 0
#endif
/** channel information */
static const char *mechanism_info[] = {
"7.7.0",
"",
0,
0,
"m_",
0,
0
};
/** all global variables */
struct _Store {
double m0{};
int reset{};
int mech_type{};
int slist1[1]{0};
int dlist1[1]{1};
int slist2[1]{0};
ThreadDatum ext_call_thread[3]{};
};
static_assert(std::is_trivially_copy_constructible_v<_Store>);
static_assert(std::is_trivially_move_constructible_v<_Store>);
static_assert(std::is_trivially_copy_assignable_v<_Store>);
static_assert(std::is_trivially_move_assignable_v<_Store>);
static_assert(std::is_trivially_destructible_v<_Store>);
_Store _global;
/** all mechanism instance variables and global variables */
struct _Instance {
double* m{};
double* Dm{};
double* v_unused{};
double* g_unused{};
_Store* global{&_global};
};
/** connect global (scalar) variables to hoc -- */
static DoubScal hoc_scalar_double[] = {
{nullptr, nullptr}
};
/** connect global (array) variables to hoc -- */
static DoubVec hoc_vector_double[] = {
{nullptr, nullptr, 0}
};
static inline int first_pointer_var_index() {
return -1;
}
static inline int first_random_var_index() {
return -1;
}
/** thread specific helper routines for derivimplicit */
static inline int* deriv1_advance(ThreadDatum* thread) {
return &(thread[0].i);
}
static inline int dith1() {
return 1;
}
static inline void** newtonspace1(ThreadDatum* thread) {
return &(thread[2]._pvoid);
}
static inline int float_variables_size() {
return 4;
}
static inline int int_variables_size() {
return 0;
}
static inline int get_mech_type() {
return _global.mech_type;
}
static inline Memb_list* get_memb_list(NrnThread* nt) {
if (!nt->_ml_list) {
return nullptr;
}
return nt->_ml_list[get_mech_type()];
}
static inline void* mem_alloc(size_t num, size_t size, size_t alignment =
16) {
void* ptr;
posix_memalign(&ptr, alignment, num*size);
memset(ptr, 0, size);
return ptr;
}
static inline void mem_free(void* ptr) {
free(ptr);
}
static inline void coreneuron_abort() {
abort();
}
/** thread memory allocation callback */
static void thread_mem_init(ThreadDatum* thread) {
thread[dith1()].pval = nullptr;
}
/** thread memory cleanup callback */
static void thread_mem_cleanup(ThreadDatum* thread) {
free(thread[dith1()].pval);
nrn_destroy_newtonspace(static_cast<NewtonSpace*>(*newtonspace1
(thread)));
}
// Allocate instance structure
static void nrn_private_constructor_(NrnThread* nt, Memb_list* ml, int
type) {
assert(!ml->instance);
assert(!ml->global_variables);
assert(ml->global_variables_size == 0);
auto* const inst = new _Instance{};
assert(inst->global == &_global);
ml->instance = inst;
ml->global_variables = inst->global;
ml->global_variables_size = sizeof(_Store);
}
// Deallocate the instance structure
static void nrn_private_destructor_(NrnThread* nt, Memb_list* ml, int
type) {
auto* const inst = static_cast<_Instance*>(ml->instance);
assert(inst);
assert(inst->global);
assert(inst->global == &_global);
assert(inst->global == ml->global_variables);
assert(ml->global_variables_size == sizeof(_Store));
delete inst;
ml->instance = nullptr;
ml->global_variables = nullptr;
ml->global_variables_size = 0;
}
/** initialize mechanism instance variables */
static inline void setup_instance(NrnThread* nt, Memb_list* ml) {
auto* const inst = static_cast<_Instance*>(ml->instance);
assert(inst);
assert(inst->global);
assert(inst->global == &_global);
assert(inst->global == ml->global_variables);
assert(ml->global_variables_size == sizeof(_Store));
int pnodecount = ml->_nodecount_padded;
Datum* indexes = ml->pdata;
inst->m = ml->data+0*pnodecount;
inst->Dm = ml->data+1*pnodecount;
inst->v_unused = ml->data+2*pnodecount;
inst->g_unused = ml->data+3*pnodecount;
}
static void nrn_alloc_(double* data, Datum* indexes, int type) {
// do nothing
}
void nrn_constructor_(NrnThread* nt, Memb_list* ml, int type) {
#ifndef CORENEURON_BUILD
int nodecount = ml->nodecount;
int pnodecount = ml->_nodecount_padded;
const int* node_index = ml->nodeindices;
double* data = ml->data;
const double* voltage = nt->_actual_v;
Datum* indexes = ml->pdata;
ThreadDatum* thread = ml->_thread;
auto* const inst = static_cast<_Instance*>(ml->instance);
#endif
}
void nrn_destructor_(NrnThread* nt, Memb_list* ml, int type) {
#ifndef CORENEURON_BUILD
int nodecount = ml->nodecount;
int pnodecount = ml->_nodecount_padded;
const int* node_index = ml->nodeindices;
double* data = ml->data;
const double* voltage = nt->_actual_v;
Datum* indexes = ml->pdata;
ThreadDatum* thread = ml->_thread;
auto* const inst = static_cast<_Instance*>(ml->instance);
#endif
}
namespace {
struct _newton_state_ {
int operator()(int id, double* data, Datum* indexes, ThreadDatum*
thread, NrnThread* nt, Memb_list* ml, double v) const {
auto* const inst = static_cast<_Instance*>(ml->instance);
double* savstate1 = static_cast<double*>(thread[dith1()].
pval);
auto const& slist1 = inst->global->slist1;
auto const& dlist1 = inst->global->dlist1;
double* dlist2 = static_cast<double*>(thread[dith1()].pval) +
(1*pnodecount);
inst->Dm[id] = 2.0 * inst->m[id];
int counter = -1;
for (int i=0; i<1; i++) {
if (*deriv1_advance(thread)) {
dlist2[(++counter)*pnodecount+id] = data[dlist1[i]*
pnodecount+id]-(data[slist1[i]*pnodecount+id]-savstate1[i*pnodecount+id])/nt-
>_dt;
} else {
dlist2[(++counter)*pnodecount+id] = data[slist1[i]*
pnodecount+id]-savstate1[i*pnodecount+id];
}
}
return 0;
}
};
}
int state_(int id, double* data, Datum* indexes, ThreadDatum* thread,
NrnThread* nt, Memb_list* ml, double v) {
auto* const inst = static_cast<_Instance*>(ml->instance);
double* savstate1 = (double*) thread[dith1()].pval;
auto const& slist1 = inst->global->slist1;
auto& slist2 = inst->global->slist2;
double* dlist2 = static_cast<double*>(thread[dith1()].pval) + (1*
pnodecount);
for (int i=0; i<1; i++) {
savstate1[i*pnodecount+id] = data[slist1[i]*pnodecount+id];
}
int reset = nrn_newton_thread(static_cast<NewtonSpace*>(*newtonspace1
(thread)), 1, slist2, _newton_state_{}, dlist2, id, pnodecount, data,
indexes, thread, nt, ml, v);
return reset;
}
/** initialize channel */
void nrn_init_(NrnThread* nt, Memb_list* ml, int type) {
int nodecount = ml->nodecount;
int pnodecount = ml->_nodecount_padded;
const int* node_index = ml->nodeindices;
double* data = ml->data;
const double* voltage = nt->_actual_v;
Datum* indexes = ml->pdata;
ThreadDatum* thread = ml->_thread;
setup_instance(nt, ml);
auto* const inst = static_cast<_Instance*>(ml->instance);
int& deriv_advance_flag = *deriv1_advance(thread);
deriv_advance_flag = 0;
auto ns = newtonspace1(thread);
auto& th = thread[dith1()];
if (*ns == nullptr) {
int vec_size = 2*1*pnodecount*sizeof(double);
double* vec = makevector(vec_size);
th.pval = vec;
*ns = nrn_cons_newtonspace(1, pnodecount);
}
if (_nrn_skip_initmodel == 0) {
#pragma omp simd
#pragma ivdep
for (int id = 0; id < nodecount; id++) {
int node_id = node_index[id];
double v = voltage[node_id];
#if NRN_PRCELLSTATE
inst->v_unused[id] = v;
#endif
inst->m[id] = inst->global->m0;
}
}
deriv_advance_flag = 1;
}
/** update state */
void nrn_state_(NrnThread* nt, Memb_list* ml, int type) {
int nodecount = ml->nodecount;
int pnodecount = ml->_nodecount_padded;
const int* node_index = ml->nodeindices;
double* data = ml->data;
const double* voltage = nt->_actual_v;
Datum* indexes = ml->pdata;
ThreadDatum* thread = ml->_thread;
auto* const inst = static_cast<_Instance*>(ml->instance);
#pragma omp simd
#pragma ivdep
for (int id = 0; id < nodecount; id++) {
int node_id = node_index[id];
double v = voltage[node_id];
#if NRN_PRCELLSTATE
inst->v_unused[id] = v;
#endif
state_(id, pnodecount, data, indexes, thread, nt, ml, v);
}
}
/** register channel with the simulator */
void _temp.mod_reg() {
int mech_type = nrn_get_mechtype("");
_global.mech_type = mech_type;
if (mech_type == -1) {
return;
}
_nrn_layout_reg(mech_type, 0);
register_mech(mechanism_info, nrn_alloc_, nullptr, nullptr,
nrn_state_, nrn_init_, nrn_private_constructor_, nrn_private_destructor_,
first_pointer_var_index(), 4);
thread_mem_init(_global.ext_call_thread);
_nrn_thread_reg0(mech_type, thread_mem_cleanup);
_nrn_thread_reg1(mech_type, thread_mem_init);
hoc_register_prop_size(mech_type, float_variables_size(),
int_variables_size());
hoc_register_var(hoc_scalar_double, hoc_vector_double, NULL);
}
}
" contains: "namespace {
struct _newton_state_ {
int operator()(int id, int pnodecount, double* data, Datum*
indexes, ThreadDatum* thread, NrnThread* nt, Memb_list* ml, double v) const {
auto* const inst = static_cast<_Instance*>(ml->instance);
double* savstate1 = static_cast<double*>(thread[dith1()].
pval);
auto const& slist1 = inst->global->slist1;
auto const& dlist1 = inst->global->dlist1;
double* dlist2 = static_cast<double*>(thread[dith1()].pval) +
(1*pnodecount);
inst->Dm[id] = 2.0 * inst->m[id];
int counter = -1;
for (int i=0; i<1; i++) {
if (*deriv1_advance(thread)) {
dlist2[(++counter)*pnodecount+id] = data[dlist1[i]*
pnodecount+id]-(data[slist1[i]*pnodecount+id]-savstate1[i*pnodecount+id])/nt-
>_dt;
} else {
dlist2[(++counter)*pnodecount+id] = data[slist1[i]*
pnodecount+id]-savstate1[i*pnodecount+id];
}
}
return 0;
}
};
}"
===============================================================================
test cases: 1 | 1 failed
assertions: 1 | 1 failed
Start 16: testcodegen/Scenario: Some tests on euler solver
16/114 Test #16: testcodegen/Scenario: Some tests on euler solver .................................................... Passed 0.04 sec
Start 17: testcodegen/Scenario: Check codegen for MUTEX and PROTECT
17/114 Test #17: testcodegen/Scenario: Check codegen for MUTEX and PROTECT ........................................... Passed 0.04 sec
Start 18: testcodegen/Scenario: Array STATE variable
18/114 Test #18: testcodegen/Scenario: Array STATE variable .......................................................... Passed 0.04 sec
Start 19: testcodegen/Scenario: Check whether PROCEDURE and FUNCTION need setdata call
19/114 Test #19: testcodegen/Scenario: Check whether PROCEDURE and FUNCTION need setdata call ........................ Passed 0.04 sec
Start 20: testcodegen/Scenario: Adding a variable for a table inside a function
20/114 Test #20: testcodegen/Scenario: Adding a variable for a table inside a function ............................... Passed 0.04 sec
Start 21: testcodegen/Scenario: Uncompatible constructs should failed
21/114 Test #21: testcodegen/Scenario: Uncompatible constructs should failed ......................................... Passed 0.04 sec
Start 22: testmodtoken/NMODL Lexer returning valid ModToken object
22/114 Test #22: testmodtoken/NMODL Lexer returning valid ModToken object ............................................ Passed 0.01 sec
Start 23: testmodtoken/Addition of two ModToken objects
23/114 Test #23: testmodtoken/Addition of two ModToken objects ....................................................... Passed 0.01 sec
Start 24: testlexer/NMODL Lexer returning valid token types
24/114 Test #24: testlexer/NMODL Lexer returning valid token types ................................................... Passed 0.01 sec
Start 25: testparser/Scenario: NMODL can accept CR as return char for one line comment
25/114 Test #25: testparser/Scenario: NMODL can accept CR as return char for one line comment ........................ Passed 0.02 sec
Start 26: testparser/Scenario: NMODL can define macros using DEFINE keyword
26/114 Test #26: testparser/Scenario: NMODL can define macros using DEFINE keyword ................................... Passed 0.02 sec
Start 27: testparser/Scenario: Macros can be used anywhere in the mod file
27/114 Test #27: testparser/Scenario: Macros can be used anywhere in the mod file .................................... Passed 0.02 sec
Start 28: testparser/Scenario: NMODL parser accepts empty unit specification
28/114 Test #28: testparser/Scenario: NMODL parser accepts empty unit specification .................................. Passed 0.02 sec
Start 29: testparser/Scenario: NMODL parser running number of valid NMODL constructs
29/114 Test #29: testparser/Scenario: NMODL parser running number of valid NMODL constructs .......................... Passed 0.04 sec
Start 30: testparser/Scenario: NMODL parser running number of invalid NMODL constructs
30/114 Test #30: testparser/Scenario: NMODL parser running number of invalid NMODL constructs ........................ Passed 0.02 sec
Start 31: testparser/Scenario: Check that the parser doesn't crash when passing invalid INCLUDE constructs
31/114 Test #31: testparser/Scenario: Check that the parser doesn't crash when passing invalid INCLUDE constructs .... Passed 0.02 sec
Start 32: testparser/Scenario: NEURON block can add CURIE information
32/114 Test #32: testparser/Scenario: NEURON block can add CURIE information ......................................... Passed 0.02 sec
Start 33: testparser/Scenario: Check parents in valid NMODL constructs
33/114 Test #33: testparser/Scenario: Check parents in valid NMODL constructs ........................................ Passed 0.26 sec
Start 34: testparser/Scenario: Legacy differential equation solver
34/114 Test #34: testparser/Scenario: Legacy differential equation solver ............................................ Passed 0.02 sec
Start 35: testparser/Scenario: Check if a NEURON block is parsed with correct location info in its token
35/114 Test #35: testparser/Scenario: Check if a NEURON block is parsed with correct location info in its token ...... Passed 0.02 sec
Start 36: testvisitor/Scenario: AfterCVodeToCnexpVisitor changes after_cvode solver method to cnexp
36/114 Test #36: testvisitor/Scenario: AfterCVodeToCnexpVisitor changes after_cvode solver method to cnexp ........... Passed 0.04 sec
Start 37: testvisitor/Scenario: Perform constant folder on NMODL constructs
37/114 Test #37: testvisitor/Scenario: Perform constant folder on NMODL constructs ................................... Passed 0.04 sec
Start 38: testvisitor/Scenario: Perform DefUse analysis on NMODL constructs
38/114 Test #38: testvisitor/Scenario: Perform DefUse analysis on NMODL constructs ................................... Passed 0.04 sec
Start 39: testvisitor/Scenario: GLOBAL to RANGE variable transformer
39/114 Test #39: testvisitor/Scenario: GLOBAL to RANGE variable transformer .......................................... Passed 0.04 sec
Start 40: testvisitor/Scenario: Check insertion of implicit arguments
40/114 Test #40: testvisitor/Scenario: Check insertion of implicit arguments ......................................... Passed 0.04 sec
Start 41: testvisitor/Scenario: Inlining of external procedure calls
41/114 Test #41: testvisitor/Scenario: Inlining of external procedure calls .......................................... Passed 0.04 sec
Start 42: testvisitor/Scenario: Inlining of function call as argument in external function
42/114 Test #42: testvisitor/Scenario: Inlining of function call as argument in external function .................... Passed 0.04 sec
Start 43: testvisitor/Scenario: Inlining of simple, one level procedure call
43/114 Test #43: testvisitor/Scenario: Inlining of simple, one level procedure call .................................. Passed 0.04 sec
Start 44: testvisitor/Scenario: Inlining of nested procedure call
44/114 Test #44: testvisitor/Scenario: Inlining of nested procedure call ............................................. Passed 0.04 sec
Start 45: testvisitor/Scenario: Inline function call in procedure
45/114 Test #45: testvisitor/Scenario: Inline function call in procedure ............................................. Passed 0.04 sec
Start 46: testvisitor/Scenario: Inling function call within conditional statement
46/114 Test #46: testvisitor/Scenario: Inling function call within conditional statement ............................. Passed 0.04 sec
Start 47: testvisitor/Scenario: Inline multiple function calls in same statement
47/114 Test #47: testvisitor/Scenario: Inline multiple function calls in same statement .............................. Passed 0.04 sec
Start 48: testvisitor/Scenario: Inline nested function calls withing arguments
48/114 Test #48: testvisitor/Scenario: Inline nested function calls withing arguments ................................ Passed 0.04 sec
Start 49: testvisitor/Scenario: Inline function call in non-binary expression
49/114 Test #49: testvisitor/Scenario: Inline function call in non-binary expression ................................. Passed 0.04 sec
Start 50: testvisitor/Scenario: Inline function call as standalone expression
50/114 Test #50: testvisitor/Scenario: Inline function call as standalone expression ................................. Passed 0.04 sec
Start 51: testvisitor/Scenario: Inline procedure call as standalone statement as well as part of expression
51/114 Test #51: testvisitor/Scenario: Inline procedure call as standalone statement as well as part of expression ... Passed 0.04 sec
Start 52: testvisitor/Scenario: Inlining pass handles local-global name conflict
52/114 Test #52: testvisitor/Scenario: Inlining pass handles local-global name conflict .............................. Passed 0.04 sec
Start 53: testvisitor/Scenario: Trying to inline a function with VERBATIM block
53/114 Test #53: testvisitor/Scenario: Trying to inline a function with VERBATIM block ............................... Passed 0.04 sec
Start 54: testvisitor/Convert NMODL to AST to JSON form using JSONVisitor
54/114 Test #54: testvisitor/Convert NMODL to AST to JSON form using JSONVisitor ..................................... Passed 0.04 sec
Start 55: testvisitor/Scenario: Convert KINETIC to DERIVATIVE using KineticBlock visitor
55/114 Test #55: testvisitor/Scenario: Convert KINETIC to DERIVATIVE using KineticBlock visitor ...................... Passed 0.05 sec
Start 56: testvisitor/Scenario: Localizer test with single global block
56/114 Test #56: testvisitor/Scenario: Localizer test with single global block ....................................... Passed 0.04 sec
Start 57: testvisitor/Scenario: Localizer test with use of verbatim block
57/114 Test #57: testvisitor/Scenario: Localizer test with use of verbatim block ..................................... Passed 0.04 sec
Start 58: testvisitor/Scenario: Localizer test with multiple global blocks
58/114 Test #58: testvisitor/Scenario: Localizer test with multiple global blocks .................................... Passed 0.04 sec
Start 59: testvisitor/Scenario: LocalVarRenameVisitor works with InlineVisitor
59/114 Test #59: testvisitor/Scenario: LocalVarRenameVisitor works with InlineVisitor ................................ Passed 0.04 sec
Start 60: testvisitor/Scenario: LOCAL to ASSIGNED variable transformer
60/114 Test #60: testvisitor/Scenario: LOCAL to ASSIGNED variable transformer ........................................ Passed 0.04 sec
Start 61: testvisitor/Scenario: Searching for ast nodes using AstLookupVisitor
61/114 Test #61: testvisitor/Scenario: Searching for ast nodes using AstLookupVisitor ................................ Passed 0.04 sec
Start 62: testvisitor/Scenario: Perform loop unrolling of FROM construct
62/114 Test #62: testvisitor/Scenario: Perform loop unrolling of FROM construct ...................................... Passed 0.04 sec
Start 63: testvisitor/Scenario: Running visitor passes multiple times
63/114 Test #63: testvisitor/Scenario: Running visitor passes multiple times ......................................... Passed 0.04 sec
Start 64: testvisitor/Scenario: Sympy specific AST to NMODL conversion
64/114 Test #64: testvisitor/Scenario: Sympy specific AST to NMODL conversion ........................................ Passed 0.04 sec
Start 65: testvisitor/Scenario: NeuronSolveVisitor visitor solves different ODE types
65/114 Test #65: testvisitor/Scenario: NeuronSolveVisitor visitor solves different ODE types ......................... Passed 0.04 sec
Start 66: testvisitor/Scenario: Convert AST back to NMODL form
66/114 Test #66: testvisitor/Scenario: Convert AST back to NMODL form ................................................ Passed 0.11 sec
Start 67: testvisitor/Scenario: Symbol table generation with Perf stat visitor
67/114 Test #67: testvisitor/Scenario: Symbol table generation with Perf stat visitor ................................ Passed 0.04 sec
Start 68: testvisitor/Scenario: Renaming any variable in mod file with RenameVisitor
68/114 Test #68: testvisitor/Scenario: Renaming any variable in mod file with RenameVisitor .......................... Passed 0.04 sec
Start 69: testvisitor/Scenario: Renaming with presence of local and global variables in same block
69/114 Test #69: testvisitor/Scenario: Renaming with presence of local and global variables in same block ............ Passed 0.04 sec
Start 70: testvisitor/Scenario: Renaming in the absence of global blocks
70/114 Test #70: testvisitor/Scenario: Renaming in the absence of global blocks ...................................... Passed 0.04 sec
Start 71: testvisitor/Scenario: Variable renaming in nested blocks
71/114 Test #71: testvisitor/Scenario: Variable renaming in nested blocks ............................................ Passed 0.04 sec
Start 72: testvisitor/Scenario: Renaming in presence of local variable in verbatim block
72/114 Test #72: testvisitor/Scenario: Renaming in presence of local variable in verbatim block ...................... Passed 0.04 sec
Start 73: testvisitor/Scenario: TABLE stmt
73/114 Test #73: testvisitor/Scenario: TABLE stmt .................................................................... Passed 0.04 sec
Start 74: testvisitor/Scenario: Destructor block
74/114 Test #74: testvisitor/Scenario: Destructor block .............................................................. Passed 0.04 sec
Start 75: testvisitor/Scenario: Ion variable in CONSTANT block
75/114 Test #75: testvisitor/Scenario: Ion variable in CONSTANT block ................................................ Passed 0.04 sec
Start 76: testvisitor/Scenario: INDEPENDENT block
76/114 Test #76: testvisitor/Scenario: INDEPENDENT block ............................................................. Passed 0.04 sec
Start 77: testvisitor/Scenario: FUNCTION_TABLE block
77/114 Test #77: testvisitor/Scenario: FUNCTION_TABLE block .......................................................... Passed 0.04 sec
Start 78: testvisitor/Scenario: At most one DERIVATIVE block
78/114 Test #78: testvisitor/Scenario: At most one DERIVATIVE block .................................................. Passed 0.04 sec
Start 79: testvisitor/Scenario: RANDOM Construct
79/114 Test #79: testvisitor/Scenario: RANDOM Construct .............................................................. Passed 0.04 sec
Start 80: testvisitor/Solve ODEs using legacy NeuronSolveVisitor
80/114 Test #80: testvisitor/Solve ODEs using legacy NeuronSolveVisitor .............................................. Passed 0.04 sec
Start 81: testvisitor/Scenario: Solving ODEs with STEADYSTATE solve method
81/114 Test #81: testvisitor/Scenario: Solving ODEs with STEADYSTATE solve method .................................... Passed 0.04 sec
Start 82: testvisitor/Scenario: Addition of CONDUCTANCE using SympyConductance visitor
82/114 Test #82: testvisitor/Scenario: Addition of CONDUCTANCE using SympyConductance visitor ........................ Passed 48.63 sec
Start 83: testvisitor/Scenario: Check compare_blocks in sympy unit tests
83/114 Test #83: testvisitor/Scenario: Check compare_blocks in sympy unit tests ...................................... Passed 0.83 sec
Start 84: testvisitor/Scenario: Check local vars name-clash prevention
84/114 Test #84: testvisitor/Scenario: Check local vars name-clash prevention ........................................ Passed 0.98 sec
Start 85: testvisitor/Scenario: Solve ODEs with cnexp or euler method using SympySolverVisitor
85/114 Test #85: testvisitor/Scenario: Solve ODEs with cnexp or euler method using SympySolverVisitor ................ Passed 7.81 sec
Start 86: testvisitor/Scenario: Solve ODEs with derivimplicit method using SympySolverVisitor
86/114 Test #86: testvisitor/Scenario: Solve ODEs with derivimplicit method using SympySolverVisitor ................. Passed 2.48 sec
Start 87: testvisitor/Scenario: LINEAR solve block (SympySolver Visitor)
87/114 Test #87: testvisitor/Scenario: LINEAR solve block (SympySolver Visitor) ...................................... Passed 1.85 sec
Start 88: testvisitor/Scenario: Solve NONLINEAR block using SympySolver Visitor
88/114 Test #88: testvisitor/Scenario: Solve NONLINEAR block using SympySolver Visitor ............................... Passed 0.91 sec
Start 89: testvisitor/Scenario: Solve KINETIC block using SympySolver Visitor
89/114 Test #89: testvisitor/Scenario: Solve KINETIC block using SympySolver Visitor ................................. Passed 1.00 sec
Start 90: testvisitor/Scenario: Code generation for EigenNewtonSolver
90/114 Test #90: testvisitor/Scenario: Code generation for EigenNewtonSolver ......................................... Passed 0.97 sec
Start 91: testvisitor/Scenario: Parse UNITS block of mod files using Units Visitor
91/114 Test #91: testvisitor/Scenario: Parse UNITS block of mod files using Units Visitor ............................ Passed 0.04 sec
Start 92: testvisitor/Scenario: Searching for variable name using VarUsageVisitor
92/114 Test #92: testvisitor/Scenario: Searching for variable name using VarUsageVisitor ............................. Passed 0.04 sec
Start 93: testvisitor/Parse VERBATIM block using Verbatim Visitor
93/114 Test #93: testvisitor/Parse VERBATIM block using Verbatim Visitor ............................................. Passed 0.04 sec
Start 94: testvisitor/Scenario: Get node name with index TestVisitor
94/114 Test #94: testvisitor/Scenario: Get node name with index TestVisitor .......................................... Passed 0.04 sec
Start 95: testprinter/JSON printer converting object to string form
95/114 Test #95: testprinter/JSON printer converting object to string form ........................................... Passed 0.01 sec
Start 96: testsymtab/Scenario: Symbol properties can be added and converted to string
96/114 Test #96: testsymtab/Scenario: Symbol properties can be added and converted to string ......................... Passed 0.01 sec
Start 97: testsymtab/Scenario: Multiple properties can be added to Symbol
97/114 Test #97: testsymtab/Scenario: Multiple properties can be added to Symbol ..................................... Passed 0.01 sec
Start 98: testsymtab/Scenario: Symbol table allows operations like insert, lookup
98/114 Test #98: testsymtab/Scenario: Symbol table allows operations like insert, lookup ............................. Passed 0.01 sec
Start 99: testsymtab/Scenario: Global symbol table (ModelSymbol) allows scope based operations
99/114 Test #99: testsymtab/Scenario: Global symbol table (ModelSymbol) allows scope based operations ................ Passed 0.01 sec
Start 100: testsymtab/Scenario: Symbol class allows manipulation
100/114 Test #100: testsymtab/Scenario: Symbol class allows manipulation ............................................... Passed 0.01 sec
Start 101: testnewton/Scenario: Non-linear system to solve with Newton Numerical Diff Solver
101/114 Test #101: testnewton/Scenario: Non-linear system to solve with Newton Numerical Diff Solver ................... Passed 0.01 sec
Start 102: testnewton/Scenario: Non-linear system to solve with Newton Solver
102/114 Test #102: testnewton/Scenario: Non-linear system to solve with Newton Solver .................................. Passed 0.01 sec
Start 103: testcrout/Scenario: Compare Crout solver with Eigen
103/114 Test #103: testcrout/Scenario: Compare Crout solver with Eigen ................................................. Passed 0.11 sec
Start 104: testunitlexer/Unit Lexer tests for valid tokens
104/114 Test #104: testunitlexer/Unit Lexer tests for valid tokens ..................................................... Passed 0.01 sec
Start 105: testunitparser/Scenario: Unit parser accepting valid units definition
105/114 Test #105: testunitparser/Scenario: Unit parser accepting valid units definition ............................... Passed 0.02 sec
Start 106: testunitparser/Scenario: Unit parser accepting dependent/nested units definition
106/114 Test #106: testunitparser/Scenario: Unit parser accepting dependent/nested units definition .................... Passed 0.01 sec
Start 107: Ode
107/114 Test #107: Ode ................................................................................................. Passed 2.21 sec
Start 108: Pybind
108/114 Test #108: Pybind .............................................................................................. Passed 0.99 sec
Start 109: cabpump.mod
109/114 Test #109: cabpump.mod ......................................................................................... Passed 0.03 sec
Start 110: glia_sparse.mod
110/114 Test #110: glia_sparse.mod ..................................................................................... Passed 0.94 sec
Start 111: ican.mod
111/114 Test #111: ican.mod ............................................................................................ Passed 0.02 sec
Start 112: test_functor.mod
112/114 Test #112: test_functor.mod .................................................................................... Passed 0.02 sec
Start 113: variable_names.mod
113/114 Test #113: variable_names.mod .................................................................................. Passed 2.76 sec
Start 114: watch_test.mod
114/114 Test #114: watch_test.mod ...................................................................................... Passed 0.02 sec
99% tests passed, 1 tests failed out of 114
Total Test time (real) = 75.94 sec
The following tests FAILED:
15 - testcodegen/Scenario: Some tests on derivimplicit (Failed)
Errors while running CTest
$ cp -r Testing/ ${CI_PROJECT_DIR}/
$ module load unstable unit-test-translator
$ cmake2junit > ${CI_PROJECT_DIR}/ctest.xml
$ exit ${i_am_a_failure}
srun: error: r1i4n11: task 0: Exited with exit code 1
section_end:1717411095:step_script section_start:1717411095:upload_artifacts_on_failure Uploading artifacts for failed job
Using git from spack modules
Uploading artifacts...
Runtime platform  arch=amd64 os=linux pid=289176 revision=58ba2b95 version=14.2.0
initial_environment.env: found 1 matching files and directories
Testing/: found 8 matching files and directories 
Uploading artifacts as "archive" to coordinator... ok id=1304409 responseStatus=201 Created token=glcbt-64
Uploading artifacts...
Runtime platform  arch=amd64 os=linux pid=289192 revision=58ba2b95 version=14.2.0
ctest.xml: found 1 matching files and directories 
Uploading artifacts as "junit" to coordinator... ok id=1304409 responseStatus=201 Created token=glcbt-64
section_end:1717411097:upload_artifacts_on_failure section_start:1717411097:cleanup_file_variables Cleaning up project directory and file based variables
Using git from spack modules
section_end:1717411098:cleanup_file_variables ERROR: Job failed: exit status 1

Running with gitlab-runner 15.5.0 (0d4137b8)
 on BB5 map runner pnPo3yJy
section_start:1717411040:resolve_secrets Resolving secrets
section_end:1717411040:resolve_secrets section_start:1717411040:prepare_executor Preparing the "custom" executor
Using Custom executor with driver BB5 PROD runner v0.0.3...
BB5 PROD runner running on bbpv1.epfl.ch, version 15.5.0, user
TMPDIR is /gpfs/bbp.cscs.ch/ssd/gitlab_map_jobs/tmp/custom-executor1351715715, slurm job id , CUSTOM_ENV_CI_RUNNER_TAGS is ["bb5_map"]
Runner ID 29, project root hpc, project name nmodl
Pipeline ID 214443, build ref , job ID 1304410
Build dir /gpfs/bbp.cscs.ch/ssd/gitlab_map_jobs//bbpcihpcproj12/P214443, optional exclusive flag , optional cpus per task flag --cpus-per-task=1, optional qos flag , optional reservation flag
A slurm job will be created with name GL_J1304410_PROD_P30_CP1_C1
Job parameters: memory=30750M, cpus_per_task=1, duration=1:00:00, constraint=cpu ntasks=1 account=proj9998 user=bbpcihpcproj12 partition=prod qos= reservation=
Not executing the chown -R
sbatch: INFO: Activating auto partition selection plugin, please report errors to HPC/CS
sbatch: INFO: Job specifies cpu constraint, setting --constraint=[skl|clx]
Submitted batch job 2231059
job state: R
sbatch: sbatch -p prod -A proj9998 --ntasks=1 --cpus-per-task=1 --mem=30750M --job-name=GL_J1304410_PROD_P30_CP1_C1 -C cpu --no-requeue -D /gpfs/bbp.cscs.ch/ssd/gitlab_map_jobs//bbpcihpcproj12/P214443 --time=1:00:00 --wrap="sleep infinity"
srun: srun --mpi=none --chdir=/gpfs/bbp.cscs.ch/ssd/gitlab_map_jobs//bbpcihpcproj12/P214443 --ntasks=1 --jobid=2231059 --cpus-per-task=1 --mem=30750M
section_end:1717411042:prepare_executor section_start:1717411042:prepare_script Preparing environment
Using git from spack modules
Running on r1i4n11 via bbpv1.epfl.ch...
section_end:1717411044:prepare_script section_start:1717411044:get_sources Getting source from Git repository
Using git from spack modules
Skipping Git repository setup
Skipping Git checkout
Skipping Git submodules setup
section_end:1717411045:get_sources section_start:1717411045:download_artifacts Downloading artifacts
Using git from spack modules
Downloading artifacts for build:nvhpc (1304408)...
Runtime platform  arch=amd64 os=linux pid=288296 revision=58ba2b95 version=14.2.0
Downloading artifacts from coordinator... ok  id=1304408 responseStatus=200 OK token=glcbt-64
section_end:1717411047:download_artifacts section_start:1717411047:step_script Executing "step_script" stage of the job script
WARNING: Starting with version 14.0 the 'build_script' stage will be replaced with 'step_script': https://gitlab.com/gitlab-org/gitlab-runner/-/issues/26426
Using git from spack modules
$ env -0 | sort -z | xargs -0 -L 1 echo > initial_environment.env
$ export CTEST_PARALLEL_LEVEL=${SLURM_TASKS_PER_NODE}
$ . ${SPACK_ROOT}/share/spack/setup-env.sh
$ cd ${SPACK_BUILD_DIR}
$ export BOOST_TEST_COLOR_OUTPUT=no
$ i_am_a_failure=0
$ spack ${SPACK_EXTRA_FLAGS} build-env ${SPACK_FULL_SPEC} -- ctest --no-tests=error --output-on-failure -T Test || i_am_a_failure=1
Site: r1i4n11
Build name: Linux-nvc++
Create new tag: 20240603-1037 - Experimental
Test project /gpfs/bbp.cscs.ch/ssd/gitlab_map_jobs/bbpcihpcproj12/P214443/J1304408/spack-build/spack-stage-nmodl-git.af35cc09bee0bdd03143ac257f12079e446434f3_develop-ydgtpjzf73lgqlisf2zpwvrjsawbtyqz/spack-build-ydgtpjz
Start 1: testutils/ends_with
1/114 Test #1: testutils/ends_with ................................................................................. Passed 0.01 sec
Start 2: testcodegen/Scenario: unusual / failing mod files
2/114 Test #2: testcodegen/Scenario: unusual / failing mod files ................................................... Passed 0.04 sec
Start 3: testcodegen/Scenario: Check global variable setup
3/114 Test #3: testcodegen/Scenario: Check global variable setup ................................................... Passed 0.04 sec
Start 4: testcodegen/Scenario: C codegen utility functions
4/114 Test #4: testcodegen/Scenario: C codegen utility functions ................................................... Passed 0.04 sec
Start 5: testcodegen/Scenario: Check instance variable definition order
5/114 Test #5: testcodegen/Scenario: Check instance variable definition order ...................................... Passed 0.04 sec
Start 6: testcodegen/Scenario: Check parameter constness with VERBATIM block
6/114 Test #6: testcodegen/Scenario: Check parameter constness with VERBATIM block ................................. Passed 0.04 sec
Start 7: testcodegen/Scenario: Check NEURON globals are added to the instance struct on demand
7/114 Test #7: testcodegen/Scenario: Check NEURON globals are added to the instance struct on demand ............... Passed 0.04 sec
Start 8: testcodegen/Scenario: Check code generation for TABLE statements
8/114 Test #8: testcodegen/Scenario: Check code generation for TABLE statements .................................... Passed 0.04 sec
Start 9: testcodegen/Scenario: Check that BEFORE/AFTER block are well generated
9/114 Test #9: testcodegen/Scenario: Check that BEFORE/AFTER block are well generated .............................. Passed 0.04 sec
Start 10: testcodegen/Scenario: Check CONSTANT variables are added to global variable structure
10/114 Test #10: testcodegen/Scenario: Check CONSTANT variables are added to global variable structure ............... Passed 0.04 sec
Start 11: testcodegen/Scenario: Check code generation for FUNCTION_TABLE block
11/114 Test #11: testcodegen/Scenario: Check code generation for FUNCTION_TABLE block ................................ Passed 0.04 sec
Start 12: testcodegen/Scenario: Check that loops are well generated
12/114 Test #12: testcodegen/Scenario: Check that loops are well generated ........................................... Passed 0.04 sec
Start 13: testcodegen/Scenario: Check that top verbatim blocks are well generated
13/114 Test #13: testcodegen/Scenario: Check that top verbatim blocks are well generated ............................. Passed 0.04 sec
Start 14: testcodegen/Scenario: Check that codegen generate event functions well
14/114 Test #14: testcodegen/Scenario: Check that codegen generate event functions well .............................. Passed 0.04 sec
Start 15: testcodegen/Scenario: Some tests on derivimplicit
15/114 Test #15: testcodegen/Scenario: Some tests on derivimplicit ...................................................***Failed 0.04 sec
Filters: "Scenario: Some tests on derivimplicit"
Randomness seeded to: 3540462915
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
testcodegen is a Catch2 v3.4.0 host application.
Run with -? for options
-------------------------------------------------------------------------------
Scenario: Some tests on derivimplicit
Given: A mod file with derivimplicit
Then: Correct code is generated
-------------------------------------------------------------------------------
../spack-src/test/unit/codegen/codegen_coreneuron_cpp_visitor.cpp:1067
...............................................................................
../spack-src/test/unit/codegen/codegen_coreneuron_cpp_visitor.cpp:1090: FAILED:
REQUIRE_THAT( generated, ContainsSubstring(newton_state_expected_code) )
with expansion:
"/*********************************************************
Model Name :
Filename : temp.mod.mod
NMODL Version : 7.7.0
Vectorized : true
Threadsafe : true
Created : Mon Jun 3 12:37:59 2024
Simulator : CoreNEURON
Backend : C++ (api-compatibility)
NMODL Compiler : 0.6 [af35cc09 2024-06-03 12:26:43 +0200]
*********************************************************/
#include <math.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <coreneuron/gpu/nrn_acc_manager.hpp>
#include <coreneuron/mechanism/mech/mod2c_core_thread.hpp>
#include <coreneuron/mechanism/register_mech.hpp>
#include <coreneuron/nrnconf.h>
#include <coreneuron/nrniv/nrniv_decl.h>
#include <coreneuron/sim/multicore.hpp>
#include <coreneuron/sim/scopmath/newton_thread.hpp>
#include <coreneuron/utils/ivocvect.hpp>
#include <coreneuron/utils/nrnoc_aux.hpp>
#include <coreneuron/utils/randoms/nrnran123.h>
namespace coreneuron {
#ifndef NRN_PRCELLSTATE
#define NRN_PRCELLSTATE 0
#endif
/** channel information */
static const char *mechanism_info[] = {
"7.7.0",
"",
0,
0,
"m_",
0,
0
};
/** all global variables */
struct _Store {
double m0{};
int reset{};
int mech_type{};
int slist1[1]{0};
int dlist1[1]{1};
int slist2[1]{0};
ThreadDatum ext_call_thread[3]{};
};
static_assert(std::is_trivially_copy_constructible_v<_Store>);
static_assert(std::is_trivially_move_constructible_v<_Store>);
static_assert(std::is_trivially_copy_assignable_v<_Store>);
static_assert(std::is_trivially_move_assignable_v<_Store>);
static_assert(std::is_trivially_destructible_v<_Store>);
_Store _global;
/** all mechanism instance variables and global variables */
struct _Instance {
double* m{};
double* Dm{};
double* v_unused{};
double* g_unused{};
_Store* global{&_global};
};
/** connect global (scalar) variables to hoc -- */
static DoubScal hoc_scalar_double[] = {
{nullptr, nullptr}
};
/** connect global (array) variables to hoc -- */
static DoubVec hoc_vector_double[] = {
{nullptr, nullptr, 0}
};
static inline int first_pointer_var_index() {
return -1;
}
static inline int first_random_var_index() {
return -1;
}
/** thread specific helper routines for derivimplicit */
static inline int* deriv1_advance(ThreadDatum* thread) {
return &(thread[0].i);
}
static inline int dith1() {
return 1;
}
static inline void** newtonspace1(ThreadDatum* thread) {
return &(thread[2]._pvoid);
}
static inline int float_variables_size() {
return 4;
}
static inline int int_variables_size() {
return 0;
}
static inline int get_mech_type() {
return _global.mech_type;
}
static inline Memb_list* get_memb_list(NrnThread* nt) {
if (!nt->_ml_list) {
return nullptr;
}
return nt->_ml_list[get_mech_type()];
}
static inline void* mem_alloc(size_t num, size_t size, size_t alignment =
16) {
void* ptr;
posix_memalign(&ptr, alignment, num*size);
memset(ptr, 0, size);
return ptr;
}
static inline void mem_free(void* ptr) {
free(ptr);
}
static inline void coreneuron_abort() {
abort();
}
/** thread memory allocation callback */
static void thread_mem_init(ThreadDatum* thread) {
thread[dith1()].pval = nullptr;
}
/** thread memory cleanup callback */
static void thread_mem_cleanup(ThreadDatum* thread) {
free(thread[dith1()].pval);
nrn_destroy_newtonspace(static_cast<NewtonSpace*>(*newtonspace1
(thread)));
}
// Allocate instance structure
static void nrn_private_constructor_(NrnThread* nt, Memb_list* ml, int
type) {
assert(!ml->instance);
assert(!ml->global_variables);
assert(ml->global_variables_size == 0);
auto* const inst = new _Instance{};
assert(inst->global == &_global);
ml->instance = inst;
ml->global_variables = inst->global;
ml->global_variables_size = sizeof(_Store);
}
// Deallocate the instance structure
static void nrn_private_destructor_(NrnThread* nt, Memb_list* ml, int
type) {
auto* const inst = static_cast<_Instance*>(ml->instance);
assert(inst);
assert(inst->global);
assert(inst->global == &_global);
assert(inst->global == ml->global_variables);
assert(ml->global_variables_size == sizeof(_Store));
delete inst;
ml->instance = nullptr;
ml->global_variables = nullptr;
ml->global_variables_size = 0;
}
/** initialize mechanism instance variables */
static inline void setup_instance(NrnThread* nt, Memb_list* ml) {
auto* const inst = static_cast<_Instance*>(ml->instance);
assert(inst);
assert(inst->global);
assert(inst->global == &_global);
assert(inst->global == ml->global_variables);
assert(ml->global_variables_size == sizeof(_Store));
int pnodecount = ml->_nodecount_padded;
Datum* indexes = ml->pdata;
inst->m = ml->data+0*pnodecount;
inst->Dm = ml->data+1*pnodecount;
inst->v_unused = ml->data+2*pnodecount;
inst->g_unused = ml->data+3*pnodecount;
}
static void nrn_alloc_(double* data, Datum* indexes, int type) {
// do nothing
}
void nrn_constructor_(NrnThread* nt, Memb_list* ml, int type) {
#ifndef CORENEURON_BUILD
int nodecount = ml->nodecount;
int pnodecount = ml->_nodecount_padded;
const int* node_index = ml->nodeindices;
double* data = ml->data;
const double* voltage = nt->_actual_v;
Datum* indexes = ml->pdata;
ThreadDatum* thread = ml->_thread;
auto* const inst = static_cast<_Instance*>(ml->instance);
#endif
}
void nrn_destructor_(NrnThread* nt, Memb_list* ml, int type) {
#ifndef CORENEURON_BUILD
int nodecount = ml->nodecount;
int pnodecount = ml->_nodecount_padded;
const int* node_index = ml->nodeindices;
double* data = ml->data;
const double* voltage = nt->_actual_v;
Datum* indexes = ml->pdata;
ThreadDatum* thread = ml->_thread;
auto* const inst = static_cast<_Instance*>(ml->instance);
#endif
}
namespace {
struct _newton_state_ {
int operator()(int id, double* data, Datum* indexes, ThreadDatum*
thread, NrnThread* nt, Memb_list* ml, double v) const {
auto* const inst = static_cast<_Instance*>(ml->instance);
double* savstate1 = static_cast<double*>(thread[dith1()].
pval);
auto const& slist1 = inst->global->slist1;
auto const& dlist1 = inst->global->dlist1;
double* dlist2 = static_cast<double*>(thread[dith1()].pval) +
(1*pnodecount);
inst->Dm[id] = 2.0 * inst->m[id];
int counter = -1;
for (int i=0; i<1; i++) {
if (*deriv1_advance(thread)) {
dlist2[(++counter)*pnodecount+id] = data[dlist1[i]*
pnodecount+id]-(data[slist1[i]*pnodecount+id]-savstate1[i*pnodecount+id])/nt-
>_dt;
} else {
dlist2[(++counter)*pnodecount+id] = data[slist1[i]*
pnodecount+id]-savstate1[i*pnodecount+id];
}
}
return 0;
}
};
}
int state_(int id, double* data, Datum* indexes, ThreadDatum* thread,
NrnThread* nt, Memb_list* ml, double v) {
auto* const inst = static_cast<_Instance*>(ml->instance);
double* savstate1 = (double*) thread[dith1()].pval;
auto const& slist1 = inst->global->slist1;
auto& slist2 = inst->global->slist2;
double* dlist2 = static_cast<double*>(thread[dith1()].pval) + (1*
pnodecount);
for (int i=0; i<1; i++) {
savstate1[i*pnodecount+id] = data[slist1[i]*pnodecount+id];
}
int reset = nrn_newton_thread(static_cast<NewtonSpace*>(*newtonspace1
(thread)), 1, slist2, _newton_state_{}, dlist2, id, pnodecount, data,
indexes, thread, nt, ml, v);
return reset;
}
/** initialize channel */
void nrn_init_(NrnThread* nt, Memb_list* ml, int type) {
int nodecount = ml->nodecount;
int pnodecount = ml->_nodecount_padded;
const int* node_index = ml->nodeindices;
double* data = ml->data;
const double* voltage = nt->_actual_v;
Datum* indexes = ml->pdata;
ThreadDatum* thread = ml->_thread;
setup_instance(nt, ml);
auto* const inst = static_cast<_Instance*>(ml->instance);
int& deriv_advance_flag = *deriv1_advance(thread);
deriv_advance_flag = 0;
auto ns = newtonspace1(thread);
auto& th = thread[dith1()];
if (*ns == nullptr) {
int vec_size = 2*1*pnodecount*sizeof(double);
double* vec = makevector(vec_size);
th.pval = vec;
*ns = nrn_cons_newtonspace(1, pnodecount);
}
if (_nrn_skip_initmodel == 0) {
#pragma omp simd
#pragma ivdep
for (int id = 0; id < nodecount; id++) {
int node_id = node_index[id];
double v = voltage[node_id];
#if NRN_PRCELLSTATE
inst->v_unused[id] = v;
#endif
inst->m[id] = inst->global->m0;
}
}
deriv_advance_flag = 1;
}
/** update state */
void nrn_state_(NrnThread* nt, Memb_list* ml, int type) {
int nodecount = ml->nodecount;
int pnodecount = ml->_nodecount_padded;
const int* node_index = ml->nodeindices;
double* data = ml->data;
const double* voltage = nt->_actual_v;
Datum* indexes = ml->pdata;
ThreadDatum* thread = ml->_thread;
auto* const inst = static_cast<_Instance*>(ml->instance);
#pragma omp simd
#pragma ivdep
for (int id = 0; id < nodecount; id++) {
int node_id = node_index[id];
double v = voltage[node_id];
#if NRN_PRCELLSTATE
inst->v_unused[id] = v;
#endif
state_(id, pnodecount, data, indexes, thread, nt, ml, v);
}
}
/** register channel with the simulator */
void _temp.mod_reg() {
int mech_type = nrn_get_mechtype("");
_global.mech_type = mech_type;
if (mech_type == -1) {
return;
}
_nrn_layout_reg(mech_type, 0);
register_mech(mechanism_info, nrn_alloc_, nullptr, nullptr,
nrn_state_, nrn_init_, nrn_private_constructor_, nrn_private_destructor_,
first_pointer_var_index(), 4);
thread_mem_init(_global.ext_call_thread);
_nrn_thread_reg0(mech_type, thread_mem_cleanup);
_nrn_thread_reg1(mech_type, thread_mem_init);
hoc_register_prop_size(mech_type, float_variables_size(),
int_variables_size());
hoc_register_var(hoc_scalar_double, hoc_vector_double, NULL);
}
}
" contains: "namespace {
struct _newton_state_ {
int operator()(int id, int pnodecount, double* data, Datum*
indexes, ThreadDatum* thread, NrnThread* nt, Memb_list* ml, double v) const {
auto* const inst = static_cast<_Instance*>(ml->instance);
double* savstate1 = static_cast<double*>(thread[dith1()].
pval);
auto const& slist1 = inst->global->slist1;
auto const& dlist1 = inst->global->dlist1;
double* dlist2 = static_cast<double*>(thread[dith1()].pval) +
(1*pnodecount);
inst->Dm[id] = 2.0 * inst->m[id];
int counter = -1;
for (int i=0; i<1; i++) {
if (*deriv1_advance(thread)) {
dlist2[(++counter)*pnodecount+id] = data[dlist1[i]*
pnodecount+id]-(data[slist1[i]*pnodecount+id]-savstate1[i*pnodecount+id])/nt-
>_dt;
} else {
dlist2[(++counter)*pnodecount+id] = data[slist1[i]*
pnodecount+id]-savstate1[i*pnodecount+id];
}
}
return 0;
}
};
}"
===============================================================================
test cases: 1 | 1 failed
assertions: 1 | 1 failed
Start 16: testcodegen/Scenario: Some tests on euler solver
16/114 Test #16: testcodegen/Scenario: Some tests on euler solver .................................................... Passed 0.04 sec
Start 17: testcodegen/Scenario: Check codegen for MUTEX and PROTECT
17/114 Test #17: testcodegen/Scenario: Check codegen for MUTEX and PROTECT ........................................... Passed 0.04 sec
Start 18: testcodegen/Scenario: Array STATE variable
18/114 Test #18: testcodegen/Scenario: Array STATE variable .......................................................... Passed 0.04 sec
Start 19: testcodegen/Scenario: Check whether PROCEDURE and FUNCTION need setdata call
19/114 Test #19: testcodegen/Scenario: Check whether PROCEDURE and FUNCTION need setdata call ........................ Passed 0.04 sec
Start 20: testcodegen/Scenario: Adding a variable for a table inside a function
20/114 Test #20: testcodegen/Scenario: Adding a variable for a table inside a function ............................... Passed 0.04 sec
Start 21: testcodegen/Scenario: Uncompatible constructs should failed
21/114 Test #21: testcodegen/Scenario: Uncompatible constructs should failed ......................................... Passed 0.04 sec
Start 22: testmodtoken/NMODL Lexer returning valid ModToken object
22/114 Test #22: testmodtoken/NMODL Lexer returning valid ModToken object ............................................ Passed 0.01 sec
Start 23: testmodtoken/Addition of two ModToken objects
23/114 Test #23: testmodtoken/Addition of two ModToken objects ....................................................... Passed 0.01 sec
Start 24: testlexer/NMODL Lexer returning valid token types
24/114 Test #24: testlexer/NMODL Lexer returning valid token types ................................................... Passed 0.01 sec
Start 25: testparser/Scenario: NMODL can accept CR as return char for one line comment
25/114 Test #25: testparser/Scenario: NMODL can accept CR as return char for one line comment ........................ Passed 0.02 sec
Start 26: testparser/Scenario: NMODL can define macros using DEFINE keyword
26/114 Test #26: testparser/Scenario: NMODL can define macros using DEFINE keyword ................................... Passed 0.02 sec
Start 27: testparser/Scenario: Macros can be used anywhere in the mod file
27/114 Test #27: testparser/Scenario: Macros can be used anywhere in the mod file .................................... Passed 0.02 sec
Start 28: testparser/Scenario: NMODL parser accepts empty unit specification
28/114 Test #28: testparser/Scenario: NMODL parser accepts empty unit specification .................................. Passed 0.02 sec
Start 29: testparser/Scenario: NMODL parser running number of valid NMODL constructs
29/114 Test #29: testparser/Scenario: NMODL parser running number of valid NMODL constructs .......................... Passed 0.04 sec
Start 30: testparser/Scenario: NMODL parser running number of invalid NMODL constructs
30/114 Test #30: testparser/Scenario: NMODL parser running number of invalid NMODL constructs ........................ Passed 0.02 sec
Start 31: testparser/Scenario: Check that the parser doesn't crash when passing invalid INCLUDE constructs
31/114 Test #31: testparser/Scenario: Check that the parser doesn't crash when passing invalid INCLUDE constructs .... Passed 0.02 sec
Start 32: testparser/Scenario: NEURON block can add CURIE information
32/114 Test #32: testparser/Scenario: NEURON block can add CURIE information ......................................... Passed 0.02 sec
Start 33: testparser/Scenario: Check parents in valid NMODL constructs
33/114 Test #33: testparser/Scenario: Check parents in valid NMODL constructs ........................................ Passed 0.28 sec
Start 34: testparser/Scenario: Legacy differential equation solver
34/114 Test #34: testparser/Scenario: Legacy differential equation solver ............................................ Passed 0.02 sec
Start 35: testparser/Scenario: Check if a NEURON block is parsed with correct location info in its token
35/114 Test #35: testparser/Scenario: Check if a NEURON block is parsed with correct location info in its token ...... Passed 0.02 sec
Start 36: testvisitor/Scenario: AfterCVodeToCnexpVisitor changes after_cvode solver method to cnexp
36/114 Test #36: testvisitor/Scenario: AfterCVodeToCnexpVisitor changes after_cvode solver method to cnexp ........... Passed 0.04 sec
Start 37: testvisitor/Scenario: Perform constant folder on NMODL constructs
37/114 Test #37: testvisitor/Scenario: Perform constant folder on NMODL constructs ................................... Passed 0.04 sec
Start 38: testvisitor/Scenario: Perform DefUse analysis on NMODL constructs
38/114 Test #38: testvisitor/Scenario: Perform DefUse analysis on NMODL constructs ................................... Passed 0.05 sec
Start 39: testvisitor/Scenario: GLOBAL to RANGE variable transformer
39/114 Test #39: testvisitor/Scenario: GLOBAL to RANGE variable transformer .......................................... Passed 0.04 sec
Start 40: testvisitor/Scenario: Check insertion of implicit arguments
40/114 Test #40: testvisitor/Scenario: Check insertion of implicit arguments ......................................... Passed 0.04 sec
Start 41: testvisitor/Scenario: Inlining of external procedure calls
41/114 Test #41: testvisitor/Scenario: Inlining of external procedure calls .......................................... Passed 0.04 sec
Start 42: testvisitor/Scenario: Inlining of function call as argument in external function
42/114 Test #42: testvisitor/Scenario: Inlining of function call as argument in external function .................... Passed 0.04 sec
Start 43: testvisitor/Scenario: Inlining of simple, one level procedure call
43/114 Test #43: testvisitor/Scenario: Inlining of simple, one level procedure call .................................. Passed 0.04 sec
Start 44: testvisitor/Scenario: Inlining of nested procedure call
44/114 Test #44: testvisitor/Scenario: Inlining of nested procedure call ............................................. Passed 0.04 sec
Start 45: testvisitor/Scenario: Inline function call in procedure
45/114 Test #45: testvisitor/Scenario: Inline function call in procedure ............................................. Passed 0.04 sec
Start 46: testvisitor/Scenario: Inling function call within conditional statement
46/114 Test #46: testvisitor/Scenario: Inling function call within conditional statement ............................. Passed 0.04 sec
Start 47: testvisitor/Scenario: Inline multiple function calls in same statement
47/114 Test #47: testvisitor/Scenario: Inline multiple function calls in same statement .............................. Passed 0.04 sec
Start 48: testvisitor/Scenario: Inline nested function calls withing arguments
48/114 Test #48: testvisitor/Scenario: Inline nested function calls withing arguments ................................ Passed 0.04 sec
Start 49: testvisitor/Scenario: Inline function call in non-binary expression
49/114 Test #49: testvisitor/Scenario: Inline function call in non-binary expression ................................. Passed 0.04 sec
Start 50: testvisitor/Scenario: Inline function call as standalone expression
50/114 Test #50: testvisitor/Scenario: Inline function call as standalone expression ................................. Passed 0.04 sec
Start 51: testvisitor/Scenario: Inline procedure call as standalone statement as well as part of expression
51/114 Test #51: testvisitor/Scenario: Inline procedure call as standalone statement as well as part of expression ... Passed 0.08 sec
Start 52: testvisitor/Scenario: Inlining pass handles local-global name conflict
52/114 Test #52: testvisitor/Scenario: Inlining pass handles local-global name conflict .............................. Passed 0.04 sec
Start 53: testvisitor/Scenario: Trying to inline a function with VERBATIM block
53/114 Test #53: testvisitor/Scenario: Trying to inline a function with VERBATIM block ............................... Passed 0.04 sec
Start 54: testvisitor/Convert NMODL to AST to JSON form using JSONVisitor
54/114 Test #54: testvisitor/Convert NMODL to AST to JSON form using JSONVisitor ..................................... Passed 0.04 sec
Start 55: testvisitor/Scenario: Convert KINETIC to DERIVATIVE using KineticBlock visitor
55/114 Test #55: testvisitor/Scenario: Convert KINETIC to DERIVATIVE using KineticBlock visitor ...................... Passed 0.06 sec
Start 56: testvisitor/Scenario: Localizer test with single global block
56/114 Test #56: testvisitor/Scenario: Localizer test with single global block ....................................... Passed 0.04 sec
Start 57: testvisitor/Scenario: Localizer test with use of verbatim block
57/114 Test #57: testvisitor/Scenario: Localizer test with use of verbatim block ..................................... Passed 0.04 sec
Start 58: testvisitor/Scenario: Localizer test with multiple global blocks
58/114 Test #58: testvisitor/Scenario: Localizer test with multiple global blocks .................................... Passed 0.04 sec
Start 59: testvisitor/Scenario: LocalVarRenameVisitor works with InlineVisitor
59/114 Test #59: testvisitor/Scenario: LocalVarRenameVisitor works with InlineVisitor ................................ Passed 0.04 sec
Start 60: testvisitor/Scenario: LOCAL to ASSIGNED variable transformer
60/114 Test #60: testvisitor/Scenario: LOCAL to ASSIGNED variable transformer ........................................ Passed 0.04 sec
Start 61: testvisitor/Scenario: Searching for ast nodes using AstLookupVisitor
61/114 Test #61: testvisitor/Scenario: Searching for ast nodes using AstLookupVisitor ................................ Passed 0.04 sec
Start 62: testvisitor/Scenario: Perform loop unrolling of FROM construct
62/114 Test #62: testvisitor/Scenario: Perform loop unrolling of FROM construct ...................................... Passed 0.04 sec
Start 63: testvisitor/Scenario: Running visitor passes multiple times
63/114 Test #63: testvisitor/Scenario: Running visitor passes multiple times ......................................... Passed 0.04 sec
Start 64: testvisitor/Scenario: Sympy specific AST to NMODL conversion
64/114 Test #64: testvisitor/Scenario: Sympy specific AST to NMODL conversion ........................................ Passed 0.04 sec
Start 65: testvisitor/Scenario: NeuronSolveVisitor visitor solves different ODE types
65/114 Test #65: testvisitor/Scenario: NeuronSolveVisitor visitor solves different ODE types ......................... Passed 0.04 sec
Start 66: testvisitor/Scenario: Convert AST back to NMODL form
66/114 Test #66: testvisitor/Scenario: Convert AST back to NMODL form ................................................ Passed 0.12 sec
Start 67: testvisitor/Scenario: Symbol table generation with Perf stat visitor
67/114 Test #67: testvisitor/Scenario: Symbol table generation with Perf stat visitor ................................ Passed 0.04 sec
Start 68: testvisitor/Scenario: Renaming any variable in mod file with RenameVisitor
68/114 Test #68: testvisitor/Scenario: Renaming any variable in mod file with RenameVisitor .......................... Passed 0.04 sec
Start 69: testvisitor/Scenario: Renaming with presence of local and global variables in same block
69/114 Test #69: testvisitor/Scenario: Renaming with presence of local and global variables in same block ............ Passed 0.04 sec
Start 70: testvisitor/Scenario: Renaming in the absence of global blocks
70/114 Test #70: testvisitor/Scenario: Renaming in the absence of global blocks ...................................... Passed 0.04 sec
Start 71: testvisitor/Scenario: Variable renaming in nested blocks
71/114 Test #71: testvisitor/Scenario: Variable renaming in nested blocks ............................................ Passed 0.04 sec
Start 72: testvisitor/Scenario: Renaming in presence of local variable in verbatim block
72/114 Test #72: testvisitor/Scenario: Renaming in presence of local variable in verbatim block ...................... Passed 0.04 sec
Start 73: testvisitor/Scenario: TABLE stmt
73/114 Test #73: testvisitor/Scenario: TABLE stmt .................................................................... Passed 0.04 sec
Start 74: testvisitor/Scenario: Destructor block
74/114 Test #74: testvisitor/Scenario: Destructor block .............................................................. Passed 0.04 sec
Start 75: testvisitor/Scenario: Ion variable in CONSTANT block
75/114 Test #75: testvisitor/Scenario: Ion variable in CONSTANT block ................................................ Passed 0.04 sec
Start 76: testvisitor/Scenario: INDEPENDENT block
76/114 Test #76: testvisitor/Scenario: INDEPENDENT block ............................................................. Passed 0.04 sec
Start 77: testvisitor/Scenario: FUNCTION_TABLE block
77/114 Test #77: testvisitor/Scenario: FUNCTION_TABLE block .......................................................... Passed 0.04 sec
Start 78: testvisitor/Scenario: At most one DERIVATIVE block
78/114 Test #78: testvisitor/Scenario: At most one DERIVATIVE block .................................................. Passed 0.04 sec
Start 79: testvisitor/Scenario: RANDOM Construct
79/114 Test #79: testvisitor/Scenario: RANDOM Construct .............................................................. Passed 0.04 sec
Start 80: testvisitor/Solve ODEs using legacy NeuronSolveVisitor
80/114 Test #80: testvisitor/Solve ODEs using legacy NeuronSolveVisitor .............................................. Passed 0.04 sec
Start 81: testvisitor/Scenario: Solving ODEs with STEADYSTATE solve method
81/114 Test #81: testvisitor/Scenario: Solving ODEs with STEADYSTATE solve method .................................... Passed 0.04 sec
Start 82: testvisitor/Scenario: Addition of CONDUCTANCE using SympyConductance visitor
82/114 Test #82: testvisitor/Scenario: Addition of CONDUCTANCE using SympyConductance visitor ........................ Passed 47.99 sec
Start 83: testvisitor/Scenario: Check compare_blocks in sympy unit tests
83/114 Test #83: testvisitor/Scenario: Check compare_blocks in sympy unit tests ...................................... Passed 0.83 sec
Start 84: testvisitor/Scenario: Check local vars name-clash prevention
84/114 Test #84: testvisitor/Scenario: Check local vars name-clash prevention ........................................ Passed 0.95 sec
Start 85: testvisitor/Scenario: Solve ODEs with cnexp or euler method using SympySolverVisitor
85/114 Test #85: testvisitor/Scenario: Solve ODEs with cnexp or euler method using SympySolverVisitor ................ Passed 7.76 sec
Start 86: testvisitor/Scenario: Solve ODEs with derivimplicit method using SympySolverVisitor
86/114 Test #86: testvisitor/Scenario: Solve ODEs with derivimplicit method using SympySolverVisitor ................. Passed 2.44 sec
Start 87: testvisitor/Scenario: LINEAR solve block (SympySolver Visitor)
87/114 Test #87: testvisitor/Scenario: LINEAR solve block (SympySolver Visitor) ...................................... Passed 1.88 sec
Start 88: testvisitor/Scenario: Solve NONLINEAR block using SympySolver Visitor
88/114 Test #88: testvisitor/Scenario: Solve NONLINEAR block using SympySolver Visitor ............................... Passed 0.93 sec
Start 89: testvisitor/Scenario: Solve KINETIC block using SympySolver Visitor
89/114 Test #89: testvisitor/Scenario: Solve KINETIC block using SympySolver Visitor ................................. Passed 1.01 sec
Start 90: testvisitor/Scenario: Code generation for EigenNewtonSolver
90/114 Test #90: testvisitor/Scenario: Code generation for EigenNewtonSolver ......................................... Passed 0.98 sec
Start 91: testvisitor/Scenario: Parse UNITS block of mod files using Units Visitor
91/114 Test #91: testvisitor/Scenario: Parse UNITS block of mod files using Units Visitor ............................ Passed 0.05 sec
Start 92: testvisitor/Scenario: Searching for variable name using VarUsageVisitor
92/114 Test #92: testvisitor/Scenario: Searching for variable name using VarUsageVisitor ............................. Passed 0.04 sec
Start 93: testvisitor/Parse VERBATIM block using Verbatim Visitor
93/114 Test #93: testvisitor/Parse VERBATIM block using Verbatim Visitor ............................................. Passed 0.04 sec
Start 94: testvisitor/Scenario: Get node name with index TestVisitor
94/114 Test #94: testvisitor/Scenario: Get node name with index TestVisitor .......................................... Passed 0.04 sec
Start 95: testprinter/JSON printer converting object to string form
95/114 Test #95: testprinter/JSON printer converting object to string form ........................................... Passed 0.01 sec
Start 96: testsymtab/Scenario: Symbol properties can be added and converted to string
96/114 Test #96: testsymtab/Scenario: Symbol properties can be added and converted to string ......................... Passed 0.01 sec
Start 97: testsymtab/Scenario: Multiple properties can be added to Symbol
97/114 Test #97: testsymtab/Scenario: Multiple properties can be added to Symbol ..................................... Passed 0.01 sec
Start 98: testsymtab/Scenario: Symbol table allows operations like insert, lookup
98/114 Test #98: testsymtab/Scenario: Symbol table allows operations like insert, lookup ............................. Passed 0.01 sec
Start 99: testsymtab/Scenario: Global symbol table (ModelSymbol) allows scope based operations
99/114 Test #99: testsymtab/Scenario: Global symbol table (ModelSymbol) allows scope based operations ................ Passed 0.01 sec
Start 100: testsymtab/Scenario: Symbol class allows manipulation
100/114 Test #100: testsymtab/Scenario: Symbol class allows manipulation ............................................... Passed 0.01 sec
Start 101: testnewton/Scenario: Non-linear system to solve with Newton Numerical Diff Solver
101/114 Test #101: testnewton/Scenario: Non-linear system to solve with Newton Numerical Diff Solver ................... Passed 0.01 sec
Start 102: testnewton/Scenario: Non-linear system to solve with Newton Solver
102/114 Test #102: testnewton/Scenario: Non-linear system to solve with Newton Solver .................................. Passed 0.01 sec
Start 103: testcrout/Scenario: Compare Crout solver with Eigen
103/114 Test #103: testcrout/Scenario: Compare Crout solver with Eigen ................................................. Passed 0.25 sec
Start 104: testunitlexer/Unit Lexer tests for valid tokens
104/114 Test #104: testunitlexer/Unit Lexer tests for valid tokens ..................................................... Passed 0.01 sec
Start 105: testunitparser/Scenario: Unit parser accepting valid units definition
105/114 Test #105: testunitparser/Scenario: Unit parser accepting valid units definition ............................... Passed 0.02 sec
Start 106: testunitparser/Scenario: Unit parser accepting dependent/nested units definition
106/114 Test #106: testunitparser/Scenario: Unit parser accepting dependent/nested units definition .................... Passed 0.01 sec
Start 107: Ode
107/114 Test #107: Ode ................................................................................................. Passed 1.98 sec
Start 108: Pybind
108/114 Test #108: Pybind .............................................................................................. Passed 1.02 sec
Start 109: cabpump.mod
109/114 Test #109: cabpump.mod ......................................................................................... Passed 0.03 sec
Start 110: glia_sparse.mod
110/114 Test #110: glia_sparse.mod ..................................................................................... Passed 0.94 sec
Start 111: ican.mod
111/114 Test #111: ican.mod ............................................................................................ Passed 0.02 sec
Start 112: test_functor.mod
112/114 Test #112: test_functor.mod .................................................................................... Passed 0.02 sec
Start 113: variable_names.mod
113/114 Test #113: variable_names.mod .................................................................................. Passed 2.79 sec
Start 114: watch_test.mod
114/114 Test #114: watch_test.mod ...................................................................................... Passed 0.02 sec
99% tests passed, 1 tests failed out of 114
Total Test time (real) = 75.61 sec
The following tests FAILED:
15 - testcodegen/Scenario: Some tests on derivimplicit (Failed)
Errors while running CTest
$ cp -r Testing/ ${CI_PROJECT_DIR}/
$ module load unstable unit-test-translator
$ cmake2junit > ${CI_PROJECT_DIR}/ctest.xml
$ exit ${i_am_a_failure}
srun: error: r1i4n11: task 0: Exited with exit code 1
section_end:1717411154:step_script section_start:1717411154:upload_artifacts_on_failure Uploading artifacts for failed job
Using git from spack modules
Uploading artifacts...
Runtime platform  arch=amd64 os=linux pid=289745 revision=58ba2b95 version=14.2.0
initial_environment.env: found 1 matching files and directories
Testing/: found 8 matching files and directories 
Uploading artifacts as "archive" to coordinator... ok id=1304410 responseStatus=201 Created token=glcbt-64
Uploading artifacts...
Runtime platform  arch=amd64 os=linux pid=289759 revision=58ba2b95 version=14.2.0
ctest.xml: found 1 matching files and directories 
Uploading artifacts as "junit" to coordinator... ok id=1304410 responseStatus=201 Created token=glcbt-64
section_end:1717411156:upload_artifacts_on_failure section_start:1717411156:cleanup_file_variables Cleaning up project directory and file based variables
Using git from spack modules
section_end:1717411157:cleanup_file_variables ERROR: Job failed: exit status 1

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment