From cd0ea201b08a6215ef4a011a0562faef912f6ed7 Mon Sep 17 00:00:00 2001 From: Colin Davidson Date: Thu, 22 Jun 2023 10:20:07 +0100 Subject: [PATCH] Added simple host build of UnitCL with sccache --- .github/actions/action.yml | 61 +++++++++++++++++++++++++++++ .github/workflows/docs.yml | 3 +- .github/workflows/merge_request.yml | 56 ++++++++++++++++++++++++++ 3 files changed, 119 insertions(+), 1 deletion(-) create mode 100644 .github/actions/action.yml create mode 100644 .github/workflows/merge_request.yml diff --git a/.github/actions/action.yml b/.github/actions/action.yml new file mode 100644 index 000000000..2eeeca8d2 --- /dev/null +++ b/.github/actions/action.yml @@ -0,0 +1,61 @@ +name: build-ock +description: Action to build the oneapi-construction-kit but not run + +inputs: + build_type: + description: 'build type (Release, ReleaseAssert)' + default: ReleaseAssert + mux_target: + description: 'TBD' + default: "host" + usm: + description: 'TBD' + default: ON + command_buffer: + description: 'TBD' + default: ON + host_fp16: + description: 'TBD' + default: OFF + images: + description: 'TBD' + default: OFF + debug_support: + description: 'TBD' + default: OFF + offline_kernel_tests: + description: 'TBD' + default: ON + llvm_install_dir: + description: 'TBD' + default: llvm_install +runs: + # We don't want a new docker just a list of steps, so mark as composite + using: "composite" + steps: + - name: cmake_ock + run: + echo llvm_install_dir is "${{ inputs.llvm_install_dir }}" + # cmake -GNinja + # -Bbuild + # -DCMAKE_C_COMPILER_LAUNCHER=sccache + # -D CMAKE_CXX_COMPILER_LAUNCHER=sccache + # -DCA_MUX_TARGETS_TO_ENABLE="host" + # -DCA_ENABLE_API=cl + # -DCA_LLVM_INSTALL_DIR=${{ inputs.llvm_install_dir }} + # -DCA_ENABLE_DEBUG_SUPPORT=${{ inputs.debug_support }} + # -DCMAKE_BUILD_TYPE=${{ inputs.build_type }} + # -DCA_ENABLE_HOST_IMAGE_SUPPORT=OFF + # -DCA_HOST_ENABLE_BUILTIN_KERNEL=${{ inputs.debug_support }} + # -DCA_HOST_ENABLE_BUILTINS_EXTENSION=ON + # -DCA_HOST_ENABLE_FP16=${{ inputs.host_fp16 }} + # -DCA_CL_ENABLE_OFFLINE_KERNEL_TESTS=${{ inputs.offline_kernel_tests }} + # -DCA_ASSEMBLE_SPIRV_LL_LIT_TESTS_OFFLINE=OFF + # -DOCL_EXTENSION_cl_intel_unified_shared_memory=${{ inputs.usm }} + # -DOCL_EXTENSION_cl_khr_command_buffer=${{ inputs.command_buffer }} + # -DOCL_EXTENSION_cl_khr_command_buffer_mutable_dispatch=${{ inputs.command_buffer }} + # -DCA_CL_ENABLE_ICD_LOADER=ON . + # - name: build_ock + # run: + # ninja -C build oclc UnitCL UnitCargo UnitMux UnitCompiler UnitMD FuzzCL + # clVectorAddition veczc diff --git a/.github/workflows/docs.yml b/.github/workflows/docs.yml index 618a40a72..f4525d0dd 100644 --- a/.github/workflows/docs.yml +++ b/.github/workflows/docs.yml @@ -8,7 +8,8 @@ name: Build documentation # order to satisfy our current cmake configurations e.g. spirv-tools on: - pull_request: +# temporarily disable for testing purposes +# pull_request: # Allows you to run this workflow manually from the Actions tab workflow_dispatch: diff --git a/.github/workflows/merge_request.yml b/.github/workflows/merge_request.yml new file mode 100644 index 000000000..285df88a6 --- /dev/null +++ b/.github/workflows/merge_request.yml @@ -0,0 +1,56 @@ +# Simple workflow for running merge request tests +name: Merge Request tester + +on: + # temporary + push: + + pull_request: + + # Allows you to run this workflow manually from the Actions tab + workflow_dispatch: + +jobs: + build_ca_host_x86_64: + runs-on: ubuntu-22.04 + + steps: + + # - name: Install prerequisites + # run: | + # sudo apt-get install -y spirv-tools + # pip install lit + + # - name: Install Ninja + # uses: llvm/actions/install-ninja@main + + - name: Checkout repo + uses: actions/checkout@v3 + with: + repository: codeplaysoftware/oneapi-construction-kit + + # - name: Setup ccache + # uses: hendrikmuhs/ccache-action@v1.2 + # with: + # max-size: 50M + # key: sccache-build_ca_host_x86_64 + # variant: sccache + + # - name: load llvm + # uses: actions/cache/restore@v3 + # with: + # path: llvm_install/** + # key: llvm-ubuntu-22.04-v16-RelAssert + # fail-on-cache-miss: true + + - name: build_x86-llvm15-cl3.0-release + uses: ./.github/actions + with: + build_type: Release + mux_target: host + llvm_install: llvm_install + + # - name: build_ca + # run: + # ninja -C build oclc UnitCL UnitCargo UnitMux UnitCompiler UnitMD FuzzCL + # clVectorAddition veczc