Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
#ATAGTR2019
Re-engineering performance strategy of deep learning
applications using TensorFlow
Pallavi Shetty (Email ID: p...
#ATAGTR2019
As a author of this presentation I/we own the copyright and confirm the originality of the content. I/we allow...
#ATAGTR2019
As a author of this presentation I/we own the copyright and confirm the originality of the content. I/we allow...
#ATAGTR2019
As a author of this presentation I/we own the copyright and confirm the originality of the content. I/we allow...
#ATAGTR2019
As a author of this presentation I/we own the copyright and confirm the originality of the content. I/we allow...
#ATAGTR2019
As a author of this presentation I/we own the copyright and confirm the originality of the content. I/we allow...
#ATAGTR2019
As a author of this presentation I/we own the copyright and confirm the originality of the content. I/we allow...
#ATAGTR2019
As a author of this presentation I/we own the copyright and confirm the originality of the content. I/we allow...
#ATAGTR2019
As a author of this presentation I/we own the copyright and confirm the originality of the content. I/we allow...
#ATAGTR2019
As a author of this presentation I/we own the copyright and confirm the originality of the content. I/we allow...
#ATAGTR2019
As a author of this presentation I/we own the copyright and confirm the originality of the content. I/we allow...
#ATAGTR2019
As a author of this presentation I/we own the copyright and confirm the originality of the content. I/we allow...
Upcoming SlideShare
Loading in …5
×

#ATAGTR2019 Presentation "Re-engineering perfmance strategy of deep learning applications using TensorFlow – a powerful AI package" By Pallavi Shetty and Anjali Sharma

10 views

Published on

Pallavi Shetty who is a Computer Scientist at Edgeverve Systems Ltd along with Anjali Sharma who is a Member Of Technical Staff at Edgeverve Systems Ltd took a Session on "Re-engineering perfmance strategy of deep learning applications using TensorFlow – a powerful AI package" at Global Testing Retreat #ATAGTR2019

Please refer our following post for session details:
https://atablogs.agiletestingalliance.org/2019/12/04/global-testing-retreat-atagtr2019-welcomes-pallavi-shetty-as-our-esteemed-speaker/
https://atablogs.agiletestingalliance.org/2019/12/04/global-testing-retreat-atagtr2019-welcomes-anjali-sharma-as-our-esteemed-speaker/

Published in: Technology
  • Be the first to comment

  • Be the first to like this

#ATAGTR2019 Presentation "Re-engineering perfmance strategy of deep learning applications using TensorFlow – a powerful AI package" By Pallavi Shetty and Anjali Sharma

  1. 1. #ATAGTR2019 Re-engineering performance strategy of deep learning applications using TensorFlow Pallavi Shetty (Email ID: pallavi.shetty@edgeverve.com) Anjali Sharma (Email ID: Anjali_Sharma@edgeverve.com) 14th 15th Dec 2019
  2. 2. #ATAGTR2019 As a author of this presentation I/we own the copyright and confirm the originality of the content. I/we allow Agile testing alliance to use the content for social media marketing, publishing it on ATA Blog or ATA social medial channels(Provided due credit is given to me/us) Objective Capture different performance metrics by using appropriate engineering approach and optimization techniques. Performance tuning of deep learning applications using Tensor flow packages.
  3. 3. #ATAGTR2019 As a author of this presentation I/we own the copyright and confirm the originality of the content. I/we allow Agile testing alliance to use the content for social media marketing, publishing it on ATA Blog or ATA social medial channels(Provided due credit is given to me/us) Abstract Modern information technologies and the advent of machines powered by Artificial Intelligence (AI) have strongly influenced the world. In recent times there has been increase in usage of AI based applications built using TensorFlow package which is a widely used library by developers to build deep learning applications. This paper includes the Performance engineering approach and optimization techniques for deep learning applications using TensorFlow package and also captures different performance metrics for optimizing the performance of deep learning applications.
  4. 4. #ATAGTR2019 As a author of this presentation I/we own the copyright and confirm the originality of the content. I/we allow Agile testing alliance to use the content for social media marketing, publishing it on ATA Blog or ATA social medial channels(Provided due credit is given to me/us) Introduction Deep Neural Network Tensor Flow Deep neural networks are built of many processing layers and are able to learn features from a mass of data with various stages of abstraction. Comparing with conventional machine leaning techniques, deep learning has less limitation on the data fed to the computer to learn but requires higher computational power. TensorFlow is a framework created by Google for creating Deep Learning models. Popular for its support for multiple languages to create deep learning models such as Python, C++ and R. The flexible architecture of TensorFlow enables us to deploy our deep learning models on one or more CPUs (as well as GPUs).
  5. 5. #ATAGTR2019 As a author of this presentation I/we own the copyright and confirm the originality of the content. I/we allow Agile testing alliance to use the content for social media marketing, publishing it on ATA Blog or ATA social medial channels(Provided due credit is given to me/us) Performance Testing Approach Identify and Freeze the Performance requirements Develop the scripts to simulate end user scenarios Tune the TensorFlow and application code for optimal performance Design and execute different types of load tests to mimic the production usage Analyze the test results Execute Scalability and Benchmark tests to determine capacity and forecasted growth in application usage Publish Benchmark results Capture baseline results and compare after tuning Explorative tests for each module like model predications Objectives met Objectives not met
  6. 6. #ATAGTR2019 As a author of this presentation I/we own the copyright and confirm the originality of the content. I/we allow Agile testing alliance to use the content for social media marketing, publishing it on ATA Blog or ATA social medial channels(Provided due credit is given to me/us) Performance Measures Confusion matrix Accuracy F1 Score Specificity Precision-Recall or PR curve ROC (Receiver Operating Characteristics) curve PR vs ROC curve
  7. 7. #ATAGTR2019 As a author of this presentation I/we own the copyright and confirm the originality of the content. I/we allow Agile testing alliance to use the content for social media marketing, publishing it on ATA Blog or ATA social medial channels(Provided due credit is given to me/us) Tuning and Optimization Techniques – 1. Optimizing Tensorflow Models – Input Pipeline Optimizations – Data Formats – Common Fused Operations – RNN Performance – Building & Installing from Source – 2. Optimizing Models for Serving – Model size – Prediction speed – Prediction throughput
  8. 8. #ATAGTR2019 As a author of this presentation I/we own the copyright and confirm the originality of the content. I/we allow Agile testing alliance to use the content for social media marketing, publishing it on ATA Blog or ATA social medial channels(Provided due credit is given to me/us) Case Study - 1  Comparison between training time of model built using Theano versus TensorFlow.  The training time of LSTM model developed using TensorFlow package showed ~35% improvement in processing time when compared to the model developed using Theano. The LSTM model was developed as a part of a commercial product offering in the space of process discovery from Edgeverve Systems Ltd. This assessment of improvement in training time has been performed as a part of comparative study in our Systems Engineering Lab.
  9. 9. #ATAGTR2019 As a author of this presentation I/we own the copyright and confirm the originality of the content. I/we allow Agile testing alliance to use the content for social media marketing, publishing it on ATA Blog or ATA social medial channels(Provided due credit is given to me/us) Case Study - 2  Optimization of TensorFlow for better CPU usage  Using a custom build of Tensorflow built with Intel Python and MKL support. It has a lot of optimizations to speed up neural network processing on Intel CPUs. The following are the parameters for tuning MKL:- inter_op_parallelism_threads=1 (number of sockets/2) intra_op_parallelism_threads=12 (number of logical cores) KMP_BLOCKTIME=1 KMP_AFFINITY=granularity=fine,verbose,compact,1,0 OMP_NUM_THREADS=12 (number of logical cores)  For an SSD network running on CPU o Without tuning (benchmark): 8 seconds/step o With tuning: 1.35 seconds/step We have observed ~500% improvement by tweaking above mentioned parameters and these steps resulted in improved performance during training of the model.
  10. 10. #ATAGTR2019 As a author of this presentation I/we own the copyright and confirm the originality of the content. I/we allow Agile testing alliance to use the content for social media marketing, publishing it on ATA Blog or ATA social medial channels(Provided due credit is given to me/us) Performance Best Practices 1. Choose the best model for the task 2. Profile your model 3. Profile and optimize operators in the graph 4. Optimize the model 5. Quantization 6. Tweak the number of threads 7. Eliminate redundant copies 8. Profile the application with platform specific tools 9. Evaluate whether model benefits from using hardware accelerators available on the device
  11. 11. #ATAGTR2019 As a author of this presentation I/we own the copyright and confirm the originality of the content. I/we allow Agile testing alliance to use the content for social media marketing, publishing it on ATA Blog or ATA social medial channels(Provided due credit is given to me/us) Conclusion This paper provides complete technical guide and strategy to carry out end-to-end performance engineering of deep learning applications which uses TensorFlow package and different performance metrics that needs to be captured and analysed for optimizing the performance of deep learning applications.
  12. 12. #ATAGTR2019 As a author of this presentation I/we own the copyright and confirm the originality of the content. I/we allow Agile testing alliance to use the content for social media marketing, publishing it on ATA Blog or ATA social medial channels(Provided due credit is given to me/us) Thank You

×