-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/17889/#review35770
-----------------------------------------------------------



api/src/com/cloud/agent/api/to/GPUDeviceTO.java
<https://reviews.apache.org/r/17889/#comment66508>

    Don't pass HashMap like this, use the getGroupDetails() instead.



api/src/com/cloud/agent/api/to/GPUDeviceTO.java
<https://reviews.apache.org/r/17889/#comment66509>

    There is no need for this method for HashMap



api/src/org/apache/cloudstack/api/response/GpuResponse.java
<https://reviews.apache.org/r/17889/#comment66510>

    What is this about?



core/src/com/cloud/agent/api/StartupRoutingCommand.java
<https://reviews.apache.org/r/17889/#comment66511>

    This is not required, use getGpuGroupDetails() instead



core/src/com/cloud/agent/api/StopCommand.java
<https://reviews.apache.org/r/17889/#comment66512>

    Shouldn't there be a similar change in StartCommand as well?



engine/components-api/src/com/cloud/resource/ResourceManager.java
<https://reviews.apache.org/r/17889/#comment66513>

    getGPUDevice() and listAvailableGPUDevice() - The name says GPUDevice but 
one return a single GPUDeviceTO and another returns a list of HostGpuGroupsVO. 
Can we have better names if these are indeed different things?
    
    Also instead of GPUDeviceTO, should it be a VO? 



engine/orchestration/src/com/cloud/vm/VirtualMachineManagerImpl.java
<https://reviews.apache.org/r/17889/#comment66514>

    What happens if there is an exception while updating GPU capacity? Will the 
startVM fail and the vm cleaned up?



engine/orchestration/src/com/cloud/vm/VirtualMachineManagerImpl.java
<https://reviews.apache.org/r/17889/#comment66515>

    Same comments as in orchestrateStart()


- Koushik Das


On Feb. 27, 2014, 12:35 p.m., Sanjay Tripathi wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/17889/
> -----------------------------------------------------------
> 
> (Updated Feb. 27, 2014, 12:35 p.m.)
> 
> 
> Review request for cloudstack, Alex Huang, Devdeep Singh, and Koushik Das.
> 
> 
> Bugs: CLOUDSTACK-4760 and CLOUDSTACK-4762
>     https://issues.apache.org/jira/browse/CLOUDSTACK-4760
>     https://issues.apache.org/jira/browse/CLOUDSTACK-4762
> 
> 
> Repository: cloudstack-git
> 
> 
> Description
> -------
> 
> CLOUDSTACK-4760 : Enabling GPU support for XenServer.
> CLOUDSTACK-4762 : Enabling VGPU support for XenServer.
>     
> This feature is to enable the GPU-passthrough and vGPU functionality,
> with the help of this feature, admins/users will be able to leverage
> the GPU graphics unit power by deploying a virtul machine with GPU or
> vGPU support or by changing the service offering of an existing VM
> at any later point of time. There GPU/vGPU enabled VMs are able to run
> graphical applications.
> For now, this feature is only supported with XenServer hypervisor but
> can be extended to add the support of other hypervisors.
> 
> 
> Diffs
> -----
> 
>   api/src/com/cloud/agent/api/to/GPUDeviceTO.java PRE-CREATION 
>   api/src/com/cloud/agent/api/to/VirtualMachineTO.java bed3e1d 
>   api/src/com/cloud/gpu/GPU.java PRE-CREATION 
>   api/src/org/apache/cloudstack/api/ApiConstants.java 7b7f9ca 
>   
> api/src/org/apache/cloudstack/api/command/admin/offering/CreateServiceOfferingCmd.java
>  1d8cbff 
>   api/src/org/apache/cloudstack/api/response/GpuResponse.java PRE-CREATION 
>   api/src/org/apache/cloudstack/api/response/HostResponse.java e2d8eb5 
>   api/src/org/apache/cloudstack/api/response/UserVmResponse.java 84d532b 
>   api/src/org/apache/cloudstack/api/response/VgpuResponse.java PRE-CREATION 
>   core/src/com/cloud/agent/api/GetGPUStatsAnswer.java PRE-CREATION 
>   core/src/com/cloud/agent/api/GetGPUStatsCommand.java PRE-CREATION 
>   core/src/com/cloud/agent/api/StartupRoutingCommand.java 626c87f 
>   core/src/com/cloud/agent/api/StopCommand.java 6a29aa6 
>   engine/components-api/src/com/cloud/resource/ResourceManager.java 95fb385 
>   engine/orchestration/src/com/cloud/vm/VirtualMachineManagerImpl.java 
> d19fc38 
>   
> engine/schema/resources/META-INF/cloudstack/core/spring-engine-schema-core-daos-context.xml
>  08efb83 
>   engine/schema/src/com/cloud/gpu/HostGpuGroupsVO.java PRE-CREATION 
>   engine/schema/src/com/cloud/gpu/VGPUTypesVO.java PRE-CREATION 
>   engine/schema/src/com/cloud/gpu/dao/HostGpuGroupsDao.java PRE-CREATION 
>   engine/schema/src/com/cloud/gpu/dao/HostGpuGroupsDaoImpl.java PRE-CREATION 
>   engine/schema/src/com/cloud/gpu/dao/VGPUTypesDao.java PRE-CREATION 
>   engine/schema/src/com/cloud/gpu/dao/VGPUTypesDaoImpl.java PRE-CREATION 
>   engine/schema/src/com/cloud/host/HostVO.java 56c066b 
>   engine/schema/src/com/cloud/host/dao/HostDaoImpl.java 08a4366 
>   engine/schema/src/com/cloud/service/ServiceOfferingDetailsVO.java e1a1e93 
>   
> plugins/hypervisors/xen/src/com/cloud/hypervisor/xen/resource/CitrixResourceBase.java
>  48ae3ea 
>   server/src/com/cloud/agent/manager/allocator/impl/FirstFitAllocator.java 
> b77f8ac 
>   server/src/com/cloud/api/ApiDBUtils.java a23244b 
>   server/src/com/cloud/api/query/dao/HostJoinDaoImpl.java 1b95d9b 
>   server/src/com/cloud/api/query/dao/UserVmJoinDaoImpl.java 08478e2 
>   server/src/com/cloud/configuration/ConfigurationManagerImpl.java 1c1da1f 
>   server/src/com/cloud/deploy/DeploymentPlanningManagerImpl.java 3c87b24 
>   server/src/com/cloud/hypervisor/HypervisorGuruBase.java 7fb79fa 
>   server/src/com/cloud/network/NetworkUsageManagerImpl.java e9b0393 
>   server/src/com/cloud/resource/ResourceManagerImpl.java adad85c 
>   server/src/com/cloud/server/ManagementServerImpl.java 2a08ddc 
>   server/src/com/cloud/server/StatsCollector.java 548587c 
>   server/src/com/cloud/storage/VolumeApiServiceImpl.java c95d316 
>   server/src/com/cloud/vm/UserVmManagerImpl.java 97e3ae7 
>   server/test/com/cloud/resource/MockResourceManagerImpl.java 5599e8c 
>   server/test/com/cloud/vm/DeploymentPlanningManagerImplTest.java 751a3bd 
>   server/test/resources/createNetworkOffering.xml c6228da 
>   setup/db/db/schema-430to440.sql 0ded7a9 
>   test/integration/smoke/test_deploy_vgpu_enabled_vm.py PRE-CREATION 
>   tools/marvin/marvin/integration/lib/base.py 0a7ad94 
>   ui/scripts/configuration.js 869b876 
>   ui/scripts/instances.js 53c9e98 
> 
> Diff: https://reviews.apache.org/r/17889/diff/
> 
> 
> Testing
> -------
> 
> Tests:
> 
> Hosts:
> 1) Add a XS hosts with GPU cards.
> 2) Create a pool of XS hosts with GPU cards.
> 3) Create a pool of XS hosts which are GPU enabled as well which are not 
> enabled.
> 4) Checke the values in both the tables and verify the no. of GPU cards, 
> remaining capacity etc.
> 5) Remove a host from a pool and the remaining capacity should get updated 
> properly.  
> 
> VM:
> 1) Create a compute offering with GPU/vGPU capability.
> 2) Deploy HVM OS with this service offering.
> 3) In case of successful start of VM, remaining capacity should get updated 
> correspondingly.
> 4) Stop the VM and verify the capacity.
> 5) Destroy the VM and verify the capacity.
> 6) If the hosts does not have capacity to deploy a gpu enabled VM, then CS 
> throws the InsufficientServerCapacity exception with proper error message in 
> the logs.
> 
> 
> Thanks,
> 
> Sanjay Tripathi
> 
>

Reply via email to