High Level look at virtualizing ArcGIS Pro

Projects deploying ArcGIS Pro in virtualized environments are underway. As the IT industry virtualizes more desktops and applications, ArcGIS Pro will be virtualized and is expected to work well in those environments. For that reason the Performance Engineering team has tested ArcGIS Pro in VMWare Horizon View, Microsoft Hyper-V and Citrix XenDesktop+XenApp.

Using the test results of both automated load tests and hands on testing events with real humans we have a very good understanding of what it takes to successfully deploy ArcGIS Pro in virtualized environments. We also have a good idea of how many virtual machines (VMs) that a virtualization server can host while also delivering an acceptable user experience. The result of that effort is that Pro virtualizes well, and can deliver a great user experience.

User Experience
ArcGIS Pro delivers a great user experience when working with 2D and 3D data. This was a requirement of the product and delivered by design. A couple of important characteristics that help deliver this:

• ArcGIS Pro is a modern multithreaded application. Multiple threads take advantage of modern multi-core processors to perform multiple tasks concurrently such as GP processing in the background while rendering in the foreground.
• ArcGIS Pro is built with a state of the art rendering engine. This new rendering engine takes advantage DirectX and OpenGL graphics libraries.

These two aforementioned characteristics help deliver great user experience with fluid, game-like graphics. But these two characteristics also cause ArcGIS Pro to virtualize differently than ArcMap.

Virtualization Requirements
In order to virtualize Pro, it is important to properly configure the virtualization environment to support multiple VMs running a high-end graphics application such as ArcGIS Pro. This includes ensuring adequate processors and shareable GPUs on the host.

• Physical processors have enough cores to support VMs with modern multithreaded applications. This is not only for Pro but other multi-threaded applications. An example of appropriate processors are those on the servers used in the Performance Engineering lab which have two Intel E5-2695 V2 processors. Each processor has 12 cores.
• GPUs and drivers designed for virtualized environments such as the Nvidia GRID K2 cards. Each server in the Performance Engineering lab has two K2 cards. These are important since the DirectX and OpenGL libraries utilize the GPU to deliver the map rendering at acceptable frames-per-second. Without a GPU the rendering engine will use the Windows WARP software rasterizer. WARP is useful in a pinch, but will not deliver the same user experience as a GPU.

An example of a server which meets the above criteria are those used in the Performance Engineering lab.

Dell R720 with 2 Intel Xeon E5-2695 V2@ 2.40GHz processors, 200Gb memory, 4TB storage, two Nvidia GRID K2 cards.

Nvidia vGPU Profiles
Since we use Nvidia GRID K2 cards in our test environment the vGPU Profiles used to configure the framebuffer and VM/GPU density are very important. We discussed this in a previous blog “Virtualizing ArcGIS Pro: Nvidia Grid vGPU Profiles”. Below is a quick reference table that shows the K2 vGPU Profiles.

For our 2D tests we have found that the K220Q or K240Q vGPU profiles are adequate. For the 3D tests we have found that the K240Q or K260Q profiles are needed.
The server configuration described above can support the following density:
• 10-12 VMs with Pro using 3D data and the K240Q profile.
• 16-20 VMs with Pro using 2D data and the K220Q profile

Sites may see greater density dependent on the work being performed on each VM, the data being used and the vGPU profile used.

If a shareable GPU was not present, all of the processing required for rendering is moved to the virtual CPUs. The virtual CPUs aren’t nearly as good at rendering as the shareable GPUs, which will lead to degraded user experience. This will be compensated by increasing the number of virtual CPUs for each VM, but this will cause increased physical CPU utilization on the hypervisor leading to poor VM/Hypervisor density.

Additional blogs on ArcGIS Pro density in Citrix XenDesktop and virtualization sessions at the Esri UC will be coming very soon.

Next Article

PerfTools (Build 122) for ArcGIS Pro 2.x is now available for download

Read this article