SlideShare a Scribd company logo
© 2019 Arm Limited
Developing with Docker
for the Arm Architecture
Jason Andrews
jason.andrews@arm.com
November 5, 2019
2 © 2019 Arm Limited
Docker Desktop - Any Device, Any Architecture
2
Build and Run both x86 and Arm images using Docker
Desktop on x86 Mac and Windows Developer Machines
3 © 2019 Arm Limited
Windows 10
Docker
Desktop
Hyper-V
arm/v6
x86
macOS
HyperKit
QEMUDocker Engine
arm/v7 arm64
Managed
by
Docker
Desktop
Application
Code
x86_64
Docker Desktop Architecture
4 © 2019 Arm Limited
Docker Edge/IoT Developer Kits
Embedded developers become cloud native in minutes
• Application templates take care of local & cloud
provisioning
• Device setup and app runtime uses Secure Engine
• App deployment trigger Desktop & Pipelines; scan & sign
with DTR; deploy to devices
2. Inner Loop - Emulation
environment
1. Embedded
developer loop
3. Native build on
remote server
4. CI/CD pipeline
Docker
Desktop Enterprise
Docker
Trusted Registry
1
2
3
Meetup outline
Developing with Docker
Arm C/C++ examples
Application templates
6 © 2019 Arm Limited
Brief History of SW Development & Deployment
Embedded engineer perspectiveDevelopDeploy
1950s 1990s 2010s
Punch a lot of holes in a
lot of cards
Set ROM/Flash in
custom assembly line
Pull app from cloud, run
Cloud-based
Embedded software development practices
are stuck in the 1990s.
Cross-compile, copy,
ssh/scp, run
Punch holes in cards
Future embedded
development
7 © 2019 Arm Limited
Alternatives for embedded software development
Docker improves on cross-compilation and target-compilation
Embedded software development options
Docker Cross-compile Target Build
Complexity Consistent environment Different environment leads to more
porting struggles (especially around
library dependencies)
Same environment
At scale
deployment
Simple, must setup docker
on each target
Medium, must reconfigure each
target environment
Generally slower compile time due
to target performance
Build time Medium…host PC with
QEMU, Good using remote
Arm build farm
Quickest, host PC speeds Very slow, must reconfigure
environment and app on each
8 © 2019 Arm Limited
Docker: Where is it tomorrow?
Develop on Arm, for Arm
Docker enables an easy
transition to Arm servers
which can be used for
software development
AWS A1
Simply develop and deploy
Manage multi-architecture
IoT network development
and deployment with Docker,
from factories to hotels
Rich IoT • This
• That
• The other thing
Easily compile and deploy
Traditional Arm compilation
requires 20+ steps and many
3rd-party packages, requiring
expert-level knowledge
Edge ML • This
• That
• The other thing
Increase big-data
performance
Docker simplifies deployment
of ‘computational storage’
applications, drastically
increasing processing
Smart SSD
9 © 2019 Arm Limited
Amazon EC2 A1 instances
Powered by Arm-based processors
Up to 45% lowercostforscale-outworkloads1
Powered byAWSGraviton Processorsthatfeature 64-bit
Arm Neoverse coresand custom silicon designed byAWS2
Amazon Linux2, Red HatEnterprise Linux7.6, Ubuntu
16.04 LTS & 18.04 LTS, and SUSELinuxEnterprise Serverfor
Arm 15 available now
3
Targetworkloadsinclude Web servers, containerized
microservices, caching fleets, distributed data stores, as
well asdevelopment/testenvironments
4
10 © 2019 Arm Limited
Raspberry Pi 4
Arm development board to run Docker
Board information
A 1.5GHz quad-core 64-bit ARM Cortex-A72 CPU
1GB, 2GB, or 4GB of LPDDR4 SDRAM
Full-throughput Gigabit Ethernet
Dual-band 802.11ac wireless networking
Bluetooth 5.0 and USB 3.0
Dual monitor support, at resolutions up to 4K
Complete compatibility with earlier Raspberry Pi
products
The picture can't be displayed.
11 © 2019 Arm Limited
Meetup goals
Targeting Linux application development with C/C++
• Multi-architecture images using docker buildx
• Local development on Windows and Mac
• Using remote build and run on AWS A1 and Raspberry Pi
• Docker templates to automate developer setup
12 © 2019 Arm Limited
Meetup applications
Two primary exercises
• PART 1: warm up application using a hello world C program
• Docker buildx for multi-architecture images
• Docker Hub
• Easy application migration across laptop, AWS A1, and Raspberry Pi
• PART 2: Arm NN machine learning SDK application
• More realistic software development on Arm using complex SDK
• Remote build with docker buildx
• Multiple docker images for base tools, Arm NN SDK, application development, and deployment
© 2019 Arm Limited
Hello World example
Jump to demo
14 © 2019 Arm Limited
MNIST: the 'Hello World!’ of ML
http://yann.lecun.com/exdb/mnist/
Dataset format
• There are four files:
• Training set
contains 60.000
examples
• Testing set contains
10.000 examples
• Pixels represented
by values from 0
(white) to 255
(black), organized
row-wise.
ModelExample Dataset Neural network
New input Neural Network Model
TrainingInference
Prediction
”2”[96.0% confidence]
15 © 2019 Arm Limited
Example Application with Arm NN and Arm Compute Library
MNIST application using Arm NN and Compute Library
1. C++ application to classify MNIST digits
• Using framework parsers provided by Arm NN
2. Arm NN to parse TensorFlow model
• The inference engine calls the Arm NN API
• Alternatively, directly calls the Compute Library
3. Compute Library running on Cortex-A
1
2
3
Compute Library
Application
TensorFlow
Arm NN
TF Parser
Cortex-A
CPUs
2
1
3
https://github.com/ARM-software/armnn
© 2019 Arm Limited
Machine Learning
example
Jump to demo
17 © 2019 Arm Limited
Application templates
Available in Docker Desktop Enterprise
• Generate project
scaffolding
• Jumpstart new
developers
• Customized
templates for
each application
© 2019 Arm Limited
Docker templates
examples
Jump to demo
19 © 2019 Arm Limited
#ArmAIoTDevSummit#ArmAIoTDevSummitwww.arm.com/aiot-dev-summit
Get $75 off with code ARMMBED
20 © 2019 Arm Limited
Final notes
Links to more information
• Reach out if you are interested in doing more with Docker tools, we’ll setup time to
discuss with you and your team
• Trial licenses for Docker Desktop Enterprise are available to try application templates
• Contact Marc Meunier: marc.meunier@docker.com
• Additional articles and GitHub links: https://is.gd/Docker4Arm
• Arm TechCon 2019 workshop instructions: http://is.gd/techcon
Thank You
Danke
Merci
谢谢
ありがとう
Gracias
Kiitos
감사합니다
ध"यवाद
‫ﺷ‬‫ﻛ‬‫ر‬ً‫ا‬
‫ת‬‫ו‬‫ד‬‫ה‬
© 2019 Arm Limited

More Related Content

What's hot (20)

PDF
David Soldani, Huawei
Hilary Ip
 
PPTX
IoT Security Risks and Challenges
OWASP Delhi
 
PDF
MQTT - A practical protocol for the Internet of Things
Bryan Boyd
 
PDF
IoT and LoRaWAN
Chris Herbert
 
PDF
Virtualization and cloud Computing
Rishikese MR
 
PPTX
Docker introduction
Gourav Varma
 
PDF
Kubernetes Monitoring & Best Practices
Ajeet Singh Raina
 
PDF
OpenStack Tutorial
Bret Piatt
 
PPT
Mobile Computing
Presentaionslive.blogspot.com
 
PPTX
VMworld 2017 vSAN Network Design
Cormac Hogan
 
PPTX
Mobile computing
Udara Seneviratne
 
PDF
IOT Networks
Marc Nader
 
PDF
Docker vs VM | | Containerization or Virtualization - The Differences | DevOp...
Edureka!
 
PDF
Project calico - introduction
Hazzim Anaya
 
PPTX
Mobile Computing
Swetha Pallati
 
PDF
5G Security Briefing
3G4G
 
ODP
Introduction to Nginx
Knoldus Inc.
 
PDF
Quick introduction to Kubernetes
Eduardo Garcia Moyano
 
PPTX
Secure container: Kata container and gVisor
Ching-Hsuan Yen
 
PPTX
Effective administration of IBM Integration Bus - Sanjay Nagchowdhury
Karen Broughton-Mabbitt
 
David Soldani, Huawei
Hilary Ip
 
IoT Security Risks and Challenges
OWASP Delhi
 
MQTT - A practical protocol for the Internet of Things
Bryan Boyd
 
IoT and LoRaWAN
Chris Herbert
 
Virtualization and cloud Computing
Rishikese MR
 
Docker introduction
Gourav Varma
 
Kubernetes Monitoring & Best Practices
Ajeet Singh Raina
 
OpenStack Tutorial
Bret Piatt
 
VMworld 2017 vSAN Network Design
Cormac Hogan
 
Mobile computing
Udara Seneviratne
 
IOT Networks
Marc Nader
 
Docker vs VM | | Containerization or Virtualization - The Differences | DevOp...
Edureka!
 
Project calico - introduction
Hazzim Anaya
 
Mobile Computing
Swetha Pallati
 
5G Security Briefing
3G4G
 
Introduction to Nginx
Knoldus Inc.
 
Quick introduction to Kubernetes
Eduardo Garcia Moyano
 
Secure container: Kata container and gVisor
Ching-Hsuan Yen
 
Effective administration of IBM Integration Bus - Sanjay Nagchowdhury
Karen Broughton-Mabbitt
 

Similar to Developing with Docker for the Arm Architecture (20)

PDF
Arm as a Viable Architecture for HPC and AI
inside-BigData.com
 
PPTX
Multi-Arch Infra From the Ground Up.pptx
Cheryl Hung
 
PDF
01 AAA SoC Prototyping Oct2024P - Future of AI.pdf
huyth14
 
PDF
Arm Neoverse market update_05122020.pdf
Paul Yang
 
PDF
Will ARM be the new Mainstream in our Data Centers? @Rejekts Paris 2024
Tobias Schneck
 
PDF
Running Java on Arm - Is it worth it in 2025?
Artur Skowroński
 
PDF
Arm Neoverse solutions @Graviton2-AWS Japan Webinar Oct2020
Toshinori Kujiraoka
 
PDF
State of ARM-based HPC
inside-BigData.com
 
PDF
“Sparking the Next Generation of Arm-based Cloud-native Smart Camera Designs,...
Edge AI and Vision Alliance
 
PDF
Arm in HPC
inside-BigData.com
 
PDF
Deep Learning Neural Network Acceleration at the Edge - Andrea Gallo
Linaro
 
PDF
Docker Multi-arch All The Things
Docker, Inc.
 
PDF
Cloud, Distributed, Embedded: Erlang in the Heterogeneous Computing World
Omer Kilic
 
PPTX
Rasperry pi Part 9
Techvilla
 
PPT
Lemay jin-reddy-schoudel
xu3stones
 
PDF
XPDDS18: Unikraft: An easy way of crafting Unikernels on Arm - Kaly Xin, ARM
The Linux Foundation
 
PDF
Java in containers
Martin Baez
 
PDF
Embedded Recipes 2018 - Yoctoception: Containers in the embedded world - Jéré...
Anne Nicolas
 
PDF
An Update on Arm HPC
inside-BigData.com
 
PDF
Breaking the monolith (an example)
Massimo Ferre'
 
Arm as a Viable Architecture for HPC and AI
inside-BigData.com
 
Multi-Arch Infra From the Ground Up.pptx
Cheryl Hung
 
01 AAA SoC Prototyping Oct2024P - Future of AI.pdf
huyth14
 
Arm Neoverse market update_05122020.pdf
Paul Yang
 
Will ARM be the new Mainstream in our Data Centers? @Rejekts Paris 2024
Tobias Schneck
 
Running Java on Arm - Is it worth it in 2025?
Artur Skowroński
 
Arm Neoverse solutions @Graviton2-AWS Japan Webinar Oct2020
Toshinori Kujiraoka
 
State of ARM-based HPC
inside-BigData.com
 
“Sparking the Next Generation of Arm-based Cloud-native Smart Camera Designs,...
Edge AI and Vision Alliance
 
Arm in HPC
inside-BigData.com
 
Deep Learning Neural Network Acceleration at the Edge - Andrea Gallo
Linaro
 
Docker Multi-arch All The Things
Docker, Inc.
 
Cloud, Distributed, Embedded: Erlang in the Heterogeneous Computing World
Omer Kilic
 
Rasperry pi Part 9
Techvilla
 
Lemay jin-reddy-schoudel
xu3stones
 
XPDDS18: Unikraft: An easy way of crafting Unikernels on Arm - Kaly Xin, ARM
The Linux Foundation
 
Java in containers
Martin Baez
 
Embedded Recipes 2018 - Yoctoception: Containers in the embedded world - Jéré...
Anne Nicolas
 
An Update on Arm HPC
inside-BigData.com
 
Breaking the monolith (an example)
Massimo Ferre'
 
Ad

More from Docker, Inc. (20)

PDF
Containerize Your Game Server for the Best Multiplayer Experience
Docker, Inc.
 
PDF
How to Improve Your Image Builds Using Advance Docker Build
Docker, Inc.
 
PDF
Build & Deploy Multi-Container Applications to AWS
Docker, Inc.
 
PDF
Securing Your Containerized Applications with NGINX
Docker, Inc.
 
PDF
How To Build and Run Node Apps with Docker and Compose
Docker, Inc.
 
PDF
Hands-on Helm
Docker, Inc.
 
PDF
Distributed Deep Learning with Docker at Salesforce
Docker, Inc.
 
PDF
The First 10M Pulls: Building The Official Curl Image for Docker Hub
Docker, Inc.
 
PDF
Monitoring in a Microservices World
Docker, Inc.
 
PDF
COVID-19 in Italy: How Docker is Helping the Biggest Italian IT Company Conti...
Docker, Inc.
 
PDF
Predicting Space Weather with Docker
Docker, Inc.
 
PDF
Become a Docker Power User With Microsoft Visual Studio Code
Docker, Inc.
 
PDF
How to Use Mirroring and Caching to Optimize your Container Registry
Docker, Inc.
 
PDF
Monolithic to Microservices + Docker = SDLC on Steroids!
Docker, Inc.
 
PDF
Kubernetes at Datadog Scale
Docker, Inc.
 
PDF
Labels, Labels, Labels
Docker, Inc.
 
PDF
Using Docker Hub at Scale to Support Micro Focus' Delivery and Deployment Model
Docker, Inc.
 
PDF
Build & Deploy Multi-Container Applications to AWS
Docker, Inc.
 
PDF
From Fortran on the Desktop to Kubernetes in the Cloud: A Windows Migration S...
Docker, Inc.
 
PDF
Sharing is Caring: How to Begin Speaking at Conferences
Docker, Inc.
 
Containerize Your Game Server for the Best Multiplayer Experience
Docker, Inc.
 
How to Improve Your Image Builds Using Advance Docker Build
Docker, Inc.
 
Build & Deploy Multi-Container Applications to AWS
Docker, Inc.
 
Securing Your Containerized Applications with NGINX
Docker, Inc.
 
How To Build and Run Node Apps with Docker and Compose
Docker, Inc.
 
Hands-on Helm
Docker, Inc.
 
Distributed Deep Learning with Docker at Salesforce
Docker, Inc.
 
The First 10M Pulls: Building The Official Curl Image for Docker Hub
Docker, Inc.
 
Monitoring in a Microservices World
Docker, Inc.
 
COVID-19 in Italy: How Docker is Helping the Biggest Italian IT Company Conti...
Docker, Inc.
 
Predicting Space Weather with Docker
Docker, Inc.
 
Become a Docker Power User With Microsoft Visual Studio Code
Docker, Inc.
 
How to Use Mirroring and Caching to Optimize your Container Registry
Docker, Inc.
 
Monolithic to Microservices + Docker = SDLC on Steroids!
Docker, Inc.
 
Kubernetes at Datadog Scale
Docker, Inc.
 
Labels, Labels, Labels
Docker, Inc.
 
Using Docker Hub at Scale to Support Micro Focus' Delivery and Deployment Model
Docker, Inc.
 
Build & Deploy Multi-Container Applications to AWS
Docker, Inc.
 
From Fortran on the Desktop to Kubernetes in the Cloud: A Windows Migration S...
Docker, Inc.
 
Sharing is Caring: How to Begin Speaking at Conferences
Docker, Inc.
 
Ad

Recently uploaded (20)

PPT
Interview paper part 3, It is based on Interview Prep
SoumyadeepGhosh39
 
PDF
LLMs.txt: Easily Control How AI Crawls Your Site
Keploy
 
PDF
Empower Inclusion Through Accessible Java Applications
Ana-Maria Mihalceanu
 
PDF
TrustArc Webinar - Data Privacy Trends 2025: Mid-Year Insights & Program Stra...
TrustArc
 
PDF
Transcript: New from BookNet Canada for 2025: BNC BiblioShare - Tech Forum 2025
BookNet Canada
 
PDF
CIFDAQ Token Spotlight for 9th July 2025
CIFDAQ
 
PDF
Impact of IEEE Computer Society in Advancing Emerging Technologies including ...
Hironori Washizaki
 
PDF
Chris Elwell Woburn, MA - Passionate About IT Innovation
Chris Elwell Woburn, MA
 
PDF
Persuasive AI: risks and opportunities in the age of digital debate
Speck&Tech
 
PDF
HCIP-Data Center Facility Deployment V2.0 Training Material (Without Remarks ...
mcastillo49
 
PDF
Human-centred design in online workplace learning and relationship to engagem...
Tracy Tang
 
PPTX
AUTOMATION AND ROBOTICS IN PHARMA INDUSTRY.pptx
sameeraaabegumm
 
PDF
New from BookNet Canada for 2025: BNC BiblioShare - Tech Forum 2025
BookNet Canada
 
PDF
Complete JavaScript Notes: From Basics to Advanced Concepts.pdf
haydendavispro
 
PDF
Log-Based Anomaly Detection: Enhancing System Reliability with Machine Learning
Mohammed BEKKOUCHE
 
PDF
Blockchain Transactions Explained For Everyone
CIFDAQ
 
PPTX
Building Search Using OpenSearch: Limitations and Workarounds
Sease
 
PDF
Achieving Consistent and Reliable AI Code Generation - Medusa AI
medusaaico
 
PPTX
UiPath Academic Alliance Educator Panels: Session 2 - Business Analyst Content
DianaGray10
 
PDF
Why Orbit Edge Tech is a Top Next JS Development Company in 2025
mahendraalaska08
 
Interview paper part 3, It is based on Interview Prep
SoumyadeepGhosh39
 
LLMs.txt: Easily Control How AI Crawls Your Site
Keploy
 
Empower Inclusion Through Accessible Java Applications
Ana-Maria Mihalceanu
 
TrustArc Webinar - Data Privacy Trends 2025: Mid-Year Insights & Program Stra...
TrustArc
 
Transcript: New from BookNet Canada for 2025: BNC BiblioShare - Tech Forum 2025
BookNet Canada
 
CIFDAQ Token Spotlight for 9th July 2025
CIFDAQ
 
Impact of IEEE Computer Society in Advancing Emerging Technologies including ...
Hironori Washizaki
 
Chris Elwell Woburn, MA - Passionate About IT Innovation
Chris Elwell Woburn, MA
 
Persuasive AI: risks and opportunities in the age of digital debate
Speck&Tech
 
HCIP-Data Center Facility Deployment V2.0 Training Material (Without Remarks ...
mcastillo49
 
Human-centred design in online workplace learning and relationship to engagem...
Tracy Tang
 
AUTOMATION AND ROBOTICS IN PHARMA INDUSTRY.pptx
sameeraaabegumm
 
New from BookNet Canada for 2025: BNC BiblioShare - Tech Forum 2025
BookNet Canada
 
Complete JavaScript Notes: From Basics to Advanced Concepts.pdf
haydendavispro
 
Log-Based Anomaly Detection: Enhancing System Reliability with Machine Learning
Mohammed BEKKOUCHE
 
Blockchain Transactions Explained For Everyone
CIFDAQ
 
Building Search Using OpenSearch: Limitations and Workarounds
Sease
 
Achieving Consistent and Reliable AI Code Generation - Medusa AI
medusaaico
 
UiPath Academic Alliance Educator Panels: Session 2 - Business Analyst Content
DianaGray10
 
Why Orbit Edge Tech is a Top Next JS Development Company in 2025
mahendraalaska08
 

Developing with Docker for the Arm Architecture

  • 1. © 2019 Arm Limited Developing with Docker for the Arm Architecture Jason Andrews [email protected] November 5, 2019
  • 2. 2 © 2019 Arm Limited Docker Desktop - Any Device, Any Architecture 2 Build and Run both x86 and Arm images using Docker Desktop on x86 Mac and Windows Developer Machines
  • 3. 3 © 2019 Arm Limited Windows 10 Docker Desktop Hyper-V arm/v6 x86 macOS HyperKit QEMUDocker Engine arm/v7 arm64 Managed by Docker Desktop Application Code x86_64 Docker Desktop Architecture
  • 4. 4 © 2019 Arm Limited Docker Edge/IoT Developer Kits Embedded developers become cloud native in minutes • Application templates take care of local & cloud provisioning • Device setup and app runtime uses Secure Engine • App deployment trigger Desktop & Pipelines; scan & sign with DTR; deploy to devices 2. Inner Loop - Emulation environment 1. Embedded developer loop 3. Native build on remote server 4. CI/CD pipeline Docker Desktop Enterprise Docker Trusted Registry
  • 5. 1 2 3 Meetup outline Developing with Docker Arm C/C++ examples Application templates
  • 6. 6 © 2019 Arm Limited Brief History of SW Development & Deployment Embedded engineer perspectiveDevelopDeploy 1950s 1990s 2010s Punch a lot of holes in a lot of cards Set ROM/Flash in custom assembly line Pull app from cloud, run Cloud-based Embedded software development practices are stuck in the 1990s. Cross-compile, copy, ssh/scp, run Punch holes in cards Future embedded development
  • 7. 7 © 2019 Arm Limited Alternatives for embedded software development Docker improves on cross-compilation and target-compilation Embedded software development options Docker Cross-compile Target Build Complexity Consistent environment Different environment leads to more porting struggles (especially around library dependencies) Same environment At scale deployment Simple, must setup docker on each target Medium, must reconfigure each target environment Generally slower compile time due to target performance Build time Medium…host PC with QEMU, Good using remote Arm build farm Quickest, host PC speeds Very slow, must reconfigure environment and app on each
  • 8. 8 © 2019 Arm Limited Docker: Where is it tomorrow? Develop on Arm, for Arm Docker enables an easy transition to Arm servers which can be used for software development AWS A1 Simply develop and deploy Manage multi-architecture IoT network development and deployment with Docker, from factories to hotels Rich IoT • This • That • The other thing Easily compile and deploy Traditional Arm compilation requires 20+ steps and many 3rd-party packages, requiring expert-level knowledge Edge ML • This • That • The other thing Increase big-data performance Docker simplifies deployment of ‘computational storage’ applications, drastically increasing processing Smart SSD
  • 9. 9 © 2019 Arm Limited Amazon EC2 A1 instances Powered by Arm-based processors Up to 45% lowercostforscale-outworkloads1 Powered byAWSGraviton Processorsthatfeature 64-bit Arm Neoverse coresand custom silicon designed byAWS2 Amazon Linux2, Red HatEnterprise Linux7.6, Ubuntu 16.04 LTS & 18.04 LTS, and SUSELinuxEnterprise Serverfor Arm 15 available now 3 Targetworkloadsinclude Web servers, containerized microservices, caching fleets, distributed data stores, as well asdevelopment/testenvironments 4
  • 10. 10 © 2019 Arm Limited Raspberry Pi 4 Arm development board to run Docker Board information A 1.5GHz quad-core 64-bit ARM Cortex-A72 CPU 1GB, 2GB, or 4GB of LPDDR4 SDRAM Full-throughput Gigabit Ethernet Dual-band 802.11ac wireless networking Bluetooth 5.0 and USB 3.0 Dual monitor support, at resolutions up to 4K Complete compatibility with earlier Raspberry Pi products The picture can't be displayed.
  • 11. 11 © 2019 Arm Limited Meetup goals Targeting Linux application development with C/C++ • Multi-architecture images using docker buildx • Local development on Windows and Mac • Using remote build and run on AWS A1 and Raspberry Pi • Docker templates to automate developer setup
  • 12. 12 © 2019 Arm Limited Meetup applications Two primary exercises • PART 1: warm up application using a hello world C program • Docker buildx for multi-architecture images • Docker Hub • Easy application migration across laptop, AWS A1, and Raspberry Pi • PART 2: Arm NN machine learning SDK application • More realistic software development on Arm using complex SDK • Remote build with docker buildx • Multiple docker images for base tools, Arm NN SDK, application development, and deployment
  • 13. © 2019 Arm Limited Hello World example Jump to demo
  • 14. 14 © 2019 Arm Limited MNIST: the 'Hello World!’ of ML http://yann.lecun.com/exdb/mnist/ Dataset format • There are four files: • Training set contains 60.000 examples • Testing set contains 10.000 examples • Pixels represented by values from 0 (white) to 255 (black), organized row-wise. ModelExample Dataset Neural network New input Neural Network Model TrainingInference Prediction ”2”[96.0% confidence]
  • 15. 15 © 2019 Arm Limited Example Application with Arm NN and Arm Compute Library MNIST application using Arm NN and Compute Library 1. C++ application to classify MNIST digits • Using framework parsers provided by Arm NN 2. Arm NN to parse TensorFlow model • The inference engine calls the Arm NN API • Alternatively, directly calls the Compute Library 3. Compute Library running on Cortex-A 1 2 3 Compute Library Application TensorFlow Arm NN TF Parser Cortex-A CPUs 2 1 3 https://github.com/ARM-software/armnn
  • 16. © 2019 Arm Limited Machine Learning example Jump to demo
  • 17. 17 © 2019 Arm Limited Application templates Available in Docker Desktop Enterprise • Generate project scaffolding • Jumpstart new developers • Customized templates for each application
  • 18. © 2019 Arm Limited Docker templates examples Jump to demo
  • 19. 19 © 2019 Arm Limited #ArmAIoTDevSummit#ArmAIoTDevSummitwww.arm.com/aiot-dev-summit Get $75 off with code ARMMBED
  • 20. 20 © 2019 Arm Limited Final notes Links to more information • Reach out if you are interested in doing more with Docker tools, we’ll setup time to discuss with you and your team • Trial licenses for Docker Desktop Enterprise are available to try application templates • Contact Marc Meunier: [email protected] • Additional articles and GitHub links: https://is.gd/Docker4Arm • Arm TechCon 2019 workshop instructions: http://is.gd/techcon