Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

merge master #13

Merged
merged 45 commits into from
Jan 31, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
45 commits
Select commit Hold shift + click to select a range
84ef72f
Fix pb type hint error (#10336)
strint Sep 27, 2023
dea3f43
Feat graph load to new device (#10335)
strint Oct 6, 2023
553c55e
set default cpg to None (#10343)
huo-ju Oct 11, 2023
b809137
Priv release (#10347)
jackalcooper Oct 24, 2023
a5041b8
Add cu12 release (#10348)
jackalcooper Oct 27, 2023
3d4df94
Fix typo in release workflow (#10349)
jackalcooper Oct 27, 2023
46b8232
Support building ext in private release (#10350)
jackalcooper Nov 3, 2023
0717248
Fix concurrency in priv release (#10351)
jackalcooper Nov 3, 2023
bbae1cd
Add --disable-ignore-error in OSS action (#10360)
jackalcooper Nov 28, 2023
44b4ff3
Use community branch in priv-release (#10361)
jackalcooper Nov 28, 2023
8f4f5d5
Use dedicated workflow for community (#10363)
jackalcooper Nov 29, 2023
bdfddbc
Fix concurrency for priv/community (#10369)
jackalcooper Dec 6, 2023
9e4e295
Community fix cu12 pkg size (#10368)
jackalcooper Dec 6, 2023
bc08398
Remove py3.7 in release (#10371)
jackalcooper Dec 7, 2023
5d87afc
Use dynamic link in cn/cpu.cmake, international/cpu.cmake, internatio…
levi131 Dec 11, 2023
21b51a6
Community build py311 (#10377)
jackalcooper Dec 15, 2023
6f53149
Skip Conv cases failed (#10383)
jackalcooper Dec 21, 2023
559f5ec
autograd.functional.vjp (#10356)
marigoold Dec 21, 2023
a6feab0
Support cuda 12.x (#10367)
mosout Dec 22, 2023
b11f102
Support Huawei Ascend910b chip (#10386)
Flowingsun007 Dec 25, 2023
c4c687f
Update CMake cache files for new community builds (#10388)
jackalcooper Dec 26, 2023
92788cb
Cache global generator (#10387)
clackhan Dec 27, 2023
a0f2122
Fix community uploads (#10389)
jackalcooper Dec 28, 2023
82c965b
Dev support oneflow insight (#10370)
Flowingsun007 Dec 29, 2023
18538f6
fix py38 and support python3.11 (#10391)
marigoold Jan 2, 2024
891c710
add dummy interfaces for import timm (#10395)
marigoold Jan 4, 2024
af0807a
add cuda.mem_get_info (#82) (#10398)
marigoold Jan 5, 2024
d16fa88
refine_mock_torch (#10396)
ccssu Jan 9, 2024
6ed4991
Update default input of branch to main, in the community build (#10400)
jackalcooper Jan 9, 2024
9754f6d
Support is_grads_batched parameter for autograd.grad (#10399)
wyg1997 Jan 10, 2024
3bf53a0
Backport changes auto-install CUDA packages (#10402)
jackalcooper Jan 10, 2024
76b7560
remove jit warning in __init__ (#10403)
marigoold Jan 11, 2024
02a4366
Autograd.grad support out_grads with list of None (#10406)
wyg1997 Jan 15, 2024
66c671f
Add proxy env in CI (#10407)
jackalcooper Jan 18, 2024
2e331e1
move onediff.infer_compiler.oneflow_compile to onefow.framework.infer…
linzs148 Jan 18, 2024
9afbc9b
Change default value for ONEFLOW_MLIR_PREFER_NHWC (#10410)
levi131 Jan 20, 2024
7ddeacf
refine add_n_op's error message (#10411)
haoyang9804 Jan 22, 2024
0320ed0
Fix bug when compiling faster_rcnn's backbone (#10414)
haoyang9804 Jan 22, 2024
06c9ead
Decrease default cuda architectures to build on cause the limitation …
levi131 Jan 22, 2024
b229019
Dev add jvp jacobian hessian (#10412)
lihuizhao Jan 23, 2024
dafc2b1
Fixed nightly version for pro, instead adding commit hash (#10416)
jackalcooper Jan 23, 2024
bf9ae02
add functional group norm and dtype device param (#10417)
marigoold Jan 24, 2024
8f055f3
Dump MLIR only in debug mode (#10422)
haoyang9804 Jan 28, 2024
8250384
change all_dynamic to dynamic (#10423)
linzs148 Jan 29, 2024
600f86a
Merge branch 'master' of https://github.com/Oneflow-Inc/oneflow into …
yuguo-Jack Jan 31, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions .github/actions/upload_oss/action.yml
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ runs:
exit 0
fi
if [ ! -f "$HOME/ossutil64" ]; then
curl http://gosspublic.alicdn.com/ossutil/1.6.19/ossutil64 -o $HOME/ossutil64
curl http://gosspublic.alicdn.com/ossutil/1.7.15/ossutil64 -o $HOME/ossutil64
fi
chmod 755 $HOME/ossutil64
$HOME/ossutil64 config -e oss-cn-beijing.aliyuncs.com -i ${{ inputs.oss_access_key_id }} -k ${{ inputs.oss_access_key_secret }} -L EN -c $HOME/.ossutilconfig
Expand All @@ -33,7 +33,7 @@ runs:
upload_core_arg+='--exclude "core*"'
fi
set -x
$HOME/ossutil64 cp --update ${dir_arg} ${upload_core_arg} ${{ inputs.src_path }} ${{ inputs.oss_dst_path }}
$HOME/ossutil64 cp --disable-ignore-error --update ${dir_arg} ${upload_core_arg} ${{ inputs.src_path }} ${{ inputs.oss_dst_path }}
shell: bash
env:
OSS_ACCESS_KEY_ID: ${{ inputs.oss_access_key_id }}
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/canary.yml
Original file line number Diff line number Diff line change
Expand Up @@ -54,7 +54,7 @@ jobs:
- name: Checkout Oneflow-Inc/oneflow
if: ${{ github.event.inputs.oneflow-ref == '' }}
uses: actions/checkout@v2
- uses: Oneflow-Inc/get-oneflow@add-nightly-date
- uses: Oneflow-Inc/get-oneflow@support-py311-py312
name: Build manylinux
id: build-cuda
with:
Expand Down
39 changes: 39 additions & 0 deletions .github/workflows/community_release.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
name: Community Release

on:
push:
branches:
- "community/*"
schedule:
# beijing: 6 pm.
# utc: 10 am.
- cron: "0 10 * * *"
workflow_dispatch:
inputs:
priv_branch:
required: false
default: "main"

concurrency:
group: community-release-${{ github.ref }}-${{ inputs.priv_branch }}
cancel-in-progress: true

jobs:
release:
name: Release pip
permissions:
contents: read
pull-requests: write
uses: ./.github/workflows/release.yml
with:
is_priv: true
branch: ${{ inputs.priv_branch || 'main' }}
upload_override_branch: "community"
cuda_cmake_cache: cmake/caches/ci/release/cuda_community.cmake
secrets:
ONEFLOW_PRIV_ORG: ${{ secrets.ONEFLOW_PRIV_ORG }}
ONEFLOW_PRIV_GH_TOKEN: ${{ secrets.ONEFLOW_PRIV_GH_TOKEN }}
ONEFLOW_PRIV_OSS_BUCKET: ${{ secrets.ONEFLOW_PRIV_OSS_BUCKET }}
OSS_ACCESS_KEY_ID: ${{ secrets.OSS_ACCESS_KEY_ID }}
OSS_ACCESS_KEY_SECRET: ${{ secrets.OSS_ACCESS_KEY_SECRET }}
ONEFLOW_CI_HTTP_PROXY: ${{ secrets.ONEFLOW_CI_HTTP_PROXY }}
2 changes: 1 addition & 1 deletion .github/workflows/on_merge.yml
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,6 @@ jobs:
if: github.event.pull_request.merged == true
runs-on: ubuntu-latest
steps:
- uses: Oneflow-Inc/get-oneflow/update-benchmark-history@add-nightly-date
- uses: Oneflow-Inc/get-oneflow/update-benchmark-history@support-py311-py312
name: Update benchmark history
timeout-minutes: 10
38 changes: 38 additions & 0 deletions .github/workflows/priv_release.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
name: Priv Release

on:
push:
branches:
- "pro/*"
schedule:
# beijing: 12 pm.
# utc: 4 am.
- cron: "0 4 * * *"
workflow_dispatch:
inputs:
priv_branch:
required: false
default: "main"

concurrency:
group: priv-release-${{ github.ref }}-${{ inputs.priv_branch }}
cancel-in-progress: true

jobs:
release:
name: Release pip
permissions:
contents: read
pull-requests: write
uses: ./.github/workflows/release.yml
with:
is_priv: true
branch: ${{ inputs.priv_branch || 'main' }}
cuda_cmake_cache: cmake/caches/ci/release/cuda_pro.cmake
secrets:
ONEFLOW_PRIV_ORG: ${{ secrets.ONEFLOW_PRIV_ORG }}
ONEFLOW_PRIV_GH_TOKEN: ${{ secrets.ONEFLOW_PRIV_GH_TOKEN }}
ONEFLOW_PRIV_OSS_BUCKET: ${{ secrets.ONEFLOW_PRIV_OSS_BUCKET }}
OSS_ACCESS_KEY_ID: ${{ secrets.OSS_ACCESS_KEY_ID }}
OSS_ACCESS_KEY_SECRET: ${{ secrets.OSS_ACCESS_KEY_SECRET }}
ONEFLOW_CI_HTTP_PROXY: ${{ secrets.ONEFLOW_CI_HTTP_PROXY }}
154 changes: 104 additions & 50 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -14,8 +14,36 @@ on:
placeholder:
description: "update .github/workflows/release.yml to config your build"
required: false
workflow_call:
inputs:
is_priv:
required: true
type: boolean
branch:
required: false
type: string
default: "main"
upload_override_branch:
required: false
type: string
cuda_cmake_cache:
required: false
type: string
secrets:
ONEFLOW_PRIV_ORG:
required: true
ONEFLOW_PRIV_GH_TOKEN:
required: true
ONEFLOW_PRIV_OSS_BUCKET:
required: true
OSS_ACCESS_KEY_ID:
required: true
OSS_ACCESS_KEY_SECRET:
required: true
ONEFLOW_CI_HTTP_PROXY:
required: false
concurrency:
group: release-${{ github.ref }}
group: release-${{ github.ref }}-${{ inputs.branch }}
cancel-in-progress: ${{ github.ref != 'refs/heads/master' }}
env:
ONEFLOW_SRC: .
Expand All @@ -31,11 +59,19 @@ jobs:
steps:
- name: Checkout Oneflow-Inc/oneflow
uses: actions/checkout@v2
if: ${{ !inputs.is_priv }}
with:
ref: ${{ github.event.pull_request.head.sha }}
repository: ${{github.event.pull_request.head.repo.full_name}}
- uses: Oneflow-Inc/get-oneflow/cache-complete/matrix/build@add-nightly-date
name: find cache
- name: Checkout oneflow
uses: actions/checkout@v2
if: ${{ inputs.is_priv }}
with:
ref: ${{ inputs.branch }}
repository: ${{ secrets.ONEFLOW_PRIV_ORG }}/oneflow
token: ${{ secrets.ONEFLOW_PRIV_GH_TOKEN }}
- uses: Oneflow-Inc/get-oneflow/cache-complete/matrix/build@support-py311-py312
name: Find build cache
id: find-cache
timeout-minutes: 5
with:
Expand All @@ -46,8 +82,9 @@ jobs:
release
oneflow-src: ${{ env.ONEFLOW_SRC }}
entries: |
cu122
cu121
cu118
cu117
cpu
- name: Get current date
id: date
Expand All @@ -58,14 +95,18 @@ jobs:
MANYLINUX_CACHE_DIR: ~/manylinux-cache-dir/release/${{ matrix.entry }}
WHEELHOUSE_DIR: manylinux_wheelhouse
OSS_DIR: branch/${{ github.ref_name }}/${{ matrix.entry }}/${{ github.sha }}
GITHUB_REF_NAME: ${{ github.ref_name }}
GITHUB_SHA: ${{ github.sha }}
ONEFLOW_OSS_BUCKET: oneflow-staging
https_proxy: ${{ secrets.ONEFLOW_CI_HTTP_PROXY }}
needs: [generate-build-matrix]
name: Staging Release
timeout-minutes: 180
timeout-minutes: 240
runs-on: [self-hosted, linux, release]
if: github.repository == 'Oneflow-Inc/oneflow'
if: github.repository == 'Oneflow-Inc/oneflow' || inputs.is_priv
strategy:
fail-fast: false
max-parallel: 5
max-parallel: 6
matrix: ${{ fromJson(needs.generate-build-matrix.outputs.matrix) }}
steps:
- name: Fix permissions
Expand All @@ -76,12 +117,43 @@ jobs:
python3 -m pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple
python3 -m pip install -U setuptools wheel --user
python3 -m pip install oss2 --user
- uses: actions/checkout@v2
- uses: Oneflow-Inc/get-oneflow@add-nightly-date
- name: Checkout Oneflow-Inc/oneflow
uses: actions/checkout@v2
if: ${{ !inputs.is_priv }}
with:
ref: ${{ github.event.pull_request.head.sha }}
repository: ${{github.event.pull_request.head.repo.full_name}}
- name: Checkout private oneflow
uses: actions/checkout@v2
if: ${{ inputs.is_priv }}
with:
ref: ${{ inputs.branch }}
repository: ${{ secrets.ONEFLOW_PRIV_ORG }}/oneflow
token: ${{ secrets.ONEFLOW_PRIV_GH_TOKEN }}
- name: Checkout cutlass_extension
uses: actions/checkout@v2
if: ${{ inputs.is_priv }}
with:
repository: ${{ secrets.ONEFLOW_PRIV_ORG }}/cutlass-extension
token: ${{ secrets.ONEFLOW_PRIV_GH_TOKEN }}
path: cutlass-extension
- name: Set Private env
if: ${{ inputs.is_priv }}
run: |
GITHUB_SHA=$(git rev-parse HEAD)
echo "OSS_DIR=branch/${{ inputs.upload_override_branch || inputs.branch }}/${{ matrix.entry }}/${GITHUB_SHA}" >> $GITHUB_ENV
echo "GITHUB_REF_NAME=${{ inputs.upload_override_branch || inputs.branch }}" >> $GITHUB_ENV
echo "GITHUB_SHA=${GITHUB_SHA}" >> $GITHUB_ENV
echo "ONEFLOW_OSS_BUCKET=${{ secrets.ONEFLOW_PRIV_OSS_BUCKET }}" >> $GITHUB_ENV
- name: Print env
if: ${{ inputs.is_priv }}
run: |
env
- uses: Oneflow-Inc/get-oneflow@support-py311-py312
name: Build ${{ matrix.entry }}
if: ${{ matrix.entry =='cu118' }}
if: ${{ matrix.entry =='cu118' || startsWith(matrix.entry, 'cu12') }}
with:
cmake-init-cache: ${{ env.ONEFLOW_SRC }}/cmake/caches/ci/release/${{ matrix.entry }}.cmake
cmake-init-cache: ${{ env.ONEFLOW_SRC }}/${{ inputs.cuda_cmake_cache || 'cmake/caches/ci/release/cu118.cmake' }}
build-script: ${{ env.ONEFLOW_SRC }}/ci/manylinux/build-gcc9.sh
oneflow-src: ${{ env.ONEFLOW_SRC }}
oneflow-build-env: manylinux
Expand All @@ -94,17 +166,17 @@ jobs:
docker-run-use-lld: false
retry-failed-build: true
clean-ccache: true
nightly: ${{ github.event_name == 'schedule' || github.ref == 'refs/heads/release/add_nightly_date_index'}}
nightly: ${{ inputs.is_priv || github.event_name == 'schedule' || github.ref == 'refs/heads/release/add_nightly_date_index'}}
nightly-date: ${{ needs.generate-build-matrix.outputs.formatted_date }}
use-nvidia-wheels: ${{ matrix.entry !='cu112' }}
python-versions: |
3.7
3.8
3.9
3.11
3.10
- uses: Oneflow-Inc/get-oneflow@add-nightly-date
3.9
3.8
- uses: Oneflow-Inc/get-oneflow@support-py311-py312
name: Build ${{ matrix.entry }}
if: ${{ matrix.entry !='cpu' && matrix.entry !='cu118' }}
if: ${{ startsWith(matrix.entry, 'cu') && matrix.entry !='cu118' && !startsWith(matrix.entry, 'cu12') }}
with:
cmake-init-cache: ${{ env.ONEFLOW_SRC }}/cmake/caches/ci/release/cuda.cmake
build-script: ${{ env.ONEFLOW_SRC }}/ci/manylinux/build-gcc9.sh
Expand All @@ -119,15 +191,15 @@ jobs:
docker-run-use-lld: false
retry-failed-build: true
clean-ccache: true
nightly: ${{ github.event_name == 'schedule' || github.ref == 'refs/heads/release/add_nightly_date_index'}}
nightly: ${{ inputs.is_priv || github.event_name == 'schedule' || github.ref == 'refs/heads/release/add_nightly_date_index'}}
nightly-date: ${{ needs.generate-build-matrix.outputs.formatted_date }}
use-nvidia-wheels: ${{ matrix.entry !='cu112' }}
python-versions: |
3.7
3.8
3.9
3.11
3.10
- uses: Oneflow-Inc/get-oneflow@add-nightly-date
3.9
3.8
- uses: Oneflow-Inc/get-oneflow@support-py311-py312
name: Build ${{ matrix.entry }}
if: ${{ matrix.entry =='cpu' }}
with:
Expand All @@ -144,18 +216,18 @@ jobs:
docker-run-use-lld: false
retry-failed-build: true
clean-ccache: false
nightly: ${{ github.event_name == 'schedule' || github.ref == 'refs/heads/release/add_nightly_date_index'}}
nightly: ${{ inputs.is_priv || github.event_name == 'schedule' || github.ref == 'refs/heads/release/add_nightly_date_index'}}
nightly-date: ${{ needs.generate-build-matrix.outputs.formatted_date }}
python-versions: |
3.7
3.8
3.9
3.11
3.10
3.9
3.8
- name: Upload wheel
uses: ./.github/actions/upload_oss
with:
src_path: ${{ env.WHEELHOUSE_DIR }}
oss_dst_path: oss://oneflow-staging/${{ env.OSS_DIR }}
oss_dst_path: oss://${{ env.ONEFLOW_OSS_BUCKET }}/${{ env.OSS_DIR }}
oss_access_key_id: ${{ secrets.OSS_ACCESS_KEY_ID }}
oss_access_key_secret: ${{ secrets.OSS_ACCESS_KEY_SECRET }}
- name: Update pip index
Expand All @@ -165,32 +237,14 @@ jobs:
run: |
python3 -m pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple
python3 -m pip install oss2 beautifulsoup4 --user
python3 tools/create_pip_index.py --dir_key ${{ env.OSS_DIR }} -b oneflow-staging \
--index_key=branch/${{ github.ref_name }}/${{ matrix.entry }}/index.html \
--index_key=branch/${{ github.ref_name }}/date/${{ needs.generate-build-matrix.outputs.formatted_date }}/${{ matrix.entry }}/index.html \
python3 tools/create_pip_index.py --dir_key ${{ env.OSS_DIR }} -b ${{ env.ONEFLOW_OSS_BUCKET }} \
--index_key=branch/${{ env.GITHUB_REF_NAME }}/${{ matrix.entry }}/index.html \
--index_key=branch/${{ env.GITHUB_REF_NAME }}/date/${{ needs.generate-build-matrix.outputs.formatted_date }}/${{ matrix.entry }}/index.html \
--index_key=${{ env.OSS_DIR }}/index.html \
--index_key=commit/${{ github.sha }}/${{ matrix.entry }}/index.html
--index_key=commit/${{ env.GITHUB_SHA }}/${{ matrix.entry }}/index.html
- name: Update API docs
if: github.ref == 'refs/heads/master' && matrix.entry == 'cpu'
if: github.ref == 'refs/heads/master' && matrix.entry == 'cpu' && !inputs.is_priv
env:
READTHEDOCS_TOKEN: ${{ secrets.READTHEDOCS_TOKEN }}
run: |
curl -X POST -d "branches=master" -d "token=${READTHEDOCS_TOKEN}" https://readthedocs.org/api/v2/webhook/oneflow/135376/
pack_src:
name: Pack source code
if: github.ref == 'refs/heads/master' && github.repository == 'Oneflow-Inc/oneflow'
runs-on: ubuntu-20.04
steps:
- uses: actions/checkout@v2
- name: Pack OneFlow source code
env:
OSS_ACCESS_KEY_ID: ${{ secrets.OSS_ACCESS_KEY_ID }}
OSS_ACCESS_KEY_SECRET: ${{ secrets.OSS_ACCESS_KEY_SECRET }}
run: |
git reset --hard
git clean -f
git archive --prefix oneflow/ --format zip HEAD > oneflow-src.zip
curl http://gosspublic.alicdn.com/ossutil/1.6.19/ossutil64 -o $HOME/ossutil64
chmod 755 $HOME/ossutil64
$HOME/ossutil64 config -e oss-cn-beijing.aliyuncs.com -i ${OSS_ACCESS_KEY_ID} -k ${OSS_ACCESS_KEY_SECRET} -L EN -c $HOME/.ossutilconfig
$HOME/ossutil64 cp --update oneflow-src.zip oss://oneflow-public/oneflow-src.zip
4 changes: 2 additions & 2 deletions .github/workflows/simple.yml
Original file line number Diff line number Diff line change
Expand Up @@ -244,7 +244,7 @@ jobs:
repository: Oneflow-Inc/conda-env
ref: 30a7f00eb48ee9009d85a848e720823e5054c66b
path: conda-env
- uses: Oneflow-Inc/get-oneflow@add-nightly-date
- uses: Oneflow-Inc/get-oneflow@support-py311-py312
name: Build with gcc7
if: ${{ matrix.build-type == 'gcc7'}}
with:
Expand All @@ -253,7 +253,7 @@ jobs:
oneflow-build-env: conda
conda-env-file: conda-env/dev/gcc7/environment-v2.yml
conda-env-name: oneflow-dev-gcc7-v2
- uses: Oneflow-Inc/get-oneflow@add-nightly-date
- uses: Oneflow-Inc/get-oneflow@support-py311-py312
name: Build with clang10
if: ${{ matrix.build-type == 'clang10'}}
with:
Expand Down
Loading
Loading