forked from flexflow/flexflow-train
-
Notifications
You must be signed in to change notification settings - Fork 1
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge remote-tracking branch 'xinhao/merged_bert' into bert_fix2
- Loading branch information
Showing
641 changed files
with
92,433 additions
and
11,708 deletions.
There are no files selected for viewing
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
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
Large diffs are not rendered by default.
Oops, something went wrong.
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
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
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -3,6 +3,7 @@ on: | |
pull_request: | ||
paths: | ||
- "include/**" | ||
- "inference/**" | ||
- "cmake/**" | ||
- "config/**" | ||
- "deps/**" | ||
|
@@ -15,6 +16,7 @@ on: | |
- "master" | ||
paths: | ||
- "include/**" | ||
- "inference/**" | ||
- "cmake/**" | ||
- "config/**" | ||
- "deps/**" | ||
|
@@ -38,6 +40,8 @@ jobs: | |
matrix: | ||
gpu_backend: ["cuda", "hip_rocm"] | ||
fail-fast: false | ||
env: | ||
FF_GPU_BACKEND: ${{ matrix.gpu_backend }} | ||
steps: | ||
- name: Checkout Git Repository | ||
uses: actions/checkout@v3 | ||
|
@@ -48,39 +52,49 @@ jobs: | |
run: .github/workflows/helpers/free_space_on_runner.sh | ||
|
||
- name: Install CUDA | ||
uses: Jimver/[email protected] | ||
uses: Jimver/[email protected] | ||
if: ${{ matrix.gpu_backend == 'cuda' }} | ||
id: cuda-toolkit | ||
with: | ||
cuda: "11.8.0" | ||
cuda: "12.1.1" | ||
# Disable caching of the CUDA binaries, since it does not give us any significant performance improvement | ||
use-github-cache: "false" | ||
log-file-suffix: 'cmake_${{matrix.gpu_backend}}.txt' | ||
|
||
- name: Install system dependencies | ||
run: FF_GPU_BACKEND=${{ matrix.gpu_backend }} .github/workflows/helpers/install_dependencies.sh | ||
run: .github/workflows/helpers/install_dependencies.sh | ||
|
||
- name: Install conda and FlexFlow dependencies | ||
uses: conda-incubator/setup-miniconda@v2 | ||
with: | ||
activate-environment: flexflow | ||
environment-file: conda/environment.yml | ||
environment-file: conda/flexflow.yml | ||
auto-activate-base: false | ||
|
||
- name: Build FlexFlow | ||
run: | | ||
export CUDNN_DIR="$CUDA_PATH" | ||
export CUDA_DIR="$CUDA_PATH" | ||
export FF_HOME=$(pwd) | ||
export FF_GPU_BACKEND=${{ matrix.gpu_backend }} | ||
export FF_CUDA_ARCH=70 | ||
export FF_HIP_ARCH=gfx1100,gfx1036 | ||
export hip_version=5.6 | ||
export FF_BUILD_ALL_INFERENCE_EXAMPLES=ON | ||
if [[ "${FF_GPU_BACKEND}" == "cuda" ]]; then | ||
export FF_BUILD_ALL_EXAMPLES=ON | ||
export FF_BUILD_UNIT_TESTS=ON | ||
else | ||
export FF_BUILD_ALL_EXAMPLES=OFF | ||
export FF_BUILD_UNIT_TESTS=OFF | ||
fi | ||
cores_available=$(nproc --all) | ||
n_build_cores=$(( cores_available -1 )) | ||
if (( $n_build_cores < 1 )) ; then n_build_cores=1 ; fi | ||
mkdir build | ||
cd build | ||
if [[ "${FF_GPU_BACKEND}" == "cuda" ]]; then | ||
export FF_BUILD_ALL_EXAMPLES=ON | ||
export FF_BUILD_UNIT_TESTS=ON | ||
fi | ||
../config/config.linux | ||
make -j $n_build_cores | ||
|
@@ -89,35 +103,44 @@ jobs: | |
export CUDNN_DIR="$CUDA_PATH" | ||
export CUDA_DIR="$CUDA_PATH" | ||
export FF_HOME=$(pwd) | ||
export FF_GPU_BACKEND=${{ matrix.gpu_backend }} | ||
export FF_CUDA_ARCH=70 | ||
cd build | ||
export FF_HIP_ARCH=gfx1100,gfx1036 | ||
export hip_version=5.6 | ||
export FF_BUILD_ALL_INFERENCE_EXAMPLES=ON | ||
if [[ "${FF_GPU_BACKEND}" == "cuda" ]]; then | ||
export FF_BUILD_ALL_EXAMPLES=ON | ||
export FF_BUILD_ALL_EXAMPLES=ON | ||
export FF_BUILD_UNIT_TESTS=ON | ||
else | ||
export FF_BUILD_ALL_EXAMPLES=OFF | ||
export FF_BUILD_UNIT_TESTS=OFF | ||
fi | ||
cd build | ||
../config/config.linux | ||
sudo make install | ||
sudo ldconfig | ||
- name: Check availability of Python flexflow.core module | ||
if: ${{ matrix.gpu_backend == 'cuda' }} | ||
run: | | ||
export LD_LIBRARY_PATH="$CUDA_PATH/lib64/stubs:$LD_LIBRARY_PATH" | ||
sudo ln -s "$CUDA_PATH/lib64/stubs/libcuda.so" "$CUDA_PATH/lib64/stubs/libcuda.so.1" | ||
export CPU_ONLY_TEST=1 | ||
python -c "import flexflow.core; exit()" | ||
- name: Run C++ unit tests | ||
if: ${{ matrix.gpu_backend == 'cuda' }} | ||
run: | | ||
export CUDNN_DIR="$CUDA_PATH" | ||
export CUDA_DIR="$CUDA_PATH" | ||
export LD_LIBRARY_PATH="$CUDA_PATH/lib64/stubs:$LD_LIBRARY_PATH" | ||
export FF_HOME=$(pwd) | ||
sudo ln -s "$CUDA_PATH/lib64/stubs/libcuda.so" "$CUDA_PATH/lib64/stubs/libcuda.so.1" | ||
cd build | ||
./tests/unit/unit-test | ||
- name: Check availability of flexflow modules in Python | ||
run: | | ||
if [[ "${FF_GPU_BACKEND}" == "cuda" ]]; then | ||
export LD_LIBRARY_PATH="$CUDA_PATH/lib64/stubs:$LD_LIBRARY_PATH" | ||
fi | ||
# Remove build folder to check that the installed version can run independently of the build files | ||
rm -rf build | ||
python -c "import flexflow.core; import flexflow.serve as ff; exit()" | ||
makefile-build: | ||
name: Build FlexFlow with the Makefile | ||
runs-on: ubuntu-20.04 | ||
|
@@ -134,11 +157,12 @@ jobs: | |
run: .github/workflows/helpers/free_space_on_runner.sh | ||
|
||
- name: Install CUDA | ||
uses: Jimver/[email protected].11 | ||
uses: Jimver/[email protected].16 | ||
id: cuda-toolkit | ||
with: | ||
cuda: "11.8.0" | ||
cuda: "12.1.1" | ||
use-github-cache: "false" | ||
log-file-suffix: 'makefile_${{matrix.gpu_backend}}.txt' | ||
|
||
- name: Install system dependencies | ||
run: .github/workflows/helpers/install_dependencies.sh | ||
|
@@ -147,7 +171,7 @@ jobs: | |
uses: conda-incubator/setup-miniconda@v2 | ||
with: | ||
activate-environment: flexflow | ||
environment-file: conda/environment.yml | ||
environment-file: conda/flexflow.yml | ||
auto-activate-base: false | ||
|
||
- name: Build FlexFlow | ||
|
@@ -163,5 +187,4 @@ jobs: | |
cd python | ||
make -j $n_build_cores | ||
export CPU_ONLY_TEST=1 | ||
python -c 'import flexflow.core' |
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
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
Oops, something went wrong.