Initial commit
Αυτή η υποβολή περιλαμβάνεται σε:
@@ -0,0 +1,60 @@
|
||||
# This is a basic workflow to help you get started with Actions
|
||||
|
||||
name: analyze commands
|
||||
|
||||
# Controls when the workflow will run
|
||||
on:
|
||||
push:
|
||||
branches: [ main, dev ]
|
||||
pull_request:
|
||||
branches: [ main, dev ]
|
||||
|
||||
# Allows you to run this workflow manually from the Actions tab
|
||||
workflow_dispatch:
|
||||
|
||||
# A workflow run is made up of one or more jobs that can run sequentially or in parallel
|
||||
jobs:
|
||||
build:
|
||||
# The type of runner that the job will run on
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
# Steps represent a sequence of tasks that will be executed as part of the job
|
||||
steps:
|
||||
# Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it
|
||||
- uses: actions/checkout@v3
|
||||
with:
|
||||
submodules: recursive
|
||||
token: ${{ secrets.GH_PAT }}
|
||||
# Cancel any previous runs
|
||||
- name: Cancel Previous Runs
|
||||
uses: styfle/cancel-workflow-action@0.11.0
|
||||
|
||||
- name: Install Python
|
||||
uses: actions/setup-python@v2
|
||||
with:
|
||||
python-version: '3.8'
|
||||
- name: Install Rocm
|
||||
run: |
|
||||
sudo ./cmake/rocm_install.sh
|
||||
sudo apt-get update
|
||||
sudo apt-get dist-upgrade -y
|
||||
sudo apt-get autoclean
|
||||
- name: Install python prereqs
|
||||
run: |
|
||||
python3 -m pip install -r requirements.txt
|
||||
python3 -m pip install pyinstaller pytest pytest-cov mock
|
||||
|
||||
- name: build and install
|
||||
run: |
|
||||
ls
|
||||
ls src
|
||||
ls src/mibench
|
||||
ls src/mibench/roofline
|
||||
cmake -B build-omniperf -DCMAKE_INSTALL_PREFIX=/opt/omniperf -DROCM_VERSIONS="4.3.1" "4.5.2" "5.0.2" "5.1.3" "5.2.3"
|
||||
cmake --build build-omniperf --target all
|
||||
cmake --build build-omniperf --target install
|
||||
- name: run ctest
|
||||
run: |
|
||||
cd build-omniperf
|
||||
ctest --verbose -R test_analyze_commands
|
||||
|
||||
@@ -0,0 +1,61 @@
|
||||
# This is a basic workflow to help you get started with Actions
|
||||
|
||||
name: analyze workloads
|
||||
|
||||
|
||||
# Controls when the workflow will run
|
||||
on:
|
||||
push:
|
||||
branches: [ main, dev ]
|
||||
pull_request:
|
||||
branches: [ main, dev ]
|
||||
|
||||
# Allows you to run this workflow manually from the Actions tab
|
||||
workflow_dispatch:
|
||||
|
||||
# A workflow run is made up of one or more jobs that can run sequentially or in parallel
|
||||
jobs:
|
||||
build:
|
||||
# The type of runner that the job will run on
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
# Steps represent a sequence of tasks that will be executed as part of the job
|
||||
steps:
|
||||
# Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it
|
||||
- uses: actions/checkout@v3
|
||||
with:
|
||||
submodules: recursive
|
||||
token: ${{ secrets.GH_PAT }}
|
||||
# Cancel any previous runs
|
||||
- name: Cancel Previous Runs
|
||||
uses: styfle/cancel-workflow-action@0.11.0
|
||||
|
||||
|
||||
- name: Install Python
|
||||
uses: actions/setup-python@v2
|
||||
with:
|
||||
python-version: '3.8'
|
||||
- name: Install Rocm
|
||||
run: |
|
||||
sudo ./cmake/rocm_install.sh
|
||||
sudo apt-get update
|
||||
sudo apt-get dist-upgrade -y
|
||||
sudo apt-get autoclean
|
||||
- name: Install python prereqs
|
||||
run: |
|
||||
python3 -m pip install -r requirements.txt
|
||||
python3 -m pip install pyinstaller pytest pytest-cov
|
||||
|
||||
- name: build and install
|
||||
run: |
|
||||
ls
|
||||
ls src
|
||||
ls src/mibench
|
||||
ls src/mibench/roofline
|
||||
cmake -B build-omniperf -DCMAKE_INSTALL_PREFIX=/opt/omniperf -DROCM_VERSIONS="4.3.1" "4.5.2" "5.0.2" "5.1.3" "5.2.3"
|
||||
cmake --build build-omniperf --target all
|
||||
cmake --build build-omniperf --target install
|
||||
- name: run ctest
|
||||
run: |
|
||||
cd build-omniperf
|
||||
ctest --verbose -R test_analyze_workloads test_saved_analysis
|
||||
@@ -0,0 +1,78 @@
|
||||
|
||||
name: formatting
|
||||
|
||||
on:
|
||||
push:
|
||||
branches: [ main, dev ]
|
||||
pull_request:
|
||||
branches: [ main, dev ]
|
||||
|
||||
concurrency:
|
||||
group: ${{ github.workflow }}-${{ github.ref }}
|
||||
cancel-in-progress: true
|
||||
|
||||
jobs:
|
||||
python:
|
||||
runs-on: ubuntu-20.04
|
||||
strategy:
|
||||
matrix:
|
||||
python-version: [3.8, 3.9]
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
# Cancel any previous runs
|
||||
- name: Cancel Previous Runs
|
||||
uses: styfle/cancel-workflow-action@0.11.0
|
||||
|
||||
- name: Set up Python ${{ matrix.python-version }}
|
||||
uses: actions/setup-python@v4
|
||||
with:
|
||||
python-version: ${{ matrix.python-version }}
|
||||
- name: Install dependencies
|
||||
run: |
|
||||
python -m pip install --upgrade pip
|
||||
python -m pip install black
|
||||
if [ -f requirements.txt ]; then python -m pip install -r requirements.txt; fi
|
||||
- name: black format
|
||||
run: |
|
||||
black --diff --check .
|
||||
|
||||
cmake:
|
||||
runs-on: ubuntu-20.04
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
- name: Install dependencies
|
||||
run: |
|
||||
sudo apt-get update
|
||||
sudo apt-get install -y python3-pip
|
||||
python3 -m pip install cmake-format
|
||||
- name: cmake-format
|
||||
run: |
|
||||
set +e
|
||||
cmake-format -i $(find . -type f | egrep 'CMakeLists.txt|\.cmake$')
|
||||
if [ $(git diff | wc -l) -gt 0 ]; then
|
||||
echo -e "\nError! CMake code not formatted. Run cmake-format...\n"
|
||||
echo -e "\nFiles:\n"
|
||||
git diff --name-only
|
||||
echo -e "\nFull diff:\n"
|
||||
git diff
|
||||
exit 1
|
||||
fi
|
||||
|
||||
python-bytecode:
|
||||
runs-on: ubuntu-20.04
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
- name: find-bytecode
|
||||
run: |
|
||||
set +e
|
||||
FILES=$(find . -type f | egrep '__pycache__|\.pyc$')
|
||||
if [ -n "${FILES}" ]; then
|
||||
echo -e "\nError! Python bytecode included in commit\n"
|
||||
echo -e "### FILES: ###"
|
||||
echo -e "${FILES}"
|
||||
echo -e "##############"
|
||||
exit 1
|
||||
fi
|
||||
@@ -0,0 +1,42 @@
|
||||
name: Packaging
|
||||
|
||||
on:
|
||||
push:
|
||||
tags:
|
||||
- "v[1-9].[0-9]+.[0-9]+*"
|
||||
|
||||
jobs:
|
||||
distbuild:
|
||||
runs-on: ubuntu-latest
|
||||
name: Create release distribution
|
||||
env:
|
||||
INSTALL_DIR: /tmp
|
||||
steps:
|
||||
- name: Checkout code
|
||||
uses: actions/checkout@v3
|
||||
- name: Cancel Previous Runs
|
||||
uses: styfle/cancel-workflow-action@0.11.0
|
||||
- name: Verify VERSION file consistent with tag
|
||||
run: utils/ver_check.py --tag ${{github.ref_name}}
|
||||
- name: Install Python
|
||||
uses: actions/setup-python@v4
|
||||
with:
|
||||
python-version: '3.8'
|
||||
- name: Python dependency installs
|
||||
run: python3 -m pip install -t${INSTALL_DIR}/python-libs -r requirements.txt
|
||||
- name: Configure
|
||||
run: |
|
||||
mkdir build
|
||||
cd build
|
||||
cmake -DPYTHON_DEPS=${INSTALL_DIR}/python-libs ..
|
||||
- name: Release tarball
|
||||
run: |
|
||||
cd build
|
||||
make package_source
|
||||
- name: Rename tarball
|
||||
run: mv build/omniperf-*.tar.gz build/omniperf-${{github.ref_name}}.tar.gz
|
||||
- name: Archive tarball
|
||||
uses: actions/upload-artifact@v3
|
||||
with:
|
||||
name: omniperf-${{github.ref_name}}.tar.gz
|
||||
path: build/omniperf-${{github.ref_name}}.tar.gz
|
||||
@@ -0,0 +1,64 @@
|
||||
# This is a basic workflow to help you get started with Actions
|
||||
|
||||
name: Packaging
|
||||
|
||||
# Controls when the workflow will run
|
||||
on:
|
||||
push:
|
||||
tags:
|
||||
- "v*.*.*"
|
||||
|
||||
# Allows you to run this workflow manually from the Actions tab
|
||||
workflow_dispatch:
|
||||
|
||||
# A workflow run is made up of one or more jobs that can run sequentially or in parallel
|
||||
jobs:
|
||||
build:
|
||||
# The type of runner that the job will run on
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
# Steps represent a sequence of tasks that will be executed as part of the job
|
||||
steps:
|
||||
# Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it
|
||||
- uses: actions/checkout@v3
|
||||
with:
|
||||
submodules: recursive
|
||||
token: ${{ secrets.GH_PAT }}
|
||||
# Cancel any previous runs
|
||||
- name: Cancel Previous Runs
|
||||
uses: styfle/cancel-workflow-action@0.11.0
|
||||
|
||||
- name: Install Python
|
||||
uses: actions/setup-python@v2
|
||||
with:
|
||||
python-version: '3.8'
|
||||
- name: Install Rocm
|
||||
run: |
|
||||
sudo ./cmake/rocm_install.sh
|
||||
sudo apt-get update
|
||||
sudo apt-get dist-upgrade -y
|
||||
sudo apt-get autoclean
|
||||
- name: Install python prereqs
|
||||
run: |
|
||||
python3 -m pip install -r requirements.txt
|
||||
python3 -m pip install pyinstaller
|
||||
|
||||
- name: build and install
|
||||
run: |
|
||||
cmake -B build-omniperf -DCMAKE_INSTALL_PREFIX=/opt/omniperf -DROCM_VERSIONS="4.3.1" "4.5.2" "5.0.2" "5.1.3" "5.2.3"
|
||||
cmake --build build-omniperf --target all
|
||||
cmake --build build-omniperf --target install
|
||||
|
||||
- name: Read VERSION
|
||||
id: VERSION
|
||||
uses: juliangruber/read-file-action@v1
|
||||
with:
|
||||
path: ./VERSION
|
||||
|
||||
- name: generate packaging
|
||||
run: |
|
||||
cd build-omniperf
|
||||
cpack -G STGZ
|
||||
cpack -G DEB -D CPACK_PACKAGING_INSTALL_PREFIX=/opt/omniperf
|
||||
cpack -G RPM -D CPACK_PACKAGING_INSTALL_PREFIX=/opt/omniperf
|
||||
ls
|
||||
@@ -0,0 +1,92 @@
|
||||
name: Tarball
|
||||
|
||||
on:
|
||||
push:
|
||||
branches:
|
||||
- main
|
||||
pull_request:
|
||||
|
||||
jobs:
|
||||
distbuild:
|
||||
runs-on: ubuntu-latest
|
||||
name: Create distribution tarball
|
||||
env:
|
||||
INSTALL_DIR: /tmp/foo1
|
||||
steps:
|
||||
- name: Checkout code
|
||||
uses: actions/checkout@v3
|
||||
- name: Cancel Previous Runs
|
||||
uses: styfle/cancel-workflow-action@0.11.0
|
||||
- name: Install Python
|
||||
uses: actions/setup-python@v4
|
||||
with:
|
||||
python-version: '3.8'
|
||||
- name: Python dependency installs
|
||||
run: python3 -m pip install -t${INSTALL_DIR}/python-libs -r requirements.txt
|
||||
- name: Configure
|
||||
run: |
|
||||
mkdir build
|
||||
cd build
|
||||
cmake -DPYTHON_DEPS=${INSTALL_DIR}/python-libs ..
|
||||
- name: Release tarball
|
||||
run: |
|
||||
cd build
|
||||
make package_source
|
||||
- name: Archive tarball
|
||||
uses: actions/upload-artifact@v3
|
||||
with:
|
||||
name: tarball-testing
|
||||
path: build/omniperf-*.tar.gz
|
||||
retention-days: 3
|
||||
disttest:
|
||||
runs-on: ubuntu-latest
|
||||
needs: [distbuild]
|
||||
name: Tarball tests
|
||||
env:
|
||||
INSTALL_DIR: /tmp/foo2
|
||||
steps:
|
||||
- name: Cancel previous runs
|
||||
uses: styfle/cancel-workflow-action@0.11.0
|
||||
- name: Access tarball
|
||||
uses: actions/download-artifact@v3
|
||||
with:
|
||||
name: tarball-testing
|
||||
- name: Expand
|
||||
run: tar xfz omniperf-*.tar.gz; rm omniperf-*.tar.gz
|
||||
- name: Python dependency installs
|
||||
run: |
|
||||
cd omniperf-*
|
||||
python3 -m pip install -t${INSTALL_DIR}/python-libs -r requirements.txt
|
||||
- name: Configure
|
||||
run: |
|
||||
cd omniperf-*
|
||||
mkdir build
|
||||
cd build
|
||||
cmake -DCMAKE_INSTALL_PREFIX=${INSTALL_DIR}/omniperf \
|
||||
-DPYTHON_DEPS=${INSTALL_DIR}/python-libs \
|
||||
-DMOD_INSTALL_PATH=${INSTALL_DIR}/modulefiles ..
|
||||
- name: Install
|
||||
run: |
|
||||
cd omniperf-*
|
||||
cd build
|
||||
make install
|
||||
- name: Verify expected paths
|
||||
run: |
|
||||
test -d $INSTALL_DIR/omniperf
|
||||
test -d $INSTALL_DIR/omniperf/bin
|
||||
test -x $INSTALL_DIR/omniperf/bin/omniperf
|
||||
test -d $INSTALL_DIR/modulefiles/omniperf
|
||||
- name: Query version (setting PYTHONPATH by hand)
|
||||
run: |
|
||||
export PYTHONPATH=${INSTALL_DIR}/python-libs:$PYTHONPATH
|
||||
$INSTALL_DIR/omniperf/bin/omniperf --version
|
||||
- name: Install Lmod
|
||||
run: sudo apt-get install -y lmod
|
||||
- name: Access omniperf using modulefile
|
||||
run: |
|
||||
. /etc/profile.d/lmod.sh
|
||||
module use $INSTALL_DIR/modulefiles
|
||||
module load omniperf
|
||||
module list
|
||||
omniperf --version
|
||||
|
||||
Αναφορά σε νέο ζήτημα
Block a user