[ 
https://issues.apache.org/jira/browse/CLOUDSTACK-9428?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15433276#comment-15433276
 ] 

ASF GitHub Bot commented on CLOUDSTACK-9428:
--------------------------------------------

Github user rafaelweingartner commented on the issue:

    https://github.com/apache/cloudstack/pull/1605
  
    @nvazquez, 
    Very nice proposal this one. I have only very small suggestions, which are 
the following:
    * The method “videoCardConfig”, would be better if called 
“configureVideoCard”, normally I treat methods as actions, and as such, they 
normally start with a verb. This is cosmetics, but I think it helps to follow 
the code.
    * Method “modifyVmVideoCardVRamSize” does not need that throws Exception.
    * Would you mind creating a test case for “modifyVmVideoCardVRamSize”, it 
is a very simple integration test case.  It is pretty easy to do with mocks, if 
you need any help, just send me an email.
    * If you remove the “throws exception from modifyVmVideoCardVRamSize”, you 
can also remove from “setNewVRamSizeVmVideoCard”.
    * Would you mind creating test cases for the method 
“setNewVRamSizeVmVideoCard”?
    * Method “videoCardConfig”, if you removed the “throw Exception” from the 
above methods, you can remove the “Catch Exception from here”
    * And also, what about  test cases for the method “videoCardConfig”?
    * What about changing the verb of “configSpecVideoCardNewVRamSize” method 
to its complete form “configure”?
    * And finally, what about a test case for “configSpecVideoCardNewVRamSize”?
    
    @nvazquez great work, my suggestions are mostly aesthetics, but I think 
they can help improve this PR.


> 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)

Reply via email to