Skip to content

Nightly tests / LLVM 19.1 #25

Nightly tests / LLVM 19.1

Nightly tests / LLVM 19.1 #25

Workflow file for this run

# Copyright 2022-2024, Intel Corporation
# SPDX-License-Identifier: BSD-3-Clause
# Nightly Linux run.
name: Nightly tests / LLVM 19.1
permissions: read-all
# Run daily - test sse2-avx512 targets @ -O0/-O1/-O2
on:
schedule:
- cron: '0 7 * * *'
workflow_dispatch:
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
env:
SDE_MIRROR_ID: 813591
SDE_TAR_NAME: sde-external-9.33.0-2024-01-07
USER_AGENT: "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/94.0.4606.81 Safari/537.36"
LLVM_REPO: https://github.com/ispc/ispc.dependencies
jobs:
linux-build-ispc-llvm-19:
runs-on: ubuntu-22.04
env:
LLVM_VERSION: "19.1"
LLVM_TAR: llvm-19.1.0-ubuntu22.04-Release+Asserts-x86.arm.wasm.tar.xz
steps:
- uses: actions/checkout@eef61447b9ff4aafe5dcd4e0bbf5d482be7e7871 # v4.2.1
with:
submodules: true
- name: Install dependencies
run: |
.github/workflows/scripts/install-build-deps.sh
- name: Check environment
run: |
which -a clang
cat /proc/cpuinfo
- name: Build package
run: |
.github/workflows/scripts/build-ispc.sh
- name: Sanity testing (make check-all, make test)
run: |
.github/workflows/scripts/check-ispc.sh
- name: Upload package
uses: actions/upload-artifact@50769540e7f4bd5e21e526ee35c689e35e0d6874 # v4.4.0
with:
name: ispc_llvm_19_linux
path: build/ispc-trunk-linux.tar.gz
linux-test-llvm-19:
needs: [linux-build-ispc-llvm-19]
runs-on: ubuntu-22.04
continue-on-error: false
strategy:
fail-fast: false
matrix:
arch: [x86, x86-64]
target: [sse2-i32x4, sse2-i32x8,
sse4-i8x16, sse4-i16x8, sse4-i32x4, sse4-i32x8,
avx1-i32x4, avx1-i32x8, avx1-i32x16, avx1-i64x4,
avx2-i8x32, avx2-i16x16, avx2-i32x4, avx2-i32x8, avx2-i32x16, avx2-i64x4,
avx2vnni-i32x4, avx2vnni-i32x8, avx2vnni-i32x16,
avx512skx-x4, avx512skx-x8, avx512skx-x16, avx512skx-x64, avx512skx-x32,
avx512icl-x4, avx512icl-x8, avx512icl-x16, avx512icl-x64, avx512icl-x32,
avx512spr-x4, avx512spr-x8, avx512spr-x16, avx512spr-x64, avx512spr-x32]
# See issue #2818 for more deatils. It's SDE problem running on AMD runner.
exclude:
- arch: x86
target: "avx2vnni-i32x4"
- arch: x86
target: "avx2vnni-i32x8"
- arch: x86
target: "avx2vnni-i32x16"
- arch: x86
target: "avx512skx-x4"
- arch: x86
target: "avx512skx-x8"
- arch: x86
target: "avx512skx-x16"
- arch: x86
target: "avx512skx-x32"
- arch: x86
target: "avx512skx-x64"
- arch: x86
target: "avx512icl-x4"
- arch: x86
target: "avx512icl-x8"
- arch: x86
target: "avx512icl-x16"
- arch: x86
target: "avx512icl-x32"
- arch: x86
target: "avx512icl-x64"
- arch: x86
target: "avx512spr-x4"
- arch: x86
target: "avx512spr-x8"
- arch: x86
target: "avx512spr-x16"
- arch: x86
target: "avx512spr-x32"
- arch: x86
target: "avx512spr-x64"
steps:
- uses: actions/checkout@eef61447b9ff4aafe5dcd4e0bbf5d482be7e7871 # v4.2.1
- name: Download package
uses: actions/download-artifact@fa0a91b85d4f404e444e00e005971372dc801d16 # v4.1.8
with:
name: ispc_llvm_19_linux
- name: Install dependencies and unpack artifacts
run: |
.github/workflows/scripts/install-test-deps.sh
- name: Check environment
run: |
cat /proc/cpuinfo
- name: Running tests
run: |
echo PATH="$PATH"
./scripts/alloy.py -r --only="stability ${{ matrix.arch }} current -O0 -O1 -O2" --only-targets="${{ matrix.target }}" --time --update-errors=FP
- name: Upload fail_db.txt
uses: actions/upload-artifact@50769540e7f4bd5e21e526ee35c689e35e0d6874 # v4.4.0
if: failure()
with:
name: fail_db.${{matrix.target}}.txt
path: tests/fail_db.txt
- name: Check
run: |
# Print fails to the log.
git diff
# Exit with error code if there are fails.
[ -z "$(git diff)" ]
win-build-ispc-llvm-19:
runs-on: windows-2019
env:
LLVM_VERSION: "19.1"
LLVM_TAR: llvm-19.1.0-win.vs2019-Release+Asserts-x86.arm.wasm.tar.7z
LLVM_HOME: "C:\\projects\\llvm"
CROSS_TOOLS_GNUWIN32: "C:\\projects\\cross\\gnuwin32"
BUILD_TYPE: "Release"
steps:
- uses: actions/checkout@eef61447b9ff4aafe5dcd4e0bbf5d482be7e7871 # v4.2.1
with:
submodules: true
- name: Add msbuild to PATH
uses: microsoft/setup-msbuild@6fb02220983dee41ce7ae257b6f4d8f9bf5ed4ce # v2.0.0
- name: Install dependencies
run: |
.github/workflows/scripts/install-build-deps.ps1
- name: Check environment
shell: cmd
run: |
wmic cpu get caption, deviceid, name, numberofcores, maxclockspeed, status
- name: Build package
run: |
.github/workflows/scripts/build-ispc.ps1
- name: Sanity testing (make check-all, make test)
run: |
.github/workflows/scripts/check-ispc.ps1
- name: Upload package
uses: actions/upload-artifact@50769540e7f4bd5e21e526ee35c689e35e0d6874 # v4.4.0
with:
name: ispc_llvm19_win
path: build/ispc-trunk-windows.zip
win-test-llvm19:
needs: [win-build-ispc-llvm-19]
env:
LLVM_HOME: "C:\\projects\\llvm"
runs-on: windows-2022
continue-on-error: false
strategy:
fail-fast: false
matrix:
arch: [x86, x86-64]
target: [sse2-i32x4, sse2-i32x8,
sse4-i8x16, sse4-i16x8, sse4-i32x4, sse4-i32x8,
avx1-i32x4, avx1-i32x8, avx1-i32x16, avx1-i64x4,
avx2-i8x32, avx2-i16x16, avx2-i32x4, avx2-i32x8, avx2-i32x16, avx2-i64x4,
avx512skx-x4, avx512skx-x8, avx512skx-x16, avx512skx-x64, avx512skx-x32]
steps:
- uses: actions/checkout@eef61447b9ff4aafe5dcd4e0bbf5d482be7e7871 # v4.2.1
- name: Download package
uses: actions/download-artifact@fa0a91b85d4f404e444e00e005971372dc801d16 # v4.1.8
with:
name: ispc_llvm19_win
- name: Install dependencies
run: |
.github/workflows/scripts/install-test-deps.ps1
- name: Check environment
shell: cmd
run: |
wmic cpu get caption, deviceid, name, numberofcores, maxclockspeed, status
- name: Running tests
run: |
$env:ISPC_HOME = "$pwd"
.github/workflows/scripts/load-vs-env.ps1 "${{ matrix.arch }}"
python .\scripts\alloy.py -r --only="stability ${{ matrix.arch }} current -O0 -O1 -O2" --only-targets="${{ matrix.target }}" --time --update-errors=FP
- name: Check
run: |
# Print fails to the log.
git diff --exit-code
- name: Upload fail_db.txt
uses: actions/upload-artifact@50769540e7f4bd5e21e526ee35c689e35e0d6874 # v4.4.0
if: failure()
with:
name: fail_db.llvm19.${{matrix.arch}}.${{matrix.target}}.txt
path: tests/fail_db.txt