Nicolas Vazquez created CLOUDSTACK-9428:
-------------------------------------------
Summary: Fix for CLOUDSTACK-9211: Improve performance
Key: CLOUDSTACK-9428
URL: https://issues.apache.org/jira/browse/CLOUDSTACK-9428
Project: CloudStack
Issue Type: Improvement
Security Level: Public (Anyone can view this level - this is the default.)
Components: VMware
Reporter: Nicolas Vazquez
Assignee: Nicolas Vazquez
h3. Introduction
On [CLOUDSTACK-9211|https://issues.apache.org/jira/browse/CLOUDSTACK-9211]
passing vRAM size to support 3D GPU problem was addressed on VMware. It was
found out that it could be improved to increase performance by reducing extra
API calls, as we'll describe later
h3. Improvement
On WMware, {{VmwareResource}} manages execution of {{StartCommand}}. Before
sending power on command to ESXi hypervisor, vm is configured by calling
{{reconfigVMTask}} web method on vSphere's client {{VimPortType}} web service.
It was found out that we were using this method 2 times when passing vRAM size,
as it implied creating a new vm config spec only editing video card specs and
making an extra call to {{reconfigVMTask}}.
We propose reducing the extra web service call by adjusting vm's config spec.
This way video card gets properly configured (when passing vRAM size) in the
same configure call, increasing performance.
h3. Use case (passing vRAM size)
# Deploy a new VM, let its id be X
# Stop VM
# Execute SQL, where X is vm's id and Z is vRAM size (in kB): {code:sql}
INSERT INTO cloud.user_vm_details (vm_id, name, value) VALUES (X,
'mks.enable3d', 'true');
INSERT INTO cloud.user_vm_details (vm_id, name, value) VALUES (X,
'mks.use3dRenderer', 'automatic');
INSERT INTO cloud.user_vm_details (vm_id, name, value) VALUES (X,
'svga.autodetect', 'false');
INSERT INTO cloud.user_vm_details (vm_id, name, value) VALUES (X,
'svga.vramSize', Z);
{code}
# Start VM
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)