From 681e607ebfe4809ef332231e21dbe64dc92189dd Mon Sep 17 00:00:00 2001 From: Adam Date: Wed, 8 Nov 2023 09:32:18 +0100 Subject: [PATCH] Add system info in CI workflows run on self-hosted runners fixes #1002 --- .github/scripts/get_system_info.sh | 87 ++++++++++++++++++++++++++++++ .github/workflows/cmake.yml | 8 +++ 2 files changed, 95 insertions(+) create mode 100755 .github/scripts/get_system_info.sh diff --git a/.github/scripts/get_system_info.sh b/.github/scripts/get_system_info.sh new file mode 100755 index 0000000000..6ca38a33ef --- /dev/null +++ b/.github/scripts/get_system_info.sh @@ -0,0 +1,87 @@ +#!/usr/bin/env bash + +# Copyright (C) 2023 Intel Corporation +# Part of the Unified-Runtime Project, under the Apache License v2.0 with LLVM Exceptions. +# See LICENSE.TXT +# SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception + +# get_system_info.sh - Script for printing system info + +function check_L0_version { + if command -v dpkg &> /dev/null; then + dpkg -l | grep level-zero && return + fi + + if command -v rpm &> /dev/null; then + rpm -qa | grep level-zero && return + fi + + if command -v zypper &> /dev/null; then + zypper se level-zero && return + fi + + echo "level-zero not installed" +} + +function system_info { + echo "**********system_info**********" + cat /etc/os-release | grep -oP "PRETTY_NAME=\K.*" + cat /proc/version + echo "**********SYCL-LS**********" + source /opt/intel/oneapi/setvars.sh + sycl-ls + echo "**********VGA**********" + lspci | grep VGA + echo "**********CUDA Version**********" + if command -v nvidia-smi &> /dev/null; then + nvidia-smi + else + echo "CUDA not installed" + fi + echo "**********L0 Version**********" + check_L0_version + echo "**********ROCm Version**********" + if command -v rocminfo &> /dev/null; then + rocminfo + else + echo "ROCm not installed" + fi + echo "**********/proc/cmdline**********" + cat /proc/cmdline + echo "**********CPU info**********" + lscpu + echo "**********/proc/meminfo**********" + cat /proc/meminfo + echo "**********build/bin/urinfo**********" + $(dirname "$(readlink -f "$0")")/../../build/bin/urinfo || true + echo "******OpenCL*******" + # The driver version of OpenCL Graphics is the compute-runtime version + clinfo || echo "OpenCL not installed" + echo "**********list-environment**********" + echo "PATH=$PATH" + echo + echo "CPATH=$CPATH" + echo + echo "LD_LIBRARY_PATH=$LD_LIBRARY_PATH" + echo + echo "LIBRARY_PATH=$LIBRARY_PATH" + echo + echo "PKG_CONFIG_PATH=$PKG_CONFIG_PATH" + echo + echo "******list-build-system-versions*******" + gcc --version 2>/dev/null || true + echo + clang --version 2>/dev/null || true + echo + make --version 2>/dev/null || true + echo "**********/proc/modules**********" + cat /proc/modules + echo "***************installed-packages***************" + # Instructions below will return some minor errors, as they are dependent on the Linux distribution. + zypper se --installed-only 2>/dev/null || true + apt list --installed 2>/dev/null || true + yum list installed 2>/dev/null || true +} + +# Call the function above to print system info. +system_info diff --git a/.github/workflows/cmake.yml b/.github/workflows/cmake.yml index 780f142f33..bf20594f9b 100644 --- a/.github/workflows/cmake.yml +++ b/.github/workflows/cmake.yml @@ -221,6 +221,10 @@ jobs: working-directory: ${{github.workspace}}/build run: ctest -C ${{matrix.build_type}} --output-on-failure -L "conformance" --timeout 180 + - name: Get information about platform + if: ${{ always() }} + run: .github/scripts/get_system_info.sh + examples-build-hw: name: Build - examples on HW if: github.repository == 'oneapi-src/unified-runtime' # run only on upstream; forks won't have the HW @@ -273,6 +277,10 @@ jobs: cat ${HOME}/.profile || true rm ${HOME}/.profile || true + - name: Get information about platform + if: ${{ always() }} + run: .github/scripts/get_system_info.sh + windows-build: name: Build - Windows strategy: