Home Cloud & Networking Intelligent Automation with VMware

Intelligent Automation with VMware

By Ajit Pratap Kundan
books-svg-icon Book
eBook $29.99 $20.98
Print $43.99 $25.99
Subscription $15.99 $10 p/m for three months
$10 p/m for first 3 months. $15.99 p/m after that. Cancel Anytime!
What do you get with a Packt Subscription?
This book & 7000+ ebooks & video courses on 1000+ technologies
60+ curated reading lists for various learning paths
50+ new titles added every month on new and emerging tech
Early Access to eBooks as they are being written
Personalised content suggestions
Customised display settings for better reading experience
50+ new titles added every month on new and emerging tech
Playlists, Notes and Bookmarks to easily manage your learning
Mobile App with offline access
What do you get with a Packt Subscription?
This book & 6500+ ebooks & video courses on 1000+ technologies
60+ curated reading lists for various learning paths
50+ new titles added every month on new and emerging tech
Early Access to eBooks as they are being written
Personalised content suggestions
Customised display settings for better reading experience
50+ new titles added every month on new and emerging tech
Playlists, Notes and Bookmarks to easily manage your learning
Mobile App with offline access
What do you get with eBook + Subscription?
Download this book in EPUB and PDF formats, plus a monthly download credit
This book & 6500+ ebooks & video courses on 1000+ technologies
60+ curated reading lists for various learning paths
50+ new titles added every month on new and emerging tech
Early Access to eBooks as they are being written
Personalised content suggestions
Customised display settings for better reading experience
50+ new titles added every month on new and emerging tech
Playlists, Notes and Bookmarks to easily manage your learning
Mobile App with offline access
What do you get with a Packt Subscription?
This book & 6500+ ebooks & video courses on 1000+ technologies
60+ curated reading lists for various learning paths
50+ new titles added every month on new and emerging tech
Early Access to eBooks as they are being written
Personalised content suggestions
Customised display settings for better reading experience
50+ new titles added every month on new and emerging tech
Playlists, Notes and Bookmarks to easily manage your learning
Mobile App with offline access
What do you get with eBook?
Download this book in EPUB and PDF formats
Access this title in our online reader
DRM FREE - Read whenever, wherever and however you want
Online reader with customised display settings for better reading experience
What do you get with video?
Download this video in MP4 format
Access this title in our online reader
DRM FREE - Watch whenever, wherever and however you want
Online reader with customised display settings for better learning experience
What do you get with video?
Stream this video
Access this title in our online reader
DRM FREE - Watch whenever, wherever and however you want
Online reader with customised display settings for better learning experience
What do you get with Audiobook?
Download a zip folder consisting of audio files (in MP3 Format) along with supplementary PDF
What do you get with Exam Trainer?
Flashcards, Mock exams, Exam Tips, Practice Questions
Access these resources with our interactive certification platform
Mobile compatible-Practice whenever, wherever, however you want
BUY NOW $10 p/m for first 3 months. $15.99 p/m after that. Cancel Anytime!
eBook $29.99 $20.98
Print $43.99 $25.99
Subscription $15.99 $10 p/m for three months
What do you get with a Packt Subscription?
This book & 7000+ ebooks & video courses on 1000+ technologies
60+ curated reading lists for various learning paths
50+ new titles added every month on new and emerging tech
Early Access to eBooks as they are being written
Personalised content suggestions
Customised display settings for better reading experience
50+ new titles added every month on new and emerging tech
Playlists, Notes and Bookmarks to easily manage your learning
Mobile App with offline access
What do you get with a Packt Subscription?
This book & 6500+ ebooks & video courses on 1000+ technologies
60+ curated reading lists for various learning paths
50+ new titles added every month on new and emerging tech
Early Access to eBooks as they are being written
Personalised content suggestions
Customised display settings for better reading experience
50+ new titles added every month on new and emerging tech
Playlists, Notes and Bookmarks to easily manage your learning
Mobile App with offline access
What do you get with eBook + Subscription?
Download this book in EPUB and PDF formats, plus a monthly download credit
This book & 6500+ ebooks & video courses on 1000+ technologies
60+ curated reading lists for various learning paths
50+ new titles added every month on new and emerging tech
Early Access to eBooks as they are being written
Personalised content suggestions
Customised display settings for better reading experience
50+ new titles added every month on new and emerging tech
Playlists, Notes and Bookmarks to easily manage your learning
Mobile App with offline access
What do you get with a Packt Subscription?
This book & 6500+ ebooks & video courses on 1000+ technologies
60+ curated reading lists for various learning paths
50+ new titles added every month on new and emerging tech
Early Access to eBooks as they are being written
Personalised content suggestions
Customised display settings for better reading experience
50+ new titles added every month on new and emerging tech
Playlists, Notes and Bookmarks to easily manage your learning
Mobile App with offline access
What do you get with eBook?
Download this book in EPUB and PDF formats
Access this title in our online reader
DRM FREE - Read whenever, wherever and however you want
Online reader with customised display settings for better reading experience
What do you get with video?
Download this video in MP4 format
Access this title in our online reader
DRM FREE - Watch whenever, wherever and however you want
Online reader with customised display settings for better learning experience
What do you get with video?
Stream this video
Access this title in our online reader
DRM FREE - Watch whenever, wherever and however you want
Online reader with customised display settings for better learning experience
What do you get with Audiobook?
Download a zip folder consisting of audio files (in MP3 Format) along with supplementary PDF
What do you get with Exam Trainer?
Flashcards, Mock exams, Exam Tips, Practice Questions
Access these resources with our interactive certification platform
Mobile compatible-Practice whenever, wherever, however you want
  1. Free Chapter
    Machine Learning Capabilities with vSphere 6.7
About this book
This book presents an introductory perspective on how machine learning plays an important role in a VMware environment. It offers a basic understanding of how to leverage machine learning primitives, along with a deeper look into integration with the VMware tools used for automation today. This book begins by highlighting how VMware addresses business issues related to its workforce, customers, and partners with emerging technologies such as machine learning to create new, intelligence-driven, end user experiences. You will learn how to apply machine learning techniques incorporated in VMware solutions for data center operations. You will go through management toolsets with a focus on machine learning techniques. At the end of the book, you will learn how the new vSphere Scale-Out edition can be used to ensure that HPC, big data performance, and other requirements can be met (either through development or by fine-tuning guidelines) with mainstream products.
Publication date:
March 2019
Publisher
Packt
Pages
344
ISBN
9781789802160

 

Chapter 1. Machine Learning Capabilities with vSphere 6.7

This book will brief you about how different VMware tools will help customers to reap the benefits of intelligent automatic detection and prediction. This offering will enable them to detect, visualize, and troubleshoot anomalies, future needs, and potential modern applications and infrastructure issues—all this without any additional skillset for statistical or algorithm expertise from the user's side. VMware provides customers unified visibility into the health and typical behavior of metrics across all services without user assistance, and therefore reduces troubleshooting time. These tools will also help in forecasting to understand future capacity needs and to maximize application and infrastructure efficiency cost-effectively.

This chapter briefs you on how to virtualize GPU in a vSphere environment by using different modes, creating profiles for specific groups of users, and information about different NVIDIA graphics cards and their usage. We will also learn about configuring NVIDIA GPU in vSphere for machine learning (ML)-based workloads with different use cases to achieve specific business objectives while reducing cost.

The topics that we we will cover in this chapter are as follows:

  • ML and VMware
  • Different modes of using GPUs
  • ML with NVIDIA GPUs
   

ML and VMware


VMware is extensively leveraging AI and ML techniques in most of its products. We can see this with the new version of vSphere 6.7 features and also with products such as AppDefense and Workspace. This is one intelligence that will help in achieving the future vision of self-driving data centers. VMware has already done the performance benchmarking regarding how it can help its customers to run their own ML workloads on vSphere with improved support from NVIDIA GPUs.

ML is important for VMware mixed cloud vision, as ML has the ability to absorb a huge amount of datato utilize it for precise learning and with end users.

ML-based data analysis

ML is helping customers to fetch better granular-level information from large datasets. This will give a huge competitive advantage in business, as the customer is able to integrate their data from different sources, which will help the management to take major decisions ahead of their competitors. As we get this result with the relevant reasons behind it, we can help customers with accurate and productive data. The potential of AI in our daily life is immense.

We have a new development in ML every day, and ML will be extended even further. All the biggest public cloud vendors use ML-based techniques in their daily operations. Apple, GE, and Bosch are also gathering massive amounts of data and applying machine learning techniques to filter out only useful data. GE is accumulating data analytics through its industrial internet, and Apple has a huge amount of consumer and health data from its millions of end users, which helps them to emerge as major players in AI. 

Embedding AI within present cloud technologies is helping businesses and consumers to grow and also creating new opportunities with all the relevant information to plan for the future. We are moving toward intelligent infrastructure where AI uses machines to adopt human intelligence. AI is based on rules-based logic, decision trees, and methodology to enable it to behave like a human. ML analyzes data and enhances the performance of repetitive tasks. DL will help machines learn by locating and checking various options against one another in order to get the best result or solution.

Customers have adopted the cloud and are now embedding ML techniques and its capabilities to extend its dynamics and delivering values to customers. Customers get a safe and secure environment with the scale up and out capabilities. The cloud provider receives loyal long-term customers in return. Every cloud provider is better than others in specific fields, from a business and an AI perspective. This will give customers diverse offerings with specialized intelligence for their unique requirements.

VMware will help customers with intelligent infrastructure that can deliver a comparable and secure solution across mixed clouds to choose the right cloud provider for their unique business requirements, such as security, backup, disaster recovery, networking, storage, graphics, and management with basic compute resources. 

A good example of intelligent technology is Google Maps. When we leave our office for a meeting, with Google Map's guidance, we are able to identify alternative routes via AI, saving us valuable time.

Using virtualized GPUs with ML

ML is being extensively used in research and development these days, and the computing power enhancement of accelerators such as GPUs has enabled a rapid adoption of ML applications.

Designers, engineers, and architects are the extensive end users who frequently use 3D graphics for a wide-range of use cases and expect their IT teams to assist them in this. They use high-end graphics workstations handling 3D models of automobiles, manufacturing components, and buildings in real time. They are part of manufacturing, architecture, engineering and construction, higher education, public sector, oil and gas, and so on. They have to view and control this rich, visual 2D and 3D data in real time. Power-user groups such as clinicians, engineers, and office professionals represent millions of users who rely on rich 2D and 3D graphics for their deliverables.

Organizations are evolving today as their footprint increasing with the global workforce who are geographically distributed teams using virtual desktop with graphics from anywhere, anytime and on any workstation. As these power users are working in the field and need application access from anywhere using their end-point devices such as laptops, tablets, and mobile devices, they need to collaborate with their team members in real time without the risk of data loss and with full compliance. We have to redefine the workflow for designers and engineers with a Virtual Desktop Infrastructure (VDI) solution:

 VMware Horizon VDI with NVIDIA GPU

A VMware VDI solution is certified with all leading 3D apps workstations—world-class graphics from endpoint to data center are accessible on any device while lowering the operating expenses. VMware Horizon with protocol Blast ensures a tremendous user experience based on NVIDIA GRID vGPU technology by providing secure, native, 3D graphics from the cloud and delivered across any endpoint devices and from any locations with lower OpEx. Graphics commands executed on each virtual machine are directly passed to the physical GPU without any overheads at the hypervisor layer with NVIDIA GRID vGPU technology.

It helps with application compatibility as the applications have access to the same graphics card as earlier on their workstations. NVIDIA GRID vGPU makes it possible for the GPU hardware to be time-sliced to provide the best in shared virtualized graphics performance.

VMware, vSphere, and VMware Horizon ensure power users, designers, and engineers can get a fabulous graphics experience that is equivalent to native hardware and certified by NVIDIA and VMware for most of the important business applications.

 

Modes of GPU usage


Applications running in virtual machines hosted on vSphere can make use of GPU processing power in two ways.

vSphere DirectPath I/O is a vSphere inherent feature that leverages virtualization technology (VT)-enabled processors configured to the hosts to enhance the performance of virtual machines. General purpose Input Output (GPIO) is a processor feature of Intel/AMD CPUs known as an I/O memory management unit that assigns direct memory access transfers and device interrupts. This way, virtual machines are able to bypass the VMkernel and get direct access to the underlying physical hardware. vMotion is supported with DPIO-enabled server hardware.

Hardware-assisted I/O MMU virtualization is called Intel Virtualization Technology for Directed I/O (VT-d) in Intel processors and AMD I/O Virtualization (AMD-Vi or IOMMU) in AMD processors. It is a function of the chipset that assists virtual machines to get direct access to hardware I/O devices such as network cards, storage controllers, and GPUs.

NVIDIA GRID GPUs support vGPU, which is the capability for multiple users to share a single physical GPU in a virtualized environment. There are three types of hardware-based graphics acceleration configurations possible for Horizon View virtual desktops. vGPU offers the best performance and compatibility options.

Comparing ML workloads to GPU configurations

We can compare the same ML workload by testing it with three different GPU configurations; these are as follows:

  • GPU using DirectPath I/O on vSphere
  • GRID vGPU on vSphere
  • Native GPU on bare metal host

We have tested and found that the virtualization layer (DirectPath I/O and GRID vGPU) introduced only a 4% overhead for the tested ML application. Learning times can be compared to the specific model by using two virtual machines with different configurations.

VM resources along with OS of two VMs with and without GPU:

  • NVIDIA GRID Configuration: 1 vGPU, 12 vCPUs, 60 GB memory, 96 GB of SSD storage, CentOS 7.2
  • No GPU configuration: No GPU, 12 vCPUs, 60 GB memory, 96 GB of SSD storage, CentOS 7.2

Let's look at the following table:

MNIST workload

1 vGPU (sec)

No GPU (sec)

Normalized learning time

1.1

10.01

CPU utilization

9%

45%

 

vGPU reduces the training time by 10 times and CPU utilization also goes down 5 times as shown in the preceding table. ML can be referenced with two components; these are as follows:

  • The convolutional neural network model derived from the TensorFlow library.
  • The Canadian Institute For Advanced Research (CIFAR)-10 dataset has defined images datasets, which we utilize in ML and IT vision algorithms.

DirectPath I/O 

First, we focus on DirectPath I/O (DPIO) passthrough mode as we scale from one GPU to four GPUs:

CIFAR-10

 1 GPU

2 GPUs

4 GPUs

Normalized images/sec in thousands (w.r.t. 1 GPU)

1.1

2.01

3.77

CPU utilization

23%

41%

73%

Images processed per second get better with the increased number of GPUs on the server. One GPU almost used to normalized data at 1,000 images/second and will grow further with the increase of GPUs. DPIO and GRID vGPU mode performance can be compared by configuring with one vGPU/VM in both modes:

MNIST Workload

(lower is better)

DPIO

GRID vGPU

Normalized training times

1.1

1.03

CIFAR-10 Workload

(Higher is better)

DPIO

GRID vGPU

Normalized images/second

1.1

0.83

 

DPIO and GRID mode vGPU have more-or-less the same performance as one vGPU/VM. We can configure a VM with all the available GPUs on the host in DPIO, but a VM can configure a maximum of one GPU in GRID vGPU mode. We can differentiate between four VMs running the same job and a VM using four GPUs/hosts in DPIO mode:

CIFAR-10 Workload

DPIO

DPiO (four VMs)

GRID vGPU (four VMs)

Normalized images/second (higher is better)

1.1

0.96

0.94

CPU utilization

73%

69%

67%

 

We should configure virtual machines with low latency or require a shorter training time in multi-GPU DPIO mode. As they are dedicated to specific virtual machines, the rest of the virtual machines will not be able to access the GPUs on the host during this time. We can leverage virtual machines with longer latencies or learning times by configuring 1-GPU in GRID vGPU mode and enjoy the virtualization benefits.

Scalability of GPU in a virtual environment

Horizon and vSphere support vGPU, and vGPU brings the benefit of broad API support and native NVIDIA drivers with maximum scalability. NVIDIA GRID GPUs are based on the NVIDIA Kepler GPU architecture. NVIDIA GRID GPUs support vGPU capability for multiple users to share a single physical GPU in a virtualized environment. Horizon will automatically load-balance vGPU-enabled virtual desktops across compute and storage resource pools with the required GPUs, even with different pools using various user profiles. If we create two linked-clone pools, one with a K120Q profile and another with K220Q, Horizon will put the first profile on hosts with K1 cards and the latter on K2 without any effort. vGPU profiles entitle dedicated graphics memory. The GPU manager allocates memory size to meet the specific asks of each user.

The ESXi host can go up to a maximum 16 physical GPU-based graphics to be shared among different virtual machines/users.

Horizon have three kinds of graphics acceleration:

  • Virtual shared graphics
  • Virtual shared passthrough graphics
  • Virtual dedicated graphics
  • Total memory (including volatile and non-volatile memory) can't exceed the maximum memory limit (6,128 GB) per virtual machine

Containerized ML applications inside a VM

The vSphere Integrated Containers architecture gives two container deployment models:

  1. Virtual container hosts: vSphere Integrated Containers leverages the native constructs of vSphere to provision containers. It extends the availability and performance capabilities (DRS, HA, vMotion ) of vSphere to containerized workloads. A container image can be used as a virtual machine, and developers can also consume it as a Docker API.
  2. Docker container hosts: Developers can self-provision Docker container hosts on demand and use them as a development sandbox to repackage apps. This architecture complements agile development practices and DevOps methodologies such as continuous integration (CI) and continuous deployment (CD).

It will be costly and time consuming to re-architect an in-house application that is tightly coupled to its data and other application components/logic, so it cuts costs to repackage the application in a container without changing the application’s design. The learning curve for repackaging an application is small.

vSphere Integrated Containers gives an option to instantiate a Docker image by using the Docker command-line interface and then deploying the container image as a VM instead of as a container on top of a Docker host, so we can get the benefits of packaging the application as a container without re-architecting it. This way, we keep the isolation of VMs. vSphere Integrated Containers is the ideal solution for application repackaging without any new infrastructure/dedicated hardware or the need to implement new tools.

The repackaged containerized application can run alongside other virtual machines running traditional or containerized applications. vSphere Integrated Containers have high availability at the infrastructure level without developer intervention to support the repackaged container. We can also utilize core vSphere features such as vSphere high availability and vSphere vMotion.

vGPU scheduling and vGPU profile selection

GPUs support by default an equal share and have to configure a fixed share as per a customer’s requirement.

We can configure GPU with the following two options:

  • Equal share scheduler: A physical GPU is shared among all the virtual desktops as vGPUs running on the same host. The share of processing cycles changes as vGPUs are added/removed to a GPU and the performance of a vGPU depends on whether other vGPUs are running or stopping.
  • Fixed share scheduler: Each vGPU is allocated a fixed share of the physical GPU's processing cycles in spite of whether vGPUs are added to or removed from a GPU. It will be constant, even if other vGPUs are running or stopping.

NVIDIA GRID vGPU on vSphere can be configured with various options for the vGPU profile that defines the GPU memory each VM can use with the maximum number of VMs that can share a single GPU.

vGPU profiles provides a line up of virtual GPUs with different buffer memory frame sizes and numbers of heads. The number of users will be defined by the division of a frame buffer per GPU attached to a specific profile, and the number of heads denotes the supported number of displays, while the maximum resolution will be consistent across all the profiles. vGPU profiles ending in Q have to follow an application certification process the same as the NVIDIA Quadro cards for professional graphics applications. We can get 100% compatibility and performance with these applications. You can refer to this link for a list of certified applications: https://www.nvidia.com/en-us/design-visualization/solutions/virtualization/.

Power user and designer profiles 

We can move our most demanding end users into the data center with NVIDIA Grid and Horizon. We can help these users with mobility, easy management, centralized data and security, disaster recovery protection, and other benefits of virtualization. We can bind these users with their workstation by subsequentially chaining them to a desk. Although Virtual Dedicated Graphics Acceleration (vDGA) passthrough allows remote workstation access with a 1:1 ratio with a higher cost and without any optimization of resources, now, we can have mixed workstation users along with task/knowledge users for better resource optimization. We are getting lots of options for designing a solution with the desired compatibility and performance. We can get high-quality experience with a design application on certified software and hardware by utilizing the NVIDIA platform. Profile selection depends on the primary application’s requirements, and based on these requirements we can choose the suitable Quadro-certified vGPU profile to achieve the end user’s requirements.

Knowledge and task user profiles

Task workers mostly need Soft 3D, a software-based 3D renderer good for less graphics-intensive applications. They do not require, or get a noticeable advantage from, hardware-based 3D acceleration. Soft 3D is a standard component of Horizon.

Office workers and executives come into this profile, mostly using applications such as Microsoft Office, Adobe Photoshop, and other non-specialized end-user applications. A Virtual Shared Graphics Acceleration (vSGA) solution can optimize performance for this use case by providing high levels of consolidation of users across GPUs. vSGA does not provide a broad range of graphics API support, as it is always better to consider a vGPU-based solution for knowledge workers.

Adding vGPU hosts to a cluster with vGPU Manager

We have to install the NVIDIA GPU manager vSphere Installation Bundle (VIB), as NVIDIA VIB has drivers that are a must for the host to identify the GPU. This will give you vGPU Manager. ESXi host's BIOS power and performance settings should be set to the high performance policy before installing the supported version of vCenter and ESXi. ESXi hosts are managed through vCenter and configured with NTP and DNS.

 vGPU Manager VIB is loaded the same as a driver in the hypervisor. vGPU Manager can provision up to eight users to share each physical GPU. M60 can be set up to 32 users per card. This cluster must have hosts that have NVIDIA Tesla M60 vGPU. This is to optimize the distribution of resources for the GPU.

 

ML with NVIDIA GPUs


ML helps computers to work without being explicitly programmed in a user-friendly way so anyone can learn and utilize it in their daily life such as health, research, science, finance, and intelligent system:

Assigning a GPU in NVIDIA GRID vGPU

Pool and farm settings in Horizon

We have to configure a 3D farm like a normal farm in Horizon:

  1. Configure this pool in the same way as we used to configure the pool in Horizon, until we reach the Desktop Pool Settings section.
  2. Scroll to the Remote Display Protocol section in the Add Desktop Pool window.
  3. We have to choose between two of the following options in the 3D Renderer option:
    1. Choose either Hardware or Automatic for vSGA
    2. Choose Hardware for vDGA or MxGPU
  1. Set the default display protocol to PCoIP in the Desktop Pool settings and allow users to decide to choose No in the dropdown with 3D Renderer to NVIDIA GRID VGPU.
  2. To enable the NVIDIA vGPU, enable vGPU support for a virtual machine:
  1. Power down the virtual machine.
  2. Click onVMin theNavigatorwindow. Select theManagetabandSettings. Click on theEditbutton:
  1. Click the New PCI Device bar and choose Shared PCI Device and then Add to continue:
  1. Now it's showing that the NVIDIA GRID vGPU device is added.
  2. Configure the GPU with the GPU Profile Selection bar and then click OK to finish the configuration.

Configuring hardware-accelerated graphics

We can configure acceleration in three ways with VMware Horizon:

  • Virtual shared graphics
  • Virtual dedicated graphics
  • Virtual shared passthrough graphics

Virtual shared graphics acceleration

vSGA is the driver that supports DirectX and OpenGL. vDGA configurations do use the native graphics card driver. SVGA or VMware SVGA 3D is the VMware Windows Display Driver Model-compliant driver included with VMware Tools on Windows virtual desktops. This 3D graphics driver can be installed on Windows for 2D/3D and can also can be utilized for both 3D and vSGA software.

VMware SVGA 3D can be configured for both 2D/3D software and vSGA deployments, and a virtual desktop can be rapidly switched between either with software or hardware acceleration, without any change to the existing configuration. vSGA supports vMotion with hardware-accelerated graphics configuration. Universal driver will work across platform without any further configuration:

The server’s physical GPUs are virtualized and shared with the number of guest virtual machines residing on the same host server with vSGA techniques. We have to integrate a specific driver in the hypervisor and all guest virtual machines will leverage the VMware vSGA 3D driver. vSGA has performance limitations with few applications which don't have needed API support and also have limited support for OpenGL and DirectX.

Configuring vSGA settings in a virtual machine

There are three existing 3D settings in vSphere and View Pool settings. We can enable or disable 3D to set the 3D setting to automatic through vSphere. If we change the 3D configuration, then it will revert back the amount of video memory to the default value of 96 MB, so be sure before changing the video memory. These configurations have the following: Automatic (by default), Software, and Hardware:

  1. Enable 3D Support.
  2. Set the 3D Renderer to Automatic or Hardware.
  3. Decide on the 3D video memory. By default, it is 96 MB, but it can be a minimum of 64 MB and a maximum of 512 MB:

Virtual machine settings for vGPU

Now we will set up the virtual machine settings for vGPU with following screenshot:

The preceding image will give us multiple configuration options as per application requirement with all security measures.

  1. Select the virtual machine to be configured and click EditSettings. First, add a Shared PCI Device and then choose the NVIDIA GRID vGPU to enable GPU passthrough on the virtual machine:
  1. Choose the required profile from GPU Profile drop-down menu:

GPU profile string 4q notifies the size of the frame buffer (VRAM) in GB and the needed GRID license.

VRAM 0,1 notifies 512 MB, 1,024 MB, respectively, and so on. GRID license types are as follows:

  • GRID virtual PC vGPUs for business desktop computing notifies with b
  • GRID virtual application vGPUs for remote desktop session hosts notifies with a
  • Quadro Virtual Data Center Workstation (vDWS) for workstation-specific graphics features and accelerations, such as up to four 4K monitors and certified drivers for professional applications notifies with q:

Click Reserve all memorywhen creating a virtual machine. We can manage end-to-end NVIDIA virtual GPU solutions such as Quadro vDWS and NVIDIA GRID Virtual PC (vPC) with complete vGPU visibility into their entire infrastructure at the host, guest, or application level. This helps us to become more responsive and agile for a better end-user VDI experience.

We can deliver a far better user experience from high-end virtual workstations to enterprise virtual workspaces, which are cost effective to purchase, easy to deploy, and efficient to operate.

Users such as engineers, designers, content creators, and architects using the Pascal-based GPU with the Quadro vDWS software are able to get the best experience of running both accelerated graphics and compute (CUDA and OpenCL) workloads on any virtual workstation or laptop.

Knowledge workers use programs such as Windows 10, Office 365, and YouTube, which need graphics acceleration to achieve a better virtual desktop user experience using the NVIDIA Pascal™-based GPU with NVIDIA GRID™ virtual PC. NVIDIA NVENC delivers better performance and user density by off-loading H.264 video encoding from CPU to Linux virtual workstation users, which is a heavy compute task. Horizon provides customers with a single platform to publish all kinds of desktops (Windows and Linux) and applications, as per the user's graphics requirement.

GRID vPC and GRID vApps capabilities

NVIDIA GRID has software editions based on specific use cases:

  • NVIDIA GRID Virtual Applications (vApp): We can use it for app virtualization or RDSH-based app publishing.
  • vPC: It will be suitable for a virtual desktop providing standard desktop applications, browser, and multimedia.
  • NVIDIA GRID Virtual Workstation (vWS): This will be worthwhile for scientists and designers who work on powerful 3D-content creation applications such as CATIA, S, 3DExcite, Schlumberger Petrel, or Autodesk Maya, and so on. vWS only has this NVIDIA Quadro driver.

NVIDIA GRID software editions can be purchased in both annual subscription, perpetual license, and in combination with support. A high-availability license server ensures users get uninterrupted work even in situations where a primary license server goes offline; then, a secondary license server will provide the license services to clients.

NVIDIA virtual GPU solutions and Maxwell-powered GPUs (NVIDIA® Tesla® M60, M6, and M10) are supported in this Pascal-based launch. NVIDIA virtual GPU solutions will be supported on all Pascal GPUs with the Tesla P40 and always-recommended P6 (blade) with the appropriate software licenses.

Even if you have Maxwell-powered GPUs with a NVIDIA GRID solution, we require Pascal GPUs to benefit from the performance improvements, increased frame buffer, larger and more granular profile sizes, bigger system memory, the ability to run both virtualized graphics and compute workloads to scale on the same GPU, and utilize the new task scheduler.

Features such as streamlining management and monitoring that help in application-level monitoring and integrations work on both Maxwell and Pascal cards with the NVIDIA GRID software release and GRID Management SDK 2.0. We have to choose the recommended Pascal/Maxwell boards for specific workloads.

We can recommend P40 or M60 for commercial customers. The P40 provides the highest performance, larger memory, and easier management, and enables the virtualization of graphics and compute (CUDA and OpenCL). The P40 is recommended when upgrading from M60 or K2 or the Skylake-based server. The M60 will continue to be offered and provides heterogeneous profiles and larger OEM server support.

M10 is suggested for customers with density-driven deployments, and for knowledge workers running everyday graphics-accelerated applications, the M10 is recommended. For high-density blade-server deployments, the P6 is a recommended to follow on to the M6.

GRID vWS to Quadro vDWS

We can leverage Quadro/GRID capabilities and compare it with VMware virtual workstation/PC/virtual apps solutions. NVIDIA GRID vWS is now NVIDIA Quadro Virtual Data Center Workstation or Quadro vDWS. The GRID brand will be used to describe a PC experience and will have two editions: NVIDIA GRID vPC and NVIDIA GRID vApps. While these 2 software editions were once called the NVIDIA GRID software platform, they will now be referred to as NVIDIA virtual GPU solutions.

MxGPU is a GPU virtualization technique with a built-in hardware engine responsible for VM scheduling and management. It leverages the underlying SR-IOV protocol as per the application's requirement. GPUs that are in passthrough mode can’t be virtualized, so first run the script to disable passthrough mode. If MxGPU is enabled and vCenter is accessible, then use the plugin to configure instead of the script. vDGA can help a user with unrestricted and dedicated access to a single vGPU by providing direct passthrough to a physical GPU. The steps for installing the driver on a VM using an MxGPU device are the same for a regular passthrough device under vDGA.

Configure the virtual machine while using MxGPU and vDGA:

  1. For devices with a large BAR size, such as Tesla P40, we have to set the configuration parameters on the VM:

    • firmware="efi"

    • pciPassthru.use64bitMMIO="TRUE"

    • pciPassthru.64bitMMIOSizeGB="64"

  2. Add a PCI Device to the specific virtual machine and choose the required PCI Device to enable GPU passthrough:
  1. Log into vSphere Web Client via the Administrator account on the Home page and click Radeon Pro Settings. Go to the Data Center and manage all MxGPU hosts in a specific data center.
  2. We can install Radeon Pro Settings on the vSphere Client plugin with MxGPU:

VMware supports both AMD and NVIDIA graphics cards. We can download the appropriate VMware graphics driver from the vendor website to use the graphics card or GPU hardware. We can add PCI Device to a single virtual machine as well as to multiple virtual machines.

  1. To add a PCI Device for a number of virtual machines in one go with commands, do the following:
    1. Browse to the AMD FirePro VIB driver and install AMD VIB utility: cd /<path_to_vib from ssh.
    2. Edit vms.cfg: vi vms.cfg.
  2. Press I and change the instances of .* to match the names of the VMs that require a GPU like to match *MxGPU* to VM names that include MxGPU: .MxGPU.
  3. Save and quit by pressing Esc, type :wq, and press Enter.
  1. Assign the virtual functions to the VMs:
sh mxgpu-install.sh –a assign 
Eligible VMs:
WIN10-MxGPU-001
WIN10-MxGPU-002
WIN8.1-MxGPU-001
WIN8.1-MxGPU-002
These VMs will be assigned a VF, is it OK?[Y/N]y
  1. Press Enter and choose Reserve all guest memory (All locked).
  2. Reboot the system to automatically assign Virtual Function(VF) by using the MxGPU script.

We should then verify that all VFs are populated in the device list. This way, we can automatically assign VF by using the script.

 

Summary


Remote computing solutions for applications such as CAD/CAM, diagnostic imaging, molecular design, and space exploration proved elusive. NVIDIA GRID vGPU technology and VMware, vSphere, and Horizon virtualization software offer cost-effective solutions for design engineers, scientific investigators, and data explorers.

Horizon offers software-based graphics acceleration, which is sufficient for basic use, but hardware-based graphics acceleration have different combinations of GRID graphics cards with server configurations and can be used to address a wide range of advanced user requirements and fulfil them within a budget. We can configure the GPU in two modes:

  • DirectPath I/O passthrough mode
  • GRID vGPU mode

Shared access to the virtualized GPU makes immersive 3D graphics applications accessible from remote devices. This solution eliminates the need for dedicated graphics workstations, improving security and freeing the users from their offices.

The next chapter is about strategies for hosting applications in such ways as to provide freedom to end users as well as full control to administrator/service providers with policy-based operations based on ML algorithms, which will also help in improving the end-user experience.

 
About the Author
  • Ajit Pratap Kundan

    Ajit Pratap Kundan stands at the leading edge of the most innovative cloud technology in the world. He has helped position VMware as a leader in the private cloud area in relation to his federal government customers through an SDDC approach. An innovative techy with 18+ years of industry experience, he has promoted technologies to his government and defense customers. Ajit is a valued writer on cloud technologies and has authored one book, VMware Cross-Cloud Architecture, published by Packt. He currently resides in Delhi, India, with his wife, Archana, and their two sons, Aaradhya and Akshansh.

    Browse publications by this author