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

TVM v0.2 Release Note #349

Closed
25 of 34 tasks
tqchen opened this issue Aug 19, 2017 · 14 comments
Closed
25 of 34 tasks

TVM v0.2 Release Note #349

tqchen opened this issue Aug 19, 2017 · 14 comments

Comments

@tqchen
Copy link
Member

tqchen commented Aug 19, 2017

Thanks for everyone for a good first release, this issue contains the road-map and checklist we want to achieve in 0.2, feel free to comment, we will open separate issues when necessary for detailed progress checking. Feel free to volunteer yourself if you are interested in trying out some items.

As usual, the checklist will go into the release note.

Features

This release comes with a complete set of TOPI support for NNVM compiler, which allows compilation of end to end workloads. We also make major improvements in supporting new backends: ROCm for AMDGPUs and optimized ARM GPU performance.

  • Backend support
    • Support LLVM mainline(4.0, 5.0, 6.0)
    • Support ROCM stack for AMD GPUs
    • WebGL backend
      • Basic runtime and compiler
      • topi
      • end to end example
  • C++ compiler support
    • Basic version of build function in C++
    • migration of functions
  • Runtime
  • Multi-threading optimization
    • multi-threaded depthwise
    • multi-threaded conv2d
  • Schedule primitives
    • storage_align
    • double_buffer
  • End to end pipelines
    • CPU ResNet18
    • CPU MobileNet
    • GPU ResNet
  • TOPI operators
    • broadcast/ reduction operators
    • pooling and global pooling
    • Generic target support for topi
    • schedule with external libraries
  • Target system
    • Introduce tvm.target to better specify target options for compilation.
  • Tutorials
    • How to load compiled module in any language runtime
    • How to use java runtime
  • Contrib library
    • MIOpen
    • MPS DNN
      • Dense
      • convolution
  • 8bit support
  • One bit support
    • popcount intrinsics
    • 1bit convolution @Huyuwei
  • ARM GPU support
    • gemm
    • conv2d
    • depthwise
    • end to end pipeline
@Huyuwei
Copy link
Contributor

Huyuwei commented Aug 19, 2017

Great interest in 1bit convolution!

@Laurawly
Copy link
Contributor

Gonna finish the GPU end to end Resnet and interested in gpu optimization on Volta.

@ZihengJiang
Copy link
Contributor

I would like to take 8bit on ARM

@yzhliu
Copy link
Member

yzhliu commented Aug 27, 2017

I'd like to take gpu on android device.

@tqchen
Copy link
Member Author

tqchen commented Aug 27, 2017

also cc @ysh329 who is also interested in android gpu opencl devices.

@csarron
Copy link

csarron commented Aug 27, 2017

May also consider RenderScript implementation for GPU on Android. @Javelinjs

@ajtulloch
Copy link
Contributor

For low bitwidth conv/gemm implementations, you might find https://github.com/caffe2/caffe2/blob/master/caffe2/mobile/contrib/ulp2/ulp_neon.cc interesting as a baseline. The gess microkernel hits >80% of peak on a few common microarchitectures on ARMv7.

@ajtulloch
Copy link
Contributor

And re: wrapping MPS in C++, https://github.com/caffe2/caffe2/blob/master/caffe2/mobile/contrib/ios/mpscnn/mpscnn.mm might be interesting as well.

@tqchen
Copy link
Member Author

tqchen commented Oct 27, 2017

thanks @ajtulloch the links are helpful. It might make sense to put the neon micro kernel as contrib so we can use RPC to test it in a integrated fashion

@tqchen tqchen changed the title RoadMap for TVM v0.2 Release Note of TVM v0.2 Jan 24, 2018
@tqchen tqchen mentioned this issue Jan 24, 2018
39 tasks
@tqchen tqchen changed the title Release Note of TVM v0.2 TVM v0.2 Release Note Jan 24, 2018
@tqchen
Copy link
Member Author

tqchen commented Jan 24, 2018

It has been five months a year since v0.1 release and we have made a lot of progress. I would like to propose release of v0.2 on Jan 31th. The current checklist will go into the release note, and we will move the unfinished ones into the roadmap of next release cycle.

Thanks everyone's effort to put in the great set of improvements.

@antinucleon
Copy link
Contributor

antinucleon commented Jan 24, 2018 via email

@tqchen
Copy link
Member Author

tqchen commented Jan 24, 2018

Sorry should be Jan 31th, corrected in the comment

@tqchen
Copy link
Member Author

tqchen commented Jan 31, 2018

#853

@tqchen
Copy link
Member Author

tqchen commented Jan 31, 2018

v0.2 has been officially tagged. close this issue. The next cycle roadmap is at #854

@tqchen tqchen closed this as completed Jan 31, 2018
vinx13 pushed a commit to vinx13/tvm that referenced this issue Mar 9, 2022
* [BugFix] Fix bug of compute_at

* [BugFix] update doc

* [BugFix] remove redundant log output

* fix a tiny typo in tir/schedule/analysis.cc
gigiblender pushed a commit to gigiblender/tvm that referenced this issue Jan 19, 2023
…pache#349)

* [TVMScript][Bugfix] Minor fix for `type_args` and constant printing
junrushao pushed a commit to junrushao/tvm that referenced this issue Feb 8, 2023
…pache#349)

* [TVMScript][Bugfix] Minor fix for `type_args` and constant printing
yelite pushed a commit to yelite/tvm that referenced this issue Feb 17, 2023
…pache#349)

* [TVMScript][Bugfix] Minor fix for `type_args` and constant printing
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

8 participants