What is Apache TVM?
Apache TVM is an open deep learning compiler stack for CPUs, GPUs, and specialized accelerators. It aims to close the gap between the productivity-focused deep learning frameworks, and the performance- or efficiency-oriented hardware backends. TVM provides the following main features:
Compilation of deep learning models in Keras, MXNet, PyTorch, Tensorflow, CoreML, and DarkNet into minimum deployable modules on diverse hardware backends.
Infrastructure to automatically generate and optimize tensor operators on more backend with better performance.
TVM began as a research project at the SAMPL group of Paul G. Allen School of Computer Science & Engineering, University of Washington. The project is now an effort undergoing incubation at The Apache Software Foundation (ASF), driven by an open source community involving multiple industry and academic institutions under the Apache way.
TVM provides two level optimizations show in the following figure. Computational graph optimization to perform tasks such as high-level operator fusion, layout transformation, and memory management. Then a tensor operator optimization and code generation layer that optimizes tensor operators. More details can be found at the techreport.
How can TVM help you?
OctoML provides an automated, streamlined process.
TVM is designed to make it easy to import, apply optimization and other compiler passes, and compile a deep learning model into a single binary for a given target platform.
Use the TVM compiler machinery to analyze your model for number of operations (total memory usage, total FLOPs).
Have an idea for a new quantization scheme, sparse transformer kernel, invariant convolution operator, or backend? Cutting edge resource has been done in TVM for all of the above and TVM is built to be flexible enough for all of these purposes.
Which companies use TVM today?
How can you get involved?
Begin learning from the tutorials
Compile PyTorch, TensorFlow, or CoreML models. Deploy pre-trained models on Android, or employ autotuning on your hand-written kernel.
See the current TVM roadmap here
Autoscheduling, quantization, auto tensorization and more.
Join the discussion forums
With over three thousand users.
Dive into the design and developer guide to dig in
Jump into the core and help us build the future of MLOps.