Marc Huppert

Tuning DataPlatform Virtual Edition (VE)

After the Configuration, I wanted to get the best performance out of the system.

Here are the first modifications I did to the vmx file:

ethernet0.virtualDev = „vmxnet3"
     I switched from E1000 to VMXNET3

scsi1.virtualDev = „pvscsi“ 
scsi1.present = „true"
        Second SCSI Controller added with VMware Paravirtual

scsi2.virtualDev = „pvscsi“
scsi2.present = „true“
        Third SCSI Controller added with VMware Paravirtual

•scsi1:0.virtualSSD = „1" 
        I marked the MetaData vmdk as a SSD

I tuned the pvscsi ring pages within the operating system. Please contact Cohesity Support for this modification:

Create vmw_pvsci.conf within /etc/modprobe

With these entries: options vmw_pvscsi cmd_per_lun=254 ring_pages=32

Sudo mkinitrd /boot/initramfs-3.10.0-327.22.2.e17.cohesity.x86_64.img 3.10.0-327.22.2.e17.cohesity.x86_64 —force

I did also several other modifications to the Virtual Edition VM.....


SplitRx mode uses multiple physical CPUs to process network packets received in a single network queue.
Enable SplitRx mode in situations where you have multiple virtual machines on an ESXi host receiving multicast traffic from the same source.
SplitRx mode is supported only for VMXNET3 network adapters.
SplitRx mode is enabled when ESXi detects that a single network queue on a physical NIC has the following conditions:
The NIC is heavily used.
The NIC is getting more than 10,000 broadcast or multicast packets per second.

It is a VM based setting within the vmx file:

ethernetX.emuRxMode = "1"


In vSphere 6.5, a new parameter is used to configure Split Tx mode.
Split Tx mode allows two separate threads to be created for a single flow to parallelize vNIC and physical NIC processing:
vNIC to virtual switch processing
Virtual switch to physical NIC processing 

Split Tx mode must be enabled per host with the host command: 

vsish –e set /net/pNics/vmnicX/sched/txMode 1.

Pinned Memory

The VMXNET3 driver is optimized to remove unnecessary metadata from smaller packets.
Optimized usage of pinned (reserved) memory greatly increases the VM’s ability to move packets through the OS more efficiently. 

Multiple Threads per vNIC

For VMs that require a high transmit rate and multiple simultaneous TCP streams, you can enable multiple CPU threads per vNIC.
Up to eight separate threads can be created per vNIC.

The configuration can be set at either the per-VM level or the per-host level.

The Performance of the Cohesity Virtual Edition is really awesome. You can check it directly at the main GUI.

Storage Information are also very detailed

Want to learn how to configure Protection Jobs?