Function: Dedicated GPU ( Enable )

by Simon Sparks · 20 February 2026

To use this function add it to the class library file named PluginVCVirtualMachineService.ts

GitHub Repository: https://github.com/SimonSparksUK/Orchestrator

Filename: PluginVCVirtualMachineService.ts

Description: Enable a dedicated GPU on a vCenter Virtual Machine

Public Function: GPUPassthroughEnable

public GPUPassthroughEnable(objVcVirtualMachine: VcVirtualMachine, strVendorID: string, strDeviceID: string): boolean {

    let objVcVirtualPCIPassthrough: VcVirtualPCIPassthrough = this.buildVcVirtualPCIPassthrough(strVendorID, strDeviceID);

    let objVcVirtualDeviceConfigSpec: VcVirtualDeviceConfigSpec = this.VcVirtualDeviceConfigSpecCreate(objVcVirtualPCIPassthrough, VcVirtualDeviceConfigSpecOperation.add);

    let arrVcVirtualDeviceConfigSpec: VcVirtualDeviceConfigSpec[] = [];
    arrVcVirtualDeviceConfigSpec.push(objVcVirtualDeviceConfigSpec);

    let objVcVirtualMachineConfigInfo: VcVirtualMachineConfigInfo = objVcVirtualMachine.config;

    let objVcVirtualHardware: VcVirtualHardware = objVcVirtualMachineConfigInfo.hardware;

    let intMemoryGB: number = objVcVirtualHardware.memoryMB / 1024;

    let objVcResourceAllocationInfo: VcResourceAllocationInfo = new VcResourceAllocationInfo();
    objVcResourceAllocationInfo.reservation = intMemoryGB;

    let objVcVirtualMachineConfigSpec: VcVirtualMachineConfigSpec = new VcVirtualMachineConfigSpec();
    objVcVirtualMachineConfigSpec.memoryAllocation = objVcResourceAllocationInfo;
    objVcVirtualMachineConfigSpec.deviceChange = arrVcVirtualDeviceConfigSpec;
    objVcVirtualMachineConfigSpec.memoryReservationLockedToMax = true;

    let blnReturn: boolean = this.Reconfigure(objVcVirtualMachine, objVcVirtualMachineConfigSpec);

    return blnReturn;
}
TypeScript

Discover more from Cloud Build Tools

Subscribe to get the latest posts sent to your email.

You may also like