
1st TVM and Deep Learning Compilation Conference December 12, 2018 Luis Ceze Welcome to the 1st TVM and Deep Learning Compilation Conference! Welcome to the 1st TVM and Deep Learning Compilation Conference! 180+ ppl! Machine learning is amazing… Machine learning is amazing… super human accuracy, self driving cars, automated scientific discoveries… Machine learning is amazing… super human accuracy, self driving cars, automated scientific discoveries… wow! Software era: Problem to solve Write code Run on fast machine Software era: Problem to solve Write code Run on fast machine Software era: Problem to solve Write code Run on fast machine Data + model Train on fastest Inference on fast & Machine learning era: Problem to solve templates machine cheap machine Software era: Problem to solve Write code Run on fast machine Data + model Train on fastest Inference on fast & Machine learning era: Problem to solve templates machine cheap machine Model size and compute cost growing fast by Eugenio Culurciello Software era: Problem to solve Write code Run on fast machine Data + model Train on fastest Inference on fast & Machine learning era: Problem to solve templates machine cheap machine Model size and compute cost growing fast Training costs growing exponentially by Eugenio Culurciello by Open AI Popularity and computational cost of ML. Oops. Popularity and computational cost of Fundamental trade-off between ML. Oops. specialization and performance/efficiency. Popularity and computational cost of Fundamental trade-off between ML. Oops. specialization and performance/efficiency. Fixed Func*on Chips Be0er Performance/ Energy Efficiency FPGA GPUs General Purpose CPUs More General/Programmable Popularity and computational cost of Fundamental trade-off between ML. Oops. specialization and performance/efficiency. Fixed Func*on Chips Be0er Performance/ Energy Efficiency FPGA GPUs General Purpose CPUs More General/Programmable Machine learning algorithms are relatively simple to implement in HW… great! Popularity and computational cost of Fundamental trade-off between ML. Oops. specialization and performance/efficiency. Fixed Func*on Chips Be0er Performance/ Energy Efficiency FPGA GPUs General Purpose CPUs More General/Programmable Machine learning algorithms are relatively simple to implement in HW… great! Machine Learning Makes Computer Architecture Cool Again! … … +~50 startups … +~50 startups Models: CNN RNN DQNN GAN MLP … +~50 startups Models: CNN RNN DQNN GAN MLP Frameworks: … +~50 startups Models: CNN RNN DQNN GAN MLP Frameworks: Challenge: Efficiently deploying deep learning everywhere … +~50 startups Gaurav Kapoor, Core Machine Learning HW+SW optimization is key for efficiency HW+SW optimization is key for efficiency Lots of hand-tuning, full automation would be a holy grail Academic group focused on Systems + Computer Architecture + Machine Learning + Programming Languages Academic group focused on Systems + Computer Architecture + Machine Learning + Programming Languages Academic group focused on Systems + Computer Architecture + Machine Learning + Programming Languages PL: High-level support for future ML applications Compilers: Extensible support for future models, optimizations and hardware architectures Systems: On-device and cloud-based training, distributed systems for ML Computer Architecture: Extensible, energy efficient hardware designs for inference and training PL: High-level support for future ML applications Compilers: Extensible support for future models, ML for Systems: optimizations and hardware architectures Automatic Learning- Based Design and Optimizations Systems: On-device and cloud-based training, distributed systems for ML Computer Architecture: Extensible, energy efficient hardware designs for inference and training PL: High-level support for future ML applications Compilers: Extensible support for future models, ML for Systems: optimizations and hardware architectures Automatic Learning- Based Design and Optimizations Systems: On-device and cloud-based training, distributed systems for ML ML for better ML systems! Computer Architecture: Extensible, energy efficient hardware designs for inference and training PL: High-level support for future ML applications Compilers: Extensible support for future models, ML for Systems: optimizations and hardware architectures Automatic Learning- Based Design and Optimizations Systems: On-device and cloud-based training, distributed systems for ML ML for better ML systems! Computer Architecture: Extensible, energy efficient hardware designs for inference and training PL: High-level support for future ML applications Compilers: Extensible support for future models, ML for Systems: optimizations and hardware architectures Automatic Learning- Open source when ready Based Design and Optimizations Systems: On-device and cloud-based training, Open Source distributed systems for ML Deployment ML for better ML systems! Computer Architecture: Extensible, energy efficient hardware designs for inference and training Provides infrastructure Open source compilers have transformed our industry First major open source compiler collection Open source compilers have transformed our industry LLVM: Higher-Level IR, new First major open source optimizations, easier extensibility compiler collection Open source compilers have transformed our industry In the age of domain-specialized systems… LLVM: Higher-Level IR, new First major open source optimizations, easier extensibility compiler collection Open source compilers have transformed our industry In the age of domain-specialized systems… Specialized compiler stack for Deep Learning LLVM: Higher-Level IR, new First major open source optimizations, easier extensibility compiler collection End the tyranny of closed deep learning systems! Tianqi Chen High-Level Differentiable IR High-Level Differentiable IR Tensor Expression IR High-Level Differentiable IR Tensor Expression IR LLVM, CUDA, Metal High-Level Differentiable IR Tensor Expression IR LLVM, CUDA, Metal VTA Edge Cloud ASIC FPGA FPGA import tvm from tvm import relay graph, params = frontend.from_keras(keras_resnet50) graph, lib, params = relay.build(graph, target) Compile import tvm from tvm import relay graph, params = frontend.from_keras(keras_resnet50) graph, lib, params = relay.build(graph, target) Compile Deploy module = runtime.create(graph, lib, tvm.gpu(0)) module.set_input(**params) import tvm module.run(data=data_array) from tvm import relay output = tvm.nd.empty(out_shape, ctx=tvm.gpu(0)) module.get_output(0, output) graph, params = frontend.from_keras(keras_resnet50) input graph, lib, params = relay.build(graph, target) Compile Deployable Module prediction tabby, tabby cat Deploy module = runtime.create(graph, lib, tvm.gpu(0)) module.set_input(**params) import tvm module.run(data=data_array) from tvm import relay output = tvm.nd.empty(out_shape, ctx=tvm.gpu(0)) module.get_output(0, output) graph, params = frontend.from_keras(keras_resnet50) input graph, lib, params = relay.build(graph, target) Compile Deployable Module prediction tabby, tabby cat On languages and platforms you choose Automated by Machine Learning High-Level Differentiable IR Tensor Expression IR LLVM, CUDA, Metal VTA Edge Cloud ASIC FPGA FPGA Automated by Machine Learning Optimization High-Level Differentiable IR AutoTVM Tensor Expression IR LLVM, CUDA, Metal VTA AutoVTA Edge Cloud Hardware ASIC FPGA FPGA Fleet Automated by Machine Learning Optimization High-Level Differentiable IR AutoTVM Tensor Expression IR LLVM, CUDA, Metal VTA AutoVTA Edge Cloud Hardware ASIC FPGA FPGA Fleet Automated by Machine Learning Optimization High-Level Differentiable IR AutoTVM Tensor Expression IR LLVM, CUDA, Metal VTA AutoVTA Edge Cloud Hardware ASIC FPGA FPGA Fleet Diverse Hardware backends Optimization High-Level Differentiable IR AutoTVM Tensor Expression IR Diverse Hardware backends Optimization High-Level Differentiable IR AutoTVM Tensor Expression IR LLVM ARM x86 AMDGPU NVPTX Javascript WASM Diverse Hardware backends Optimization High-Level Differentiable IR AutoTVM Tensor Expression IR LLVM ARM x86 AMDGPU CUDA Vulkan NVPTX Javascript WASM Metal C Diverse Hardware backends Optimization High-Level Differentiable IR AutoTVM Tensor Expression IR LLVM ARM x86 AMDGPU CUDA Vulkan VTA NVPTX Javascript WASM Metal C TVM Open Source Community TVM Open Source Community Apache governance model: grant project ownership by merit. 11 committers, 29 reviewers, 166 contributors. Contributed by the community, for the community. Industrial Impact TVM + AWS Vin Sharma, Amazon SageMaker Neo Amazon: vinarm@ | Twitter: ciphr@ How is AWS using TVM? How is AWS using TVM? • As a back-end for Apache MXNet • To deploy easily onto edge devices • To improve performance on target hardware How is AWS using TVM? • As a back-end for Apache MXNet • To deploy easily onto edge devices • To improve performance on target hardware • As an optimizer for Amazon AI services • Amazon Rekognition: To improve end-to-end latency • Amazon Alexa: To increase resource efficiency on Echo/Dot How is AWS using TVM? • As a back-end for Apache MXNet • To deploy easily onto edge devices • To improve performance on target hardware • As an optimizer for Amazon AI services • Amazon Rekognition: To improve end-to-end latency • Amazon Alexa: To increase resource efficiency on Echo/Dot • In a tool chain for Amazon Inferentia We’re How is AWS using TVM? Hiring! • As a back-end for Apache MXNet • To deploy easily onto edge devices • To improve performance on target hardware • As an optimizer for Amazon AI services
Details
-
File Typepdf
-
Upload Time-
-
Content LanguagesEnglish
-
Upload UserAnonymous/Not logged-in
-
File Pages115 Page
-
File Size-