- PolicyBookでevalからvalueに変換する時の定数調整。 #1074
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# for Linux environment | |
name: Make CI (for Ubuntu Linux) | |
on: | |
push: | |
branches: | |
- "**" | |
pull_request: | |
branches: | |
- "**" | |
jobs: | |
build-ubuntu: | |
# ubuntu-latest = ubuntu-20.04 | |
# https://docs.github.com/ja/actions/using-github-hosted-runners/about-github-hosted-runners | |
# https://github.com/actions/virtual-environments/blob/main/images/linux/Ubuntu2004-Readme.md | |
runs-on: ubuntu-20.04 | |
strategy: | |
matrix: | |
edition: | |
- YANEURAOU_ENGINE_NNUE | |
- YANEURAOU_ENGINE_MATERIAL | |
- YANEURAOU_MATE_ENGINE | |
- TANUKI_MATE_ENGINE | |
- USER_ENGINE | |
compiler: | |
- clang++-15 | |
- clang++-14 | |
- clang++-12 | |
- g++-10 | |
target: | |
- "normal,tournament" | |
- evallearn | |
archcpu: | |
- "AVX512,AVX2,SSE42,SSE41,SSSE3,SSE2,OTHER,ZEN2,ZEN1,AVX512VNNI" | |
- "ZEN3,AVXVNNI" | |
- "NO_SSE" | |
exclude: | |
# 以下のエディションには機械学習の実装が存在しない | |
# There is no machine learning implementation for the following editions | |
- edition: YANEURAOU_MATE_ENGINE | |
target: evallearn | |
- edition: TANUKI_MATE_ENGINE | |
target: evallearn | |
- edition: USER_ENGINE | |
target: evallearn | |
# Ubuntu-20.04 g++-10 は archcpu ZEN3,AVXVNNI のサポートを行わない | |
# ubuntu-20.04 g++-10 will not support the archcpu ZEN3,AVXVNNI | |
# `-march=cascadelake`: LLVM8, GCC9 support (AVX512VNNI) | |
# `-march=znver2`: LLVM9, GCC9 support | |
# `-march=alderlake` : LLVM12, GCC11 support (AVX-VNNI) | |
# `-march=znver3`: LLVM12, GCC11? support | |
- compiler: g++-10 | |
archcpu: "ZEN3,AVXVNNI" | |
- compiler: clang++-10 | |
archcpu: "ZEN3,AVXVNNI" | |
- compiler: clang++-11 | |
archcpu: "ZEN3,AVXVNNI" | |
# Linux 32bit archcpu 向けのビルドは通常はしない | |
# don't usually build for Linux 32bit archcpu | |
- archcpu: NO_SSE | |
include: | |
# GRAVITON2 | |
- edition: "YANEURAOU_ENGINE_NNUE,YANEURAOU_ENGINE_NNUE_HALFKP_VM_256X2_32_32,YANEURAOU_ENGINE_NNUE_HALFKPE9,YANEURAOU_ENGINE_NNUE_KP256,YANEURAOU_ENGINE_KPPT,YANEURAOU_ENGINE_KPP_KKPT,YANEURAOU_ENGINE_MATERIAL*,YANEURAOU_MATE_ENGINE,TANUKI_MATE_ENGINE,USER_ENGINE" | |
compiler: aarch64-linux-gnu-g++ | |
target: "normal,tournament" | |
archcpu: GRAVITON2 | |
steps: | |
- name: Checkout own repository | |
uses: actions/checkout@v2 | |
with: | |
path: main | |
- name: install g++-8 | |
# Ubuntu 18.04 | |
run: | | |
sudo cat /etc/apt/sources.list | |
sudo ls -R /etc/apt/sources.list.d | |
sudo apt update | |
sudo apt install build-essential libopenblas-dev g++-8 | |
if: ${{ matrix.compiler == 'g++-8' }} | |
- name: install g++-9 | |
# Ubuntu 20.04 | |
run: | | |
sudo cat /etc/apt/sources.list | |
sudo ls -R /etc/apt/sources.list.d | |
sudo apt update | |
sudo apt install build-essential libopenblas-dev g++-9 | |
if: ${{ matrix.compiler == 'g++-9' }} | |
- name: install g++-10 | |
# Ubuntu 20.04 | |
run: | | |
sudo cat /etc/apt/sources.list | |
sudo ls -R /etc/apt/sources.list.d | |
sudo apt update | |
sudo apt install build-essential libopenblas-dev g++-10 | |
if: ${{ matrix.compiler == 'g++-10' }} | |
- name: install g++-11 | |
# | |
run: | | |
# sudo curl "https://keyserver.ubuntu.com/pks/lookup?search=0x1e9377a2ba9ef27f&op=get" -o /usr/share/keyrings/ubuntu-toolchain-r.gpg.asc | |
# echo "deb [signed-by=/usr/share/keyrings/ubuntu-toolchain-r.gpg.asc] http://ppa.launchpad.net/ubuntu-toolchain-r/test/ubuntu focal main" | sudo tee /etc/apt/sources.list.d/ubuntu-toolchain-r-test-focal.list | |
sudo cat /etc/apt/sources.list | |
sudo ls -R /etc/apt/sources.list.d | |
sudo apt update | |
sudo apt install build-essential libopenblas-dev g++-11 | |
if: ${{ matrix.compiler == 'g++-11' }} | |
- name: install clang-10 | |
# Ubuntu 18.04, Ubuntu 20.04 | |
run: | | |
sudo cat /etc/apt/sources.list | |
sudo ls -R /etc/apt/sources.list.d | |
sudo apt update | |
sudo apt install build-essential libopenblas-dev clang-10 libstdc++-10-dev libomp-10-dev | |
if: ${{ matrix.compiler == 'clang++-10' }} | |
- name: install clang-11 | |
# Ubuntu 20.04 | |
run: | | |
sudo cat /etc/apt/sources.list | |
sudo ls -R /etc/apt/sources.list.d | |
sudo apt update | |
sudo apt install build-essential libopenblas-dev clang-11 libomp-11-dev | |
if: ${{ matrix.compiler == 'clang++-11' }} | |
- name: install clang-12 | |
# Ubuntu 20.04 or LLVM APT | |
run: | | |
sudo cat /etc/apt/sources.list | |
sudo ls -R /etc/apt/sources.list.d | |
sudo apt update | |
sudo apt install build-essential libopenblas-dev clang-12 libomp-12-dev | |
if: ${{ matrix.compiler == 'clang++-12' }} | |
- name: install clang-13 | |
# LLVM APT | |
run: | | |
# install clang-13 | |
wget https://apt.llvm.org/llvm.sh | |
sudo bash ./llvm.sh 13 all | |
sudo apt install build-essential libopenblas-dev | |
sudo cat /etc/apt/sources.list | |
sudo ls -R /etc/apt/sources.list.d | |
if: ${{ matrix.compiler == 'clang++-13' }} | |
- name: install clang-14 | |
# LLVM APT | |
run: | | |
# install clang-14 | |
wget https://apt.llvm.org/llvm.sh | |
sudo bash ./llvm.sh 14 all | |
sudo apt install build-essential libopenblas-dev | |
sudo cat /etc/apt/sources.list | |
sudo ls -R /etc/apt/sources.list.d | |
if: ${{ matrix.compiler == 'clang++-14' }} | |
- name: install clang-15 | |
# LLVM APT | |
run: | | |
# install clang-15 | |
wget https://apt.llvm.org/llvm.sh | |
sudo bash ./llvm.sh 15 all | |
sudo apt install build-essential libopenblas-dev | |
sudo cat /etc/apt/sources.list | |
sudo ls -R /etc/apt/sources.list.d | |
if: ${{ matrix.compiler == 'clang++-15' }} | |
- name: install aarch64-linux-gnu-g++ | |
run: | | |
sudo apt update | |
sudo apt install crossbuild-essential-arm64 | |
if: ${{ matrix.compiler == 'aarch64-linux-gnu-g++' }} | |
- name: make | |
run: ./main/script/build.sh -e ${{ matrix.edition }} -c ${{ matrix.compiler }} -t ${{ matrix.target }} -a ${{ matrix.archcpu }} | |
# - uses: actions/upload-artifact@v4 | |
# with: | |
# name: build-linux_${{ github.run_number }}_${{ matrix.edition }}_${{ matrix.compiler }}_${{ matrix.target }}_${{ matrix.archcpu }}_${{ github.sha }} | |
# path: ./main/build/**/**/* |