SlideShare a Scribd company logo
Virtualizing a Virtual Machine


Azeem Jiva
Shrinivas Joshi
AMD Java Labs
TS-5227
Learn best practices for deploying Java EE
applications in virtualized environment




                                   2008 JavaOneSM Conference |   java.com.sun/javaone |   2
Agenda

 What is Virtualization?
 Types of Virtualization
 Why Virtualize?
 Accelerating Virtualization
 Java EE
 Summary
 Q&A




                               2008 JavaOneSM Conference |   java.com.sun/javaone |   3
What is Virtualization?

 Platform Virtualization
  • Abstraction of a computer
 Resource Virtualization
  • Abstraction or simplification of a resource
  • Hide physical characteristics of computing resource
 Provides consistent interface, regardless of resource
 location




                                            2008 JavaOneSM Conference |   java.com.sun/javaone |   4
Agenda

 What is Virtualization?
 Types of Virtualization
 Why Virtualize?
 Accelerating Virtualization
 Java EE
 Summary
 Q&A




                               2008 JavaOneSM Conference |   java.com.sun/javaone |   5
Types of Virtualization
Overview
 Native
 • VMWare Workstation
 • Microsoft® Virtual PC
 • QEMU
 • Virtual Box
 • KVM
 Hypervisor
 • VMWare ESX Server
 • XEN




                           2008 JavaOneSM Conference |   java.com.sun/javaone |   6
Types of Virtualization
Native
 Virtualize Guest OS on a Host OS
  • Linux® running on Windows®
  • Windows running on Linux
 Host OS not optimized for virtualization (usually)
 Advanced virtualization features not available

         Guest OS         Guest OS            Guest OS

                    Virtualization Software

                    Host Operating System

                          Hardware


                                                   2008 JavaOneSM Conference |   java.com.sun/javaone |   7
Types of Virtualization
Hypervisor
 Virtualize Guest OS on a thin software layer
  • Linux® running on ESX Server
  • Windows® running on ESX Server
 Hypervisor is optimized for virtualization
 Advanced virtualization features are available and well
 tested


        Guest OS       Guest OS       Guest OS

                       Hypervisor

                       Hardware


                                            2008 JavaOneSM Conference |   java.com.sun/javaone |   8
Agenda

 What is Virtualization?
 Types of Virtualization
 Why Virtualize?
 Accelerating Virtualization
 Java EE
 Summary
 Q&A




                               2008 JavaOneSM Conference |   java.com.sun/javaone |   9
Why Virtualize?
Advantages
 Not every application needs a full system
 Easier to administer
  • Need to do hardware maintenance?
  • Move the virtualized OS disk to another system
 Lower datacenter costs
 Maintain legacy OSs and applications




                                                     2008 JavaOneSM Conference |   java.com.sun/javaone |   10
Why Virtualize?
Disadvantages
 If Hypervisor crashes, all Guest OSes go with it
 Performance
  • With multiple Guest OSes, performance may suffer
  • Usually 10%, can be as high as 20%
 I/O-bound applications suffer
  • Limit the number of I/O-bound applications
  • Disk is the worst offender
 Immature tools
 Specialized skill set required




                                               2008 JavaOneSM Conference |   java.com.sun/javaone |   11
Agenda

 What is Virtualization?
 Types of Virtualization
 Why Virtualize?
 Accelerating Virtualization
 Java EE
 Summary
 Q&A




                               2008 JavaOneSM Conference |   java.com.sun/javaone |   12
Accelerating Virtualization
AMD-V™ Technology
 Nested Page Tables
  • Virtualized CR3 in hardware
 Tagged Transition Look-Aside Buffer (TTLB)
  • Assign ID to TLB entries
  • Hardware knows which TLB entry belongs to which Guest OS
 Device Exclusion Vector (DEV)
  • Excludes devices from accessing memory
  • Bit to include/exclude devices from accessing a page




                                               2008 JavaOneSM Conference |   java.com.sun/javaone |   13
Agenda

 What is Virtualization?
 Types of Virtualization
 Why Virtualize?
 Accelerating Virtualization
 Java EE
 Summary
 Q&A




                               2008 JavaOneSM Conference |   java.com.sun/javaone |   14
Java EE
Virtualizing a complete stack
 Application changes not required
 Most changes are at Hypervisor level
 Java Virtual Machine can be Guest OS
  • JRockit Liquid
 Effects of Virtualization
  • Performance
  • Resource allocation
  • Bottlenecks
  • Consolidation




                                        2008 JavaOneSM Conference |   java.com.sun/javaone |   15
Java EE
Performance
 SPECjbb2005 performance slows down 10%
 Use as few virtual CPUs as possible
  • If application is single-threaded, use a single VCPU
 Decrease processor-to-processor communication
 If possible use less than 896 MB of physical memory for
 Linux® Guest OS
  • Different mapping techniques are used over 896 MB
 Be prepared for decrease in performance




                                          2008 JavaOneSM Conference |   java.com.sun/javaone |   16
Java EE
Resource Allocation
 Three-tier testing on single system
 Page sharing
  • Sharing of guest memory pages
  • Decreases host memory usage
  • Decreases I/O bandwidth
 Run the same Guest OS for increased page sharing
 Move Guest OS from system to system
  • Running application doesn’t know (or care!)




                                        2008 JavaOneSM Conference |   java.com.sun/javaone |   17
Java EE
Bottlenecks
  CPU constraints
 • Guest OS requires all allocated CPUs be available
 • Sum of allocated CPUs == physical CPUs
  Memory constraints
 • Sum of allocated memory == physical memory




                                                2008 JavaOneSM Conference |   java.com.sun/javaone |   18
Java EE
Bottlenecks
  Disk I/O constraints
 • Apps (dB) that have large number of small read/writes severely
    affected
 •  SAN is common, or at least use a separate disk
  Network constraints
 • Lots of small packets affect latency
 • Dedicated NIC




                                                 2008 JavaOneSM Conference |   java.com.sun/javaone |   19
Java EE
Consolidation
 Move Guest OS to single system when load is low
 Increase CPU core count on the rise
  • Eight cores common now
  • Expect Sixteen cores to be common in two years
 Not all applications can take advantage of that many cores
 Run many Guest OSes on a single system
  • Each application thinks it is on 1-4 processing cores




                                           2008 JavaOneSM Conference |   java.com.sun/javaone |   20
Summary

 Virtualization helps lower total cost of ownership
 Slight performance hit, improved maintainability
 Bottlenecks on I/O
 Sharing of resources on single Host OS
 Consolidate systems




                                             2008 JavaOneSM Conference |   java.com.sun/javaone |   21
For More Information

 Sites
  • http://www.amd.com/virtualization
  • http://developer.amd.com/




                                        2008 JavaOneSM Conference |   java.com.sun/javaone |   22
Trademark Attribution

AMD, the AMD arrow logo and combinations thereof and AMD-V are trademarks of Advanced Micro Devices, Inc.
Microsoft and Windows are registered marks of Microsoft Corporation in U.S. and other jurisdictions. Linux is
registered trademark of Linus Torvalds.
©2008 Advanced Micro Devices, Inc. All rights reserved.




                                                                                 2008 JavaOneSM Conference |   java.com.sun/javaone |   23
Azeem Jiva
Shrinivas Joshi
AMD Java Labs
TS-5227




                  2008 JavaOneSM Conference |   java.com.sun/javaone |   24

More Related Content

What's hot

VMworld 2013: Implementing a Holistic BC/DR Strategy with VMware - Part Two
VMworld 2013: Implementing a Holistic BC/DR Strategy with VMware - Part TwoVMworld 2013: Implementing a Holistic BC/DR Strategy with VMware - Part Two
VMworld 2013: Implementing a Holistic BC/DR Strategy with VMware - Part Two
VMworld
 
XS Boston 2008 OVF
XS Boston 2008 OVFXS Boston 2008 OVF
XS Boston 2008 OVF
The Linux Foundation
 
Veeam Backup and Replication: Overview
Veeam  Backup and Replication: OverviewVeeam  Backup and Replication: Overview
Veeam Backup and Replication: Overview
Dudley Smith
 
VMware vSphere
VMware vSphereVMware vSphere
XS Boston 2008 Malware & Training
XS Boston 2008 Malware & TrainingXS Boston 2008 Malware & Training
XS Boston 2008 Malware & Training
The Linux Foundation
 
Virtual Infrastructure Overview
Virtual Infrastructure OverviewVirtual Infrastructure Overview
Virtual Infrastructure Overview
valerian_ceaus
 
Presentation building your cloud with v mware
Presentation   building your cloud with v mwarePresentation   building your cloud with v mware
Presentation building your cloud with v mware
xKinAnx
 
All About Virtualization
All About VirtualizationAll About Virtualization
All About Virtualization
EMC
 
XS Japan 2008 Project Status English
XS Japan 2008 Project Status EnglishXS Japan 2008 Project Status English
XS Japan 2008 Project Status English
The Linux Foundation
 
Vmware training presentation
Vmware training presentationVmware training presentation
Vmware training presentation
Amit Kapadia
 
What’s New in VMware vCenter Site Recovery Manager v5.0
What’s New in VMware vCenter Site Recovery Manager v5.0What’s New in VMware vCenter Site Recovery Manager v5.0
What’s New in VMware vCenter Site Recovery Manager v5.0
Eric Sloof
 
Presentation v mware performance overview
Presentation   v mware performance overviewPresentation   v mware performance overview
Presentation v mware performance overview
solarisyourep
 
Presentazione VMware @ VMUGIT UserCon 2015
Presentazione VMware @ VMUGIT UserCon 2015Presentazione VMware @ VMUGIT UserCon 2015
Presentazione VMware @ VMUGIT UserCon 2015
VMUG IT
 
VMware Esx Short Presentation
VMware Esx Short PresentationVMware Esx Short Presentation
VMware Esx Short Presentation
Barcamp Cork
 
VMworld 2014: Site Recovery Manager and Stretched Storage
VMworld 2014: Site Recovery Manager and Stretched StorageVMworld 2014: Site Recovery Manager and Stretched Storage
VMworld 2014: Site Recovery Manager and Stretched Storage
VMworld
 
XS 2008 Boston VTPM
XS 2008 Boston VTPMXS 2008 Boston VTPM
XS 2008 Boston VTPM
The Linux Foundation
 
APP-V 5.0 Service Pack 3, виртуализация Microsoft Office
APP-V 5.0 Service Pack 3, виртуализация Microsoft OfficeAPP-V 5.0 Service Pack 3, виртуализация Microsoft Office
APP-V 5.0 Service Pack 3, виртуализация Microsoft Office
Виталий Стародубцев
 
V mware view™ poc jumpstart service
V mware view™ poc jumpstart serviceV mware view™ poc jumpstart service
V mware view™ poc jumpstart service
solarisyougood
 
Virtualization and Cloud Computing with Elastic Server On Demand
Virtualization and Cloud Computing with Elastic Server On DemandVirtualization and Cloud Computing with Elastic Server On Demand
Virtualization and Cloud Computing with Elastic Server On Demand
Yan Pritzker
 
Master VMware Performance and Capacity Management
Master VMware Performance and Capacity ManagementMaster VMware Performance and Capacity Management
Master VMware Performance and Capacity Management
Iwan Rahabok
 

What's hot (20)

VMworld 2013: Implementing a Holistic BC/DR Strategy with VMware - Part Two
VMworld 2013: Implementing a Holistic BC/DR Strategy with VMware - Part TwoVMworld 2013: Implementing a Holistic BC/DR Strategy with VMware - Part Two
VMworld 2013: Implementing a Holistic BC/DR Strategy with VMware - Part Two
 
XS Boston 2008 OVF
XS Boston 2008 OVFXS Boston 2008 OVF
XS Boston 2008 OVF
 
Veeam Backup and Replication: Overview
Veeam  Backup and Replication: OverviewVeeam  Backup and Replication: Overview
Veeam Backup and Replication: Overview
 
VMware vSphere
VMware vSphereVMware vSphere
VMware vSphere
 
XS Boston 2008 Malware & Training
XS Boston 2008 Malware & TrainingXS Boston 2008 Malware & Training
XS Boston 2008 Malware & Training
 
Virtual Infrastructure Overview
Virtual Infrastructure OverviewVirtual Infrastructure Overview
Virtual Infrastructure Overview
 
Presentation building your cloud with v mware
Presentation   building your cloud with v mwarePresentation   building your cloud with v mware
Presentation building your cloud with v mware
 
All About Virtualization
All About VirtualizationAll About Virtualization
All About Virtualization
 
XS Japan 2008 Project Status English
XS Japan 2008 Project Status EnglishXS Japan 2008 Project Status English
XS Japan 2008 Project Status English
 
Vmware training presentation
Vmware training presentationVmware training presentation
Vmware training presentation
 
What’s New in VMware vCenter Site Recovery Manager v5.0
What’s New in VMware vCenter Site Recovery Manager v5.0What’s New in VMware vCenter Site Recovery Manager v5.0
What’s New in VMware vCenter Site Recovery Manager v5.0
 
Presentation v mware performance overview
Presentation   v mware performance overviewPresentation   v mware performance overview
Presentation v mware performance overview
 
Presentazione VMware @ VMUGIT UserCon 2015
Presentazione VMware @ VMUGIT UserCon 2015Presentazione VMware @ VMUGIT UserCon 2015
Presentazione VMware @ VMUGIT UserCon 2015
 
VMware Esx Short Presentation
VMware Esx Short PresentationVMware Esx Short Presentation
VMware Esx Short Presentation
 
VMworld 2014: Site Recovery Manager and Stretched Storage
VMworld 2014: Site Recovery Manager and Stretched StorageVMworld 2014: Site Recovery Manager and Stretched Storage
VMworld 2014: Site Recovery Manager and Stretched Storage
 
XS 2008 Boston VTPM
XS 2008 Boston VTPMXS 2008 Boston VTPM
XS 2008 Boston VTPM
 
APP-V 5.0 Service Pack 3, виртуализация Microsoft Office
APP-V 5.0 Service Pack 3, виртуализация Microsoft OfficeAPP-V 5.0 Service Pack 3, виртуализация Microsoft Office
APP-V 5.0 Service Pack 3, виртуализация Microsoft Office
 
V mware view™ poc jumpstart service
V mware view™ poc jumpstart serviceV mware view™ poc jumpstart service
V mware view™ poc jumpstart service
 
Virtualization and Cloud Computing with Elastic Server On Demand
Virtualization and Cloud Computing with Elastic Server On DemandVirtualization and Cloud Computing with Elastic Server On Demand
Virtualization and Cloud Computing with Elastic Server On Demand
 
Master VMware Performance and Capacity Management
Master VMware Performance and Capacity ManagementMaster VMware Performance and Capacity Management
Master VMware Performance and Capacity Management
 

Similar to Virtualizing a Virtual Machine

Boldly go where the Java programming language has never gone before
Boldly go where the Java programming language has never gone beforeBoldly go where the Java programming language has never gone before
Boldly go where the Java programming language has never gone before
elliando dias
 
LinkedIn - A Professional Network built with Java Technologies and Agile Prac...
LinkedIn - A Professional Network built with Java Technologies and Agile Prac...LinkedIn - A Professional Network built with Java Technologies and Agile Prac...
LinkedIn - A Professional Network built with Java Technologies and Agile Prac...
LinkedIn
 
LinkedIn - A Professional Network built with Java Technologies and Agile Prac...
LinkedIn - A Professional Network built with Java Technologies and Agile Prac...LinkedIn - A Professional Network built with Java Technologies and Agile Prac...
LinkedIn - A Professional Network built with Java Technologies and Agile Prac...
Nick Dellamaggiore
 
E g innovations overview
E g innovations overviewE g innovations overview
E g innovations overview
Nuno Alves
 
Monitoring Cloud/Virtual/Physical IT Infrastructures
Monitoring Cloud/Virtual/Physical IT InfrastructuresMonitoring Cloud/Virtual/Physical IT Infrastructures
Monitoring Cloud/Virtual/Physical IT Infrastructures
Johnnie Burke-Gaffney
 
Managing and Monitoring Virtual/Cloud/Physical Infrastructures
Managing and Monitoring Virtual/Cloud/Physical InfrastructuresManaging and Monitoring Virtual/Cloud/Physical Infrastructures
Managing and Monitoring Virtual/Cloud/Physical Infrastructures
Johnnie Burke-Gaffney
 
Ian Pratt Usenix 08 Keynote
Ian Pratt Usenix 08 KeynoteIan Pratt Usenix 08 Keynote
Ian Pratt Usenix 08 Keynote
The Linux Foundation
 
ALM@Work - Lab management for everyone
ALM@Work - Lab management for everyoneALM@Work - Lab management for everyone
ALM@Work - Lab management for everyone
DomusDotNet
 
prezentációt
prezentációtprezentációt
prezentációt
webhostingguy
 
Project Zero For Javapolis 2007
Project Zero For Javapolis 2007Project Zero For Javapolis 2007
Project Zero For Javapolis 2007
Jason McGee
 
2virtualizationtechnologyoverview 13540659831745-phpapp02-121127193019-phpapp01
2virtualizationtechnologyoverview 13540659831745-phpapp02-121127193019-phpapp012virtualizationtechnologyoverview 13540659831745-phpapp02-121127193019-phpapp01
2virtualizationtechnologyoverview 13540659831745-phpapp02-121127193019-phpapp01
Vietnam Open Infrastructure User Group
 
WebSphere App Server vs JBoss vs WebLogic vs Tomcat (InterConnect 2016)
WebSphere App Server vs JBoss vs WebLogic vs Tomcat (InterConnect 2016)WebSphere App Server vs JBoss vs WebLogic vs Tomcat (InterConnect 2016)
WebSphere App Server vs JBoss vs WebLogic vs Tomcat (InterConnect 2016)
Roman Kharkovski
 
LinkedIn Communication Architecture
LinkedIn Communication ArchitectureLinkedIn Communication Architecture
LinkedIn Communication Architecture
LinkedIn
 
Emc vspex customer_presentation_private_cloud_v_mware_mid_2.0
Emc vspex customer_presentation_private_cloud_v_mware_mid_2.0Emc vspex customer_presentation_private_cloud_v_mware_mid_2.0
Emc vspex customer_presentation_private_cloud_v_mware_mid_2.0
xKinAnx
 
VMWARE
VMWAREVMWARE
Ina Pratt Fosdem Feb2008
Ina Pratt Fosdem Feb2008Ina Pratt Fosdem Feb2008
Ina Pratt Fosdem Feb2008
The Linux Foundation
 
Virtualization meisen 042811
Virtualization meisen 042811Virtualization meisen 042811
Virtualization meisen 042811
Morty Eisen
 
PowerPoint Presentation
PowerPoint PresentationPowerPoint Presentation
PowerPoint Presentation
webhostingguy
 
Oracle virtualbox basic to rac attack
Oracle virtualbox basic to rac attackOracle virtualbox basic to rac attack
Oracle virtualbox basic to rac attack
Bobby Curtis
 
JRuby on Rails Deployment: What They Didn't Tell You
JRuby on Rails Deployment: What They Didn't Tell YouJRuby on Rails Deployment: What They Didn't Tell You
JRuby on Rails Deployment: What They Didn't Tell You
elliando dias
 

Similar to Virtualizing a Virtual Machine (20)

Boldly go where the Java programming language has never gone before
Boldly go where the Java programming language has never gone beforeBoldly go where the Java programming language has never gone before
Boldly go where the Java programming language has never gone before
 
LinkedIn - A Professional Network built with Java Technologies and Agile Prac...
LinkedIn - A Professional Network built with Java Technologies and Agile Prac...LinkedIn - A Professional Network built with Java Technologies and Agile Prac...
LinkedIn - A Professional Network built with Java Technologies and Agile Prac...
 
LinkedIn - A Professional Network built with Java Technologies and Agile Prac...
LinkedIn - A Professional Network built with Java Technologies and Agile Prac...LinkedIn - A Professional Network built with Java Technologies and Agile Prac...
LinkedIn - A Professional Network built with Java Technologies and Agile Prac...
 
E g innovations overview
E g innovations overviewE g innovations overview
E g innovations overview
 
Monitoring Cloud/Virtual/Physical IT Infrastructures
Monitoring Cloud/Virtual/Physical IT InfrastructuresMonitoring Cloud/Virtual/Physical IT Infrastructures
Monitoring Cloud/Virtual/Physical IT Infrastructures
 
Managing and Monitoring Virtual/Cloud/Physical Infrastructures
Managing and Monitoring Virtual/Cloud/Physical InfrastructuresManaging and Monitoring Virtual/Cloud/Physical Infrastructures
Managing and Monitoring Virtual/Cloud/Physical Infrastructures
 
Ian Pratt Usenix 08 Keynote
Ian Pratt Usenix 08 KeynoteIan Pratt Usenix 08 Keynote
Ian Pratt Usenix 08 Keynote
 
ALM@Work - Lab management for everyone
ALM@Work - Lab management for everyoneALM@Work - Lab management for everyone
ALM@Work - Lab management for everyone
 
prezentációt
prezentációtprezentációt
prezentációt
 
Project Zero For Javapolis 2007
Project Zero For Javapolis 2007Project Zero For Javapolis 2007
Project Zero For Javapolis 2007
 
2virtualizationtechnologyoverview 13540659831745-phpapp02-121127193019-phpapp01
2virtualizationtechnologyoverview 13540659831745-phpapp02-121127193019-phpapp012virtualizationtechnologyoverview 13540659831745-phpapp02-121127193019-phpapp01
2virtualizationtechnologyoverview 13540659831745-phpapp02-121127193019-phpapp01
 
WebSphere App Server vs JBoss vs WebLogic vs Tomcat (InterConnect 2016)
WebSphere App Server vs JBoss vs WebLogic vs Tomcat (InterConnect 2016)WebSphere App Server vs JBoss vs WebLogic vs Tomcat (InterConnect 2016)
WebSphere App Server vs JBoss vs WebLogic vs Tomcat (InterConnect 2016)
 
LinkedIn Communication Architecture
LinkedIn Communication ArchitectureLinkedIn Communication Architecture
LinkedIn Communication Architecture
 
Emc vspex customer_presentation_private_cloud_v_mware_mid_2.0
Emc vspex customer_presentation_private_cloud_v_mware_mid_2.0Emc vspex customer_presentation_private_cloud_v_mware_mid_2.0
Emc vspex customer_presentation_private_cloud_v_mware_mid_2.0
 
VMWARE
VMWAREVMWARE
VMWARE
 
Ina Pratt Fosdem Feb2008
Ina Pratt Fosdem Feb2008Ina Pratt Fosdem Feb2008
Ina Pratt Fosdem Feb2008
 
Virtualization meisen 042811
Virtualization meisen 042811Virtualization meisen 042811
Virtualization meisen 042811
 
PowerPoint Presentation
PowerPoint PresentationPowerPoint Presentation
PowerPoint Presentation
 
Oracle virtualbox basic to rac attack
Oracle virtualbox basic to rac attackOracle virtualbox basic to rac attack
Oracle virtualbox basic to rac attack
 
JRuby on Rails Deployment: What They Didn't Tell You
JRuby on Rails Deployment: What They Didn't Tell YouJRuby on Rails Deployment: What They Didn't Tell You
JRuby on Rails Deployment: What They Didn't Tell You
 

More from elliando dias

Clojurescript slides
Clojurescript slidesClojurescript slides
Clojurescript slides
elliando dias
 
Why you should be excited about ClojureScript
Why you should be excited about ClojureScriptWhy you should be excited about ClojureScript
Why you should be excited about ClojureScript
elliando dias
 
Functional Programming with Immutable Data Structures
Functional Programming with Immutable Data StructuresFunctional Programming with Immutable Data Structures
Functional Programming with Immutable Data Structures
elliando dias
 
Nomenclatura e peças de container
Nomenclatura  e peças de containerNomenclatura  e peças de container
Nomenclatura e peças de container
elliando dias
 
Geometria Projetiva
Geometria ProjetivaGeometria Projetiva
Geometria Projetiva
elliando dias
 
Polyglot and Poly-paradigm Programming for Better Agility
Polyglot and Poly-paradigm Programming for Better AgilityPolyglot and Poly-paradigm Programming for Better Agility
Polyglot and Poly-paradigm Programming for Better Agility
elliando dias
 
Javascript Libraries
Javascript LibrariesJavascript Libraries
Javascript Libraries
elliando dias
 
How to Make an Eight Bit Computer and Save the World!
How to Make an Eight Bit Computer and Save the World!How to Make an Eight Bit Computer and Save the World!
How to Make an Eight Bit Computer and Save the World!
elliando dias
 
Ragel talk
Ragel talkRagel talk
Ragel talk
elliando dias
 
A Practical Guide to Connecting Hardware to the Web
A Practical Guide to Connecting Hardware to the WebA Practical Guide to Connecting Hardware to the Web
A Practical Guide to Connecting Hardware to the Web
elliando dias
 
Introdução ao Arduino
Introdução ao ArduinoIntrodução ao Arduino
Introdução ao Arduino
elliando dias
 
Minicurso arduino
Minicurso arduinoMinicurso arduino
Minicurso arduino
elliando dias
 
Incanter Data Sorcery
Incanter Data SorceryIncanter Data Sorcery
Incanter Data Sorcery
elliando dias
 
Rango
RangoRango
Fab.in.a.box - Fab Academy: Machine Design
Fab.in.a.box - Fab Academy: Machine DesignFab.in.a.box - Fab Academy: Machine Design
Fab.in.a.box - Fab Academy: Machine Design
elliando dias
 
The Digital Revolution: Machines that makes
The Digital Revolution: Machines that makesThe Digital Revolution: Machines that makes
The Digital Revolution: Machines that makes
elliando dias
 
Hadoop + Clojure
Hadoop + ClojureHadoop + Clojure
Hadoop + Clojure
elliando dias
 
Hadoop - Simple. Scalable.
Hadoop - Simple. Scalable.Hadoop - Simple. Scalable.
Hadoop - Simple. Scalable.
elliando dias
 
Hadoop and Hive Development at Facebook
Hadoop and Hive Development at FacebookHadoop and Hive Development at Facebook
Hadoop and Hive Development at Facebook
elliando dias
 
Multi-core Parallelization in Clojure - a Case Study
Multi-core Parallelization in Clojure - a Case StudyMulti-core Parallelization in Clojure - a Case Study
Multi-core Parallelization in Clojure - a Case Study
elliando dias
 

More from elliando dias (20)

Clojurescript slides
Clojurescript slidesClojurescript slides
Clojurescript slides
 
Why you should be excited about ClojureScript
Why you should be excited about ClojureScriptWhy you should be excited about ClojureScript
Why you should be excited about ClojureScript
 
Functional Programming with Immutable Data Structures
Functional Programming with Immutable Data StructuresFunctional Programming with Immutable Data Structures
Functional Programming with Immutable Data Structures
 
Nomenclatura e peças de container
Nomenclatura  e peças de containerNomenclatura  e peças de container
Nomenclatura e peças de container
 
Geometria Projetiva
Geometria ProjetivaGeometria Projetiva
Geometria Projetiva
 
Polyglot and Poly-paradigm Programming for Better Agility
Polyglot and Poly-paradigm Programming for Better AgilityPolyglot and Poly-paradigm Programming for Better Agility
Polyglot and Poly-paradigm Programming for Better Agility
 
Javascript Libraries
Javascript LibrariesJavascript Libraries
Javascript Libraries
 
How to Make an Eight Bit Computer and Save the World!
How to Make an Eight Bit Computer and Save the World!How to Make an Eight Bit Computer and Save the World!
How to Make an Eight Bit Computer and Save the World!
 
Ragel talk
Ragel talkRagel talk
Ragel talk
 
A Practical Guide to Connecting Hardware to the Web
A Practical Guide to Connecting Hardware to the WebA Practical Guide to Connecting Hardware to the Web
A Practical Guide to Connecting Hardware to the Web
 
Introdução ao Arduino
Introdução ao ArduinoIntrodução ao Arduino
Introdução ao Arduino
 
Minicurso arduino
Minicurso arduinoMinicurso arduino
Minicurso arduino
 
Incanter Data Sorcery
Incanter Data SorceryIncanter Data Sorcery
Incanter Data Sorcery
 
Rango
RangoRango
Rango
 
Fab.in.a.box - Fab Academy: Machine Design
Fab.in.a.box - Fab Academy: Machine DesignFab.in.a.box - Fab Academy: Machine Design
Fab.in.a.box - Fab Academy: Machine Design
 
The Digital Revolution: Machines that makes
The Digital Revolution: Machines that makesThe Digital Revolution: Machines that makes
The Digital Revolution: Machines that makes
 
Hadoop + Clojure
Hadoop + ClojureHadoop + Clojure
Hadoop + Clojure
 
Hadoop - Simple. Scalable.
Hadoop - Simple. Scalable.Hadoop - Simple. Scalable.
Hadoop - Simple. Scalable.
 
Hadoop and Hive Development at Facebook
Hadoop and Hive Development at FacebookHadoop and Hive Development at Facebook
Hadoop and Hive Development at Facebook
 
Multi-core Parallelization in Clojure - a Case Study
Multi-core Parallelization in Clojure - a Case StudyMulti-core Parallelization in Clojure - a Case Study
Multi-core Parallelization in Clojure - a Case Study
 

Recently uploaded

HCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAUHCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAU
panagenda
 
Columbus Data & Analytics Wednesdays - June 2024
Columbus Data & Analytics Wednesdays - June 2024Columbus Data & Analytics Wednesdays - June 2024
Columbus Data & Analytics Wednesdays - June 2024
Jason Packer
 
Salesforce Integration for Bonterra Impact Management (fka Social Solutions A...
Salesforce Integration for Bonterra Impact Management (fka Social Solutions A...Salesforce Integration for Bonterra Impact Management (fka Social Solutions A...
Salesforce Integration for Bonterra Impact Management (fka Social Solutions A...
Jeffrey Haguewood
 
June Patch Tuesday
June Patch TuesdayJune Patch Tuesday
June Patch Tuesday
Ivanti
 
Main news related to the CCS TSI 2023 (2023/1695)
Main news related to the CCS TSI 2023 (2023/1695)Main news related to the CCS TSI 2023 (2023/1695)
Main news related to the CCS TSI 2023 (2023/1695)
Jakub Marek
 
Taking AI to the Next Level in Manufacturing.pdf
Taking AI to the Next Level in Manufacturing.pdfTaking AI to the Next Level in Manufacturing.pdf
Taking AI to the Next Level in Manufacturing.pdf
ssuserfac0301
 
TrustArc Webinar - 2024 Global Privacy Survey
TrustArc Webinar - 2024 Global Privacy SurveyTrustArc Webinar - 2024 Global Privacy Survey
TrustArc Webinar - 2024 Global Privacy Survey
TrustArc
 
Introduction of Cybersecurity with OSS at Code Europe 2024
Introduction of Cybersecurity with OSS  at Code Europe 2024Introduction of Cybersecurity with OSS  at Code Europe 2024
Introduction of Cybersecurity with OSS at Code Europe 2024
Hiroshi SHIBATA
 
AI 101: An Introduction to the Basics and Impact of Artificial Intelligence
AI 101: An Introduction to the Basics and Impact of Artificial IntelligenceAI 101: An Introduction to the Basics and Impact of Artificial Intelligence
AI 101: An Introduction to the Basics and Impact of Artificial Intelligence
IndexBug
 
OpenID AuthZEN Interop Read Out - Authorization
OpenID AuthZEN Interop Read Out - AuthorizationOpenID AuthZEN Interop Read Out - Authorization
OpenID AuthZEN Interop Read Out - Authorization
David Brossard
 
Digital Marketing Trends in 2024 | Guide for Staying Ahead
Digital Marketing Trends in 2024 | Guide for Staying AheadDigital Marketing Trends in 2024 | Guide for Staying Ahead
Digital Marketing Trends in 2024 | Guide for Staying Ahead
Wask
 
Programming Foundation Models with DSPy - Meetup Slides
Programming Foundation Models with DSPy - Meetup SlidesProgramming Foundation Models with DSPy - Meetup Slides
Programming Foundation Models with DSPy - Meetup Slides
Zilliz
 
Monitoring and Managing Anomaly Detection on OpenShift.pdf
Monitoring and Managing Anomaly Detection on OpenShift.pdfMonitoring and Managing Anomaly Detection on OpenShift.pdf
Monitoring and Managing Anomaly Detection on OpenShift.pdf
Tosin Akinosho
 
20240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 202420240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 2024
Matthew Sinclair
 
How to use Firebase Data Connect For Flutter
How to use Firebase Data Connect For FlutterHow to use Firebase Data Connect For Flutter
How to use Firebase Data Connect For Flutter
Daiki Mogmet Ito
 
Presentation of the OECD Artificial Intelligence Review of Germany
Presentation of the OECD Artificial Intelligence Review of GermanyPresentation of the OECD Artificial Intelligence Review of Germany
Presentation of the OECD Artificial Intelligence Review of Germany
innovationoecd
 
National Security Agency - NSA mobile device best practices
National Security Agency - NSA mobile device best practicesNational Security Agency - NSA mobile device best practices
National Security Agency - NSA mobile device best practices
Quotidiano Piemontese
 
Your One-Stop Shop for Python Success: Top 10 US Python Development Providers
Your One-Stop Shop for Python Success: Top 10 US Python Development ProvidersYour One-Stop Shop for Python Success: Top 10 US Python Development Providers
Your One-Stop Shop for Python Success: Top 10 US Python Development Providers
akankshawande
 
Best 20 SEO Techniques To Improve Website Visibility In SERP
Best 20 SEO Techniques To Improve Website Visibility In SERPBest 20 SEO Techniques To Improve Website Visibility In SERP
Best 20 SEO Techniques To Improve Website Visibility In SERP
Pixlogix Infotech
 
20240609 QFM020 Irresponsible AI Reading List May 2024
20240609 QFM020 Irresponsible AI Reading List May 202420240609 QFM020 Irresponsible AI Reading List May 2024
20240609 QFM020 Irresponsible AI Reading List May 2024
Matthew Sinclair
 

Recently uploaded (20)

HCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAUHCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAU
 
Columbus Data & Analytics Wednesdays - June 2024
Columbus Data & Analytics Wednesdays - June 2024Columbus Data & Analytics Wednesdays - June 2024
Columbus Data & Analytics Wednesdays - June 2024
 
Salesforce Integration for Bonterra Impact Management (fka Social Solutions A...
Salesforce Integration for Bonterra Impact Management (fka Social Solutions A...Salesforce Integration for Bonterra Impact Management (fka Social Solutions A...
Salesforce Integration for Bonterra Impact Management (fka Social Solutions A...
 
June Patch Tuesday
June Patch TuesdayJune Patch Tuesday
June Patch Tuesday
 
Main news related to the CCS TSI 2023 (2023/1695)
Main news related to the CCS TSI 2023 (2023/1695)Main news related to the CCS TSI 2023 (2023/1695)
Main news related to the CCS TSI 2023 (2023/1695)
 
Taking AI to the Next Level in Manufacturing.pdf
Taking AI to the Next Level in Manufacturing.pdfTaking AI to the Next Level in Manufacturing.pdf
Taking AI to the Next Level in Manufacturing.pdf
 
TrustArc Webinar - 2024 Global Privacy Survey
TrustArc Webinar - 2024 Global Privacy SurveyTrustArc Webinar - 2024 Global Privacy Survey
TrustArc Webinar - 2024 Global Privacy Survey
 
Introduction of Cybersecurity with OSS at Code Europe 2024
Introduction of Cybersecurity with OSS  at Code Europe 2024Introduction of Cybersecurity with OSS  at Code Europe 2024
Introduction of Cybersecurity with OSS at Code Europe 2024
 
AI 101: An Introduction to the Basics and Impact of Artificial Intelligence
AI 101: An Introduction to the Basics and Impact of Artificial IntelligenceAI 101: An Introduction to the Basics and Impact of Artificial Intelligence
AI 101: An Introduction to the Basics and Impact of Artificial Intelligence
 
OpenID AuthZEN Interop Read Out - Authorization
OpenID AuthZEN Interop Read Out - AuthorizationOpenID AuthZEN Interop Read Out - Authorization
OpenID AuthZEN Interop Read Out - Authorization
 
Digital Marketing Trends in 2024 | Guide for Staying Ahead
Digital Marketing Trends in 2024 | Guide for Staying AheadDigital Marketing Trends in 2024 | Guide for Staying Ahead
Digital Marketing Trends in 2024 | Guide for Staying Ahead
 
Programming Foundation Models with DSPy - Meetup Slides
Programming Foundation Models with DSPy - Meetup SlidesProgramming Foundation Models with DSPy - Meetup Slides
Programming Foundation Models with DSPy - Meetup Slides
 
Monitoring and Managing Anomaly Detection on OpenShift.pdf
Monitoring and Managing Anomaly Detection on OpenShift.pdfMonitoring and Managing Anomaly Detection on OpenShift.pdf
Monitoring and Managing Anomaly Detection on OpenShift.pdf
 
20240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 202420240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 2024
 
How to use Firebase Data Connect For Flutter
How to use Firebase Data Connect For FlutterHow to use Firebase Data Connect For Flutter
How to use Firebase Data Connect For Flutter
 
Presentation of the OECD Artificial Intelligence Review of Germany
Presentation of the OECD Artificial Intelligence Review of GermanyPresentation of the OECD Artificial Intelligence Review of Germany
Presentation of the OECD Artificial Intelligence Review of Germany
 
National Security Agency - NSA mobile device best practices
National Security Agency - NSA mobile device best practicesNational Security Agency - NSA mobile device best practices
National Security Agency - NSA mobile device best practices
 
Your One-Stop Shop for Python Success: Top 10 US Python Development Providers
Your One-Stop Shop for Python Success: Top 10 US Python Development ProvidersYour One-Stop Shop for Python Success: Top 10 US Python Development Providers
Your One-Stop Shop for Python Success: Top 10 US Python Development Providers
 
Best 20 SEO Techniques To Improve Website Visibility In SERP
Best 20 SEO Techniques To Improve Website Visibility In SERPBest 20 SEO Techniques To Improve Website Visibility In SERP
Best 20 SEO Techniques To Improve Website Visibility In SERP
 
20240609 QFM020 Irresponsible AI Reading List May 2024
20240609 QFM020 Irresponsible AI Reading List May 202420240609 QFM020 Irresponsible AI Reading List May 2024
20240609 QFM020 Irresponsible AI Reading List May 2024
 

Virtualizing a Virtual Machine

  • 1. Virtualizing a Virtual Machine Azeem Jiva Shrinivas Joshi AMD Java Labs TS-5227
  • 2. Learn best practices for deploying Java EE applications in virtualized environment 2008 JavaOneSM Conference | java.com.sun/javaone | 2
  • 3. Agenda What is Virtualization? Types of Virtualization Why Virtualize? Accelerating Virtualization Java EE Summary Q&A 2008 JavaOneSM Conference | java.com.sun/javaone | 3
  • 4. What is Virtualization? Platform Virtualization • Abstraction of a computer Resource Virtualization • Abstraction or simplification of a resource • Hide physical characteristics of computing resource Provides consistent interface, regardless of resource location 2008 JavaOneSM Conference | java.com.sun/javaone | 4
  • 5. Agenda What is Virtualization? Types of Virtualization Why Virtualize? Accelerating Virtualization Java EE Summary Q&A 2008 JavaOneSM Conference | java.com.sun/javaone | 5
  • 6. Types of Virtualization Overview Native • VMWare Workstation • Microsoft® Virtual PC • QEMU • Virtual Box • KVM Hypervisor • VMWare ESX Server • XEN 2008 JavaOneSM Conference | java.com.sun/javaone | 6
  • 7. Types of Virtualization Native Virtualize Guest OS on a Host OS • Linux® running on Windows® • Windows running on Linux Host OS not optimized for virtualization (usually) Advanced virtualization features not available Guest OS Guest OS Guest OS Virtualization Software Host Operating System Hardware 2008 JavaOneSM Conference | java.com.sun/javaone | 7
  • 8. Types of Virtualization Hypervisor Virtualize Guest OS on a thin software layer • Linux® running on ESX Server • Windows® running on ESX Server Hypervisor is optimized for virtualization Advanced virtualization features are available and well tested Guest OS Guest OS Guest OS Hypervisor Hardware 2008 JavaOneSM Conference | java.com.sun/javaone | 8
  • 9. Agenda What is Virtualization? Types of Virtualization Why Virtualize? Accelerating Virtualization Java EE Summary Q&A 2008 JavaOneSM Conference | java.com.sun/javaone | 9
  • 10. Why Virtualize? Advantages Not every application needs a full system Easier to administer • Need to do hardware maintenance? • Move the virtualized OS disk to another system Lower datacenter costs Maintain legacy OSs and applications 2008 JavaOneSM Conference | java.com.sun/javaone | 10
  • 11. Why Virtualize? Disadvantages If Hypervisor crashes, all Guest OSes go with it Performance • With multiple Guest OSes, performance may suffer • Usually 10%, can be as high as 20% I/O-bound applications suffer • Limit the number of I/O-bound applications • Disk is the worst offender Immature tools Specialized skill set required 2008 JavaOneSM Conference | java.com.sun/javaone | 11
  • 12. Agenda What is Virtualization? Types of Virtualization Why Virtualize? Accelerating Virtualization Java EE Summary Q&A 2008 JavaOneSM Conference | java.com.sun/javaone | 12
  • 13. Accelerating Virtualization AMD-V™ Technology Nested Page Tables • Virtualized CR3 in hardware Tagged Transition Look-Aside Buffer (TTLB) • Assign ID to TLB entries • Hardware knows which TLB entry belongs to which Guest OS Device Exclusion Vector (DEV) • Excludes devices from accessing memory • Bit to include/exclude devices from accessing a page 2008 JavaOneSM Conference | java.com.sun/javaone | 13
  • 14. Agenda What is Virtualization? Types of Virtualization Why Virtualize? Accelerating Virtualization Java EE Summary Q&A 2008 JavaOneSM Conference | java.com.sun/javaone | 14
  • 15. Java EE Virtualizing a complete stack Application changes not required Most changes are at Hypervisor level Java Virtual Machine can be Guest OS • JRockit Liquid Effects of Virtualization • Performance • Resource allocation • Bottlenecks • Consolidation 2008 JavaOneSM Conference | java.com.sun/javaone | 15
  • 16. Java EE Performance SPECjbb2005 performance slows down 10% Use as few virtual CPUs as possible • If application is single-threaded, use a single VCPU Decrease processor-to-processor communication If possible use less than 896 MB of physical memory for Linux® Guest OS • Different mapping techniques are used over 896 MB Be prepared for decrease in performance 2008 JavaOneSM Conference | java.com.sun/javaone | 16
  • 17. Java EE Resource Allocation Three-tier testing on single system Page sharing • Sharing of guest memory pages • Decreases host memory usage • Decreases I/O bandwidth Run the same Guest OS for increased page sharing Move Guest OS from system to system • Running application doesn’t know (or care!) 2008 JavaOneSM Conference | java.com.sun/javaone | 17
  • 18. Java EE Bottlenecks CPU constraints • Guest OS requires all allocated CPUs be available • Sum of allocated CPUs == physical CPUs Memory constraints • Sum of allocated memory == physical memory 2008 JavaOneSM Conference | java.com.sun/javaone | 18
  • 19. Java EE Bottlenecks Disk I/O constraints • Apps (dB) that have large number of small read/writes severely affected • SAN is common, or at least use a separate disk Network constraints • Lots of small packets affect latency • Dedicated NIC 2008 JavaOneSM Conference | java.com.sun/javaone | 19
  • 20. Java EE Consolidation Move Guest OS to single system when load is low Increase CPU core count on the rise • Eight cores common now • Expect Sixteen cores to be common in two years Not all applications can take advantage of that many cores Run many Guest OSes on a single system • Each application thinks it is on 1-4 processing cores 2008 JavaOneSM Conference | java.com.sun/javaone | 20
  • 21. Summary Virtualization helps lower total cost of ownership Slight performance hit, improved maintainability Bottlenecks on I/O Sharing of resources on single Host OS Consolidate systems 2008 JavaOneSM Conference | java.com.sun/javaone | 21
  • 22. For More Information Sites • http://www.amd.com/virtualization • http://developer.amd.com/ 2008 JavaOneSM Conference | java.com.sun/javaone | 22
  • 23. Trademark Attribution AMD, the AMD arrow logo and combinations thereof and AMD-V are trademarks of Advanced Micro Devices, Inc. Microsoft and Windows are registered marks of Microsoft Corporation in U.S. and other jurisdictions. Linux is registered trademark of Linus Torvalds. ©2008 Advanced Micro Devices, Inc. All rights reserved. 2008 JavaOneSM Conference | java.com.sun/javaone | 23
  • 24. Azeem Jiva Shrinivas Joshi AMD Java Labs TS-5227 2008 JavaOneSM Conference | java.com.sun/javaone | 24