Skip to content
This repository was archived by the owner on Jan 10, 2025. It is now read-only.

Commit 360f1a8

Browse files
Initial commit
0 parents  commit 360f1a8

File tree

5,971 files changed

+1581014
-0
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

5,971 files changed

+1581014
-0
lines changed

.asf.yaml

Lines changed: 74 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,74 @@
1+
# Licensed to the Apache Software Foundation (ASF) under one
2+
# or more contributor license agreements. See the NOTICE file
3+
# distributed with this work for additional information
4+
# regarding copyright ownership. The ASF licenses this file
5+
# to you under the Apache License, Version 2.0 (the
6+
# "License"); you may not use this file except in compliance
7+
# with the License. You may obtain a copy of the License at
8+
#
9+
# http://www.apache.org/licenses/LICENSE-2.0
10+
#
11+
# Unless required by applicable law or agreed to in writing,
12+
# software distributed under the License is distributed on an
13+
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
14+
# KIND, either express or implied. See the License for the
15+
# specific language governing permissions and limitations
16+
# under the License.
17+
18+
github:
19+
description: "Open deep learning compiler stack for cpu, gpu and specialized accelerators"
20+
homepage: https://tvm.apache.org/
21+
labels:
22+
- tvm
23+
- compiler
24+
- tensor
25+
- deep-learning
26+
- gpu
27+
- opencl
28+
- metal
29+
- performance
30+
- javascript
31+
- rocm
32+
- vulkan
33+
- spirv
34+
- machine-learning
35+
36+
# Triage perm for collaborators(test run)
37+
#
38+
# The perm is given based on needs and not based on
39+
# evaluation of past contributions. The rationale
40+
# is that people may need the permission to start
41+
# contributing in this way. It serves to diversify
42+
# the ways to contribute.
43+
#
44+
# There is a limited number of slots. To enable broad
45+
# participation, permission is given on a three month
46+
# cycle. PMC may review and recycle slots when necessary.
47+
collaborators:
48+
- hpanda-naut
49+
- denise-k
50+
- janetsc
51+
- naut-thomas
52+
- tvm-bot # For automated feedback in PR review.
53+
54+
# See https://cwiki.apache.org/confluence/display/INFRA/Git+-+.asf.yaml+features#Git.asf.yamlfeatures-Branchprotection
55+
protected_branches:
56+
main:
57+
required_status_checks:
58+
contexts:
59+
- unity/pr-head
60+
- arm/pr-head
61+
- cortexm/pr-head
62+
- cpu/pr-head
63+
- docker/pr-head
64+
- gpu/pr-head
65+
- hexagon/pr-head
66+
- i386/pr-head
67+
- lint/pr-head
68+
- minimal/pr-head
69+
- riscv/pr-head
70+
- wasm/pr-head
71+
- cross-isa-minimal/pr-head
72+
73+
required_pull_request_reviews:
74+
required_approving_review_count: 1

.clang-format

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
# Run the following command to reformat a file:
2+
# clang-format -i -style=Google <file>
3+
# Or use clang-format-diff to only reformat the changed lines:
4+
# https://clang.llvm.org/docs/ClangFormat.html
5+
BasedOnStyle: Google
6+
DerivePointerAlignment: false
7+
ColumnLimit: 100
8+
PointerAlignment: Left

.gitattributes

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
Jenkinsfile linguist-generated=true
2+
ci/jenkins/generated/* linguist-generated=true

.github/CODEOWNERSHIP

Lines changed: 169 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,169 @@
1+
# Licensed to the Apache Software Foundation (ASF) under one
2+
# or more contributor license agreements. See the NOTICE file
3+
# distributed with this work for additional information
4+
# regarding copyright ownership. The ASF licenses this file
5+
# to you under the Apache License, Version 2.0 (the
6+
# "License"); you may not use this file except in compliance
7+
# with the License. You may obtain a copy of the License at
8+
#
9+
# http://www.apache.org/licenses/LICENSE-2.0
10+
#
11+
# Unless required by applicable law or agreed to in writing,
12+
# software distributed under the License is distributed on an
13+
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
14+
# KIND, either express or implied. See the License for the
15+
# specific language governing permissions and limitations
16+
# under the License.
17+
18+
# Github code owners file
19+
# This file is used as a convenient tool to map
20+
# committers' areas of expertise and faciliate the review process.
21+
#
22+
# This may not be the non-comprehensive list and is meant to be
23+
# updated over time.
24+
25+
# Per ASF policy, committer have global write permission.
26+
# We normally recommend committers to shepherd code in their area of expertise.
27+
* @apache/tvm-committers
28+
29+
# Order is important; the last matching pattern takes the most precedence.
30+
# The sub modules should be ordered first by depth.
31+
# Making sure we append new sub-module rules after exisiting modules rules.
32+
33+
###############################################################################
34+
# IMPORTANT NOTE
35+
# This file is intentionally not named CODEOWNERS to avoid getting picked up
36+
# by GitHub's code owners -> review mechanism. For details see
37+
# https://docs.github.com/en/repositories/managing-your-repositorys-settings-and-features/customizing-your-repository/about-code-owners
38+
# and https://github.com/apache/tvm-rfcs/pull/58
39+
#
40+
# This file is kept to allow manual inspection of who is responsible for
41+
# different segments of the codebase.
42+
###############################################################################
43+
44+
##############################
45+
# Top-level Fallbacks
46+
##############################
47+
include/** @tqchen @jroesch @yzhliu @icemelon @junrushao1994 @comaniac @zhiics
48+
src/** @tqchen @jroesch @yzhliu @icemelon @junrushao1994 @comaniac @zhiics
49+
apps/** @tqchen @jroesch @yzhliu @icemelon @junrushao1994 @comaniac @zhiics
50+
python/** @tqchen @jroesch @yzhliu @icemelon @junrushao1994 @comaniac @zhiics
51+
52+
# Thirdparty license audit
53+
3rdparty/** @tqchen @jroesch
54+
licenses/** @tqchen @jroesch
55+
56+
# JVM language
57+
jvm/** @yzhliu
58+
59+
# Golang
60+
golang/** @srkreddy1238
61+
62+
# WASM
63+
web/** @tqchen @jroesch
64+
65+
# Docker
66+
docker/** @areusch @leandron @jroesch
67+
68+
# Conda
69+
conda/** @tqchen @junrushao1994 @comaniac
70+
71+
# CMake
72+
cmake/** @jroesch @tqchen @areusch @junrushao1994 @comaniac
73+
74+
# rust bindings
75+
rust/** @jroesch @nhynes @nhynes
76+
77+
# vta
78+
vta/** @tmoreau89 @vegaluisjose
79+
80+
# docs
81+
docs/** @comaniac @junrushao1994 @tqchen @jroesch @areusch @yzhliu @merrymercy @icemelon
82+
tutorials/** @comaniac @junrushao1994 @tqchen @jroesch @areusch @yzhliu @merrymercy @icemelon
83+
84+
# tests
85+
tests/** @comaniac @junrushao1994 @tqchen @jroesch @areusch @yzhliu @merrymercy @icemelon
86+
87+
##############################
88+
# Specific modules
89+
##############################
90+
91+
# automation related
92+
src/auto_scheduler/** @merrymercy @jcf94 @comaniac @junrushao1994 @vinx13 @Hzfengsy
93+
include/tvm/auto_scheduler/** @merrymercy @jcf94 @comaniac @junrushao1994 @vinx13 @Hzfengsy
94+
python/tvm/auto_scheduler/** @merrymercy @jcf94 @comaniac @junrushao1994 @vinx13 @Hzfengsy
95+
96+
python/tvm/autotvm/** @merrymercy @jcf94 @comaniac @junrushao1994 @vinx13
97+
98+
# node system and reflection
99+
src/node/** @junrushao1994 @vinx13 @tqchen @jroesch @comaniac
100+
include/tvm/node/** @junrushao1994 @vinx13 @tqchen @jroesch @comaniac
101+
102+
# ir: Common IR
103+
src/ir/** @junrushao1994 @vinx13 @tqchen @jroesch @comaniac
104+
include/tvm/ir/** @junrushao1994 @vinx13 @tqchen @jroesch @comaniac
105+
python/tvm/ir/** @junrushao1994 @vinx13 @tqchen @jroesch @comaniac
106+
107+
# tir
108+
src/tir/** @junrushao1994 @vinx13 @tqchen @kparzysz-quic @ZihengJiang @masahi @were @Hzfengsy
109+
include/tvm/tir/** @junrushao1994 @vinx13 @tqchen @kparzysz-quic @ZihengJiang @masahi @were @Hzfengsy
110+
python/tvm/tir/** @junrushao1994 @vinx13 @tqchen @kparzysz-quic @ZihengJiang @masahi @were @Hzfengsy
111+
112+
# te
113+
src/te/** @junrushao1994 @vinx13 @tqchen @kparzysz-quic @ZihengJiang @masahi @were
114+
include/tvm/te/** @junrushao1994 @vinx13 @tqchen @kparzysz-quic @ZihengJiang @masahi @were
115+
python/tvm/te/** @junrushao1994 @vinx13 @tqchen @kparzysz-quic @ZihengJiang @masahi @were
116+
117+
# target
118+
src/target/** @junrushao1994 @vinx13 @tqchen @kparzysz-quic @ZihengJiang @masahi
119+
include/tvm/target/** @junrushao1994 @vinx13 @tqchen @kparzysz-quic @ZihengJiang @masahi
120+
python/tvm/target/** @junrushao1994 @vinx13 @tqchen @kparzysz-quic @ZihengJiang @masahi
121+
122+
# arith: Arithmetic module and simplifiers
123+
src/arith/** @tqchen @junrushao1994 @vinx13
124+
include/tvm/arith/** @tqchen @junrushao1994 @vinx13
125+
python/tvm/arith/** @tqchen @junrushao1994 @vinx13
126+
127+
# parser
128+
src/parser/** @jroesch @slyubomirsky
129+
130+
# runtime
131+
src/runtime/** @vinx13 @tqchen @FronzenGene @liangfu @areusch @tmoreau89 @ajtulloch @masahi @kazum @ZihengJiang @junrushao1994
132+
include/tvm/runtime/** @vinx13 @tqchen @FronzenGene @liangfu @areusch @tmoreau89 @ajtulloch @masahi @kazum @ZihengJiang @junrushao1994
133+
python/tvm/runtime/** @vinx13 @tqchen @FronzenGene @liangfu @areusch @tmoreau89 @ajtulloch @masahi @kazum @ZihengJiang @junrushao1994
134+
135+
# runtime/micro
136+
src/runtime/micro/** @areusch @liangfu @tmoreau89 @manupa-arm
137+
src/runtime/crt/** @areusch @liangfu @tmoreau89 @manupa-arm
138+
include/tvm/runtime/crt/** @areusch @liangfu @tmoreau89 @manupa-arm
139+
include/tvm/runtime/micro/** @areusch @liangfu @tmoreau89 @manupa-arm
140+
python/tvm/micro/** @areusch @liangfu @tmoreau89 @manupa-arm
141+
142+
# relay
143+
src/relay/** @jroesch @slyubomirsky @icemelon @MarisaKirisame @ZihengJiang @yzhliu @vinx13 @mbrookhart @jwfromm @zhiics @anijain2305 @wweic @eqy @junrushao1994
144+
include/tvm/relay/** @jroesch @slyubomirsky @icemelon @MarisaKirisame @ZihengJiang @yzhliu @vinx13 @mbrookhart @jwfromm @zhiics @anijain2305 @wweic @eqy @junrushao1994
145+
python/tvm/relay/** @jroesch @slyubomirsky @icemelon @MarisaKirisame @ZihengJiang @yzhliu @vinx13 @mbrookhart @jwfromm @zhiics @anijain2305 @wweic @eqy @junrushao1994
146+
147+
148+
# relay/qnn
149+
src/relay/qnn/** @jwfromm @anijain2305 @ZihengJiang
150+
inlcude/tvm/relay/qnn/** @jwfromm @anijain2305 @ZihengJiang
151+
python/tvm/relay/qnn/** @jwfromm @anijain2305 @ZihengJiang
152+
153+
# relay/backend/contrib: BYOC
154+
src/relay/backend/contrib/** @zhiics @trevor-m @comaniac @mbaret @manupa-arm
155+
156+
# relay/frontends
157+
python/tvm/relay/frontend/** @jwfromm @mbrookhart @srkreddy1238 @siju-samuel @Huyuwei @hlu1 @kazum @PariksheetPinjari909
158+
159+
# topi: Operator definitions
160+
src/topi/** @Laurawly @Huyuwei @kevinthesun @jwfromm @vinx13 @masahi @FronzenGene @yzhliu @mbrookhart @ZihengJiang @jcf94
161+
include/tvm/topi/** @Laurawly @Huyuwei @kevinthesun @jwfromm @vinx13 @masahi @FronzenGene @yzhliu @mbrookhart @ZihengJiang @jcf94
162+
python/tvm/topi/** @Laurawly @Huyuwei @kevinthesun @jwfromm @vinx13 @masahi @FronzenGene @yzhliu @mbrookhart @ZihengJiang @jcf94
163+
164+
165+
# tvm/driver/
166+
python/tvm/driver/** @leandron @jwfromm @tqchen @jroesch
167+
168+
# tvm/driver/tvmc
169+
python/tvm/driver/tvmc/** @leandron @jwfromm
Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
---
2+
name: "\U0001F41B Bug report"
3+
about: Please include a description of your environment, preferably a minimum script to reproduce the problem. Find the list of label tags at https://tinyurl.com/5fnd5rkn.
4+
title: "[Bug] "
5+
labels: "needs-triage, type: bug"
6+
---
7+
8+
Thanks for participating in the TVM community! We use https://discuss.tvm.ai for any general usage questions and discussions. The issue tracker is used for actionable items such as feature proposals discussion, roadmaps, and bug tracking. You are always welcomed to post on the forum first :smile_cat:
9+
10+
Issues that are inactive for a period of time may get closed. We adopt this policy so that we won't lose track of actionable issues that may fall at the bottom of the pile. Feel free to reopen a new one if you feel there is an additional problem that needs attention when an old one gets closed.
11+
12+
### Expected behavior
13+
14+
What you were expecting
15+
16+
### Actual behavior
17+
18+
What actually happened
19+
20+
### Environment
21+
22+
Any environment details, such as: Operating System, TVM version, etc
23+
24+
### Steps to reproduce
25+
26+
Preferably a minimal script to cause the issue to occur.
27+
28+
### Triage
29+
30+
Please refer to the list of label tags [here](https://github.com/apache/tvm/wiki/Issue-Triage-Labels) to find the relevant tags and add them below in a bullet format (example below).
31+
32+
* needs-triage
Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
---
2+
name: "\U0000274C CI Problem"
3+
about: To help the developers act on these problems, please give us as many details of the CI failure as possible. Find the list of label tags at https://tinyurl.com/5fnd5rkn.
4+
title: "[CI Problem] "
5+
labels: "needs-triage, type:ci"
6+
---
7+
8+
Thanks for participating in the TVM community! We use https://discuss.tvm.ai for any general usage questions and discussions. The issue tracker is used for actionable items such as feature proposals discussion, roadmaps, and bug tracking. You are always welcomed to post on the forum first :smile_cat:
9+
10+
Issues that are inactive for a period of time may get closed. We adopt this policy so that we won't lose track of actionable issues that may fall at the bottom of the pile. Feel free to reopen a new one if you feel there is an additional problem that needs attention when an old one gets closed.
11+
12+
### Branch/PR Failing
13+
14+
Please provide a link to the PR that has failed to run CI.
15+
16+
### Jenkins Link
17+
18+
Provide a link to the specific run that has failed.
19+
20+
### Flakiness
21+
22+
Have you seen this multiple times in this branch or in other branches?
23+
24+
### Triage
25+
26+
Please refer to the list of label tags [here](https://github.com/apache/tvm/wiki/Issue-Triage-Labels) to find the relevant tags and add them below in a bullet format (example below).
27+
28+
* needs-triage

.github/ISSUE_TEMPLATE/config.yml

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
blank_issues_enabled: false # default: true
2+
contact_links:
3+
- name: 💬 Discourse
4+
url: https://discuss.tvm.apache.org/
5+
about: Thanks for participating in the TVM community! We use https://discuss.tvm.ai for any general usage questions and discussions. The issue tracker is used for actionable items such as feature proposals discussion, roadmaps, and bug tracking. You are always welcomed to post on the forum first 😺
Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
---
2+
name: "\U0001F4C4 Documentation"
3+
about: Use this template to suggest additions and changes to the documentation. Find the list of label tags at https://tinyurl.com/5fnd5rkn.
4+
title: "[Docs] "
5+
labels: "needs-triage, type: doc"
6+
---
7+
8+
Thanks for participating in the TVM community! We use https://discuss.tvm.ai for any general usage questions and discussions. The issue tracker is used for actionable items such as feature proposals discussion, roadmaps, and bug tracking. You are always welcomed to post on the forum first :smile_cat:
9+
10+
Issues that are inactive for a period of time may get closed. We adopt this policy so that we won't lose track of actionable issues that may fall at the bottom of the pile. Feel free to reopen a new one if you feel there is an additional problem that needs attention when an old one gets closed.
11+
12+
### Documentation Title & Type
13+
14+
Include the title of the document (e.g. "Getting Started with TVM"), and the type of documentation (e.g. user docs, developer docs, tutorials)
15+
16+
### Additions/Changes Requested
17+
18+
If an RFC/discuss post exists, link it here.
19+
20+
Otherwise, specify what actions should be taken to provide additional clarity/readability/reproducibility to the document. Include code snippets from the previous documentation if applicable.
21+
22+
### Triage
23+
24+
Please refer to the list of label tags [here](https://github.com/apache/tvm/wiki/Issue-Triage-Labels) to find the relevant tags and add them below in a bullet format (example below).
25+
26+
* needs-triage
Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
---
2+
name: "\U0001F527 Feature Tracking"
3+
about: List clear, small actionable items so we can track the progress of the change. Find the list of label tags at https://tinyurl.com/5fnd5rkn.
4+
title: "[Tracking Issue] "
5+
labels: "needs-triage, type:rfc-tracking"
6+
---
7+
8+
Thanks for participating in the TVM community! We use https://discuss.tvm.ai for any general usage questions and discussions. The issue tracker is used for actionable items such as feature proposals discussion, roadmaps, and bug tracking. You are always welcomed to post on the forum first :smile_cat:
9+
10+
Issues that are inactive for a period of time may get closed. We adopt this policy so that we won't lose track of actionable issues that may fall at the bottom of the pile. Feel free to reopen a new one if you feel there is an additional problem that needs attention when an old one gets closed.
11+
12+
### This issue is to track progress for FEATURE NAME
13+
- [ ] P1. Title of this piece of the feature (PR link if available)
14+
15+
### Triage
16+
17+
Please refer to the list of label tags [here](https://github.com/apache/tvm/wiki/Issue-Triage-Labels) to find the relevant tags and add them below in a bullet format (example below).
18+
19+
* needs-triage
Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
---
2+
name: "\U00002744 Flaky Test"
3+
about: Report flaky tests, make sure to include link to CI runs, a sample failure log, and the name of the test(s). Find the list of label tags at https://tinyurl.com/5fnd5rkn.
4+
title: "[Flaky Test] "
5+
labels: "needs-triage, test: flaky"
6+
---
7+
8+
Thanks for participating in the TVM community! We use https://discuss.tvm.ai for any general usage questions and discussions. The issue tracker is used for actionable items such as feature proposals discussion, roadmaps, and bug tracking. You are always welcomed to post on the forum first :smile_cat:
9+
10+
These tests were found to be flaky (intermittently failing on `main` or failed in a PR with unrelated changes). As per [the docs](https://github.com/apache/tvm/blob/main/docs/contribute/ci.rst#handling-flaky-failures), these failures will be disabled in a PR that references this issue until the test owners can fix the source of the flakiness.
11+
12+
### Test(s)
13+
14+
- `tests/python/some_file.py::the_test_name`
15+
16+
### Jenkins Links
17+
18+
- Please provide link(s) to failed CI runs. If runs are for a PR, explain why your PR did not break the test (e.g. did not touch that part of the codebase)
19+
20+
### Triage
21+
22+
Please refer to the list of label tags [here](https://github.com/apache/tvm/wiki/Issue-Triage-Labels) to find the relevant tags and add them below in a bullet format (example below).
23+
24+
* needs-triage

0 commit comments

Comments
 (0)