From 469196fc62e45a0d79d9aa816cc179f1ad1f589c Mon Sep 17 00:00:00 2001 From: Alan Forbes Date: Tue, 26 Nov 2024 14:29:04 +0000 Subject: [PATCH 01/59] Commit Colins versions @ 5e091fd0 --- .github/actions/calc_vars/action.yml | 48 ++++++++ .github/actions/do_build_icd/action.yml | 71 +++++++++++ .../actions/do_build_ock_artefact/action.yml | 72 +++++++++++ .github/actions/do_build_tornado/action.yml | 70 +++++++++++ .github/actions/run_tornado/action.yml | 36 ++++++ .github/workflows/planned_testing.yml | 112 ++++++++++++++++++ .github/workflows/planned_testing_caller.yml | 27 +++++ 7 files changed, 436 insertions(+) create mode 100644 .github/actions/calc_vars/action.yml create mode 100644 .github/actions/do_build_icd/action.yml create mode 100644 .github/actions/do_build_ock_artefact/action.yml create mode 100644 .github/actions/do_build_tornado/action.yml create mode 100644 .github/actions/run_tornado/action.yml create mode 100644 .github/workflows/planned_testing.yml create mode 100644 .github/workflows/planned_testing_caller.yml diff --git a/.github/actions/calc_vars/action.yml b/.github/actions/calc_vars/action.yml new file mode 100644 index 000000000..bb5971ed2 --- /dev/null +++ b/.github/actions/calc_vars/action.yml @@ -0,0 +1,48 @@ +name: calc vars +description: calculate variables based off the target name that may be useful in other steps + +inputs: + target: + description: 'target architecture' + +outputs: + arch: + description: "base architecture - one of x86, x86_64, arm, aarch64 or riscv64" + value: ${{ steps.calc_vars_action.outputs.arch }} + toolchain: + description: "path to toolchain file for architecture" + value: ${{ steps.calc_vars_action.outputs.toolchain }} + cmake_toolchain: + description: "cmake argument to pass to " + value: ${{ steps.calc_vars_action.outputs.cmake_toolchain }} +runs: + # We don't want a new docker just a list of steps, so mark as composite + using: "composite" + steps: + - shell: bash + id: calc_vars_action + run: | + export ARCH= + export TOOLCHAIN= + export CMAKE_TOOLCHAIN= + if [[ "${{inputs.target}}" = "host_x86_64_linux" ]]; then + export ARCH=x86_64 >> $GITHUB_OUTPUT + elif [[ "${{inputs.target}}" = "host_x86_64_windows" ]]; then + export ARCH=x86_64 >> $GITHUB_OUTPUT + elif [[ "${{inputs.target}}" = "host_aarch64_linux" ]]; then + export ARCH=aarch64 >> $GITHUB_OUTPUT; + export TOOLCHAIN=$GITHUB_WORKSPACE/platform/arm-linux/aarch64-toolchain.cmake + export CMAKE_TOOLCHAIN="--toolchain $TOOLCHAIN" + elif [[ "${{inputs.target}}" = "host_riscv64_linux" ]]; then + export ARCH=riscv64 >> $GITHUB_OUTPUT; + export TOOLCHAIN=$GITHUB_WORKSPACE/platform/riscv64-linux/riscv64-toolchain.cmake + export CMAKE_TOOLCHAIN="--toolchain $TOOLCHAIN" + else + echo Unknown target ${{inputs.target}} + exit 1 + fi + echo "arch=$ARCH" >> $GITHUB_OUTPUT + echo "toolchain=$TOOLCHAIN" >> $GITHUB_OUTPUT + echo "cmake_toolchain=$CMAKE_TOOLCHAIN" >> $GITHUB_OUTPUT + cat $GITHUB_OUTPUT + diff --git a/.github/actions/do_build_icd/action.yml b/.github/actions/do_build_icd/action.yml new file mode 100644 index 000000000..3feea86e7 --- /dev/null +++ b/.github/actions/do_build_icd/action.yml @@ -0,0 +1,71 @@ +name: pull and build opencl icd loader +description: pull icd loader and build with a particular toolchain, uploading opencl header and icd artefacts + +inputs: + target: + description: 'target architecture' + +runs: + # We don't want a new docker just a list of steps, so mark as composite + using: "composite" + steps: + - name: calc vars + id: calc_vars + uses: ./.github/actions/calc_vars + with: + target: ${{ inputs.target }} + + - name: Install Ninja + uses: llvm/actions/install-ninja@main + + - name: clone headers + uses: actions/checkout@v4 + with: + repository: KhronosGroup/OpenCL-Headers + path: headers + + - name: build headers + shell: bash + run: | + pwd + ls -d * + cmake headers -Bheaders/build_${{steps.calc_vars.outputs.arch}} -DCMAKE_TOOLCHAIN_FILE=${{ steps.calc_vars.outputs.toolchain }} -DCMAKE_INSTALL_PREFIX=$PWD/headers_install_${{steps.calc_vars.outputs.arch}} -GNinja + ninja -v -C headers/build_${{steps.calc_vars.outputs.arch}} + ninja -v -C headers/build_${{steps.calc_vars.outputs.arch}} install + + - name: upload header artifact + uses: actions/upload-artifact@v4 + with: + name: header_${{inputs.target}} + path: headers_install_${{steps.calc_vars.outputs.arch}} + retention-days: 1 + + - name: clone icd + uses: actions/checkout@v4 + with: + repository: KhronosGroup/OpenCL-ICD-Loader + path: icd + + - name: icd cmake + shell: bash + run: + cmake icd -B icd/build_${{steps.calc_vars.outputs.arch}} -DCMAKE_TOOLCHAIN_FILE=${{ steps.calc_vars.outputs.toolchain }} + -DCMAKE_BUILD_TYPE=${{ inputs.build_type }} -DCMAKE_INSTALL_PREFIX=$PWD/install_icd_${{steps.calc_vars.outputs.arch}} + -DOpenCLHeaders_DIR=$PWD/headers_install_${{steps.calc_vars.outputs.arch}}/share/cmake/OpenCLHeaders -GNinja + + - name: icd build + shell: bash + run: | + ninja -v -C icd/build_${{steps.calc_vars.outputs.arch}} + ninja -v -C icd/build_${{steps.calc_vars.outputs.arch}} install + pwd + ls icd/ + + - name: upload icd artifact + uses: actions/upload-artifact@v4 + with: + name: icd_${{inputs.target}} + path: install_icd_${{steps.calc_vars.outputs.arch}} + retention-days: 1 + + diff --git a/.github/actions/do_build_ock_artefact/action.yml b/.github/actions/do_build_ock_artefact/action.yml new file mode 100644 index 000000000..e33e1839f --- /dev/null +++ b/.github/actions/do_build_ock_artefact/action.yml @@ -0,0 +1,72 @@ +name: build-ock-artefacts +description: Action to build the oneapi-construction-kit as an artefact + +# Note we need to support tip at some point + +inputs: + llvm_version: + description: 'llvm version we want to use (18-19)' + default: '19' + target: + description: 'target architecture' + +# TODO: This has not been tested yet on windows so would likely need some updating. +runs: + # We don't want a new docker just a list of steps, so mark as composite + using: "composite" + steps: + - name: calc vars + id: calc_vars + uses: ./.github/actions/calc_vars + with: + target: ${{ inputs.target }} + + - name: print vars + shell: bash + run: | + echo arch = ${{steps.calc_vars.outputs.arch}} + echo toolchain = ${{steps.calc_vars.outputs.toolchain}} + + # installs tools, ninja, installs llvm and sets up sccache + - name: setup + uses: ./.github/actions/setup_build + with: + llvm_version: 19 + llvm_build_type: RelAssert + cross_arch: ${{ steps.calc_vars.outputs.arch == 'x86_64' && '' || steps.calc_vars.outputs.arch }} + + - name: build ock x86 + if: steps.calc_vars.outputs.arch == 'x86_64' + uses: ./.github/actions/do_build_ock + with: + build_targets: install + offline_kernel_tests: OFF + extra_flags: -DCA_ENABLE_TESTS=OFF -DCA_ENABLE_EXAMPLES=OFF -DCA_ENABLE_DOCUMENTATION=OFF + + - name: build ock other ${{ matrix.target }} + if: steps.calc_vars.outputs.arch != 'x86_64' + uses: ./.github/actions/do_build_ock + with: + build_targets: install + toolchain_file: ${{ steps.calc_vars.outputs.toolchain }} + extra_flags: -DCA_BUILTINS_TOOLS_DIR=${{ github.workspace }}/llvm_install_native/bin -DCA_ENABLE_TESTS=OFF -DCA_ENABLE_EXAMPLES=OFF -DCA_ENABLE_DOCUMENTATION=OFF + # Do we need the offline kernel as an artefact? If so currently this requires an external clc or qemu to be installed. + offline_kernel_tests: OFF + host_fp16: ON + + # Prune it as there is too much things in there we don't want to use + # We may want to extend this a bit as time goes on such as clc or UnitCL + - name: prune ock artefact + shell: bash + run: | + # delete all but city runner and the python associated file under bin + find install/bin -maxdepth 1 -type f ! -name "*.py" -delete + rm -rf install/share + + - name: upload ock artefact + uses: actions/upload-artifact@v4 + with: + name: ock_${{ inputs.target }} + path: install + retention-days: 1 + diff --git a/.github/actions/do_build_tornado/action.yml b/.github/actions/do_build_tornado/action.yml new file mode 100644 index 000000000..0829142fb --- /dev/null +++ b/.github/actions/do_build_tornado/action.yml @@ -0,0 +1,70 @@ +name: build tornado +description: build tornado + +inputs: + target: + description: 'target architecture' + +runs: + # We don't want a new docker just a list of steps, so mark as composite + using: "composite" + steps: + - name: calc vars + id: calc_vars + uses: ./.github/actions/calc_vars + with: + target: ${{ inputs.target }} + + - name: Install Ninja + uses: llvm/actions/install-ninja@main + + - name: download icd artifact + uses: actions/download-artifact@v4 + with: + name: icd_${{inputs.target}} + path: install_icd + + # Get maven + - name: fetch maven + shell: bash + run: | + wget https://archive.apache.org/dist/maven/maven-3/3.9.3/binaries/apache-maven-3.9.3-bin.tar.gz + tar xf apache-maven-3.9.3-bin.tar.gz + + # TODO: setup correctly for our aarch64 runner + - name: select jdk21 + if: steps.calc_vars.outputs.arch == 'x86_64' + shell: bash + run: | + sudo update-java-alternatives -s temurin-21-jdk-amd64 + pip install tqdm + + - name: clone TornadoVM + uses: actions/checkout@v4 + with: + repository: beehive-lab/TornadoVM + path: TornadoVM_build + ref: develop + + - name: build tornadovm + shell: bash + run: | + export JAVA_HOME=`readlink -f $(command -v java) | sed 's/\/bin\/java//'` + export TORNADO_SDK=$GITHUB_WORKSPACE/TornadoVM_build/bin/sdk + export PATH=$PWD/apache-maven-3.9.3/bin:$PATH + mvn -v + java --version + cd TornadoVM_build + # The tornado build system links in OpenCL assuming it's in a known place. This gets around + # this by pass CXX as an environment variable as it's difficult to change the build system + # even if we don't use this script. + CXX="g++ -L$GITHUB_WORKSPACE/install_icd/lib" make -j8 jdk21 BACKEND=opencl + cp -r -L $TORNADO_SDK $GITHUB_WORKSPACE/TornadoVM_SDK + + - name: upload tornado artifact + uses: actions/upload-artifact@v4 + with: + name: tornado_${{inputs.target}} + path: TornadoVM_SDK + retention-days: 1 + diff --git a/.github/actions/run_tornado/action.yml b/.github/actions/run_tornado/action.yml new file mode 100644 index 000000000..3530186d9 --- /dev/null +++ b/.github/actions/run_tornado/action.yml @@ -0,0 +1,36 @@ +name: run tornado +description: run tornado + +# This action is not standalone and assumes it has been run after the build_tornado action +# and that the icd is already installed at install_icd +inputs: + target: + description: 'target architecture' + +runs: + # We don't want a new docker just a list of steps, so mark as composite + using: "composite" + steps: + - name: Download ock artefact + uses: actions/download-artifact@v4 + with: + name: ock_${{inputs.target}} + path: install_ock + + - name: Run tornado example + shell: bash + run: | + export ARTEFACT_CHECKOUT_PATH=$GITHUB_WORKSPACE/install_ock + export ICD_LOADER_INSTALL_PATH=$GITHUB_WORKSPACE/install_icd + + export LD_LIBRARY_PATH=$ICD_LOADER_INSTALL_PATH/lib:$LD_LIBRARY_PATH + echo $LD_LIBRARY_PATH + export OCL_ICD_FILENAMES=$ARTEFACT_CHECKOUT_PATH/lib/libCL.so + export JAVA_HOME=`readlink -f $(command -v java) | sed 's/\/bin\/java//'` + export TORNADO_SDK=$GITHUB_WORKSPACE/TornadoVM_build/bin/sdk + export PATH=$TORNADO_SDK/bin:$PATH + + git clone https://github.com/beehive-lab/TornadoVM.git -b develop --depth 1 + cd TornadoVM + CA_HOST_DUMP_ASM=1 tornado --printKernel --threadInfo -m tornado.examples/uk.ac.manchester.tornado.examples.compute.MatrixMultiplication2D 256 + diff --git a/.github/workflows/planned_testing.yml b/.github/workflows/planned_testing.yml new file mode 100644 index 000000000..6012ad75c --- /dev/null +++ b/.github/workflows/planned_testing.yml @@ -0,0 +1,112 @@ +# Simple workflow for running non-documentation PR testing +name: Run ock tests for PR testing +on: + workflow_call: + inputs: + ock: + required: false + type: boolean + default: true + test_tornado: + required: false + type: boolean + default: true + target_list: + required: false + type: string + llvm_version: + required: false + type: string + default: 19 + pull_request: + required: false + type: boolean + default: false + +jobs: + + # Calculate some useful variables that can be used through the workflow + # Currently this can be used to exclude all but certain targets in matrices + workflow_vars: + runs-on: ubuntu-22.04 + outputs: + matrix_only_linux_x86_64_aarch64: ${{ steps.vars.outputs.matrix_only_linux_x86_64_aarch64 }} + matrix_only_linux_x86_64: ${{ steps.vars.outputs.matrix_only_linux_x86_64 }} + steps: + - id: vars + run: | + echo matrix_only_linux_x86_64_aarch64="[ {\"target\": \"host_arm_linux\"}, {\"target\": \"host_riscv64_linux\"}, {\"target\": \"host_refsi_linux\"}, {\"target\": \"host_i686_linux\"}, {\"target\": \"host_x86_64_windows\"}]" >> $GITHUB_OUTPUT + echo matrix_only_linux_x86_64="[ {\"target\": \"host_aarch64_linux\"}, {\"target\": \"host_riscv64_linux\"}, {\"target\": \"host_arm_linux\"}, {\"target\": \"host_refsi_linux\"}, {\"target\": \"host_i686_linux\"}, {\"target\": \"host_x86_64_windows\"}]" >> $GITHUB_OUTPUT + cat $GITHUB_OUTPUT + + + create_ock_artefacts: + needs: [workflow_vars] + strategy: + matrix: + target: ${{ fromJson(inputs.target_list) }} + exclude: ${{ fromJson(needs.workflow_vars.outputs.matrix_only_linux_x86_64_aarch64) }} + + runs-on: ${{ (contains(matrix.target, 'host_riscv') && 'ubuntu-24.04') || (contains(matrix.target, 'windows') && 'windows-2019' || 'ubuntu-22.04' ) }} + if : inputs.ock + steps: + - name: Checkout repo + uses: actions/checkout@v4 + - name: build ock artefact + uses: ./.github/actions/do_build_ock_artefact + with: + target: ${{ matrix.target }} + llvm_version: ${{ inputs.llvm_version }} + + build_icd: + # Will also be required for opencl + if: inputs.test_tornado + needs: [workflow_vars] + strategy: + matrix: + target: ${{ fromJson(inputs.target_list) }} + exclude: ${{ fromJson(needs.workflow_vars.outputs.matrix_only_linux_x86_64_aarch64) }} + + runs-on: ubuntu-22.04 + steps: + - name: clone ock platform + uses: actions/checkout@v4 + with: + sparse-checkout: | + platform + .github + # The following can also be done with the matrix with exclude: to limit the targets to what we want + - name : build and upload icd ${{matrix.target}} + uses: ./.github/actions/do_build_icd + with: + target: ${{matrix.target}} + + + # Currently only builds and runs on x86_64 linux + build_run_tornado: + if: inputs.test_tornado + needs: [ workflow_vars, build_icd, create_ock_artefacts ] + strategy: + matrix: + target: ${{ fromJson(inputs.target_list) }} + exclude: ${{ fromJson(needs.workflow_vars.outputs.matrix_only_linux_x86_64) }} + + # Todo: expand for aarch64 + runs-on: ubuntu-22.04 + steps: + - name: clone ock platform + uses: actions/checkout@v4 + with: + sparse-checkout: | + platform + .github + # TODO: Consider separating out tornado build and run in the future + - name : build and upload tornado + uses: ./.github/actions/do_build_tornado + with: + target: ${{ matrix.target }} + - name : run tornado + uses: ./.github/actions/run_tornado + with: + target: ${{ matrix.target }} + diff --git a/.github/workflows/planned_testing_caller.yml b/.github/workflows/planned_testing_caller.yml new file mode 100644 index 000000000..2e5e5b7fe --- /dev/null +++ b/.github/workflows/planned_testing_caller.yml @@ -0,0 +1,27 @@ +# Calling workflow for running planned style tests +name: Run planned testing +on: + pull_request: + paths: + - '.github/workflows/planned_testing.yml' + - '.github/workflows/planned_testing_caller.yml' + branches: + - main + schedule: + # Run Mon-Fri at 7pm + - cron: '00 19 * * 1-5' + +jobs: + call_planned: + # This makes the diagram too big if we post much here so P_ for pull request. + name: P_ + if: ${{ github.event_name == 'pull_request' }} + uses: ./.github/workflows/planned_testing.yml + with: + target_list: '["host_x86_64_linux", "host_aarch64_linux", "host_riscv64_linux", "host_i686_linux", "host_refsi_linux", "host_x86_64_windows" ]' + test_tornado: true + ock: true + # Have a pull request setting which can be used to test the flow as best as possible + # in a reasonable time + pull_request: ${{ github.event_name == 'pull_request' && true || false }} + From 844f8b32a57e995dec0b7aa42ba9056ab09c0443 Mon Sep 17 00:00:00 2001 From: Alan Forbes Date: Tue, 26 Nov 2024 14:53:10 +0000 Subject: [PATCH 02/59] Commit Colins versions @ 5e091fd0 --- .github/actions/setup_build/action.yml | 34 ++++++++++++++++++-------- 1 file changed, 24 insertions(+), 10 deletions(-) diff --git a/.github/actions/setup_build/action.yml b/.github/actions/setup_build/action.yml index 53d9b9ac1..7a7a09ea7 100644 --- a/.github/actions/setup_build/action.yml +++ b/.github/actions/setup_build/action.yml @@ -21,9 +21,8 @@ inputs: description: 'Save the build cache at the end - not for PR testing' default: false cross_arch: - description: 'Cross compilation architecture from: x86, arm, aarch64, riscv64. Default: "" (no cross compile)' + description: 'Cross compilation architecture from: x86, arm, aarch64, riscv64. Default: "" (no cross compile), will auto fetch native arch' default: "" - # Note: runner architectures from: x86_64 (aka runner.arch: X64), aarch64 (aka runner.arch: ARM64) clang_tidy: description: 'Enable installing of clang-tidy (currently 19)' type: boolean @@ -91,20 +90,34 @@ runs: shell: bash run: | KEY_VERSION="${{ inputs.ubuntu_version }}" - if [ "${{ inputs.os }}" = "windows" ]; then \ - KEY_VERSION="${{ inputs.windows_version }}" ; \ + if [ "${{ inputs.os }}" = "windows" ]; then + KEY_VERSION="${{ inputs.windows_version }}" fi echo "key_version=$KEY_VERSION" >> "$GITHUB_OUTPUT" KEY_ARCH="x86_64" - if [ "${{ runner.arch }}" = "ARM64" ]; then \ - KEY_ARCH="aarch64" ; \ + KEY_NATIVE_ARCH="x86_64" + if [ "${{ runner.arch }}" = "ARM64" ]; then + KEY_ARCH="aarch64" ; + KEY_NATIVE_ARCH="aarch64" fi - if [ "${{ inputs.cross_arch }}" != "" ]; then \ - KEY_ARCH="${{ inputs.cross_arch }}" ; \ + if [ "${{ inputs.cross_arch }}" != "" ]; then + KEY_ARCH="${{ inputs.cross_arch }}" fi + echo "key_arch=$KEY_ARCH" >> "$GITHUB_OUTPUT" - echo "key_version=$KEY_VERSION" - echo "key_arch=$KEY_ARCH" + echo "key_native_arch=$KEY_NATIVE_ARCH" >> "$GITHUB_OUTPUT" + cat $GITHUB_OUTPUT + + - name: load llvm native + if: inputs.cross_arch != '' + uses: actions/cache/restore@v4 + with: + path: llvm_install/** + key: llvm-${{ inputs.os }}-${{ steps.set_llvm_key.outputs.key_version }}-${{ steps.set_llvm_key.outputs.key_native_arch }}-v${{ inputs.llvm_version }}-${{ inputs.llvm_build_type }} + fail-on-cache-miss: true + - shell: bash + if: inputs.cross_arch != '' + run: mv llvm_install llvm_install_native - name: load llvm uses: actions/cache/restore@v4 @@ -121,3 +134,4 @@ runs: key: sccache-build variant: sccache save: ${{ inputs.save }} + From 0ac8b1453fd84c2e19ad7c07264a7affbec7fdea Mon Sep 17 00:00:00 2001 From: Alan Forbes Date: Tue, 26 Nov 2024 15:19:02 +0000 Subject: [PATCH 03/59] Disable CodeQL and PR tests --- .github/workflows/codeql.yml | 28 +++++++++++------------ .github/workflows/run_pr_tests_caller.yml | 26 ++++++++++----------- 2 files changed, 27 insertions(+), 27 deletions(-) diff --git a/.github/workflows/codeql.yml b/.github/workflows/codeql.yml index 969248aa1..4c600b8bd 100644 --- a/.github/workflows/codeql.yml +++ b/.github/workflows/codeql.yml @@ -4,20 +4,20 @@ on: push: branches: - main - pull_request: - branches: - - main - paths: - - 'source/**' - - 'clik/**' - - 'modules/**' - - 'examples/**' - - 'cmake/**' - - 'hal/**' - - '.github/actions/do_build_ock/**' - - '.github/actions/setup_build/**' - - '.github/workflows/codeql.yml' - - 'CMakeLists.txt' +# pull_request: +# branches: +# - main +# paths: +# - 'source/**' +# - 'clik/**' +# - 'modules/**' +# - 'examples/**' +# - 'cmake/**' +# - 'hal/**' +# - '.github/actions/do_build_ock/**' +# - '.github/actions/setup_build/**' +# - '.github/workflows/codeql.yml' +# - 'CMakeLists.txt' schedule: - cron: '19 9 * * 3' diff --git a/.github/workflows/run_pr_tests_caller.yml b/.github/workflows/run_pr_tests_caller.yml index bf7d33b70..ac4a871e2 100644 --- a/.github/workflows/run_pr_tests_caller.yml +++ b/.github/workflows/run_pr_tests_caller.yml @@ -1,19 +1,19 @@ # Calling workflow for running PR style tests name: Run ock tests for PR style testing on: - pull_request: - paths: - - 'source/**' - - 'clik/**' - - 'modules/**' - - 'examples/**' - - 'cmake/**' - - 'hal/**' - - '.github/actions/do_build_ock/**' - - '.github/actions/setup_build/**' - - '.github/workflows/run_pr_tests.yml' - - '.github/workflows/run_pr_tests_caller.yml' - - 'CMakeLists.txt' +# pull_request: +# paths: +# - 'source/**' +# - 'clik/**' +# - 'modules/**' +# - 'examples/**' +# - 'cmake/**' +# - 'hal/**' +# - '.github/actions/do_build_ock/**' +# - '.github/actions/setup_build/**' +# - '.github/workflows/run_pr_tests.yml' +# - '.github/workflows/run_pr_tests_caller.yml' +# - 'CMakeLists.txt' schedule: # Run Mon-Fri at 7pm - cron: '00 19 * * 1-5' From 5f4863f1276c550dd7a4f3f1d00247365fe6bc76 Mon Sep 17 00:00:00 2001 From: Alan Forbes Date: Tue, 26 Nov 2024 15:57:29 +0000 Subject: [PATCH 04/59] Initil opencl cts structure --- .../actions/do_build_opencl_cts/action.yml | 39 +++++++++++++++++++ .github/actions/run_opencl_cts/action.yml | 24 ++++++++++++ .github/workflows/planned_testing.yml | 38 +++++++++++++++++- .github/workflows/planned_testing_caller.yml | 3 +- 4 files changed, 101 insertions(+), 3 deletions(-) create mode 100644 .github/actions/do_build_opencl_cts/action.yml create mode 100644 .github/actions/run_opencl_cts/action.yml diff --git a/.github/actions/do_build_opencl_cts/action.yml b/.github/actions/do_build_opencl_cts/action.yml new file mode 100644 index 000000000..ec62310a7 --- /dev/null +++ b/.github/actions/do_build_opencl_cts/action.yml @@ -0,0 +1,39 @@ +name: build opencl cts +description: build opencl cts + +inputs: + target: + description: 'target architecture' + +runs: + # We don't want a new docker just a list of steps, so mark as composite + using: "composite" + steps: + - name: calc vars + id: calc_vars + uses: ./.github/actions/calc_vars + with: + target: ${{ inputs.target }} + + - name: Install Ninja + uses: llvm/actions/install-ninja@main + + - name: download icd artifact + uses: actions/download-artifact@v4 + with: + name: icd_${{inputs.target}} + path: install_icd + + - name: build opencl cts + shell: bash + run: | + mkdir $GITHUB_WORKSPACE/opencl_cts_dir + echo Hello > $GITHUB_WORKSPACE/opencl_cts_dir/artefact + + - name: upload opencl cts artifact + uses: actions/upload-artifact@v4 + with: + name: opencl_cts_${{inputs.target}} + path: opencl_cts_dir + retention-days: 1 + diff --git a/.github/actions/run_opencl_cts/action.yml b/.github/actions/run_opencl_cts/action.yml new file mode 100644 index 000000000..bb123923e --- /dev/null +++ b/.github/actions/run_opencl_cts/action.yml @@ -0,0 +1,24 @@ +name: run opencl cts +description: run opencl cts + +# This action is not standalone and assumes it has been run after the build_opencl_cts action +# and that the icd is already installed at install_icd +inputs: + target: + description: 'target architecture' + +runs: + # We don't want a new docker just a list of steps, so mark as composite + using: "composite" + steps: + - name: Download ock artefact + uses: actions/download-artifact@v4 + with: + name: ock_${{inputs.target}} + path: install_ock + + - name: Run opencl cts example + shell: bash + run: | + echo Running opencl cts + diff --git a/.github/workflows/planned_testing.yml b/.github/workflows/planned_testing.yml index 6012ad75c..308422a87 100644 --- a/.github/workflows/planned_testing.yml +++ b/.github/workflows/planned_testing.yml @@ -11,6 +11,10 @@ on: required: false type: boolean default: true + test_opencl_cts: + required: false + type: boolean + default: true target_list: required: false type: string @@ -45,7 +49,8 @@ jobs: strategy: matrix: target: ${{ fromJson(inputs.target_list) }} - exclude: ${{ fromJson(needs.workflow_vars.outputs.matrix_only_linux_x86_64_aarch64) }} + #exclude: ${{ fromJson(needs.workflow_vars.outputs.matrix_only_linux_x86_64_aarch64) }} + exclude: ${{ fromJson(needs.workflow_vars.outputs.matrix_only_linux_x86_64) }} runs-on: ${{ (contains(matrix.target, 'host_riscv') && 'ubuntu-24.04') || (contains(matrix.target, 'windows') && 'windows-2019' || 'ubuntu-22.04' ) }} if : inputs.ock @@ -65,7 +70,8 @@ jobs: strategy: matrix: target: ${{ fromJson(inputs.target_list) }} - exclude: ${{ fromJson(needs.workflow_vars.outputs.matrix_only_linux_x86_64_aarch64) }} + #exclude: ${{ fromJson(needs.workflow_vars.outputs.matrix_only_linux_x86_64_aarch64) }} + exclude: ${{ fromJson(needs.workflow_vars.outputs.matrix_only_linux_x86_64) }} runs-on: ubuntu-22.04 steps: @@ -110,3 +116,31 @@ jobs: with: target: ${{ matrix.target }} + # Currently only builds and runs on x86_64 linux + build_run_opencl_cts: + if: inputs.test_opencl_cts + needs: [ workflow_vars, build_icd, create_ock_artefacts ] + strategy: + matrix: + target: ${{ fromJson(inputs.target_list) }} + exclude: ${{ fromJson(needs.workflow_vars.outputs.matrix_only_linux_x86_64) }} + + # Todo: expand for aarch64 + runs-on: ubuntu-22.04 + steps: + - name: clone ock platform + uses: actions/checkout@v4 + with: + sparse-checkout: | + platform + .github + # TODO: Consider separating out tornado build and run in the future + - name : build and upload opencl_cts + uses: ./.github/actions/do_build_opencl_cts + with: + target: ${{ matrix.target }} + - name : run opencl_cts + uses: ./.github/actions/run_opencl_cts + with: + target: ${{ matrix.target }} + diff --git a/.github/workflows/planned_testing_caller.yml b/.github/workflows/planned_testing_caller.yml index 2e5e5b7fe..c999906cc 100644 --- a/.github/workflows/planned_testing_caller.yml +++ b/.github/workflows/planned_testing_caller.yml @@ -19,7 +19,8 @@ jobs: uses: ./.github/workflows/planned_testing.yml with: target_list: '["host_x86_64_linux", "host_aarch64_linux", "host_riscv64_linux", "host_i686_linux", "host_refsi_linux", "host_x86_64_windows" ]' - test_tornado: true + test_tornado: false + test_opencl_cts: true ock: true # Have a pull request setting which can be used to test the flow as best as possible # in a reasonable time From 987fc0c71bca5a87e7ce7963a7eca900a3bc20e0 Mon Sep 17 00:00:00 2001 From: Alan Forbes Date: Tue, 26 Nov 2024 16:04:33 +0000 Subject: [PATCH 05/59] Enable build_icd --- .github/workflows/planned_testing.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/planned_testing.yml b/.github/workflows/planned_testing.yml index 308422a87..a86d04a88 100644 --- a/.github/workflows/planned_testing.yml +++ b/.github/workflows/planned_testing.yml @@ -65,7 +65,7 @@ jobs: build_icd: # Will also be required for opencl - if: inputs.test_tornado + if: ${{ inputs.test_tornado || inputs.test_opencl_cts }} needs: [workflow_vars] strategy: matrix: From 633f87f5539e225984433bf48798dd4695a3832e Mon Sep 17 00:00:00 2001 From: Alan Forbes Date: Wed, 27 Nov 2024 12:38:39 +0000 Subject: [PATCH 06/59] add listing to opencl_cts build --- .github/actions/do_build_opencl_cts/action.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.github/actions/do_build_opencl_cts/action.yml b/.github/actions/do_build_opencl_cts/action.yml index ec62310a7..fcd920e13 100644 --- a/.github/actions/do_build_opencl_cts/action.yml +++ b/.github/actions/do_build_opencl_cts/action.yml @@ -27,6 +27,8 @@ runs: - name: build opencl cts shell: bash run: | + ls -l + ls -l * mkdir $GITHUB_WORKSPACE/opencl_cts_dir echo Hello > $GITHUB_WORKSPACE/opencl_cts_dir/artefact From 3070e3e7534eadd9e29410b3cb4241bc0cba390c Mon Sep 17 00:00:00 2001 From: Alan Forbes Date: Wed, 27 Nov 2024 16:06:34 +0000 Subject: [PATCH 07/59] Disabled OCK artefacts; download headers artefact --- .github/actions/do_build_opencl_cts/action.yml | 17 +++++++++++++++-- .github/workflows/planned_testing.yml | 1 + 2 files changed, 16 insertions(+), 2 deletions(-) diff --git a/.github/actions/do_build_opencl_cts/action.yml b/.github/actions/do_build_opencl_cts/action.yml index fcd920e13..6f361df54 100644 --- a/.github/actions/do_build_opencl_cts/action.yml +++ b/.github/actions/do_build_opencl_cts/action.yml @@ -24,12 +24,25 @@ runs: name: icd_${{inputs.target}} path: install_icd + - name: download header artifact + uses: actions/download-artifact@v4 + with: + name: headers_install_${{inputs.target}} + path: install_headers + - name: build opencl cts shell: bash run: | - ls -l ls -l * - mkdir $GITHUB_WORKSPACE/opencl_cts_dir + git -c advice.detachedHead=false clone https://github.com/KhronosGroup/OpenCL-CTS --single-branch --depth 1 + cd OpenCL-CTS + git log -1 + # Ignore patches for now + #git apply $CI_PROJECT_DIR/patches/OpenCL-CTS-0001-Patch-sub-group-testing.patch + #git apply $CI_PROJECT_DIR/patches/OpenCL-CTS-0002-Permit-building-for-unknown-architectures.patch + # OpenCL CTS does not have an install target. Build directly in the install directory instead. + # dummy artefact + cd .. echo Hello > $GITHUB_WORKSPACE/opencl_cts_dir/artefact - name: upload opencl cts artifact diff --git a/.github/workflows/planned_testing.yml b/.github/workflows/planned_testing.yml index a86d04a88..1cc5bfb9e 100644 --- a/.github/workflows/planned_testing.yml +++ b/.github/workflows/planned_testing.yml @@ -45,6 +45,7 @@ jobs: create_ock_artefacts: + if: false needs: [workflow_vars] strategy: matrix: From 9444329b128d448f5c8759264215878adbf5a097 Mon Sep 17 00:00:00 2001 From: Alan Forbes Date: Wed, 27 Nov 2024 16:13:14 +0000 Subject: [PATCH 08/59] Formally disable ock --- .github/workflows/planned_testing.yml | 1 - .github/workflows/planned_testing_caller.yml | 3 ++- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/planned_testing.yml b/.github/workflows/planned_testing.yml index 1cc5bfb9e..a86d04a88 100644 --- a/.github/workflows/planned_testing.yml +++ b/.github/workflows/planned_testing.yml @@ -45,7 +45,6 @@ jobs: create_ock_artefacts: - if: false needs: [workflow_vars] strategy: matrix: diff --git a/.github/workflows/planned_testing_caller.yml b/.github/workflows/planned_testing_caller.yml index c999906cc..76455163c 100644 --- a/.github/workflows/planned_testing_caller.yml +++ b/.github/workflows/planned_testing_caller.yml @@ -21,7 +21,8 @@ jobs: target_list: '["host_x86_64_linux", "host_aarch64_linux", "host_riscv64_linux", "host_i686_linux", "host_refsi_linux", "host_x86_64_windows" ]' test_tornado: false test_opencl_cts: true - ock: true + ock: false + #ock: true # Have a pull request setting which can be used to test the flow as best as possible # in a reasonable time pull_request: ${{ github.event_name == 'pull_request' && true || false }} From 481b3a3718e57657065830a63ade75cb360c164a Mon Sep 17 00:00:00 2001 From: Alan Forbes Date: Wed, 27 Nov 2024 16:17:05 +0000 Subject: [PATCH 09/59] Remove need for OCK artefacts for opencl_cts --- .github/workflows/planned_testing.yml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.github/workflows/planned_testing.yml b/.github/workflows/planned_testing.yml index a86d04a88..f81027028 100644 --- a/.github/workflows/planned_testing.yml +++ b/.github/workflows/planned_testing.yml @@ -119,7 +119,8 @@ jobs: # Currently only builds and runs on x86_64 linux build_run_opencl_cts: if: inputs.test_opencl_cts - needs: [ workflow_vars, build_icd, create_ock_artefacts ] + needs: [ workflow_vars, build_icd ] + #needs: [ workflow_vars, build_icd, create_ock_artefacts ] strategy: matrix: target: ${{ fromJson(inputs.target_list) }} From a31af598fd6771fadb10468295b01a67d3844705 Mon Sep 17 00:00:00 2001 From: Alan Forbes Date: Wed, 27 Nov 2024 16:23:25 +0000 Subject: [PATCH 10/59] Move listing below downloads --- .github/actions/do_build_opencl_cts/action.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/actions/do_build_opencl_cts/action.yml b/.github/actions/do_build_opencl_cts/action.yml index 6f361df54..e3c345e55 100644 --- a/.github/actions/do_build_opencl_cts/action.yml +++ b/.github/actions/do_build_opencl_cts/action.yml @@ -27,13 +27,12 @@ runs: - name: download header artifact uses: actions/download-artifact@v4 with: - name: headers_install_${{inputs.target}} + name: header_${{inputs.target}} path: install_headers - name: build opencl cts shell: bash run: | - ls -l * git -c advice.detachedHead=false clone https://github.com/KhronosGroup/OpenCL-CTS --single-branch --depth 1 cd OpenCL-CTS git log -1 @@ -43,6 +42,7 @@ runs: # OpenCL CTS does not have an install target. Build directly in the install directory instead. # dummy artefact cd .. + ls -l * echo Hello > $GITHUB_WORKSPACE/opencl_cts_dir/artefact - name: upload opencl cts artifact From 609664a0b06c462720f8c698bf3df5c5191461cd Mon Sep 17 00:00:00 2001 From: Alan Forbes Date: Wed, 27 Nov 2024 16:54:03 +0000 Subject: [PATCH 11/59] Fix dummy artefact --- .github/actions/do_build_opencl_cts/action.yml | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/.github/actions/do_build_opencl_cts/action.yml b/.github/actions/do_build_opencl_cts/action.yml index e3c345e55..04d16ff29 100644 --- a/.github/actions/do_build_opencl_cts/action.yml +++ b/.github/actions/do_build_opencl_cts/action.yml @@ -33,16 +33,17 @@ runs: - name: build opencl cts shell: bash run: | + # TODO: use formal checkout git -c advice.detachedHead=false clone https://github.com/KhronosGroup/OpenCL-CTS --single-branch --depth 1 cd OpenCL-CTS git log -1 # Ignore patches for now #git apply $CI_PROJECT_DIR/patches/OpenCL-CTS-0001-Patch-sub-group-testing.patch #git apply $CI_PROJECT_DIR/patches/OpenCL-CTS-0002-Permit-building-for-unknown-architectures.patch - # OpenCL CTS does not have an install target. Build directly in the install directory instead. - # dummy artefact cd .. ls -l * + # dummy artefact + mkdir $GITHUB_WORKSPACE/opencl_cts_dir echo Hello > $GITHUB_WORKSPACE/opencl_cts_dir/artefact - name: upload opencl cts artifact From 2a67d89edf980ddfd3846c209ae5d84f1eae5293 Mon Sep 17 00:00:00 2001 From: Alan Forbes Date: Wed, 27 Nov 2024 17:00:18 +0000 Subject: [PATCH 12/59] Remove download ock from run for now --- .github/actions/run_opencl_cts/action.yml | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/.github/actions/run_opencl_cts/action.yml b/.github/actions/run_opencl_cts/action.yml index bb123923e..4999925c6 100644 --- a/.github/actions/run_opencl_cts/action.yml +++ b/.github/actions/run_opencl_cts/action.yml @@ -11,11 +11,12 @@ runs: # We don't want a new docker just a list of steps, so mark as composite using: "composite" steps: - - name: Download ock artefact - uses: actions/download-artifact@v4 - with: - name: ock_${{inputs.target}} - path: install_ock + # Will need to dowload ock when we run + #- name: Download ock artefact + # uses: actions/download-artifact@v4 + # with: + # name: ock_${{inputs.target}} + # path: install_ock - name: Run opencl cts example shell: bash From 5d212cf4de472dd6021a4ebf6fc02e6c4af54b15 Mon Sep 17 00:00:00 2001 From: Alan Forbes Date: Thu, 28 Nov 2024 10:00:28 +0000 Subject: [PATCH 13/59] Add cmake call --- .github/actions/do_build_opencl_cts/action.yml | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/.github/actions/do_build_opencl_cts/action.yml b/.github/actions/do_build_opencl_cts/action.yml index 04d16ff29..731bf4403 100644 --- a/.github/actions/do_build_opencl_cts/action.yml +++ b/.github/actions/do_build_opencl_cts/action.yml @@ -16,7 +16,7 @@ runs: target: ${{ inputs.target }} - name: Install Ninja - uses: llvm/actions/install-ninja@main + uses: llvm/actions/install-ninja@main # TODO: use commit hash - name: download icd artifact uses: actions/download-artifact@v4 @@ -42,6 +42,18 @@ runs: #git apply $CI_PROJECT_DIR/patches/OpenCL-CTS-0002-Permit-building-for-unknown-architectures.patch cd .. ls -l * + #cd $CI_PROJECT_DIR/OpenCL-CTS + #cmake -G Ninja $CMAKE_TOOLCHAIN $CI_PROJECT_DIR/build/OpenCL-CTS "-DCMAKE_BUILD_TYPE=$CTS_BUILD_TYPE" -DOPENCL_LIBRARIES=OpenCL "-DCL_INCLUDE_DIR=$CI_PROJECT_DIR/OpenCL-CTS/include" "-DCL_LIB_DIR=$CI_PROJECT_DIR/OpenCL-CTS/lib" + export CTS_BUILD_TYPE=release + # used by cmake ?? + export OPENCL_HEADERS_PATH=$GITHUB_WORKSPACE/install_headers + export ICD_LOADER_INSTALL_PATH=$GITHUB_WORKSPACE/install_icd + # simulate toolchain data for now + export TOOLCHAIN="-DCMAKE_C_COMPILER=gcc -DCMAKE_C_FLAGS=-m64 -DCMAKE_CXX_COMPILER=g++ -DCMAKE_CXX_FLAGS=-m64 -DPKG_CONFIG_EXECUTABLE=pkg-config" + cd $CI_PROJECT_DIR/install_headers + cmake -G Ninja $TOOLCHAIN $GITHUB_WORKSPACE/OpenCL-CTS "-DCMAKE_BUILD_TYPE=$CTS_BUILD_TYPE" -DOPENCL_LIBRARIES=OpenCL "-DCL_INCLUDE_DIR=$GITHUB_WORKSPACE/install_headers/include" "-DCL_LIB_DIR=$GITHUB_WORKSPACE/install_icd/lib" + ninja -v + # dummy artefact mkdir $GITHUB_WORKSPACE/opencl_cts_dir echo Hello > $GITHUB_WORKSPACE/opencl_cts_dir/artefact From 75c68583db5db6e33c57cd588eb895b20b755b42 Mon Sep 17 00:00:00 2001 From: Alan Forbes Date: Thu, 28 Nov 2024 10:03:40 +0000 Subject: [PATCH 14/59] Fix install_headers dir --- .github/actions/do_build_opencl_cts/action.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/actions/do_build_opencl_cts/action.yml b/.github/actions/do_build_opencl_cts/action.yml index 731bf4403..ec400d34d 100644 --- a/.github/actions/do_build_opencl_cts/action.yml +++ b/.github/actions/do_build_opencl_cts/action.yml @@ -50,7 +50,7 @@ runs: export ICD_LOADER_INSTALL_PATH=$GITHUB_WORKSPACE/install_icd # simulate toolchain data for now export TOOLCHAIN="-DCMAKE_C_COMPILER=gcc -DCMAKE_C_FLAGS=-m64 -DCMAKE_CXX_COMPILER=g++ -DCMAKE_CXX_FLAGS=-m64 -DPKG_CONFIG_EXECUTABLE=pkg-config" - cd $CI_PROJECT_DIR/install_headers + cd $GITHUB_WORKSPACE/install_headers cmake -G Ninja $TOOLCHAIN $GITHUB_WORKSPACE/OpenCL-CTS "-DCMAKE_BUILD_TYPE=$CTS_BUILD_TYPE" -DOPENCL_LIBRARIES=OpenCL "-DCL_INCLUDE_DIR=$GITHUB_WORKSPACE/install_headers/include" "-DCL_LIB_DIR=$GITHUB_WORKSPACE/install_icd/lib" ninja -v From caa22a500176abfe433cd1160c9fbedc2d907b55 Mon Sep 17 00:00:00 2001 From: Alan Forbes Date: Thu, 28 Nov 2024 12:53:42 +0000 Subject: [PATCH 15/59] release => Releasae --- .github/actions/do_build_opencl_cts/action.yml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.github/actions/do_build_opencl_cts/action.yml b/.github/actions/do_build_opencl_cts/action.yml index ec400d34d..4d89c23a9 100644 --- a/.github/actions/do_build_opencl_cts/action.yml +++ b/.github/actions/do_build_opencl_cts/action.yml @@ -44,13 +44,14 @@ runs: ls -l * #cd $CI_PROJECT_DIR/OpenCL-CTS #cmake -G Ninja $CMAKE_TOOLCHAIN $CI_PROJECT_DIR/build/OpenCL-CTS "-DCMAKE_BUILD_TYPE=$CTS_BUILD_TYPE" -DOPENCL_LIBRARIES=OpenCL "-DCL_INCLUDE_DIR=$CI_PROJECT_DIR/OpenCL-CTS/include" "-DCL_LIB_DIR=$CI_PROJECT_DIR/OpenCL-CTS/lib" - export CTS_BUILD_TYPE=release + export CTS_BUILD_TYPE=Release # used by cmake ?? export OPENCL_HEADERS_PATH=$GITHUB_WORKSPACE/install_headers export ICD_LOADER_INSTALL_PATH=$GITHUB_WORKSPACE/install_icd # simulate toolchain data for now export TOOLCHAIN="-DCMAKE_C_COMPILER=gcc -DCMAKE_C_FLAGS=-m64 -DCMAKE_CXX_COMPILER=g++ -DCMAKE_CXX_FLAGS=-m64 -DPKG_CONFIG_EXECUTABLE=pkg-config" cd $GITHUB_WORKSPACE/install_headers + echo cmake -G Ninja $TOOLCHAIN $GITHUB_WORKSPACE/OpenCL-CTS "-DCMAKE_BUILD_TYPE=$CTS_BUILD_TYPE" -DOPENCL_LIBRARIES=OpenCL "-DCL_INCLUDE_DIR=$GITHUB_WORKSPACE/install_headers/include" "-DCL_LIB_DIR=$GITHUB_WORKSPACE/install_icd/lib" cmake -G Ninja $TOOLCHAIN $GITHUB_WORKSPACE/OpenCL-CTS "-DCMAKE_BUILD_TYPE=$CTS_BUILD_TYPE" -DOPENCL_LIBRARIES=OpenCL "-DCL_INCLUDE_DIR=$GITHUB_WORKSPACE/install_headers/include" "-DCL_LIB_DIR=$GITHUB_WORKSPACE/install_icd/lib" ninja -v From f6758774d31826ff6d5ab5f785d0ab2a9ef24f32 Mon Sep 17 00:00:00 2001 From: Alan Forbes Date: Thu, 28 Nov 2024 14:46:21 +0000 Subject: [PATCH 16/59] add assemble_spirv.py script call --- .github/actions/do_build_opencl_cts/action.yml | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/.github/actions/do_build_opencl_cts/action.yml b/.github/actions/do_build_opencl_cts/action.yml index 4d89c23a9..8bd19c71f 100644 --- a/.github/actions/do_build_opencl_cts/action.yml +++ b/.github/actions/do_build_opencl_cts/action.yml @@ -53,7 +53,16 @@ runs: cd $GITHUB_WORKSPACE/install_headers echo cmake -G Ninja $TOOLCHAIN $GITHUB_WORKSPACE/OpenCL-CTS "-DCMAKE_BUILD_TYPE=$CTS_BUILD_TYPE" -DOPENCL_LIBRARIES=OpenCL "-DCL_INCLUDE_DIR=$GITHUB_WORKSPACE/install_headers/include" "-DCL_LIB_DIR=$GITHUB_WORKSPACE/install_icd/lib" cmake -G Ninja $TOOLCHAIN $GITHUB_WORKSPACE/OpenCL-CTS "-DCMAKE_BUILD_TYPE=$CTS_BUILD_TYPE" -DOPENCL_LIBRARIES=OpenCL "-DCL_INCLUDE_DIR=$GITHUB_WORKSPACE/install_headers/include" "-DCL_LIB_DIR=$GITHUB_WORKSPACE/install_icd/lib" + echo ninja -v ninja -v + ls -lR * + #python3 $CI_PROJECT_DIR/build/OpenCL-CTS/test_conformance/spirv_new/assemble_spirv.py -v + #--source-dir $CI_PROJECT_DIR/build/OpenCL-CTS/test_conformance/spirv_new/spirv_asm + #--output-dir $CI_PROJECT_DIR/OpenCL-CTS/test_conformance/spirv_bin + python3 $GITHUB_WORKSPACE/OpenCL-CTS/test_conformance/spirv_new/assemble_spirv.py -v + --source-dir $GITHUB_WORKSPACE/OpenCL-CTS/test_conformance/spirv_new/spirv_asm + --output-dir $CI_PROJECT_DIR/install_headers/test_conformance/spirv_bin + # dummy artefact mkdir $GITHUB_WORKSPACE/opencl_cts_dir From ab4151c6e7704c4d731f60bf52b54437be6a1db9 Mon Sep 17 00:00:00 2001 From: Alan Forbes Date: Thu, 28 Nov 2024 16:00:34 +0000 Subject: [PATCH 17/59] fix python call --- .github/actions/do_build_opencl_cts/action.yml | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/.github/actions/do_build_opencl_cts/action.yml b/.github/actions/do_build_opencl_cts/action.yml index 8bd19c71f..30500181b 100644 --- a/.github/actions/do_build_opencl_cts/action.yml +++ b/.github/actions/do_build_opencl_cts/action.yml @@ -59,10 +59,9 @@ runs: #python3 $CI_PROJECT_DIR/build/OpenCL-CTS/test_conformance/spirv_new/assemble_spirv.py -v #--source-dir $CI_PROJECT_DIR/build/OpenCL-CTS/test_conformance/spirv_new/spirv_asm #--output-dir $CI_PROJECT_DIR/OpenCL-CTS/test_conformance/spirv_bin - python3 $GITHUB_WORKSPACE/OpenCL-CTS/test_conformance/spirv_new/assemble_spirv.py -v - --source-dir $GITHUB_WORKSPACE/OpenCL-CTS/test_conformance/spirv_new/spirv_asm - --output-dir $CI_PROJECT_DIR/install_headers/test_conformance/spirv_bin - + echo python3 $GITHUB_WORKSPACE/OpenCL-CTS/test_conformance/spirv_new/assemble_spirv.py -v --source-dir $GITHUB_WORKSPACE/OpenCL-CTS/test_conformance/spirv_new/spirv_asm --output-dir $CI_PROJECT_DIR/install_headers/test_conformance/spirv_bin + python3 $GITHUB_WORKSPACE/OpenCL-CTS/test_conformance/spirv_new/assemble_spirv.py -v --source-dir $GITHUB_WORKSPACE/OpenCL-CTS/test_conformance/spirv_new/spirv_asm --output-dir $CI_PROJECT_DIR/install_headers/test_conformance/spirv_bin + ls -lR * # dummy artefact mkdir $GITHUB_WORKSPACE/opencl_cts_dir From 35a6f9ff692c6a1762eff86f8ebd06203e8c1d21 Mon Sep 17 00:00:00 2001 From: Alan Forbes Date: Thu, 28 Nov 2024 16:07:41 +0000 Subject: [PATCH 18/59] Fix python output dir. --- .github/actions/do_build_opencl_cts/action.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/actions/do_build_opencl_cts/action.yml b/.github/actions/do_build_opencl_cts/action.yml index 30500181b..6b28c70df 100644 --- a/.github/actions/do_build_opencl_cts/action.yml +++ b/.github/actions/do_build_opencl_cts/action.yml @@ -59,8 +59,8 @@ runs: #python3 $CI_PROJECT_DIR/build/OpenCL-CTS/test_conformance/spirv_new/assemble_spirv.py -v #--source-dir $CI_PROJECT_DIR/build/OpenCL-CTS/test_conformance/spirv_new/spirv_asm #--output-dir $CI_PROJECT_DIR/OpenCL-CTS/test_conformance/spirv_bin - echo python3 $GITHUB_WORKSPACE/OpenCL-CTS/test_conformance/spirv_new/assemble_spirv.py -v --source-dir $GITHUB_WORKSPACE/OpenCL-CTS/test_conformance/spirv_new/spirv_asm --output-dir $CI_PROJECT_DIR/install_headers/test_conformance/spirv_bin - python3 $GITHUB_WORKSPACE/OpenCL-CTS/test_conformance/spirv_new/assemble_spirv.py -v --source-dir $GITHUB_WORKSPACE/OpenCL-CTS/test_conformance/spirv_new/spirv_asm --output-dir $CI_PROJECT_DIR/install_headers/test_conformance/spirv_bin + echo python3 $GITHUB_WORKSPACE/OpenCL-CTS/test_conformance/spirv_new/assemble_spirv.py -v --source-dir $GITHUB_WORKSPACE/OpenCL-CTS/test_conformance/spirv_new/spirv_asm --output-dir $GITHUB_WORKSPACE/install_headers/test_conformance/spirv_bin + python3 $GITHUB_WORKSPACE/OpenCL-CTS/test_conformance/spirv_new/assemble_spirv.py -v --source-dir $GITHUB_WORKSPACE/OpenCL-CTS/test_conformance/spirv_new/spirv_asm --output-dir $GITHUB_WORKSPACE/install_headers/test_conformance/spirv_bin ls -lR * # dummy artefact From 2367694b442c8f7eace4358a2d1a73d30a9dc1ec Mon Sep 17 00:00:00 2001 From: Alan Forbes Date: Thu, 28 Nov 2024 16:35:06 +0000 Subject: [PATCH 19/59] Enable ock and tidy following rebase --- .github/actions/calc_vars/action.yml | 3 ++- .github/actions/do_build_ock_artefact/action.yml | 1 - .github/actions/setup_build/action.yml | 3 --- .github/workflows/planned_testing.yml | 3 ++- .github/workflows/planned_testing_caller.yml | 1 - 5 files changed, 4 insertions(+), 7 deletions(-) diff --git a/.github/actions/calc_vars/action.yml b/.github/actions/calc_vars/action.yml index cfa7f3520..694651c32 100644 --- a/.github/actions/calc_vars/action.yml +++ b/.github/actions/calc_vars/action.yml @@ -43,4 +43,5 @@ runs: echo "arch=$ARCH" >> $GITHUB_OUTPUT echo "toolchain=$TOOLCHAIN" >> $GITHUB_OUTPUT echo "cmake_toolchain=$CMAKE_TOOLCHAIN" >> $GITHUB_OUTPUT - cat $GITHUB_OUTPUT \ No newline at end of file + cat $GITHUB_OUTPUT + diff --git a/.github/actions/do_build_ock_artefact/action.yml b/.github/actions/do_build_ock_artefact/action.yml index 2819c0026..ca176df9d 100644 --- a/.github/actions/do_build_ock_artefact/action.yml +++ b/.github/actions/do_build_ock_artefact/action.yml @@ -12,7 +12,6 @@ inputs: # TODO: This has not been tested yet on windows so would likely need some updating. runs: - using: "composite" steps: - name: calc vars diff --git a/.github/actions/setup_build/action.yml b/.github/actions/setup_build/action.yml index a0445972a..aa78e4f7b 100644 --- a/.github/actions/setup_build/action.yml +++ b/.github/actions/setup_build/action.yml @@ -103,7 +103,6 @@ runs: if [ "${{ inputs.cross_arch }}" != "none" ]; then KEY_ARCH="${{ inputs.cross_arch }}" fi - echo "key_arch=$KEY_ARCH" >> "$GITHUB_OUTPUT" echo "key_native_arch=$KEY_NATIVE_ARCH" >> "$GITHUB_OUTPUT" cat $GITHUB_OUTPUT @@ -116,7 +115,6 @@ runs: key: llvm-${{ inputs.os }}-${{ steps.set_llvm_key.outputs.key_version }}-${{ steps.set_llvm_key.outputs.key_native_arch }}-v${{ inputs.llvm_version }}-${{ inputs.llvm_build_type }} fail-on-cache-miss: true - shell: bash - if: inputs.cross_arch != 'none' run: mv llvm_install llvm_install_native @@ -135,4 +133,3 @@ runs: key: sccache-build variant: sccache save: ${{ inputs.save }} - diff --git a/.github/workflows/planned_testing.yml b/.github/workflows/planned_testing.yml index 029d606b3..c3cd03218 100644 --- a/.github/workflows/planned_testing.yml +++ b/.github/workflows/planned_testing.yml @@ -148,4 +148,5 @@ jobs: - name : run opencl_cts uses: ./.github/actions/run_opencl_cts with: - target: ${{ matrix.target }} \ No newline at end of file + target: ${{ matrix.target }} + diff --git a/.github/workflows/planned_testing_caller.yml b/.github/workflows/planned_testing_caller.yml index a76609b1a..267b5c5fd 100644 --- a/.github/workflows/planned_testing_caller.yml +++ b/.github/workflows/planned_testing_caller.yml @@ -21,7 +21,6 @@ jobs: target_list: '["host_x86_64_linux", "host_aarch64_linux", "host_riscv64_linux", "host_i686_linux", "host_refsi_linux", "host_x86_64_windows" ]' test_tornado: true test_opencl_cts: true - ock: false # Have a pull request setting which can be used to test the flow as best as possible # in a reasonable time pull_request: ${{ github.event_name == 'pull_request' }} From db6f65c44f3d83a63434dc7c25f22048dcc72282 Mon Sep 17 00:00:00 2001 From: Alan Forbes Date: Thu, 28 Nov 2024 17:49:17 +0000 Subject: [PATCH 20/59] Remove whitespace and improve listing --- .github/actions/calc_vars/action.yml | 1 - .github/actions/do_build_opencl_cts/action.yml | 6 +++--- 2 files changed, 3 insertions(+), 4 deletions(-) diff --git a/.github/actions/calc_vars/action.yml b/.github/actions/calc_vars/action.yml index 694651c32..f3cb4a79b 100644 --- a/.github/actions/calc_vars/action.yml +++ b/.github/actions/calc_vars/action.yml @@ -44,4 +44,3 @@ runs: echo "toolchain=$TOOLCHAIN" >> $GITHUB_OUTPUT echo "cmake_toolchain=$CMAKE_TOOLCHAIN" >> $GITHUB_OUTPUT cat $GITHUB_OUTPUT - diff --git a/.github/actions/do_build_opencl_cts/action.yml b/.github/actions/do_build_opencl_cts/action.yml index 6b28c70df..34d6348f1 100644 --- a/.github/actions/do_build_opencl_cts/action.yml +++ b/.github/actions/do_build_opencl_cts/action.yml @@ -41,7 +41,7 @@ runs: #git apply $CI_PROJECT_DIR/patches/OpenCL-CTS-0001-Patch-sub-group-testing.patch #git apply $CI_PROJECT_DIR/patches/OpenCL-CTS-0002-Permit-building-for-unknown-architectures.patch cd .. - ls -l * + ls -lR $CI_PROJECT_DIR/* #cd $CI_PROJECT_DIR/OpenCL-CTS #cmake -G Ninja $CMAKE_TOOLCHAIN $CI_PROJECT_DIR/build/OpenCL-CTS "-DCMAKE_BUILD_TYPE=$CTS_BUILD_TYPE" -DOPENCL_LIBRARIES=OpenCL "-DCL_INCLUDE_DIR=$CI_PROJECT_DIR/OpenCL-CTS/include" "-DCL_LIB_DIR=$CI_PROJECT_DIR/OpenCL-CTS/lib" export CTS_BUILD_TYPE=Release @@ -55,13 +55,13 @@ runs: cmake -G Ninja $TOOLCHAIN $GITHUB_WORKSPACE/OpenCL-CTS "-DCMAKE_BUILD_TYPE=$CTS_BUILD_TYPE" -DOPENCL_LIBRARIES=OpenCL "-DCL_INCLUDE_DIR=$GITHUB_WORKSPACE/install_headers/include" "-DCL_LIB_DIR=$GITHUB_WORKSPACE/install_icd/lib" echo ninja -v ninja -v - ls -lR * + ls -lR $CI_PROJECT_DIR/* #python3 $CI_PROJECT_DIR/build/OpenCL-CTS/test_conformance/spirv_new/assemble_spirv.py -v #--source-dir $CI_PROJECT_DIR/build/OpenCL-CTS/test_conformance/spirv_new/spirv_asm #--output-dir $CI_PROJECT_DIR/OpenCL-CTS/test_conformance/spirv_bin echo python3 $GITHUB_WORKSPACE/OpenCL-CTS/test_conformance/spirv_new/assemble_spirv.py -v --source-dir $GITHUB_WORKSPACE/OpenCL-CTS/test_conformance/spirv_new/spirv_asm --output-dir $GITHUB_WORKSPACE/install_headers/test_conformance/spirv_bin python3 $GITHUB_WORKSPACE/OpenCL-CTS/test_conformance/spirv_new/assemble_spirv.py -v --source-dir $GITHUB_WORKSPACE/OpenCL-CTS/test_conformance/spirv_new/spirv_asm --output-dir $GITHUB_WORKSPACE/install_headers/test_conformance/spirv_bin - ls -lR * + ls -lR $CI_PROJECT_DIR/* # dummy artefact mkdir $GITHUB_WORKSPACE/opencl_cts_dir From a0d96007637226d89b6aef5b7d71ce4a97edb456 Mon Sep 17 00:00:00 2001 From: Alan Forbes Date: Thu, 28 Nov 2024 17:52:50 +0000 Subject: [PATCH 21/59] Fix listing vars --- .github/actions/do_build_opencl_cts/action.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/actions/do_build_opencl_cts/action.yml b/.github/actions/do_build_opencl_cts/action.yml index 34d6348f1..e13e86f4b 100644 --- a/.github/actions/do_build_opencl_cts/action.yml +++ b/.github/actions/do_build_opencl_cts/action.yml @@ -41,7 +41,7 @@ runs: #git apply $CI_PROJECT_DIR/patches/OpenCL-CTS-0001-Patch-sub-group-testing.patch #git apply $CI_PROJECT_DIR/patches/OpenCL-CTS-0002-Permit-building-for-unknown-architectures.patch cd .. - ls -lR $CI_PROJECT_DIR/* + ls -lR $GITHUB_WORKSPACE/* #cd $CI_PROJECT_DIR/OpenCL-CTS #cmake -G Ninja $CMAKE_TOOLCHAIN $CI_PROJECT_DIR/build/OpenCL-CTS "-DCMAKE_BUILD_TYPE=$CTS_BUILD_TYPE" -DOPENCL_LIBRARIES=OpenCL "-DCL_INCLUDE_DIR=$CI_PROJECT_DIR/OpenCL-CTS/include" "-DCL_LIB_DIR=$CI_PROJECT_DIR/OpenCL-CTS/lib" export CTS_BUILD_TYPE=Release @@ -55,13 +55,13 @@ runs: cmake -G Ninja $TOOLCHAIN $GITHUB_WORKSPACE/OpenCL-CTS "-DCMAKE_BUILD_TYPE=$CTS_BUILD_TYPE" -DOPENCL_LIBRARIES=OpenCL "-DCL_INCLUDE_DIR=$GITHUB_WORKSPACE/install_headers/include" "-DCL_LIB_DIR=$GITHUB_WORKSPACE/install_icd/lib" echo ninja -v ninja -v - ls -lR $CI_PROJECT_DIR/* + ls -lR $GITHUB_WORKSPACE/* #python3 $CI_PROJECT_DIR/build/OpenCL-CTS/test_conformance/spirv_new/assemble_spirv.py -v #--source-dir $CI_PROJECT_DIR/build/OpenCL-CTS/test_conformance/spirv_new/spirv_asm #--output-dir $CI_PROJECT_DIR/OpenCL-CTS/test_conformance/spirv_bin echo python3 $GITHUB_WORKSPACE/OpenCL-CTS/test_conformance/spirv_new/assemble_spirv.py -v --source-dir $GITHUB_WORKSPACE/OpenCL-CTS/test_conformance/spirv_new/spirv_asm --output-dir $GITHUB_WORKSPACE/install_headers/test_conformance/spirv_bin python3 $GITHUB_WORKSPACE/OpenCL-CTS/test_conformance/spirv_new/assemble_spirv.py -v --source-dir $GITHUB_WORKSPACE/OpenCL-CTS/test_conformance/spirv_new/spirv_asm --output-dir $GITHUB_WORKSPACE/install_headers/test_conformance/spirv_bin - ls -lR $CI_PROJECT_DIR/* + ls -lR $GITHUB_WORKSPACE/* # dummy artefact mkdir $GITHUB_WORKSPACE/opencl_cts_dir From 1676152b434f2dad350cc174136cbb566dc759c7 Mon Sep 17 00:00:00 2001 From: Alan Forbes Date: Fri, 29 Nov 2024 09:46:20 +0000 Subject: [PATCH 22/59] Add spirv-tools (for spirv-as) --- .github/actions/do_build_opencl_cts/action.yml | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/.github/actions/do_build_opencl_cts/action.yml b/.github/actions/do_build_opencl_cts/action.yml index e13e86f4b..5a1cbe84b 100644 --- a/.github/actions/do_build_opencl_cts/action.yml +++ b/.github/actions/do_build_opencl_cts/action.yml @@ -59,6 +59,10 @@ runs: #python3 $CI_PROJECT_DIR/build/OpenCL-CTS/test_conformance/spirv_new/assemble_spirv.py -v #--source-dir $CI_PROJECT_DIR/build/OpenCL-CTS/test_conformance/spirv_new/spirv_asm #--output-dir $CI_PROJECT_DIR/OpenCL-CTS/test_conformance/spirv_bin + which spirv-as || echo NO SPIRV-AS + sudo apt-get update + sudo apt-get install -y spirv-tools + which spirv-as || echo NO SPIRV-AS echo python3 $GITHUB_WORKSPACE/OpenCL-CTS/test_conformance/spirv_new/assemble_spirv.py -v --source-dir $GITHUB_WORKSPACE/OpenCL-CTS/test_conformance/spirv_new/spirv_asm --output-dir $GITHUB_WORKSPACE/install_headers/test_conformance/spirv_bin python3 $GITHUB_WORKSPACE/OpenCL-CTS/test_conformance/spirv_new/assemble_spirv.py -v --source-dir $GITHUB_WORKSPACE/OpenCL-CTS/test_conformance/spirv_new/spirv_asm --output-dir $GITHUB_WORKSPACE/install_headers/test_conformance/spirv_bin ls -lR $GITHUB_WORKSPACE/* From 69736fc24cfbf69872c1aa2c87d473e2aac83532 Mon Sep 17 00:00:00 2001 From: Alan Forbes Date: Fri, 29 Nov 2024 10:16:51 +0000 Subject: [PATCH 23/59] Add proper artefacts --- .github/actions/do_build_opencl_cts/action.yml | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) diff --git a/.github/actions/do_build_opencl_cts/action.yml b/.github/actions/do_build_opencl_cts/action.yml index 5a1cbe84b..9988c45d5 100644 --- a/.github/actions/do_build_opencl_cts/action.yml +++ b/.github/actions/do_build_opencl_cts/action.yml @@ -67,14 +67,10 @@ runs: python3 $GITHUB_WORKSPACE/OpenCL-CTS/test_conformance/spirv_new/assemble_spirv.py -v --source-dir $GITHUB_WORKSPACE/OpenCL-CTS/test_conformance/spirv_new/spirv_asm --output-dir $GITHUB_WORKSPACE/install_headers/test_conformance/spirv_bin ls -lR $GITHUB_WORKSPACE/* - # dummy artefact - mkdir $GITHUB_WORKSPACE/opencl_cts_dir - echo Hello > $GITHUB_WORKSPACE/opencl_cts_dir/artefact - - - name: upload opencl cts artifact + - name: upload opencl cts artifacts uses: actions/upload-artifact@v4 with: name: opencl_cts_${{inputs.target}} - path: opencl_cts_dir + path: $GITHUB_WORKSPACE/OpenCL-CTS/test_conformance retention-days: 1 From e61c098a876b334dd851458a7c785fd64fc0ccf4 Mon Sep 17 00:00:00 2001 From: Alan Forbes Date: Fri, 29 Nov 2024 10:26:43 +0000 Subject: [PATCH 24/59] add artefact exclusions --- .github/actions/do_build_opencl_cts/action.yml | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/.github/actions/do_build_opencl_cts/action.yml b/.github/actions/do_build_opencl_cts/action.yml index 9988c45d5..375e2c4e3 100644 --- a/.github/actions/do_build_opencl_cts/action.yml +++ b/.github/actions/do_build_opencl_cts/action.yml @@ -71,6 +71,14 @@ runs: uses: actions/upload-artifact@v4 with: name: opencl_cts_${{inputs.target}} - path: $GITHUB_WORKSPACE/OpenCL-CTS/test_conformance + path: OpenCL-CTS/test_conformance + !OpenCL-CTS/test_conformance/**/.* + !OpenCL-CTS/test_conformance/**/CMakeCache.txt + !OpenCL-CTS/test_conformance/**/CMakeFiles + !OpenCL-CTS/test_conformance/**/CMakeFiles/** + !OpenCL-CTS/test_conformance/**/*.cmake + !OpenCL-CTS/test_conformance/**/*.ninja + !OpenCL-CTS/test_conformance/test_common + !OpenCL-CTS/test_conformance/test_common/** retention-days: 1 From 8e90224e2625d34b5ba1de917de5d85a72ed55db Mon Sep 17 00:00:00 2001 From: Alan Forbes Date: Fri, 29 Nov 2024 10:37:51 +0000 Subject: [PATCH 25/59] update artefact exclusions --- .../actions/do_build_opencl_cts/action.yml | 30 ++++++++++--------- 1 file changed, 16 insertions(+), 14 deletions(-) diff --git a/.github/actions/do_build_opencl_cts/action.yml b/.github/actions/do_build_opencl_cts/action.yml index 375e2c4e3..255ef51ca 100644 --- a/.github/actions/do_build_opencl_cts/action.yml +++ b/.github/actions/do_build_opencl_cts/action.yml @@ -37,7 +37,7 @@ runs: git -c advice.detachedHead=false clone https://github.com/KhronosGroup/OpenCL-CTS --single-branch --depth 1 cd OpenCL-CTS git log -1 - # Ignore patches for now + # TODO: Ignore patches for now #git apply $CI_PROJECT_DIR/patches/OpenCL-CTS-0001-Patch-sub-group-testing.patch #git apply $CI_PROJECT_DIR/patches/OpenCL-CTS-0002-Permit-building-for-unknown-architectures.patch cd .. @@ -45,10 +45,10 @@ runs: #cd $CI_PROJECT_DIR/OpenCL-CTS #cmake -G Ninja $CMAKE_TOOLCHAIN $CI_PROJECT_DIR/build/OpenCL-CTS "-DCMAKE_BUILD_TYPE=$CTS_BUILD_TYPE" -DOPENCL_LIBRARIES=OpenCL "-DCL_INCLUDE_DIR=$CI_PROJECT_DIR/OpenCL-CTS/include" "-DCL_LIB_DIR=$CI_PROJECT_DIR/OpenCL-CTS/lib" export CTS_BUILD_TYPE=Release - # used by cmake ?? + # TODO: used by cmake ?? export OPENCL_HEADERS_PATH=$GITHUB_WORKSPACE/install_headers export ICD_LOADER_INSTALL_PATH=$GITHUB_WORKSPACE/install_icd - # simulate toolchain data for now + # TODO: simulate toolchain data for now export TOOLCHAIN="-DCMAKE_C_COMPILER=gcc -DCMAKE_C_FLAGS=-m64 -DCMAKE_CXX_COMPILER=g++ -DCMAKE_CXX_FLAGS=-m64 -DPKG_CONFIG_EXECUTABLE=pkg-config" cd $GITHUB_WORKSPACE/install_headers echo cmake -G Ninja $TOOLCHAIN $GITHUB_WORKSPACE/OpenCL-CTS "-DCMAKE_BUILD_TYPE=$CTS_BUILD_TYPE" -DOPENCL_LIBRARIES=OpenCL "-DCL_INCLUDE_DIR=$GITHUB_WORKSPACE/install_headers/include" "-DCL_LIB_DIR=$GITHUB_WORKSPACE/install_icd/lib" @@ -59,26 +59,28 @@ runs: #python3 $CI_PROJECT_DIR/build/OpenCL-CTS/test_conformance/spirv_new/assemble_spirv.py -v #--source-dir $CI_PROJECT_DIR/build/OpenCL-CTS/test_conformance/spirv_new/spirv_asm #--output-dir $CI_PROJECT_DIR/OpenCL-CTS/test_conformance/spirv_bin - which spirv-as || echo NO SPIRV-AS + # TODO: move install ? sudo apt-get update sudo apt-get install -y spirv-tools - which spirv-as || echo NO SPIRV-AS echo python3 $GITHUB_WORKSPACE/OpenCL-CTS/test_conformance/spirv_new/assemble_spirv.py -v --source-dir $GITHUB_WORKSPACE/OpenCL-CTS/test_conformance/spirv_new/spirv_asm --output-dir $GITHUB_WORKSPACE/install_headers/test_conformance/spirv_bin python3 $GITHUB_WORKSPACE/OpenCL-CTS/test_conformance/spirv_new/assemble_spirv.py -v --source-dir $GITHUB_WORKSPACE/OpenCL-CTS/test_conformance/spirv_new/spirv_asm --output-dir $GITHUB_WORKSPACE/install_headers/test_conformance/spirv_bin ls -lR $GITHUB_WORKSPACE/* + cd $GITHUB_WORKSPACE + ls -lR OpenCL-CTS/test_conformance - name: upload opencl cts artifacts uses: actions/upload-artifact@v4 with: name: opencl_cts_${{inputs.target}} - path: OpenCL-CTS/test_conformance - !OpenCL-CTS/test_conformance/**/.* - !OpenCL-CTS/test_conformance/**/CMakeCache.txt - !OpenCL-CTS/test_conformance/**/CMakeFiles - !OpenCL-CTS/test_conformance/**/CMakeFiles/** - !OpenCL-CTS/test_conformance/**/*.cmake - !OpenCL-CTS/test_conformance/**/*.ninja - !OpenCL-CTS/test_conformance/test_common - !OpenCL-CTS/test_conformance/test_common/** + path: | + OpenCL-CTS/test_conformance + !OpenCL-CTS/test_conformance/**/.* + !OpenCL-CTS/test_conformance/**/CMakeCache.txt + !OpenCL-CTS/test_conformance/**/CMakeFiles + !OpenCL-CTS/test_conformance/**/CMakeFiles/** + !OpenCL-CTS/test_conformance/**/*.cmake + !OpenCL-CTS/test_conformance/**/*.ninja + !OpenCL-CTS/test_conformance/test_common + !OpenCL-CTS/test_conformance/test_common/** retention-days: 1 From b101721d1e115899fc8b742478f43402bcb89c91 Mon Sep 17 00:00:00 2001 From: Alan Forbes Date: Fri, 29 Nov 2024 11:03:38 +0000 Subject: [PATCH 26/59] add further artefacts and tidy exclusion --- .github/actions/do_build_opencl_cts/action.yml | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/.github/actions/do_build_opencl_cts/action.yml b/.github/actions/do_build_opencl_cts/action.yml index 255ef51ca..491e8cc05 100644 --- a/.github/actions/do_build_opencl_cts/action.yml +++ b/.github/actions/do_build_opencl_cts/action.yml @@ -73,13 +73,17 @@ runs: with: name: opencl_cts_${{inputs.target}} path: | + OpenCL-CTS/install_icd/bin/** OpenCL-CTS/test_conformance !OpenCL-CTS/test_conformance/**/.* + !OpenCL-CTS/test_conformance/**/CMakeCommon.txt + !OpenCL-CTS/test_conformance/**/CMakeLists.txt !OpenCL-CTS/test_conformance/**/CMakeCache.txt !OpenCL-CTS/test_conformance/**/CMakeFiles !OpenCL-CTS/test_conformance/**/CMakeFiles/** !OpenCL-CTS/test_conformance/**/*.cmake !OpenCL-CTS/test_conformance/**/*.ninja + !OpenCL-CTS/test_conformance/submission_details_template.txt !OpenCL-CTS/test_conformance/test_common !OpenCL-CTS/test_conformance/test_common/** retention-days: 1 From 196a92d05370ff8ebf8a304d634882a93cd6df36 Mon Sep 17 00:00:00 2001 From: Alan Forbes Date: Fri, 29 Nov 2024 11:12:23 +0000 Subject: [PATCH 27/59] finalise artefacts --- .github/actions/do_build_opencl_cts/action.yml | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/.github/actions/do_build_opencl_cts/action.yml b/.github/actions/do_build_opencl_cts/action.yml index 491e8cc05..769aa3a63 100644 --- a/.github/actions/do_build_opencl_cts/action.yml +++ b/.github/actions/do_build_opencl_cts/action.yml @@ -67,13 +67,15 @@ runs: ls -lR $GITHUB_WORKSPACE/* cd $GITHUB_WORKSPACE ls -lR OpenCL-CTS/test_conformance + # Copy cllayerinfo for artefact upload + cp -R install_icd/bin OpenCL-CTS - name: upload opencl cts artifacts uses: actions/upload-artifact@v4 with: name: opencl_cts_${{inputs.target}} path: | - OpenCL-CTS/install_icd/bin/** + OpenCL-CTS/bin OpenCL-CTS/test_conformance !OpenCL-CTS/test_conformance/**/.* !OpenCL-CTS/test_conformance/**/CMakeCommon.txt From 15d9975bf840130b1315d34fa587dd7aa4520ed6 Mon Sep 17 00:00:00 2001 From: Alan Forbes Date: Fri, 29 Nov 2024 11:28:50 +0000 Subject: [PATCH 28/59] tidy logging --- .../actions/do_build_opencl_cts/action.yml | 20 ++++--------------- 1 file changed, 4 insertions(+), 16 deletions(-) diff --git a/.github/actions/do_build_opencl_cts/action.yml b/.github/actions/do_build_opencl_cts/action.yml index 769aa3a63..a6ea0c040 100644 --- a/.github/actions/do_build_opencl_cts/action.yml +++ b/.github/actions/do_build_opencl_cts/action.yml @@ -41,9 +41,6 @@ runs: #git apply $CI_PROJECT_DIR/patches/OpenCL-CTS-0001-Patch-sub-group-testing.patch #git apply $CI_PROJECT_DIR/patches/OpenCL-CTS-0002-Permit-building-for-unknown-architectures.patch cd .. - ls -lR $GITHUB_WORKSPACE/* - #cd $CI_PROJECT_DIR/OpenCL-CTS - #cmake -G Ninja $CMAKE_TOOLCHAIN $CI_PROJECT_DIR/build/OpenCL-CTS "-DCMAKE_BUILD_TYPE=$CTS_BUILD_TYPE" -DOPENCL_LIBRARIES=OpenCL "-DCL_INCLUDE_DIR=$CI_PROJECT_DIR/OpenCL-CTS/include" "-DCL_LIB_DIR=$CI_PROJECT_DIR/OpenCL-CTS/lib" export CTS_BUILD_TYPE=Release # TODO: used by cmake ?? export OPENCL_HEADERS_PATH=$GITHUB_WORKSPACE/install_headers @@ -51,24 +48,15 @@ runs: # TODO: simulate toolchain data for now export TOOLCHAIN="-DCMAKE_C_COMPILER=gcc -DCMAKE_C_FLAGS=-m64 -DCMAKE_CXX_COMPILER=g++ -DCMAKE_CXX_FLAGS=-m64 -DPKG_CONFIG_EXECUTABLE=pkg-config" cd $GITHUB_WORKSPACE/install_headers - echo cmake -G Ninja $TOOLCHAIN $GITHUB_WORKSPACE/OpenCL-CTS "-DCMAKE_BUILD_TYPE=$CTS_BUILD_TYPE" -DOPENCL_LIBRARIES=OpenCL "-DCL_INCLUDE_DIR=$GITHUB_WORKSPACE/install_headers/include" "-DCL_LIB_DIR=$GITHUB_WORKSPACE/install_icd/lib" - cmake -G Ninja $TOOLCHAIN $GITHUB_WORKSPACE/OpenCL-CTS "-DCMAKE_BUILD_TYPE=$CTS_BUILD_TYPE" -DOPENCL_LIBRARIES=OpenCL "-DCL_INCLUDE_DIR=$GITHUB_WORKSPACE/install_headers/include" "-DCL_LIB_DIR=$GITHUB_WORKSPACE/install_icd/lib" - echo ninja -v - ninja -v - ls -lR $GITHUB_WORKSPACE/* - #python3 $CI_PROJECT_DIR/build/OpenCL-CTS/test_conformance/spirv_new/assemble_spirv.py -v - #--source-dir $CI_PROJECT_DIR/build/OpenCL-CTS/test_conformance/spirv_new/spirv_asm - #--output-dir $CI_PROJECT_DIR/OpenCL-CTS/test_conformance/spirv_bin + (set -x; cmake -G Ninja $TOOLCHAIN $GITHUB_WORKSPACE/OpenCL-CTS "-DCMAKE_BUILD_TYPE=$CTS_BUILD_TYPE" -DOPENCL_LIBRARIES=OpenCL "-DCL_INCLUDE_DIR=$GITHUB_WORKSPACE/install_headers/include" "-DCL_LIB_DIR=$GITHUB_WORKSPACE/install_icd/lib"; ninja -v) # TODO: move install ? sudo apt-get update sudo apt-get install -y spirv-tools - echo python3 $GITHUB_WORKSPACE/OpenCL-CTS/test_conformance/spirv_new/assemble_spirv.py -v --source-dir $GITHUB_WORKSPACE/OpenCL-CTS/test_conformance/spirv_new/spirv_asm --output-dir $GITHUB_WORKSPACE/install_headers/test_conformance/spirv_bin - python3 $GITHUB_WORKSPACE/OpenCL-CTS/test_conformance/spirv_new/assemble_spirv.py -v --source-dir $GITHUB_WORKSPACE/OpenCL-CTS/test_conformance/spirv_new/spirv_asm --output-dir $GITHUB_WORKSPACE/install_headers/test_conformance/spirv_bin - ls -lR $GITHUB_WORKSPACE/* + (set -x; python3 $GITHUB_WORKSPACE/OpenCL-CTS/test_conformance/spirv_new/assemble_spirv.py -v --source-dir $GITHUB_WORKSPACE/OpenCL-CTS/test_conformance/spirv_new/spirv_asm --output-dir $GITHUB_WORKSPACE/install_headers/test_conformance/spirv_bin) cd $GITHUB_WORKSPACE - ls -lR OpenCL-CTS/test_conformance - # Copy cllayerinfo for artefact upload + # Copy install_icd/bin for cllayerinfo artefact upload cp -R install_icd/bin OpenCL-CTS + ls -lR - name: upload opencl cts artifacts uses: actions/upload-artifact@v4 From 65f9ecb89a07ec11d0045e130ec17f482183556b Mon Sep 17 00:00:00 2001 From: Alan Forbes Date: Fri, 29 Nov 2024 12:28:10 +0000 Subject: [PATCH 29/59] restructure; resolve some TODOs --- .../actions/do_build_opencl_cts/action.yml | 21 ++++++++++--------- 1 file changed, 11 insertions(+), 10 deletions(-) diff --git a/.github/actions/do_build_opencl_cts/action.yml b/.github/actions/do_build_opencl_cts/action.yml index a6ea0c040..c1eef14a1 100644 --- a/.github/actions/do_build_opencl_cts/action.yml +++ b/.github/actions/do_build_opencl_cts/action.yml @@ -16,7 +16,7 @@ runs: target: ${{ inputs.target }} - name: Install Ninja - uses: llvm/actions/install-ninja@main # TODO: use commit hash + uses: llvm/actions/install-ninja@a1ea791b03c8e61f53a0e66f2f73db283aa0f01e # main branch - name: download icd artifact uses: actions/download-artifact@v4 @@ -33,26 +33,27 @@ runs: - name: build opencl cts shell: bash run: | + # TODO: move install ? + sudo apt-get update + sudo apt-get install -y spirv-tools # TODO: use formal checkout git -c advice.detachedHead=false clone https://github.com/KhronosGroup/OpenCL-CTS --single-branch --depth 1 - cd OpenCL-CTS - git log -1 + (cd OpenCL-CTS; git log -1) # TODO: Ignore patches for now #git apply $CI_PROJECT_DIR/patches/OpenCL-CTS-0001-Patch-sub-group-testing.patch #git apply $CI_PROJECT_DIR/patches/OpenCL-CTS-0002-Permit-building-for-unknown-architectures.patch - cd .. export CTS_BUILD_TYPE=Release # TODO: used by cmake ?? export OPENCL_HEADERS_PATH=$GITHUB_WORKSPACE/install_headers export ICD_LOADER_INSTALL_PATH=$GITHUB_WORKSPACE/install_icd # TODO: simulate toolchain data for now export TOOLCHAIN="-DCMAKE_C_COMPILER=gcc -DCMAKE_C_FLAGS=-m64 -DCMAKE_CXX_COMPILER=g++ -DCMAKE_CXX_FLAGS=-m64 -DPKG_CONFIG_EXECUTABLE=pkg-config" - cd $GITHUB_WORKSPACE/install_headers - (set -x; cmake -G Ninja $TOOLCHAIN $GITHUB_WORKSPACE/OpenCL-CTS "-DCMAKE_BUILD_TYPE=$CTS_BUILD_TYPE" -DOPENCL_LIBRARIES=OpenCL "-DCL_INCLUDE_DIR=$GITHUB_WORKSPACE/install_headers/include" "-DCL_LIB_DIR=$GITHUB_WORKSPACE/install_icd/lib"; ninja -v) - # TODO: move install ? - sudo apt-get update - sudo apt-get install -y spirv-tools - (set -x; python3 $GITHUB_WORKSPACE/OpenCL-CTS/test_conformance/spirv_new/assemble_spirv.py -v --source-dir $GITHUB_WORKSPACE/OpenCL-CTS/test_conformance/spirv_new/spirv_asm --output-dir $GITHUB_WORKSPACE/install_headers/test_conformance/spirv_bin) + cd install_headers + set -x + cmake -G Ninja $TOOLCHAIN $GITHUB_WORKSPACE/OpenCL-CTS "-DCMAKE_BUILD_TYPE=$CTS_BUILD_TYPE" -DOPENCL_LIBRARIES=OpenCL "-DCL_INCLUDE_DIR=$GITHUB_WORKSPACE/install_headers/include" "-DCL_LIB_DIR=$GITHUB_WORKSPACE/install_icd/lib" + ninja -v + python3 $GITHUB_WORKSPACE/OpenCL-CTS/test_conformance/spirv_new/assemble_spirv.py -v --source-dir $GITHUB_WORKSPACE/OpenCL-CTS/test_conformance/spirv_new/spirv_asm --output-dir $GITHUB_WORKSPACE/install_headers/test_conformance/spirv_bin + set +x cd $GITHUB_WORKSPACE # Copy install_icd/bin for cllayerinfo artefact upload cp -R install_icd/bin OpenCL-CTS From dc101fc78ab4d8ebf8a9726d24877527c998351d Mon Sep 17 00:00:00 2001 From: Alan Forbes Date: Fri, 29 Nov 2024 12:43:00 +0000 Subject: [PATCH 30/59] Remove env vars --- .github/actions/do_build_opencl_cts/action.yml | 5 ++--- .github/workflows/planned_testing.yml | 1 - 2 files changed, 2 insertions(+), 4 deletions(-) diff --git a/.github/actions/do_build_opencl_cts/action.yml b/.github/actions/do_build_opencl_cts/action.yml index c1eef14a1..60ef18c89 100644 --- a/.github/actions/do_build_opencl_cts/action.yml +++ b/.github/actions/do_build_opencl_cts/action.yml @@ -33,7 +33,6 @@ runs: - name: build opencl cts shell: bash run: | - # TODO: move install ? sudo apt-get update sudo apt-get install -y spirv-tools # TODO: use formal checkout @@ -44,8 +43,8 @@ runs: #git apply $CI_PROJECT_DIR/patches/OpenCL-CTS-0002-Permit-building-for-unknown-architectures.patch export CTS_BUILD_TYPE=Release # TODO: used by cmake ?? - export OPENCL_HEADERS_PATH=$GITHUB_WORKSPACE/install_headers - export ICD_LOADER_INSTALL_PATH=$GITHUB_WORKSPACE/install_icd + #export OPENCL_HEADERS_PATH=$GITHUB_WORKSPACE/install_headers + #export ICD_LOADER_INSTALL_PATH=$GITHUB_WORKSPACE/install_icd # TODO: simulate toolchain data for now export TOOLCHAIN="-DCMAKE_C_COMPILER=gcc -DCMAKE_C_FLAGS=-m64 -DCMAKE_CXX_COMPILER=g++ -DCMAKE_CXX_FLAGS=-m64 -DPKG_CONFIG_EXECUTABLE=pkg-config" cd install_headers diff --git a/.github/workflows/planned_testing.yml b/.github/workflows/planned_testing.yml index c3cd03218..ba29bc0f3 100644 --- a/.github/workflows/planned_testing.yml +++ b/.github/workflows/planned_testing.yml @@ -125,7 +125,6 @@ jobs: build_run_opencl_cts: if: inputs.test_opencl_cts needs: [ workflow_vars, build_icd ] - #needs: [ workflow_vars, build_icd, create_ock_artefacts ] strategy: matrix: target: ${{ fromJson(inputs.target_list) }} From 2089ce31478274f4ac08e7ccc5036c352af163b0 Mon Sep 17 00:00:00 2001 From: Alan Forbes Date: Fri, 29 Nov 2024 13:05:20 +0000 Subject: [PATCH 31/59] formal git checkout for test suite --- .github/actions/do_build_opencl_cts/action.yml | 17 +++++++++-------- 1 file changed, 9 insertions(+), 8 deletions(-) diff --git a/.github/actions/do_build_opencl_cts/action.yml b/.github/actions/do_build_opencl_cts/action.yml index 60ef18c89..7ee782cd2 100644 --- a/.github/actions/do_build_opencl_cts/action.yml +++ b/.github/actions/do_build_opencl_cts/action.yml @@ -30,33 +30,34 @@ runs: name: header_${{inputs.target}} path: install_headers + - name: checkout test suite + uses: actions/checkout@v4 + with: + repository: github.com/KhronosGroup/OpenCL-CTS + - name: build opencl cts shell: bash run: | sudo apt-get update sudo apt-get install -y spirv-tools # TODO: use formal checkout - git -c advice.detachedHead=false clone https://github.com/KhronosGroup/OpenCL-CTS --single-branch --depth 1 + #git -c advice.detachedHead=false clone https://github.com/KhronosGroup/OpenCL-CTS --single-branch --depth 1 (cd OpenCL-CTS; git log -1) # TODO: Ignore patches for now #git apply $CI_PROJECT_DIR/patches/OpenCL-CTS-0001-Patch-sub-group-testing.patch #git apply $CI_PROJECT_DIR/patches/OpenCL-CTS-0002-Permit-building-for-unknown-architectures.patch + cd install_headers export CTS_BUILD_TYPE=Release - # TODO: used by cmake ?? - #export OPENCL_HEADERS_PATH=$GITHUB_WORKSPACE/install_headers - #export ICD_LOADER_INSTALL_PATH=$GITHUB_WORKSPACE/install_icd # TODO: simulate toolchain data for now export TOOLCHAIN="-DCMAKE_C_COMPILER=gcc -DCMAKE_C_FLAGS=-m64 -DCMAKE_CXX_COMPILER=g++ -DCMAKE_CXX_FLAGS=-m64 -DPKG_CONFIG_EXECUTABLE=pkg-config" - cd install_headers set -x cmake -G Ninja $TOOLCHAIN $GITHUB_WORKSPACE/OpenCL-CTS "-DCMAKE_BUILD_TYPE=$CTS_BUILD_TYPE" -DOPENCL_LIBRARIES=OpenCL "-DCL_INCLUDE_DIR=$GITHUB_WORKSPACE/install_headers/include" "-DCL_LIB_DIR=$GITHUB_WORKSPACE/install_icd/lib" ninja -v python3 $GITHUB_WORKSPACE/OpenCL-CTS/test_conformance/spirv_new/assemble_spirv.py -v --source-dir $GITHUB_WORKSPACE/OpenCL-CTS/test_conformance/spirv_new/spirv_asm --output-dir $GITHUB_WORKSPACE/install_headers/test_conformance/spirv_bin set +x cd $GITHUB_WORKSPACE - # Copy install_icd/bin for cllayerinfo artefact upload - cp -R install_icd/bin OpenCL-CTS - ls -lR + cp -R install_icd/bin OpenCL-CTS # for cllayerinfo artefact upload + ls -lR # TODO: delete - name: upload opencl cts artifacts uses: actions/upload-artifact@v4 From 8d62c03b200e95d53028d70dda91ef741f877cdd Mon Sep 17 00:00:00 2001 From: Alan Forbes Date: Fri, 29 Nov 2024 13:08:10 +0000 Subject: [PATCH 32/59] fix repo name --- .github/actions/do_build_opencl_cts/action.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/actions/do_build_opencl_cts/action.yml b/.github/actions/do_build_opencl_cts/action.yml index 7ee782cd2..fce3c9a35 100644 --- a/.github/actions/do_build_opencl_cts/action.yml +++ b/.github/actions/do_build_opencl_cts/action.yml @@ -33,7 +33,7 @@ runs: - name: checkout test suite uses: actions/checkout@v4 with: - repository: github.com/KhronosGroup/OpenCL-CTS + repository: KhronosGroup/OpenCL-CTS - name: build opencl cts shell: bash From 923df2c8798071163ab007d0bfd7cce9895f0aa9 Mon Sep 17 00:00:00 2001 From: Alan Forbes Date: Fri, 29 Nov 2024 13:12:07 +0000 Subject: [PATCH 33/59] Set path for repo --- .github/actions/do_build_opencl_cts/action.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/actions/do_build_opencl_cts/action.yml b/.github/actions/do_build_opencl_cts/action.yml index fce3c9a35..571c59fe0 100644 --- a/.github/actions/do_build_opencl_cts/action.yml +++ b/.github/actions/do_build_opencl_cts/action.yml @@ -34,6 +34,7 @@ runs: uses: actions/checkout@v4 with: repository: KhronosGroup/OpenCL-CTS + path: OpenCL-CTS - name: build opencl cts shell: bash From dd88beec2a267aae7f7690358c38eb82b35f649c Mon Sep 17 00:00:00 2001 From: Alan Forbes Date: Fri, 29 Nov 2024 14:01:10 +0000 Subject: [PATCH 34/59] add patches ; remove toolchain --- .../actions/do_build_opencl_cts/action.yml | 12 +-- ...nCL-CTS-0001-Patch-sub-group-testing.patch | 34 +++++++ ...t-building-for-unknown-architectures.patch | 98 +++++++++++++++++++ 3 files changed, 136 insertions(+), 8 deletions(-) create mode 100644 .github/patches/OpenCL-CTS-0001-Patch-sub-group-testing.patch create mode 100644 .github/patches/OpenCL-CTS-0002-Permit-building-for-unknown-architectures.patch diff --git a/.github/actions/do_build_opencl_cts/action.yml b/.github/actions/do_build_opencl_cts/action.yml index 571c59fe0..fc29b6641 100644 --- a/.github/actions/do_build_opencl_cts/action.yml +++ b/.github/actions/do_build_opencl_cts/action.yml @@ -39,18 +39,14 @@ runs: - name: build opencl cts shell: bash run: | - sudo apt-get update - sudo apt-get install -y spirv-tools - # TODO: use formal checkout - #git -c advice.detachedHead=false clone https://github.com/KhronosGroup/OpenCL-CTS --single-branch --depth 1 + sudo apt-get update; sudo apt-get install -y spirv-tools (cd OpenCL-CTS; git log -1) - # TODO: Ignore patches for now - #git apply $CI_PROJECT_DIR/patches/OpenCL-CTS-0001-Patch-sub-group-testing.patch - #git apply $CI_PROJECT_DIR/patches/OpenCL-CTS-0002-Permit-building-for-unknown-architectures.patch + git apply $GITHUB_WORKSPACE/.github/patches/OpenCL-CTS-0001-Patch-sub-group-testing.patch + git apply $GITHUB_WORKSPACE/.github/patches/OpenCL-CTS-0002-Permit-building-for-unknown-architectures.patch cd install_headers export CTS_BUILD_TYPE=Release # TODO: simulate toolchain data for now - export TOOLCHAIN="-DCMAKE_C_COMPILER=gcc -DCMAKE_C_FLAGS=-m64 -DCMAKE_CXX_COMPILER=g++ -DCMAKE_CXX_FLAGS=-m64 -DPKG_CONFIG_EXECUTABLE=pkg-config" + #export TOOLCHAIN="-DCMAKE_C_COMPILER=gcc -DCMAKE_C_FLAGS=-m64 -DCMAKE_CXX_COMPILER=g++ -DCMAKE_CXX_FLAGS=-m64 -DPKG_CONFIG_EXECUTABLE=pkg-config" set -x cmake -G Ninja $TOOLCHAIN $GITHUB_WORKSPACE/OpenCL-CTS "-DCMAKE_BUILD_TYPE=$CTS_BUILD_TYPE" -DOPENCL_LIBRARIES=OpenCL "-DCL_INCLUDE_DIR=$GITHUB_WORKSPACE/install_headers/include" "-DCL_LIB_DIR=$GITHUB_WORKSPACE/install_icd/lib" ninja -v diff --git a/.github/patches/OpenCL-CTS-0001-Patch-sub-group-testing.patch b/.github/patches/OpenCL-CTS-0001-Patch-sub-group-testing.patch new file mode 100644 index 000000000..4c9ac9fdb --- /dev/null +++ b/.github/patches/OpenCL-CTS-0001-Patch-sub-group-testing.patch @@ -0,0 +1,34 @@ +From 3c250cfe63b7af59ce0141885596a426053fe669 Mon Sep 17 00:00:00 2001 +From: Fraser Cormack +Date: Mon, 30 Jan 2023 14:06:50 +0000 +Subject: [PATCH] Patch sub-group testing + +There's currently a bug in the CTS whereby our degenerate sub-groups +crash the test, which uses too small a fixed data structure to track all +work-items in a work-group larger than 128. + +While we wait for an official patch upstream, I've quickly patched it so +the data structure is as big as the largest local work-group size tested +by the tests. +--- + test_conformance/subgroups/subhelpers.h | 3 ++- + 1 file changed, 2 insertions(+), 1 deletion(-) + +diff --git a/test_conformance/subgroups/subhelpers.h b/test_conformance/subgroups/subhelpers.h +index 8600088e..fafe35fe 100644 +--- a/test_conformance/subgroups/subhelpers.h ++++ b/test_conformance/subgroups/subhelpers.h +@@ -29,7 +29,8 @@ + #include + + extern MTdata gMTdata; +-typedef std::bitset<128> bs128; ++// See https://github.com/KhronosGroup/OpenCL-CTS/pull/1621 ++typedef std::bitset<200> bs128; + extern cl_half_rounding_mode g_rounding_mode; + + bs128 cl_uint4_to_bs128(cl_uint4 v); +-- +2.34.1 + + diff --git a/.github/patches/OpenCL-CTS-0002-Permit-building-for-unknown-architectures.patch b/.github/patches/OpenCL-CTS-0002-Permit-building-for-unknown-architectures.patch new file mode 100644 index 000000000..df37f4d16 --- /dev/null +++ b/.github/patches/OpenCL-CTS-0002-Permit-building-for-unknown-architectures.patch @@ -0,0 +1,98 @@ +From 4c1fa69fb30d94e5edb54d93364a332af0301b67 Mon Sep 17 00:00:00 2001 +From: Harald van Dijk +Date: Wed, 15 May 2024 17:57:47 +0100 +Subject: [PATCH] Permit building for unknown architectures. + +--- + CMakeLists.txt | 3 ++- + test_common/harness/fpcontrol.h | 6 +++--- + test_common/harness/rounding_mode.cpp | 5 +++-- + test_common/harness/testHarness.cpp | 3 ++- + 4 files changed, 10 insertions(+), 7 deletions(-) + +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 5cfef6b3..0e4dd1f2 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -78,7 +78,8 @@ elseif(CMAKE_SYSTEM_PROCESSOR MATCHES "i686.*|i386.*|x86.*") + endif() + + if(NOT DEFINED CLConform_TARGET_ARCH) +- message (FATAL_ERROR "Target architecture not recognised. Exiting.") ++ message (WARNING "Target architecture not recognised.") ++ set(CLConform_TARGET_ARCH unknown) + endif() + + macro(add_cxx_flag_if_supported flag) +diff --git a/test_common/harness/fpcontrol.h b/test_common/harness/fpcontrol.h +index 12aba0a9..c6f94140 100644 +--- a/test_common/harness/fpcontrol.h ++++ b/test_common/harness/fpcontrol.h +@@ -70,7 +70,7 @@ inline void ForceFTZ(FPU_mode_type *mode) + #elif defined(__mips__) + fpa_bissr(FPA_CSR_FS); + #else +-#error ForceFTZ needs an implentation ++#warning ForceFTZ needs an implentation + #endif + } + +@@ -98,7 +98,7 @@ inline void DisableFTZ(FPU_mode_type *mode) + #elif defined(__mips__) + fpa_bicsr(FPA_CSR_FS); + #else +-#error DisableFTZ needs an implentation ++#warning DisableFTZ needs an implentation + #endif + } + +@@ -118,7 +118,7 @@ inline void RestoreFPState(FPU_mode_type *mode) + #elif defined(__mips__) + // Mips runs by default with DAZ=1 FTZ=1 + #else +-#error RestoreFPState needs an implementation ++#warning RestoreFPState needs an implementation + #endif + } + #else +diff --git a/test_common/harness/rounding_mode.cpp b/test_common/harness/rounding_mode.cpp +index 191c04d9..3100a225 100644 +--- a/test_common/harness/rounding_mode.cpp ++++ b/test_common/harness/rounding_mode.cpp +@@ -225,7 +225,8 @@ void *FlushToZero(void) + fpa_bissr(FPA_CSR_FS); + return NULL; + #else +-#error Unknown arch ++#warning Unknown arch ++ return NULL; + #endif + #else + #error Please configure FlushToZero and UnFlushToZero to behave properly on this operating system. +@@ -255,7 +256,7 @@ void UnFlushToZero(void *p) + #elif defined(__mips__) + fpa_bicsr(FPA_CSR_FS); + #else +-#error Unknown arch ++#warning Unknown arch + #endif + #else + #error Please configure FlushToZero and UnFlushToZero to behave properly on this operating system. +diff --git a/test_common/harness/testHarness.cpp b/test_common/harness/testHarness.cpp +index 0e3c49e9..4c565cec 100644 +--- a/test_common/harness/testHarness.cpp ++++ b/test_common/harness/testHarness.cpp +@@ -1316,7 +1316,8 @@ void PrintArch(void) + #elif defined(__mips__) + vlog("ARCH:\tmips\n"); + #else +-#error unknown arch ++#warning unknown arch ++ vlog("ARCH:\tunknown\n"); + #endif + + #if defined(__APPLE__) +-- +2.43.0 + + From 35e8ce4dfb16ee357e51119bf43f9c6a4747d99c Mon Sep 17 00:00:00 2001 From: Alan Forbes Date: Fri, 29 Nov 2024 14:05:08 +0000 Subject: [PATCH 35/59] move patch application --- .github/actions/do_build_opencl_cts/action.yml | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/.github/actions/do_build_opencl_cts/action.yml b/.github/actions/do_build_opencl_cts/action.yml index fc29b6641..74321ce4a 100644 --- a/.github/actions/do_build_opencl_cts/action.yml +++ b/.github/actions/do_build_opencl_cts/action.yml @@ -39,10 +39,12 @@ runs: - name: build opencl cts shell: bash run: | - sudo apt-get update; sudo apt-get install -y spirv-tools - (cd OpenCL-CTS; git log -1) + cd OpenCL-CTS + git log -1 git apply $GITHUB_WORKSPACE/.github/patches/OpenCL-CTS-0001-Patch-sub-group-testing.patch git apply $GITHUB_WORKSPACE/.github/patches/OpenCL-CTS-0002-Permit-building-for-unknown-architectures.patch + cd .. + sudo apt-get update; sudo apt-get install -y spirv-tools cd install_headers export CTS_BUILD_TYPE=Release # TODO: simulate toolchain data for now From f52401f1fd33ed80af17fbc90a8ff0be5e192357 Mon Sep 17 00:00:00 2001 From: Alan Forbes Date: Fri, 29 Nov 2024 14:23:07 +0000 Subject: [PATCH 36/59] Resolve TODO; use pushd/popd --- .github/actions/do_build_opencl_cts/action.yml | 17 +++++++---------- 1 file changed, 7 insertions(+), 10 deletions(-) diff --git a/.github/actions/do_build_opencl_cts/action.yml b/.github/actions/do_build_opencl_cts/action.yml index 74321ce4a..83a0e8d14 100644 --- a/.github/actions/do_build_opencl_cts/action.yml +++ b/.github/actions/do_build_opencl_cts/action.yml @@ -39,24 +39,21 @@ runs: - name: build opencl cts shell: bash run: | - cd OpenCL-CTS + sudo apt-get update + sudo apt-get install -y spirv-tools # need spirv-as + pushd OpenCL-CTS git log -1 git apply $GITHUB_WORKSPACE/.github/patches/OpenCL-CTS-0001-Patch-sub-group-testing.patch git apply $GITHUB_WORKSPACE/.github/patches/OpenCL-CTS-0002-Permit-building-for-unknown-architectures.patch - cd .. - sudo apt-get update; sudo apt-get install -y spirv-tools - cd install_headers - export CTS_BUILD_TYPE=Release - # TODO: simulate toolchain data for now - #export TOOLCHAIN="-DCMAKE_C_COMPILER=gcc -DCMAKE_C_FLAGS=-m64 -DCMAKE_CXX_COMPILER=g++ -DCMAKE_CXX_FLAGS=-m64 -DPKG_CONFIG_EXECUTABLE=pkg-config" + popd + pushd install_headers set -x - cmake -G Ninja $TOOLCHAIN $GITHUB_WORKSPACE/OpenCL-CTS "-DCMAKE_BUILD_TYPE=$CTS_BUILD_TYPE" -DOPENCL_LIBRARIES=OpenCL "-DCL_INCLUDE_DIR=$GITHUB_WORKSPACE/install_headers/include" "-DCL_LIB_DIR=$GITHUB_WORKSPACE/install_icd/lib" + cmake -G Ninja $GITHUB_WORKSPACE/OpenCL-CTS "-DCMAKE_BUILD_TYPE=Release" -DOPENCL_LIBRARIES=OpenCL "-DCL_INCLUDE_DIR=$GITHUB_WORKSPACE/install_headers/include" "-DCL_LIB_DIR=$GITHUB_WORKSPACE/install_icd/lib" ninja -v python3 $GITHUB_WORKSPACE/OpenCL-CTS/test_conformance/spirv_new/assemble_spirv.py -v --source-dir $GITHUB_WORKSPACE/OpenCL-CTS/test_conformance/spirv_new/spirv_asm --output-dir $GITHUB_WORKSPACE/install_headers/test_conformance/spirv_bin set +x - cd $GITHUB_WORKSPACE + popd cp -R install_icd/bin OpenCL-CTS # for cllayerinfo artefact upload - ls -lR # TODO: delete - name: upload opencl cts artifacts uses: actions/upload-artifact@v4 From 08c242eb3db59cb930b86b2bf3fec37a10d883f4 Mon Sep 17 00:00:00 2001 From: Alan Forbes Date: Fri, 29 Nov 2024 14:54:15 +0000 Subject: [PATCH 37/59] Move python call to run job --- .../actions/do_build_opencl_cts/action.yml | 2 +- .github/actions/run_opencl_cts/action.yml | 19 +++++-------------- .github/workflows/planned_testing.yml | 2 +- 3 files changed, 7 insertions(+), 16 deletions(-) diff --git a/.github/actions/do_build_opencl_cts/action.yml b/.github/actions/do_build_opencl_cts/action.yml index 83a0e8d14..fccca823a 100644 --- a/.github/actions/do_build_opencl_cts/action.yml +++ b/.github/actions/do_build_opencl_cts/action.yml @@ -50,7 +50,7 @@ runs: set -x cmake -G Ninja $GITHUB_WORKSPACE/OpenCL-CTS "-DCMAKE_BUILD_TYPE=Release" -DOPENCL_LIBRARIES=OpenCL "-DCL_INCLUDE_DIR=$GITHUB_WORKSPACE/install_headers/include" "-DCL_LIB_DIR=$GITHUB_WORKSPACE/install_icd/lib" ninja -v - python3 $GITHUB_WORKSPACE/OpenCL-CTS/test_conformance/spirv_new/assemble_spirv.py -v --source-dir $GITHUB_WORKSPACE/OpenCL-CTS/test_conformance/spirv_new/spirv_asm --output-dir $GITHUB_WORKSPACE/install_headers/test_conformance/spirv_bin + #python3 $GITHUB_WORKSPACE/OpenCL-CTS/test_conformance/spirv_new/assemble_spirv.py -v --source-dir $GITHUB_WORKSPACE/OpenCL-CTS/test_conformance/spirv_new/spirv_asm --output-dir $GITHUB_WORKSPACE/install_headers/test_conformance/spirv_bin set +x popd cp -R install_icd/bin OpenCL-CTS # for cllayerinfo artefact upload diff --git a/.github/actions/run_opencl_cts/action.yml b/.github/actions/run_opencl_cts/action.yml index 4999925c6..9f87c90b6 100644 --- a/.github/actions/run_opencl_cts/action.yml +++ b/.github/actions/run_opencl_cts/action.yml @@ -1,25 +1,16 @@ name: run opencl cts description: run opencl cts -# This action is not standalone and assumes it has been run after the build_opencl_cts action -# and that the icd is already installed at install_icd +# This action is not standalone and assumes it has been run after the build_opencl_cts action. + inputs: target: - description: 'target architecture' + description: 'target architecture' # TODO: for future matrix reqs. runs: - # We don't want a new docker just a list of steps, so mark as composite using: "composite" steps: - # Will need to dowload ock when we run - #- name: Download ock artefact - # uses: actions/download-artifact@v4 - # with: - # name: ock_${{inputs.target}} - # path: install_ock - - - name: Run opencl cts example + - name: Run opencl cts shell: bash run: | - echo Running opencl cts - + (set -x; python3 $GITHUB_WORKSPACE/OpenCL-CTS/test_conformance/spirv_new/assemble_spirv.py -v --source-dir $GITHUB_WORKSPACE/OpenCL-CTS/test_conformance/spirv_new/spirv_asm --output-dir $GITHUB_WORKSPACE/install_headers/test_conformance/spirv_bin ) diff --git a/.github/workflows/planned_testing.yml b/.github/workflows/planned_testing.yml index ba29bc0f3..2d627a1d3 100644 --- a/.github/workflows/planned_testing.yml +++ b/.github/workflows/planned_testing.yml @@ -139,7 +139,7 @@ jobs: sparse-checkout: | platform .github - # TODO: Consider separating out tornado build and run in the future + # TODO: Consider separating out opencl_cts build and run in the future - name : build and upload opencl_cts uses: ./.github/actions/do_build_opencl_cts with: From 70a76411965900be6b8a807e4847f46f81a9bee1 Mon Sep 17 00:00:00 2001 From: Alan Forbes Date: Fri, 29 Nov 2024 15:08:17 +0000 Subject: [PATCH 38/59] remove pushd/popd --- .github/actions/do_build_opencl_cts/action.yml | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/.github/actions/do_build_opencl_cts/action.yml b/.github/actions/do_build_opencl_cts/action.yml index fccca823a..b3a231e59 100644 --- a/.github/actions/do_build_opencl_cts/action.yml +++ b/.github/actions/do_build_opencl_cts/action.yml @@ -46,13 +46,12 @@ runs: git apply $GITHUB_WORKSPACE/.github/patches/OpenCL-CTS-0001-Patch-sub-group-testing.patch git apply $GITHUB_WORKSPACE/.github/patches/OpenCL-CTS-0002-Permit-building-for-unknown-architectures.patch popd - pushd install_headers + #pushd install_headers set -x cmake -G Ninja $GITHUB_WORKSPACE/OpenCL-CTS "-DCMAKE_BUILD_TYPE=Release" -DOPENCL_LIBRARIES=OpenCL "-DCL_INCLUDE_DIR=$GITHUB_WORKSPACE/install_headers/include" "-DCL_LIB_DIR=$GITHUB_WORKSPACE/install_icd/lib" ninja -v - #python3 $GITHUB_WORKSPACE/OpenCL-CTS/test_conformance/spirv_new/assemble_spirv.py -v --source-dir $GITHUB_WORKSPACE/OpenCL-CTS/test_conformance/spirv_new/spirv_asm --output-dir $GITHUB_WORKSPACE/install_headers/test_conformance/spirv_bin set +x - popd + #popd cp -R install_icd/bin OpenCL-CTS # for cllayerinfo artefact upload - name: upload opencl cts artifacts From c9b72d69865984dfddabba916172ea5b2550e7d0 Mon Sep 17 00:00:00 2001 From: Alan Forbes Date: Fri, 29 Nov 2024 15:16:38 +0000 Subject: [PATCH 39/59] tidy comments --- .github/actions/do_build_opencl_cts/action.yml | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/.github/actions/do_build_opencl_cts/action.yml b/.github/actions/do_build_opencl_cts/action.yml index b3a231e59..49f038143 100644 --- a/.github/actions/do_build_opencl_cts/action.yml +++ b/.github/actions/do_build_opencl_cts/action.yml @@ -39,20 +39,22 @@ runs: - name: build opencl cts shell: bash run: | + # get spirv-as sudo apt-get update - sudo apt-get install -y spirv-tools # need spirv-as + sudo apt-get install -y spirv-tools + # apply patches pushd OpenCL-CTS git log -1 git apply $GITHUB_WORKSPACE/.github/patches/OpenCL-CTS-0001-Patch-sub-group-testing.patch git apply $GITHUB_WORKSPACE/.github/patches/OpenCL-CTS-0002-Permit-building-for-unknown-architectures.patch popd - #pushd install_headers + # do build set -x cmake -G Ninja $GITHUB_WORKSPACE/OpenCL-CTS "-DCMAKE_BUILD_TYPE=Release" -DOPENCL_LIBRARIES=OpenCL "-DCL_INCLUDE_DIR=$GITHUB_WORKSPACE/install_headers/include" "-DCL_LIB_DIR=$GITHUB_WORKSPACE/install_icd/lib" ninja -v set +x - #popd - cp -R install_icd/bin OpenCL-CTS # for cllayerinfo artefact upload + # add cllayerinfo to upload artefacts + cp -R install_icd/bin OpenCL-CTS - name: upload opencl cts artifacts uses: actions/upload-artifact@v4 From 722cd7f2a68a8ae1f8017c612ed5e23904a6230e Mon Sep 17 00:00:00 2001 From: Alan Forbes Date: Fri, 29 Nov 2024 15:25:27 +0000 Subject: [PATCH 40/59] restore exclusions --- .github/workflows/codeql.yml | 28 +++++++++++------------ .github/workflows/planned_testing.yml | 6 ++--- .github/workflows/run_pr_tests_caller.yml | 26 ++++++++++----------- 3 files changed, 29 insertions(+), 31 deletions(-) diff --git a/.github/workflows/codeql.yml b/.github/workflows/codeql.yml index 4c600b8bd..969248aa1 100644 --- a/.github/workflows/codeql.yml +++ b/.github/workflows/codeql.yml @@ -4,20 +4,20 @@ on: push: branches: - main -# pull_request: -# branches: -# - main -# paths: -# - 'source/**' -# - 'clik/**' -# - 'modules/**' -# - 'examples/**' -# - 'cmake/**' -# - 'hal/**' -# - '.github/actions/do_build_ock/**' -# - '.github/actions/setup_build/**' -# - '.github/workflows/codeql.yml' -# - 'CMakeLists.txt' + pull_request: + branches: + - main + paths: + - 'source/**' + - 'clik/**' + - 'modules/**' + - 'examples/**' + - 'cmake/**' + - 'hal/**' + - '.github/actions/do_build_ock/**' + - '.github/actions/setup_build/**' + - '.github/workflows/codeql.yml' + - 'CMakeLists.txt' schedule: - cron: '19 9 * * 3' diff --git a/.github/workflows/planned_testing.yml b/.github/workflows/planned_testing.yml index 2d627a1d3..80a5fbc30 100644 --- a/.github/workflows/planned_testing.yml +++ b/.github/workflows/planned_testing.yml @@ -52,8 +52,7 @@ jobs: strategy: matrix: target: ${{ fromJson(inputs.target_list) }} - #exclude: ${{ fromJson(needs.workflow_vars.outputs.matrix_only_linux_x86_64_aarch64) }} - exclude: ${{ fromJson(needs.workflow_vars.outputs.matrix_only_linux_x86_64) }} + exclude: ${{ fromJson(needs.workflow_vars.outputs.matrix_only_linux_x86_64_aarch64) }} # risc-v needs ubuntu 24.04 so we get the latest qemu as well as how we # build llvm. Otherwise we choose windows or ubuntu-22.04 depending on the @@ -76,8 +75,7 @@ jobs: strategy: matrix: target: ${{ fromJson(inputs.target_list) }} - #exclude: ${{ fromJson(needs.workflow_vars.outputs.matrix_only_linux_x86_64_aarch64) }} - exclude: ${{ fromJson(needs.workflow_vars.outputs.matrix_only_linux_x86_64) }} + exclude: ${{ fromJson(needs.workflow_vars.outputs.matrix_only_linux_x86_64_aarch64) }} runs-on: ubuntu-22.04 steps: diff --git a/.github/workflows/run_pr_tests_caller.yml b/.github/workflows/run_pr_tests_caller.yml index 9c25b352d..58e8e76c3 100644 --- a/.github/workflows/run_pr_tests_caller.yml +++ b/.github/workflows/run_pr_tests_caller.yml @@ -1,19 +1,19 @@ # Calling workflow for running PR style tests name: Run ock tests for PR style testing on: -# pull_request: -# paths: -# - 'source/**' -# - 'clik/**' -# - 'modules/**' -# - 'examples/**' -# - 'cmake/**' -# - 'hal/**' -# - '.github/actions/do_build_ock/**' -# - '.github/actions/setup_build/**' -# - '.github/workflows/run_pr_tests.yml' -# - '.github/workflows/run_pr_tests_caller.yml' -# - 'CMakeLists.txt' + pull_request: + paths: + - 'source/**' + - 'clik/**' + - 'modules/**' + - 'examples/**' + - 'cmake/**' + - 'hal/**' + - '.github/actions/do_build_ock/**' + - '.github/actions/setup_build/**' + - '.github/workflows/run_pr_tests.yml' + - '.github/workflows/run_pr_tests_caller.yml' + - 'CMakeLists.txt' schedule: # Run Mon-Fri at 7pm - cron: '00 19 * * 1-5' From 0b591b8baf6ab27b23a4fec18c8a05c2a99df2ab Mon Sep 17 00:00:00 2001 From: Alan Forbes Date: Fri, 29 Nov 2024 15:34:17 +0000 Subject: [PATCH 41/59] Remove extra shell from run --- .github/actions/run_opencl_cts/action.yml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.github/actions/run_opencl_cts/action.yml b/.github/actions/run_opencl_cts/action.yml index 9f87c90b6..adc64eaf2 100644 --- a/.github/actions/run_opencl_cts/action.yml +++ b/.github/actions/run_opencl_cts/action.yml @@ -13,4 +13,5 @@ runs: - name: Run opencl cts shell: bash run: | - (set -x; python3 $GITHUB_WORKSPACE/OpenCL-CTS/test_conformance/spirv_new/assemble_spirv.py -v --source-dir $GITHUB_WORKSPACE/OpenCL-CTS/test_conformance/spirv_new/spirv_asm --output-dir $GITHUB_WORKSPACE/install_headers/test_conformance/spirv_bin ) + set -x + python3 $GITHUB_WORKSPACE/OpenCL-CTS/test_conformance/spirv_new/assemble_spirv.py -v --source-dir $GITHUB_WORKSPACE/OpenCL-CTS/test_conformance/spirv_new/spirv_asm --output-dir $GITHUB_WORKSPACE/install_headers/test_conformance/spirv_bin From bd3cf9537d4bbc688535fae8024c577ac258209d Mon Sep 17 00:00:00 2001 From: Alan Forbes Date: Fri, 29 Nov 2024 15:58:53 +0000 Subject: [PATCH 42/59] remove old comment --- .github/workflows/planned_testing.yml | 1 - 1 file changed, 1 deletion(-) diff --git a/.github/workflows/planned_testing.yml b/.github/workflows/planned_testing.yml index 80a5fbc30..addf6adc2 100644 --- a/.github/workflows/planned_testing.yml +++ b/.github/workflows/planned_testing.yml @@ -69,7 +69,6 @@ jobs: llvm_version: ${{ inputs.llvm_version }} build_icd: - # Will also be required for opencl if: inputs.test_tornado || inputs.test_opencl_cts needs: [workflow_vars] strategy: From 8aff410c571bedf80c16eaa4f0c3c9b19424649d Mon Sep 17 00:00:00 2001 From: Alan Forbes Date: Mon, 2 Dec 2024 11:49:43 +0000 Subject: [PATCH 43/59] Update run job; remove cllayerinfo artefact --- .github/actions/do_build_opencl_cts/action.yml | 4 +--- .github/actions/run_opencl_cts/action.yml | 13 +++++++++++-- 2 files changed, 12 insertions(+), 5 deletions(-) diff --git a/.github/actions/do_build_opencl_cts/action.yml b/.github/actions/do_build_opencl_cts/action.yml index 49f038143..d768b32aa 100644 --- a/.github/actions/do_build_opencl_cts/action.yml +++ b/.github/actions/do_build_opencl_cts/action.yml @@ -52,16 +52,14 @@ runs: set -x cmake -G Ninja $GITHUB_WORKSPACE/OpenCL-CTS "-DCMAKE_BUILD_TYPE=Release" -DOPENCL_LIBRARIES=OpenCL "-DCL_INCLUDE_DIR=$GITHUB_WORKSPACE/install_headers/include" "-DCL_LIB_DIR=$GITHUB_WORKSPACE/install_icd/lib" ninja -v + python3 $GITHUB_WORKSPACE/OpenCL-CTS/test_conformance/spirv_new/assemble_spirv.py -v --source-dir $GITHUB_WORKSPACE/OpenCL-CTS/test_conformance/spirv_new/spirv_asm --output-dir $GITHUB_WORKSPACE/install_headers/test_conformance/spirv_bin set +x - # add cllayerinfo to upload artefacts - cp -R install_icd/bin OpenCL-CTS - name: upload opencl cts artifacts uses: actions/upload-artifact@v4 with: name: opencl_cts_${{inputs.target}} path: | - OpenCL-CTS/bin OpenCL-CTS/test_conformance !OpenCL-CTS/test_conformance/**/.* !OpenCL-CTS/test_conformance/**/CMakeCommon.txt diff --git a/.github/actions/run_opencl_cts/action.yml b/.github/actions/run_opencl_cts/action.yml index adc64eaf2..aea78e1e2 100644 --- a/.github/actions/run_opencl_cts/action.yml +++ b/.github/actions/run_opencl_cts/action.yml @@ -10,8 +10,17 @@ inputs: runs: using: "composite" steps: + - name: Download ock artefact + uses: actions/download-artifact@v4 + with: + name: ock_${{inputs.target}} + path: install_ock- name: Download ock artefact + uses: actions/download-artifact@v4 + with: + name: ock_${{inputs.target}} + path: install_ock + - name: Run opencl cts shell: bash run: | - set -x - python3 $GITHUB_WORKSPACE/OpenCL-CTS/test_conformance/spirv_new/assemble_spirv.py -v --source-dir $GITHUB_WORKSPACE/OpenCL-CTS/test_conformance/spirv_new/spirv_asm --output-dir $GITHUB_WORKSPACE/install_headers/test_conformance/spirv_bin + ls -l * From be26604f7aab8ffd95bd94833cc3976b870a5386 Mon Sep 17 00:00:00 2001 From: Alan Forbes Date: Mon, 2 Dec 2024 11:54:07 +0000 Subject: [PATCH 44/59] Add ock artefacts to opencl-cts --- .github/workflows/planned_testing.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/planned_testing.yml b/.github/workflows/planned_testing.yml index addf6adc2..397b15051 100644 --- a/.github/workflows/planned_testing.yml +++ b/.github/workflows/planned_testing.yml @@ -121,7 +121,7 @@ jobs: # Currently only builds and runs on x86_64 linux build_run_opencl_cts: if: inputs.test_opencl_cts - needs: [ workflow_vars, build_icd ] + needs: [ workflow_vars, build_icd, create_ock_artefacts ] strategy: matrix: target: ${{ fromJson(inputs.target_list) }} From 82999f8a6bc53168e0b8d8b92c0a2d5207bda2ed Mon Sep 17 00:00:00 2001 From: Alan Forbes Date: Mon, 2 Dec 2024 12:22:11 +0000 Subject: [PATCH 45/59] Fix ock artefact download --- .github/actions/run_opencl_cts/action.yml | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/.github/actions/run_opencl_cts/action.yml b/.github/actions/run_opencl_cts/action.yml index aea78e1e2..269b45be2 100644 --- a/.github/actions/run_opencl_cts/action.yml +++ b/.github/actions/run_opencl_cts/action.yml @@ -5,17 +5,13 @@ description: run opencl cts inputs: target: - description: 'target architecture' # TODO: for future matrix reqs. + description: 'target architecture' runs: using: "composite" steps: - name: Download ock artefact uses: actions/download-artifact@v4 - with: - name: ock_${{inputs.target}} - path: install_ock- name: Download ock artefact - uses: actions/download-artifact@v4 with: name: ock_${{inputs.target}} path: install_ock From ab52caf5752d3d4ac83c2459747194c721d95983 Mon Sep 17 00:00:00 2001 From: Alan Forbes Date: Mon, 2 Dec 2024 14:45:06 +0000 Subject: [PATCH 46/59] Additional repo checkouts; add clc to ock artifact; opencl-cts run logging --- .../actions/do_build_ock_artefact/action.yml | 4 +-- .github/actions/run_opencl_cts/action.yml | 32 ++++++++++++++++++- .github/workflows/planned_testing.yml | 5 +++ 3 files changed, 38 insertions(+), 3 deletions(-) diff --git a/.github/actions/do_build_ock_artefact/action.yml b/.github/actions/do_build_ock_artefact/action.yml index ca176df9d..c7c90337e 100644 --- a/.github/actions/do_build_ock_artefact/action.yml +++ b/.github/actions/do_build_ock_artefact/action.yml @@ -59,8 +59,8 @@ runs: - name: prune ock artefact shell: bash run: | - # delete all but city runner and the python associated file under bin - find install/bin -maxdepth 1 -type f ! -name "*.py" -delete + # delete all but clc, city runner and the python associated file under bin + find install/bin -maxdepth 1 -type f ! \( -name "*.py" -o name "*clc" \) -delete rm -rf install/share - name: upload ock artefact diff --git a/.github/actions/run_opencl_cts/action.yml b/.github/actions/run_opencl_cts/action.yml index 269b45be2..7b5e1e050 100644 --- a/.github/actions/run_opencl_cts/action.yml +++ b/.github/actions/run_opencl_cts/action.yml @@ -16,7 +16,37 @@ runs: name: ock_${{inputs.target}} path: install_ock +# CI_PROJECT_DIR == GITHUB_WORKSPACE ?? +# CA_INSTALL_DIR == install_ock = note does clc live here? No "bin" in artefact? +# CTS_CSV_FILE == opencl_conformance_tests_quick.csv || opencl_conformance_tests_full.csv +# CTS_FILTER == cts-3.0-online-ignore-linux-host.csv - needs checkout addition +# CTS_TIMEOUT == 18:00:00 - OK on github? +# inputs.cts_profile == ?? +# inputs.cities_args == ?? + - name: Run opencl cts shell: bash run: | - ls -l * + ls -la * $GITHUB_WORKSPACE + ls -l $GITHUB_WORKSPACE/install_ock/bin/clc + ls -l $GITHUB_WORKSPACE/source/cl/scripts/cts-3.0-online-ignore-linux-host.csv + ls -l $GITHUB_WORKSPACE/scripts/testing/run_cities.py + ls -l $GITHUB_WORKSPACE/OpenCL-CTS/test_conformance/opencl_conformance_tests_full.csv + ls -l $GITHUB_WORKSPACE/install_icd/lib + ls -l $GITHUB_WORKSPACE/install_ock/lib/libCL.so + + +# cd "$CI_PROJECT_DIR/OpenCL-CTS" +# echo "Running OpenCL CTS tests with CTS file $CTS_CSV_FILE with filter $CTS_FILTER" +# python -u "$CI_PROJECT_DIR/oneapi-construction-kit/scripts/testing/run_cities.py" -v +# --color=always +# --timeout $CTS_TIMEOUT +# $[[ inputs.cts_profile ]] +# $[[ inputs.cities_args ]] +# -b "$CI_PROJECT_DIR/OpenCL-CTS/test_conformance" +# -L "$CI_PROJECT_DIR/OpenCL-CTS/lib" +# -e "CLC_EXECUTABLE=$CA_INSTALL_DIR/bin/clc" +# -e "OCL_ICD_FILENAMES=$CA_INSTALL_DIR/lib/libCL.so" +# -e "CL_PLATFORM_INDEX=0" +# -s "$CI_PROJECT_DIR/OpenCL-CTS/test_conformance/$CTS_CSV_FILE" +# -i "$CI_PROJECT_DIR/oneapi-construction-kit/source/cl/scripts/$CTS_FILTER" diff --git a/.github/workflows/planned_testing.yml b/.github/workflows/planned_testing.yml index 397b15051..3fd1ecd75 100644 --- a/.github/workflows/planned_testing.yml +++ b/.github/workflows/planned_testing.yml @@ -133,8 +133,13 @@ jobs: - name: clone ock platform uses: actions/checkout@v4 with: + # platform: toolchain files - TODO: needed? + # scripts: run_cities.py + # source: CTS filter.csv files sparse-checkout: | platform + scripts + source .github # TODO: Consider separating out opencl_cts build and run in the future - name : build and upload opencl_cts From 68d9ecf2ffdd1da1f2ee41f3cda2b1ed7b9150cb Mon Sep 17 00:00:00 2001 From: Alan Forbes Date: Mon, 2 Dec 2024 15:07:15 +0000 Subject: [PATCH 47/59] Fix find command for clc --- .github/actions/do_build_ock_artefact/action.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/actions/do_build_ock_artefact/action.yml b/.github/actions/do_build_ock_artefact/action.yml index c7c90337e..2c7f128a9 100644 --- a/.github/actions/do_build_ock_artefact/action.yml +++ b/.github/actions/do_build_ock_artefact/action.yml @@ -60,7 +60,7 @@ runs: shell: bash run: | # delete all but clc, city runner and the python associated file under bin - find install/bin -maxdepth 1 -type f ! \( -name "*.py" -o name "*clc" \) -delete + find install/bin -maxdepth 1 -type f -and ! \( -name "*.py" -o -name "*clc" \) -delete rm -rf install/share - name: upload ock artefact From ca7ee0412e2b254a91eacf1b910dddaeccc990f1 Mon Sep 17 00:00:00 2001 From: Alan Forbes Date: Mon, 2 Dec 2024 15:49:25 +0000 Subject: [PATCH 48/59] add python call --- .github/actions/run_opencl_cts/action.yml | 29 ++++++++++++++++------- 1 file changed, 20 insertions(+), 9 deletions(-) diff --git a/.github/actions/run_opencl_cts/action.yml b/.github/actions/run_opencl_cts/action.yml index 7b5e1e050..1309b3c7b 100644 --- a/.github/actions/run_opencl_cts/action.yml +++ b/.github/actions/run_opencl_cts/action.yml @@ -16,25 +16,36 @@ runs: name: ock_${{inputs.target}} path: install_ock -# CI_PROJECT_DIR == GITHUB_WORKSPACE ?? -# CA_INSTALL_DIR == install_ock = note does clc live here? No "bin" in artefact? -# CTS_CSV_FILE == opencl_conformance_tests_quick.csv || opencl_conformance_tests_full.csv -# CTS_FILTER == cts-3.0-online-ignore-linux-host.csv - needs checkout addition -# CTS_TIMEOUT == 18:00:00 - OK on github? # inputs.cts_profile == ?? # inputs.cities_args == ?? - name: Run opencl cts shell: bash + env: + # CTS_CSV_FILE == opencl_conformance_tests_quick.csv || opencl_conformance_tests_full.csv + CTS_CSV_FILE: opencl_conformance_tests_full.csv + # CTS_FILTER == cts-3.0-online-ignore-linux-host.csv - needs checkout addition + CTS_FILTER: cts-3.0-online-ignore-linux-host.csv + # CTS_TIMEOUT == 18:00:00 - OK on github? + CTS_TIMEOUT: 18:00:00 run: | ls -la * $GITHUB_WORKSPACE - ls -l $GITHUB_WORKSPACE/install_ock/bin/clc - ls -l $GITHUB_WORKSPACE/source/cl/scripts/cts-3.0-online-ignore-linux-host.csv + set -x + ls -l $GITHUB_WORKSPACE/OpenCL-CTS ls -l $GITHUB_WORKSPACE/scripts/testing/run_cities.py - ls -l $GITHUB_WORKSPACE/OpenCL-CTS/test_conformance/opencl_conformance_tests_full.csv + ls -l $GITHUB_WORKSPACE/OpenCL-CTS/test_conformance ls -l $GITHUB_WORKSPACE/install_icd/lib - ls -l $GITHUB_WORKSPACE/install_ock/lib/libCL.so + ls -l install_ock/bin/clc + ls -l install_ock/lib/libCL.so + ls -l $GITHUB_WORKSPACE/OpenCL-CTS/test_conformance/$CTS_CSV_FILE + ls -l $GITHUB_WORKSPACE/source/cl/scripts/$CTS_FILTER + set +x + cd "$GITHUB_WORKSPACE/OpenCL-CTS" + echo "Running OpenCL CTS tests with CTS file $CTS_CSV_FILE with filter $CTS_FILTER" + # $[[ inputs.cts_profile ]] + # $[[ inputs.cities_args ]] + python -u "$GITHUB_WORKSPACE/scripts/testing/run_cities.py" -v --color=always --timeout $CTS_TIMEOUT $[[ inputs.cts_profile ]] $[[ inputs.cities_args ]] -b "$GITHUB_WORKSPACE/OpenCL-CTS/test_conformance" -L "$GITHUB_WORKSPACE/install_icd/lib" -e "CLC_EXECUTABLE=install_ock/bin/clc" -e "OCL_ICD_FILENAMES=install_ock/lib/libCL.so" -e "CL_PLATFORM_INDEX=0" -s "$GITHUB_WORKSPACE/OpenCL-CTS/test_conformance/$CTS_CSV_FILE" -i "$GITHUB_WORKSPACE/source/cl/scripts/$CTS_FILTER" # cd "$CI_PROJECT_DIR/OpenCL-CTS" # echo "Running OpenCL CTS tests with CTS file $CTS_CSV_FILE with filter $CTS_FILTER" From c1e300d904f3b1f35f7f11fb177ca2476d5e89b3 Mon Sep 17 00:00:00 2001 From: Alan Forbes Date: Mon, 2 Dec 2024 16:14:47 +0000 Subject: [PATCH 49/59] tidy logging and python call --- .github/actions/run_opencl_cts/action.yml | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/.github/actions/run_opencl_cts/action.yml b/.github/actions/run_opencl_cts/action.yml index 1309b3c7b..de46660cd 100644 --- a/.github/actions/run_opencl_cts/action.yml +++ b/.github/actions/run_opencl_cts/action.yml @@ -29,23 +29,23 @@ runs: # CTS_TIMEOUT == 18:00:00 - OK on github? CTS_TIMEOUT: 18:00:00 run: | - ls -la * $GITHUB_WORKSPACE + ls -la * $GITHUB_WORKSPACE && sleep 2 set -x - ls -l $GITHUB_WORKSPACE/OpenCL-CTS - ls -l $GITHUB_WORKSPACE/scripts/testing/run_cities.py - ls -l $GITHUB_WORKSPACE/OpenCL-CTS/test_conformance - ls -l $GITHUB_WORKSPACE/install_icd/lib - ls -l install_ock/bin/clc - ls -l install_ock/lib/libCL.so - ls -l $GITHUB_WORKSPACE/OpenCL-CTS/test_conformance/$CTS_CSV_FILE - ls -l $GITHUB_WORKSPACE/source/cl/scripts/$CTS_FILTER + ls -l $GITHUB_WORKSPACE/OpenCL-CTS && sleep 2 + ls -l $GITHUB_WORKSPACE/scripts/testing/run_cities.py && sleep 2 + ls -l $GITHUB_WORKSPACE/OpenCL-CTS/test_conformance && sleep 2 + ls -l $GITHUB_WORKSPACE/install_icd/lib && sleep 2 + ls -l install_ock/bin/clc && sleep 2 + ls -l install_ock/lib/libCL.so && sleep 2 + ls -l $GITHUB_WORKSPACE/OpenCL-CTS/test_conformance/$CTS_CSV_FILE && sleep 2 + ls -l $GITHUB_WORKSPACE/source/cl/scripts/$CTS_FILTER && sleep 2 set +x cd "$GITHUB_WORKSPACE/OpenCL-CTS" echo "Running OpenCL CTS tests with CTS file $CTS_CSV_FILE with filter $CTS_FILTER" # $[[ inputs.cts_profile ]] # $[[ inputs.cities_args ]] - python -u "$GITHUB_WORKSPACE/scripts/testing/run_cities.py" -v --color=always --timeout $CTS_TIMEOUT $[[ inputs.cts_profile ]] $[[ inputs.cities_args ]] -b "$GITHUB_WORKSPACE/OpenCL-CTS/test_conformance" -L "$GITHUB_WORKSPACE/install_icd/lib" -e "CLC_EXECUTABLE=install_ock/bin/clc" -e "OCL_ICD_FILENAMES=install_ock/lib/libCL.so" -e "CL_PLATFORM_INDEX=0" -s "$GITHUB_WORKSPACE/OpenCL-CTS/test_conformance/$CTS_CSV_FILE" -i "$GITHUB_WORKSPACE/source/cl/scripts/$CTS_FILTER" + python -u "$GITHUB_WORKSPACE/scripts/testing/run_cities.py" -v --color=always --timeout $CTS_TIMEOUT -b "$GITHUB_WORKSPACE/OpenCL-CTS/test_conformance" -L "$GITHUB_WORKSPACE/install_icd/lib" -e "CLC_EXECUTABLE=install_ock/bin/clc" -e "OCL_ICD_FILENAMES=install_ock/lib/libCL.so" -e "CL_PLATFORM_INDEX=0" -s "$GITHUB_WORKSPACE/OpenCL-CTS/test_conformance/$CTS_CSV_FILE" -i "$GITHUB_WORKSPACE/source/cl/scripts/$CTS_FILTER" # cd "$CI_PROJECT_DIR/OpenCL-CTS" # echo "Running OpenCL CTS tests with CTS file $CTS_CSV_FILE with filter $CTS_FILTER" From 2c6f487e164872ac33dfea3cdefa8f98cc02a2ba Mon Sep 17 00:00:00 2001 From: Alan Forbes Date: Mon, 2 Dec 2024 16:54:32 +0000 Subject: [PATCH 50/59] update logging --- .github/actions/run_opencl_cts/action.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/actions/run_opencl_cts/action.yml b/.github/actions/run_opencl_cts/action.yml index de46660cd..ad22a5857 100644 --- a/.github/actions/run_opencl_cts/action.yml +++ b/.github/actions/run_opencl_cts/action.yml @@ -29,7 +29,7 @@ runs: # CTS_TIMEOUT == 18:00:00 - OK on github? CTS_TIMEOUT: 18:00:00 run: | - ls -la * $GITHUB_WORKSPACE && sleep 2 + ls -lRa * $GITHUB_WORKSPACE && sleep 2 set -x ls -l $GITHUB_WORKSPACE/OpenCL-CTS && sleep 2 ls -l $GITHUB_WORKSPACE/scripts/testing/run_cities.py && sleep 2 From 4b1be89f3e11d678f981b7fa34344b3668f1c35c Mon Sep 17 00:00:00 2001 From: Alan Forbes Date: Mon, 2 Dec 2024 17:18:00 +0000 Subject: [PATCH 51/59] Update opencl-cts artefacts --- .../actions/do_build_opencl_cts/action.yml | 25 ++++++++++--------- .github/actions/run_opencl_cts/action.yml | 4 +-- 2 files changed, 15 insertions(+), 14 deletions(-) diff --git a/.github/actions/do_build_opencl_cts/action.yml b/.github/actions/do_build_opencl_cts/action.yml index d768b32aa..00dd9ffe8 100644 --- a/.github/actions/do_build_opencl_cts/action.yml +++ b/.github/actions/do_build_opencl_cts/action.yml @@ -53,6 +53,7 @@ runs: cmake -G Ninja $GITHUB_WORKSPACE/OpenCL-CTS "-DCMAKE_BUILD_TYPE=Release" -DOPENCL_LIBRARIES=OpenCL "-DCL_INCLUDE_DIR=$GITHUB_WORKSPACE/install_headers/include" "-DCL_LIB_DIR=$GITHUB_WORKSPACE/install_icd/lib" ninja -v python3 $GITHUB_WORKSPACE/OpenCL-CTS/test_conformance/spirv_new/assemble_spirv.py -v --source-dir $GITHUB_WORKSPACE/OpenCL-CTS/test_conformance/spirv_new/spirv_asm --output-dir $GITHUB_WORKSPACE/install_headers/test_conformance/spirv_bin + ls -lR test_conformance set +x - name: upload opencl cts artifacts @@ -60,17 +61,17 @@ runs: with: name: opencl_cts_${{inputs.target}} path: | - OpenCL-CTS/test_conformance - !OpenCL-CTS/test_conformance/**/.* - !OpenCL-CTS/test_conformance/**/CMakeCommon.txt - !OpenCL-CTS/test_conformance/**/CMakeLists.txt - !OpenCL-CTS/test_conformance/**/CMakeCache.txt - !OpenCL-CTS/test_conformance/**/CMakeFiles - !OpenCL-CTS/test_conformance/**/CMakeFiles/** - !OpenCL-CTS/test_conformance/**/*.cmake - !OpenCL-CTS/test_conformance/**/*.ninja - !OpenCL-CTS/test_conformance/submission_details_template.txt - !OpenCL-CTS/test_conformance/test_common - !OpenCL-CTS/test_conformance/test_common/** + test_conformance + !test_conformance/**/.* + !test_conformance/**/CMakeCommon.txt + !test_conformance/**/CMakeLists.txt + !test_conformance/**/CMakeCache.txt + !test_conformance/**/CMakeFiles + !test_conformance/**/CMakeFiles/** + !test_conformance/**/*.cmake + !test_conformance/**/*.ninja + !test_conformance/submission_details_template.txt + !test_conformance/test_common + !test_conformance/test_common/** retention-days: 1 diff --git a/.github/actions/run_opencl_cts/action.yml b/.github/actions/run_opencl_cts/action.yml index ad22a5857..dfa30b980 100644 --- a/.github/actions/run_opencl_cts/action.yml +++ b/.github/actions/run_opencl_cts/action.yml @@ -43,8 +43,8 @@ runs: cd "$GITHUB_WORKSPACE/OpenCL-CTS" echo "Running OpenCL CTS tests with CTS file $CTS_CSV_FILE with filter $CTS_FILTER" - # $[[ inputs.cts_profile ]] - # $[[ inputs.cities_args ]] + # $[[ inputs.cts_profile ]] - needed? + # $[[ inputs.cities_args ]] - needed? python -u "$GITHUB_WORKSPACE/scripts/testing/run_cities.py" -v --color=always --timeout $CTS_TIMEOUT -b "$GITHUB_WORKSPACE/OpenCL-CTS/test_conformance" -L "$GITHUB_WORKSPACE/install_icd/lib" -e "CLC_EXECUTABLE=install_ock/bin/clc" -e "OCL_ICD_FILENAMES=install_ock/lib/libCL.so" -e "CL_PLATFORM_INDEX=0" -s "$GITHUB_WORKSPACE/OpenCL-CTS/test_conformance/$CTS_CSV_FILE" -i "$GITHUB_WORKSPACE/source/cl/scripts/$CTS_FILTER" # cd "$CI_PROJECT_DIR/OpenCL-CTS" From 8990bb4c971eeb8faf6b896a1cc09a8f59660eab Mon Sep 17 00:00:00 2001 From: Alan Forbes Date: Mon, 2 Dec 2024 17:38:34 +0000 Subject: [PATCH 52/59] Point python at new artefacts --- .github/actions/run_opencl_cts/action.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/actions/run_opencl_cts/action.yml b/.github/actions/run_opencl_cts/action.yml index dfa30b980..c982dc8ee 100644 --- a/.github/actions/run_opencl_cts/action.yml +++ b/.github/actions/run_opencl_cts/action.yml @@ -33,11 +33,11 @@ runs: set -x ls -l $GITHUB_WORKSPACE/OpenCL-CTS && sleep 2 ls -l $GITHUB_WORKSPACE/scripts/testing/run_cities.py && sleep 2 - ls -l $GITHUB_WORKSPACE/OpenCL-CTS/test_conformance && sleep 2 + ls -l $GITHUB_WORKSPACE/test_conformance && sleep 2 ls -l $GITHUB_WORKSPACE/install_icd/lib && sleep 2 ls -l install_ock/bin/clc && sleep 2 ls -l install_ock/lib/libCL.so && sleep 2 - ls -l $GITHUB_WORKSPACE/OpenCL-CTS/test_conformance/$CTS_CSV_FILE && sleep 2 + ls -l $GITHUB_WORKSPACE/test_conformance/$CTS_CSV_FILE && sleep 2 ls -l $GITHUB_WORKSPACE/source/cl/scripts/$CTS_FILTER && sleep 2 set +x @@ -45,7 +45,7 @@ runs: echo "Running OpenCL CTS tests with CTS file $CTS_CSV_FILE with filter $CTS_FILTER" # $[[ inputs.cts_profile ]] - needed? # $[[ inputs.cities_args ]] - needed? - python -u "$GITHUB_WORKSPACE/scripts/testing/run_cities.py" -v --color=always --timeout $CTS_TIMEOUT -b "$GITHUB_WORKSPACE/OpenCL-CTS/test_conformance" -L "$GITHUB_WORKSPACE/install_icd/lib" -e "CLC_EXECUTABLE=install_ock/bin/clc" -e "OCL_ICD_FILENAMES=install_ock/lib/libCL.so" -e "CL_PLATFORM_INDEX=0" -s "$GITHUB_WORKSPACE/OpenCL-CTS/test_conformance/$CTS_CSV_FILE" -i "$GITHUB_WORKSPACE/source/cl/scripts/$CTS_FILTER" + python -u "$GITHUB_WORKSPACE/scripts/testing/run_cities.py" -v --color=always --timeout $CTS_TIMEOUT -b "$GITHUB_WORKSPACE/test_conformance" -L "$GITHUB_WORKSPACE/install_icd/lib" -e "CLC_EXECUTABLE=install_ock/bin/clc" -e "OCL_ICD_FILENAMES=install_ock/lib/libCL.so" -e "CL_PLATFORM_INDEX=0" -s "$GITHUB_WORKSPACE/test_conformance/$CTS_CSV_FILE" -i "$GITHUB_WORKSPACE/source/cl/scripts/$CTS_FILTER" # cd "$CI_PROJECT_DIR/OpenCL-CTS" # echo "Running OpenCL CTS tests with CTS file $CTS_CSV_FILE with filter $CTS_FILTER" From a608c779c7d12f7de58516c076fc23baf504f14e Mon Sep 17 00:00:00 2001 From: Alan Forbes Date: Tue, 3 Dec 2024 10:20:11 +0000 Subject: [PATCH 53/59] Use full paths --- .github/actions/run_opencl_cts/action.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/actions/run_opencl_cts/action.yml b/.github/actions/run_opencl_cts/action.yml index c982dc8ee..3de1f1ddd 100644 --- a/.github/actions/run_opencl_cts/action.yml +++ b/.github/actions/run_opencl_cts/action.yml @@ -35,8 +35,8 @@ runs: ls -l $GITHUB_WORKSPACE/scripts/testing/run_cities.py && sleep 2 ls -l $GITHUB_WORKSPACE/test_conformance && sleep 2 ls -l $GITHUB_WORKSPACE/install_icd/lib && sleep 2 - ls -l install_ock/bin/clc && sleep 2 - ls -l install_ock/lib/libCL.so && sleep 2 + ls -l $GITHUB_WORKSPACE/install_ock/bin/clc && sleep 2 + ls -l $GITHUB_WORKSPACE/install_ock/lib/libCL.so && sleep 2 ls -l $GITHUB_WORKSPACE/test_conformance/$CTS_CSV_FILE && sleep 2 ls -l $GITHUB_WORKSPACE/source/cl/scripts/$CTS_FILTER && sleep 2 set +x @@ -45,7 +45,7 @@ runs: echo "Running OpenCL CTS tests with CTS file $CTS_CSV_FILE with filter $CTS_FILTER" # $[[ inputs.cts_profile ]] - needed? # $[[ inputs.cities_args ]] - needed? - python -u "$GITHUB_WORKSPACE/scripts/testing/run_cities.py" -v --color=always --timeout $CTS_TIMEOUT -b "$GITHUB_WORKSPACE/test_conformance" -L "$GITHUB_WORKSPACE/install_icd/lib" -e "CLC_EXECUTABLE=install_ock/bin/clc" -e "OCL_ICD_FILENAMES=install_ock/lib/libCL.so" -e "CL_PLATFORM_INDEX=0" -s "$GITHUB_WORKSPACE/test_conformance/$CTS_CSV_FILE" -i "$GITHUB_WORKSPACE/source/cl/scripts/$CTS_FILTER" + python -u "$GITHUB_WORKSPACE/scripts/testing/run_cities.py" -v --color=always --timeout $CTS_TIMEOUT -b "$GITHUB_WORKSPACE/test_conformance" -L "$GITHUB_WORKSPACE/install_icd/lib" -e "CLC_EXECUTABLE=$GITHUB_WORKSPACE/install_ock/bin/clc" -e "OCL_ICD_FILENAMES=$GITHUB_WORKSPACE/install_ock/lib/libCL.so" -e "CL_PLATFORM_INDEX=0" -s "$GITHUB_WORKSPACE/test_conformance/$CTS_CSV_FILE" -i "$GITHUB_WORKSPACE/source/cl/scripts/$CTS_FILTER" # cd "$CI_PROJECT_DIR/OpenCL-CTS" # echo "Running OpenCL CTS tests with CTS file $CTS_CSV_FILE with filter $CTS_FILTER" From 76ffa74e882a29994fb34ace0869f43ba413c580 Mon Sep 17 00:00:00 2001 From: Alan Forbes Date: Tue, 3 Dec 2024 12:14:21 +0000 Subject: [PATCH 54/59] Refactor artefact list; add quick|full test type; update logging --- .../actions/do_build_opencl_cts/action.yml | 5 --- .github/actions/run_opencl_cts/action.yml | 35 ++++++++----------- .github/workflows/planned_testing.yml | 10 +++--- 3 files changed, 20 insertions(+), 30 deletions(-) diff --git a/.github/actions/do_build_opencl_cts/action.yml b/.github/actions/do_build_opencl_cts/action.yml index 00dd9ffe8..9f7b5468b 100644 --- a/.github/actions/do_build_opencl_cts/action.yml +++ b/.github/actions/do_build_opencl_cts/action.yml @@ -53,8 +53,6 @@ runs: cmake -G Ninja $GITHUB_WORKSPACE/OpenCL-CTS "-DCMAKE_BUILD_TYPE=Release" -DOPENCL_LIBRARIES=OpenCL "-DCL_INCLUDE_DIR=$GITHUB_WORKSPACE/install_headers/include" "-DCL_LIB_DIR=$GITHUB_WORKSPACE/install_icd/lib" ninja -v python3 $GITHUB_WORKSPACE/OpenCL-CTS/test_conformance/spirv_new/assemble_spirv.py -v --source-dir $GITHUB_WORKSPACE/OpenCL-CTS/test_conformance/spirv_new/spirv_asm --output-dir $GITHUB_WORKSPACE/install_headers/test_conformance/spirv_bin - ls -lR test_conformance - set +x - name: upload opencl cts artifacts uses: actions/upload-artifact@v4 @@ -63,14 +61,11 @@ runs: path: | test_conformance !test_conformance/**/.* - !test_conformance/**/CMakeCommon.txt - !test_conformance/**/CMakeLists.txt !test_conformance/**/CMakeCache.txt !test_conformance/**/CMakeFiles !test_conformance/**/CMakeFiles/** !test_conformance/**/*.cmake !test_conformance/**/*.ninja - !test_conformance/submission_details_template.txt !test_conformance/test_common !test_conformance/test_common/** retention-days: 1 diff --git a/.github/actions/run_opencl_cts/action.yml b/.github/actions/run_opencl_cts/action.yml index 3de1f1ddd..adfbd1e51 100644 --- a/.github/actions/run_opencl_cts/action.yml +++ b/.github/actions/run_opencl_cts/action.yml @@ -6,6 +6,9 @@ description: run opencl cts inputs: target: description: 'target architecture' + test_type: + description: 'quick | full' + default: "quick" runs: using: "composite" @@ -16,36 +19,28 @@ runs: name: ock_${{inputs.target}} path: install_ock -# inputs.cts_profile == ?? -# inputs.cities_args == ?? - - name: Run opencl cts shell: bash env: - # CTS_CSV_FILE == opencl_conformance_tests_quick.csv || opencl_conformance_tests_full.csv - CTS_CSV_FILE: opencl_conformance_tests_full.csv - # CTS_FILTER == cts-3.0-online-ignore-linux-host.csv - needs checkout addition + CTS_CSV_FILE: opencl_conformance_tests_${{inputs.test_type}}.csv CTS_FILTER: cts-3.0-online-ignore-linux-host.csv - # CTS_TIMEOUT == 18:00:00 - OK on github? - CTS_TIMEOUT: 18:00:00 + CTS_TIMEOUT: 18:00:00 # OK on github? run: | ls -lRa * $GITHUB_WORKSPACE && sleep 2 - set -x - ls -l $GITHUB_WORKSPACE/OpenCL-CTS && sleep 2 - ls -l $GITHUB_WORKSPACE/scripts/testing/run_cities.py && sleep 2 - ls -l $GITHUB_WORKSPACE/test_conformance && sleep 2 - ls -l $GITHUB_WORKSPACE/install_icd/lib && sleep 2 - ls -l $GITHUB_WORKSPACE/install_ock/bin/clc && sleep 2 - ls -l $GITHUB_WORKSPACE/install_ock/lib/libCL.so && sleep 2 - ls -l $GITHUB_WORKSPACE/test_conformance/$CTS_CSV_FILE && sleep 2 - ls -l $GITHUB_WORKSPACE/source/cl/scripts/$CTS_FILTER && sleep 2 - set +x - cd "$GITHUB_WORKSPACE/OpenCL-CTS" echo "Running OpenCL CTS tests with CTS file $CTS_CSV_FILE with filter $CTS_FILTER" # $[[ inputs.cts_profile ]] - needed? # $[[ inputs.cities_args ]] - needed? - python -u "$GITHUB_WORKSPACE/scripts/testing/run_cities.py" -v --color=always --timeout $CTS_TIMEOUT -b "$GITHUB_WORKSPACE/test_conformance" -L "$GITHUB_WORKSPACE/install_icd/lib" -e "CLC_EXECUTABLE=$GITHUB_WORKSPACE/install_ock/bin/clc" -e "OCL_ICD_FILENAMES=$GITHUB_WORKSPACE/install_ock/lib/libCL.so" -e "CL_PLATFORM_INDEX=0" -s "$GITHUB_WORKSPACE/test_conformance/$CTS_CSV_FILE" -i "$GITHUB_WORKSPACE/source/cl/scripts/$CTS_FILTER" + set -x + python -u "$GITHUB_WORKSPACE/scripts/testing/run_cities.py" -v \ + --color=always --timeout $CTS_TIMEOUT \ + -b "$GITHUB_WORKSPACE/test_conformance" \ + -L "$GITHUB_WORKSPACE/install_icd/lib" \ + -e "CLC_EXECUTABLE=$GITHUB_WORKSPACE/install_ock/bin/clc" \ + -e "OCL_ICD_FILENAMES=$GITHUB_WORKSPACE/install_ock/lib/libCL.so" \ + -e "CL_PLATFORM_INDEX=0" \ + -s "$GITHUB_WORKSPACE/test_conformance/$CTS_CSV_FILE" \ + -i "$GITHUB_WORKSPACE/source/cl/scripts/$CTS_FILTER" # cd "$CI_PROJECT_DIR/OpenCL-CTS" # echo "Running OpenCL CTS tests with CTS file $CTS_CSV_FILE with filter $CTS_FILTER" diff --git a/.github/workflows/planned_testing.yml b/.github/workflows/planned_testing.yml index 3fd1ecd75..8d9abf657 100644 --- a/.github/workflows/planned_testing.yml +++ b/.github/workflows/planned_testing.yml @@ -118,7 +118,7 @@ jobs: with: target: ${{ matrix.target }} - # Currently only builds and runs on x86_64 linux + # Currently only builds and runs (default: quick) on x86_64 linux build_run_opencl_cts: if: inputs.test_opencl_cts needs: [ workflow_vars, build_icd, create_ock_artefacts ] @@ -130,12 +130,12 @@ jobs: # Todo: expand for aarch64 runs-on: ubuntu-22.04 steps: - - name: clone ock platform + - name: clone ock uses: actions/checkout@v4 with: - # platform: toolchain files - TODO: needed? - # scripts: run_cities.py - # source: CTS filter.csv files + # platform: for toolchain files - TODO: needed? + # scripts: for run_cities.py + # source: for CTS filter.csv files sparse-checkout: | platform scripts From f93302ab6bce6cc3953421acb474c126e7f2e8d2 Mon Sep 17 00:00:00 2001 From: Alan Forbes Date: Tue, 3 Dec 2024 13:12:59 +0000 Subject: [PATCH 55/59] reformat build commands --- .github/actions/do_build_opencl_cts/action.yml | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/.github/actions/do_build_opencl_cts/action.yml b/.github/actions/do_build_opencl_cts/action.yml index 9f7b5468b..d7f3131fc 100644 --- a/.github/actions/do_build_opencl_cts/action.yml +++ b/.github/actions/do_build_opencl_cts/action.yml @@ -50,9 +50,15 @@ runs: popd # do build set -x - cmake -G Ninja $GITHUB_WORKSPACE/OpenCL-CTS "-DCMAKE_BUILD_TYPE=Release" -DOPENCL_LIBRARIES=OpenCL "-DCL_INCLUDE_DIR=$GITHUB_WORKSPACE/install_headers/include" "-DCL_LIB_DIR=$GITHUB_WORKSPACE/install_icd/lib" + cmake -G Ninja $GITHUB_WORKSPACE/OpenCL-CTS \ + -DCMAKE_BUILD_TYPE=Release \ + -DOPENCL_LIBRARIES=OpenCL \ + -DCL_INCLUDE_DIR=$GITHUB_WORKSPACE/install_headers/include \ + -DCL_LIB_DIR=$GITHUB_WORKSPACE/install_icd/lib ninja -v - python3 $GITHUB_WORKSPACE/OpenCL-CTS/test_conformance/spirv_new/assemble_spirv.py -v --source-dir $GITHUB_WORKSPACE/OpenCL-CTS/test_conformance/spirv_new/spirv_asm --output-dir $GITHUB_WORKSPACE/install_headers/test_conformance/spirv_bin + python3 $GITHUB_WORKSPACE/OpenCL-CTS/test_conformance/spirv_new/assemble_spirv.py -v \ + --source-dir $GITHUB_WORKSPACE/OpenCL-CTS/test_conformance/spirv_new/spirv_asm \ + --output-dir $GITHUB_WORKSPACE/test_conformance/spirv_bin - name: upload opencl cts artifacts uses: actions/upload-artifact@v4 From 2d998888a5ed88f7a0ac3febfb633301530809b7 Mon Sep 17 00:00:00 2001 From: Alan Forbes Date: Tue, 3 Dec 2024 14:31:47 +0000 Subject: [PATCH 56/59] add "toolchain" --- .github/actions/do_build_opencl_cts/action.yml | 5 ++++- .github/actions/run_opencl_cts/action.yml | 2 +- .github/workflows/planned_testing.yml | 2 +- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/.github/actions/do_build_opencl_cts/action.yml b/.github/actions/do_build_opencl_cts/action.yml index d7f3131fc..06f3f323f 100644 --- a/.github/actions/do_build_opencl_cts/action.yml +++ b/.github/actions/do_build_opencl_cts/action.yml @@ -38,6 +38,9 @@ runs: - name: build opencl cts shell: bash + env: + # TODO: host-x86_64-linux 'toolchain' - expand for other targets + CMAKE_TOOLCHAIN: "-DCMAKE_C_COMPILER=gcc -DCMAKE_C_FLAGS=-m64 -DCMAKE_CXX_COMPILER=g++ -DCMAKE_CXX_FLAGS=-m64 -DPKG_CONFIG_EXECUTABLE=pkg-config" run: | # get spirv-as sudo apt-get update @@ -50,7 +53,7 @@ runs: popd # do build set -x - cmake -G Ninja $GITHUB_WORKSPACE/OpenCL-CTS \ + cmake -G Ninja $CMAKE_TOOLCHAIN $GITHUB_WORKSPACE/OpenCL-CTS \ -DCMAKE_BUILD_TYPE=Release \ -DOPENCL_LIBRARIES=OpenCL \ -DCL_INCLUDE_DIR=$GITHUB_WORKSPACE/install_headers/include \ diff --git a/.github/actions/run_opencl_cts/action.yml b/.github/actions/run_opencl_cts/action.yml index adfbd1e51..433b2c8dc 100644 --- a/.github/actions/run_opencl_cts/action.yml +++ b/.github/actions/run_opencl_cts/action.yml @@ -24,7 +24,7 @@ runs: env: CTS_CSV_FILE: opencl_conformance_tests_${{inputs.test_type}}.csv CTS_FILTER: cts-3.0-online-ignore-linux-host.csv - CTS_TIMEOUT: 18:00:00 # OK on github? + CTS_TIMEOUT: 18:00:00 # OK for github? run: | ls -lRa * $GITHUB_WORKSPACE && sleep 2 cd "$GITHUB_WORKSPACE/OpenCL-CTS" diff --git a/.github/workflows/planned_testing.yml b/.github/workflows/planned_testing.yml index 8d9abf657..f5ac16766 100644 --- a/.github/workflows/planned_testing.yml +++ b/.github/workflows/planned_testing.yml @@ -127,7 +127,7 @@ jobs: target: ${{ fromJson(inputs.target_list) }} exclude: ${{ fromJson(needs.workflow_vars.outputs.matrix_only_linux_x86_64) }} - # Todo: expand for aarch64 + # TODO: host-x86_64-linux only - expand for other targets runs-on: ubuntu-22.04 steps: - name: clone ock From 64247fc7a5595774fa4756eb8730f9c2355b43b8 Mon Sep 17 00:00:00 2001 From: Alan Forbes Date: Tue, 3 Dec 2024 16:04:23 +0000 Subject: [PATCH 57/59] Tidy comments and logging --- .github/actions/run_opencl_cts/action.yml | 22 ++++------------------ 1 file changed, 4 insertions(+), 18 deletions(-) diff --git a/.github/actions/run_opencl_cts/action.yml b/.github/actions/run_opencl_cts/action.yml index 433b2c8dc..75a8b66d2 100644 --- a/.github/actions/run_opencl_cts/action.yml +++ b/.github/actions/run_opencl_cts/action.yml @@ -23,14 +23,15 @@ runs: shell: bash env: CTS_CSV_FILE: opencl_conformance_tests_${{inputs.test_type}}.csv + # TODO: host-x86_64-linux filter - expand for other targets CTS_FILTER: cts-3.0-online-ignore-linux-host.csv CTS_TIMEOUT: 18:00:00 # OK for github? run: | - ls -lRa * $GITHUB_WORKSPACE && sleep 2 cd "$GITHUB_WORKSPACE/OpenCL-CTS" echo "Running OpenCL CTS tests with CTS file $CTS_CSV_FILE with filter $CTS_FILTER" - # $[[ inputs.cts_profile ]] - needed? - # $[[ inputs.cities_args ]] - needed? + # Note: the following inputs (offered on Gitlab, used by run_cities) are not currently available: + # inputs.cts_profile + # inputs.cities_args set -x python -u "$GITHUB_WORKSPACE/scripts/testing/run_cities.py" -v \ --color=always --timeout $CTS_TIMEOUT \ @@ -41,18 +42,3 @@ runs: -e "CL_PLATFORM_INDEX=0" \ -s "$GITHUB_WORKSPACE/test_conformance/$CTS_CSV_FILE" \ -i "$GITHUB_WORKSPACE/source/cl/scripts/$CTS_FILTER" - -# cd "$CI_PROJECT_DIR/OpenCL-CTS" -# echo "Running OpenCL CTS tests with CTS file $CTS_CSV_FILE with filter $CTS_FILTER" -# python -u "$CI_PROJECT_DIR/oneapi-construction-kit/scripts/testing/run_cities.py" -v -# --color=always -# --timeout $CTS_TIMEOUT -# $[[ inputs.cts_profile ]] -# $[[ inputs.cities_args ]] -# -b "$CI_PROJECT_DIR/OpenCL-CTS/test_conformance" -# -L "$CI_PROJECT_DIR/OpenCL-CTS/lib" -# -e "CLC_EXECUTABLE=$CA_INSTALL_DIR/bin/clc" -# -e "OCL_ICD_FILENAMES=$CA_INSTALL_DIR/lib/libCL.so" -# -e "CL_PLATFORM_INDEX=0" -# -s "$CI_PROJECT_DIR/OpenCL-CTS/test_conformance/$CTS_CSV_FILE" -# -i "$CI_PROJECT_DIR/oneapi-construction-kit/source/cl/scripts/$CTS_FILTER" From d0d51c617c751ae794f1846f9a1a88f28df037bf Mon Sep 17 00:00:00 2001 From: Alan Forbes Date: Tue, 3 Dec 2024 16:15:00 +0000 Subject: [PATCH 58/59] remove platform; tidy formatting --- .github/actions/do_build_opencl_cts/action.yml | 3 ++- .github/actions/run_opencl_cts/action.yml | 3 ++- .github/workflows/planned_testing.yml | 2 -- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/.github/actions/do_build_opencl_cts/action.yml b/.github/actions/do_build_opencl_cts/action.yml index 06f3f323f..5527bea56 100644 --- a/.github/actions/do_build_opencl_cts/action.yml +++ b/.github/actions/do_build_opencl_cts/action.yml @@ -40,7 +40,8 @@ runs: shell: bash env: # TODO: host-x86_64-linux 'toolchain' - expand for other targets - CMAKE_TOOLCHAIN: "-DCMAKE_C_COMPILER=gcc -DCMAKE_C_FLAGS=-m64 -DCMAKE_CXX_COMPILER=g++ -DCMAKE_CXX_FLAGS=-m64 -DPKG_CONFIG_EXECUTABLE=pkg-config" + CMAKE_TOOLCHAIN: "-DCMAKE_C_COMPILER=gcc -DCMAKE_C_FLAGS=-m64 -DCMAKE_CXX_COMPILER=g++ \ + -DCMAKE_CXX_FLAGS=-m64 -DPKG_CONFIG_EXECUTABLE=pkg-config" run: | # get spirv-as sudo apt-get update diff --git a/.github/actions/run_opencl_cts/action.yml b/.github/actions/run_opencl_cts/action.yml index 75a8b66d2..b88a86e60 100644 --- a/.github/actions/run_opencl_cts/action.yml +++ b/.github/actions/run_opencl_cts/action.yml @@ -29,7 +29,8 @@ runs: run: | cd "$GITHUB_WORKSPACE/OpenCL-CTS" echo "Running OpenCL CTS tests with CTS file $CTS_CSV_FILE with filter $CTS_FILTER" - # Note: the following inputs (offered on Gitlab, used by run_cities) are not currently available: + # Note: the following inputs (offered on Gitlab, used by run_cities) are not provided + # for current targets: # inputs.cts_profile # inputs.cities_args set -x diff --git a/.github/workflows/planned_testing.yml b/.github/workflows/planned_testing.yml index f5ac16766..cc2c6737e 100644 --- a/.github/workflows/planned_testing.yml +++ b/.github/workflows/planned_testing.yml @@ -133,11 +133,9 @@ jobs: - name: clone ock uses: actions/checkout@v4 with: - # platform: for toolchain files - TODO: needed? # scripts: for run_cities.py # source: for CTS filter.csv files sparse-checkout: | - platform scripts source .github From 0dd60cdd533ec208523e1aad2aa19d4a3e7901d0 Mon Sep 17 00:00:00 2001 From: Alan Forbes Date: Wed, 11 Dec 2024 13:47:58 +0000 Subject: [PATCH 59/59] Update comments following review --- .github/actions/do_build_opencl_cts/action.yml | 1 - .github/actions/run_opencl_cts/action.yml | 4 ---- 2 files changed, 5 deletions(-) diff --git a/.github/actions/do_build_opencl_cts/action.yml b/.github/actions/do_build_opencl_cts/action.yml index 5527bea56..bae51173d 100644 --- a/.github/actions/do_build_opencl_cts/action.yml +++ b/.github/actions/do_build_opencl_cts/action.yml @@ -6,7 +6,6 @@ inputs: description: 'target architecture' runs: - # We don't want a new docker just a list of steps, so mark as composite using: "composite" steps: - name: calc vars diff --git a/.github/actions/run_opencl_cts/action.yml b/.github/actions/run_opencl_cts/action.yml index b88a86e60..975a67586 100644 --- a/.github/actions/run_opencl_cts/action.yml +++ b/.github/actions/run_opencl_cts/action.yml @@ -29,10 +29,6 @@ runs: run: | cd "$GITHUB_WORKSPACE/OpenCL-CTS" echo "Running OpenCL CTS tests with CTS file $CTS_CSV_FILE with filter $CTS_FILTER" - # Note: the following inputs (offered on Gitlab, used by run_cities) are not provided - # for current targets: - # inputs.cts_profile - # inputs.cities_args set -x python -u "$GITHUB_WORKSPACE/scripts/testing/run_cities.py" -v \ --color=always --timeout $CTS_TIMEOUT \