Does anyone know how Unity standalone builds are supposed to be affected by enabling the High Precision Event Timer? Does Unity utilize this timer for greater precision in some manner verses legacy timers? Is this supposed to have any performance impact?
Here’s my issue, when trying to figure out why my idle server instances were maxing their cores on my development server VM, I found that disabling HPET on the VM dropped CPU usage of these idle headless server instances significantly. Servers that run world simulation dropped from 100% to 70%, and servers that run networkserversimple and server to server clients dropped from 100% to 30%. As I understand it I shouldn’t be seeing this drastic of a change just by changing a VM’s timer setting.
The guest VM is Ubuntu 16.04 running on Virtual Box, 6 cores and 20GB of RAM allocated to the VM. Host is an older Ubuntu server release with an 8 core AMD CPU from about 4 years ago (so not great, and probably why my new i7 dev boxes get 5% usage compared to 30% on the older AMD server) and 32 GB of RAM. So with HPET enabled on the VM and 5 headless server instances started I get all 5 using 100% CPU, maxing their cores. I disable HPET, start the VM, launch the server instances with no other changes, and get the 2 simulation servers at 70% and the other 3 at 30%. Its a pretty surprising usage drop. Target framerate is set to 60 on all server instances. Unity 5.6.0f3 builds.