diff --git a/.github/workflows/generate-coverage.yaml b/.github/workflows/generate-coverage.yaml index 6d2f7cc339..aae2fb4933 100644 --- a/.github/workflows/generate-coverage.yaml +++ b/.github/workflows/generate-coverage.yaml @@ -34,7 +34,7 @@ jobs: - name: Install CMake and Ninja run: | - sudo apt-get install cmake ninja-build + sudo apt-get install ninja-build - name: Setup Python uses: actions/setup-python@v4 @@ -79,7 +79,7 @@ jobs: - name: Install dpctl dependencies shell: bash -l {0} run: | - pip install numpy cython setuptools pytest pytest-cov scikit-build coverage[toml] + pip install numpy cython setuptools pytest pytest-cov scikit-build cmake coverage[toml] - name: Build dpctl with coverage shell: bash -l {0} diff --git a/.github/workflows/generate-docs.yml b/.github/workflows/generate-docs.yml index 434077f1cc..a9c65720cf 100644 --- a/.github/workflows/generate-docs.yml +++ b/.github/workflows/generate-docs.yml @@ -35,10 +35,10 @@ jobs: if: ${{ !github.event.pull_request || github.event.action != 'closed' }} run: | sudo apt-get install doxygen - - name: Install CMake and Ninja + - name: Install Ninja if: ${{ !github.event.pull_request || github.event.action != 'closed' }} run: | - sudo apt-get install cmake ninja-build + sudo apt-get install ninja-build - name: Setup Python if: ${{ !github.event.pull_request || github.event.action != 'closed' }} uses: actions/setup-python@v4 @@ -49,7 +49,7 @@ jobs: if: ${{ !github.event.pull_request || github.event.action != 'closed' }} shell: bash -l {0} run: | - pip install numpy cython setuptools scikit-build sphinx sphinx_rtd_theme pydot graphviz sphinxcontrib-programoutput + pip install numpy cython setuptools scikit-build cmake sphinx sphinx_rtd_theme pydot graphviz sphinxcontrib-programoutput - name: Checkout repo uses: actions/checkout@v3 with: diff --git a/.github/workflows/os-llvm-sycl-build.yml b/.github/workflows/os-llvm-sycl-build.yml index 86bd4981d1..7277e5d60d 100644 --- a/.github/workflows/os-llvm-sycl-build.yml +++ b/.github/workflows/os-llvm-sycl-build.yml @@ -11,11 +11,12 @@ jobs: env: DOWNLOAD_URL_PREFIX: https://github.com/intel/llvm/releases/download - DRIVER_PATH: 2022-WW13 - OCLCPUEXP_FN: oclcpuexp-2022.13.3.0.16_rel.tar.gz - FPGAEMU_FN: fpgaemu-2022.13.3.0.16_rel.tar.gz - TBB_URL: https://github.com/oneapi-src/oneTBB/releases/download/v2021.5.0 - TBB_FN: oneapi-tbb-2021.5.0-lin.tgz + DRIVER_PATH: 2022-WW50 + OCLCPUEXP_FN: oclcpuexp-2022.15.12.0.01_rel.tar.gz + FPGAEMU_FN: fpgaemu-2022.15.12.0.01_rel.tar.gz + TBB_URL: https://github.com/oneapi-src/oneTBB/releases/download/v2021.7.0/ + TBB_INSTALL_DIR: oneapi-tbb-2021.7.0 + TBB_FN: oneapi-tbb-2021.7.0-lin.tgz steps: - name: Cancel Previous Runs @@ -79,7 +80,7 @@ jobs: mkdir -p fpgaemu [ -d oclcpuexp/x64 ] || tar xf ${OCLCPUEXP_FN} -C oclcpuexp [ -d fpgaemu/x64 ] || tar xf ${FPGAEMU_FN} -C fpgaemu - [ -d oneapi-tbb-2021.5.0/lib ] || tar xf ${TBB_FN} + [ -d ${TBB_INSTALL_DIR}/lib ] || tar xf ${TBB_FN} mkdir -p dpcpp_compiler/lib mkdir -p dpcpp_compiler/lib/oclfpga touch dpcpp_compiler/lib/oclfpga/fpgavars.sh @@ -88,7 +89,7 @@ jobs: - name: Install system components shell: bash -l {0} run: | - sudo apt-get install cmake ninja-build libtinfo5 + sudo apt-get install ninja-build libtinfo5 - name: Setup Python uses: actions/setup-python@v4 @@ -99,24 +100,65 @@ jobs: - name: Install dpctl dependencies shell: bash -l {0} run: | - pip install numpy cython setuptools pytest scikit-build + pip install numpy cython setuptools pytest scikit-build cmake - name: Checkout repo uses: actions/checkout@v3 with: fetch-depth: 0 - - name: build dpctl + - name: Report compiler version shell: bash -l {0} run: | export SYCL_BUNDLE_FOLDER=/home/runner/work/sycl_bundle source ${SYCL_BUNDLE_FOLDER}/dpcpp_compiler/startup.sh export LD_LIBRARY_PATH=${SYCL_BUNDLE_FOLDER}/oclcpuexp/x64:${LD_LIBRARY_PATH} export LD_LIBRARY_PATH=${SYCL_BUNDLE_FOLDER}/fpgaemu/x64:${LD_LIBRARY_PATH} - export LD_LIBRARY_PATH=${SYCL_BUNDLE_FOLDER}/oneapi-tbb-2021.5.0/lib/intel64/gcc4.8:${LD_LIBRARY_PATH} + export LD_LIBRARY_PATH=${SYCL_BUNDLE_FOLDER}/${TBB_INSTALL_DIR}/lib/intel64/gcc4.8:${LD_LIBRARY_PATH} export OCL_ICD_FILENAMES=libintelocl.so:libintelocl_emu.so clang++ --version + + - name: Run sycl-ls + shell: bash -l {0} + run: | + export SYCL_BUNDLE_FOLDER=/home/runner/work/sycl_bundle + source ${SYCL_BUNDLE_FOLDER}/dpcpp_compiler/startup.sh + export LD_LIBRARY_PATH=${SYCL_BUNDLE_FOLDER}/oclcpuexp/x64:${LD_LIBRARY_PATH} + export LD_LIBRARY_PATH=${SYCL_BUNDLE_FOLDER}/fpgaemu/x64:${LD_LIBRARY_PATH} + export LD_LIBRARY_PATH=${SYCL_BUNDLE_FOLDER}/${TBB_INSTALL_DIR}/lib/intel64/gcc4.8:${LD_LIBRARY_PATH} + export OCL_ICD_FILENAMES=libintelocl.so:libintelocl_emu.so sycl-ls + + - name: build dpctl + shell: bash -l {0} + run: | + export SYCL_BUNDLE_FOLDER=/home/runner/work/sycl_bundle + source ${SYCL_BUNDLE_FOLDER}/dpcpp_compiler/startup.sh + export LD_LIBRARY_PATH=${SYCL_BUNDLE_FOLDER}/oclcpuexp/x64:${LD_LIBRARY_PATH} + export LD_LIBRARY_PATH=${SYCL_BUNDLE_FOLDER}/fpgaemu/x64:${LD_LIBRARY_PATH} + export LD_LIBRARY_PATH=${SYCL_BUNDLE_FOLDER}/${TBB_INSTALL_DIR}/lib/intel64/gcc4.8:${LD_LIBRARY_PATH} + export OCL_ICD_FILENAMES=libintelocl.so:libintelocl_emu.so CC=clang CXX=clang++ python setup.py develop -G Ninja - python -c "import dpctl; dpctl.lsplatform()" || exit 1 + + - name: Run lsplatforms + shell: bash -l {0} + run: | + export SYCL_BUNDLE_FOLDER=/home/runner/work/sycl_bundle + source ${SYCL_BUNDLE_FOLDER}/dpcpp_compiler/startup.sh + export LD_LIBRARY_PATH=${SYCL_BUNDLE_FOLDER}/oclcpuexp/x64:${LD_LIBRARY_PATH} + export LD_LIBRARY_PATH=${SYCL_BUNDLE_FOLDER}/fpgaemu/x64:${LD_LIBRARY_PATH} + export LD_LIBRARY_PATH=${SYCL_BUNDLE_FOLDER}/${TBB_INSTALL_DIR}/lib/intel64/gcc4.8:${LD_LIBRARY_PATH} + export OCL_ICD_FILENAMES=libintelocl.so:libintelocl_emu.so + python -m dpctl -f || exit 1 + python -m pytest -v dpctl/tests + + - name: Run dpctl/tests + shell: bash -l {0} + run: | + export SYCL_BUNDLE_FOLDER=/home/runner/work/sycl_bundle + source ${SYCL_BUNDLE_FOLDER}/dpcpp_compiler/startup.sh + export LD_LIBRARY_PATH=${SYCL_BUNDLE_FOLDER}/oclcpuexp/x64:${LD_LIBRARY_PATH} + export LD_LIBRARY_PATH=${SYCL_BUNDLE_FOLDER}/fpgaemu/x64:${LD_LIBRARY_PATH} + export LD_LIBRARY_PATH=${SYCL_BUNDLE_FOLDER}/${TBB_INSTALL_DIR}/lib/intel64/gcc4.8:${LD_LIBRARY_PATH} + export OCL_ICD_FILENAMES=libintelocl.so:libintelocl_emu.so python -m pytest -v dpctl/tests