I have a question on the procedure of changing EVC mode on the existing cluster.
If EVC setting of a cluster is changed (Disabled -> Enabled), ESXi hosts in that cluster should be rebooted? I suppose that ESXi host would read EVC setting during its boot process, so rebooting may be needed after changing of EVC setting.
EVC masks CPU instruction sets from the VMs themselves. You don't need to worry about rebooting the hosts, but the VMs could potentially be a concern. If you try to set the EVC level to one where a certain instruction set is being used by a/multiple VMs, it will not allow you to enable it (since the set is already exposed to the vCPUs of the VMs, and possibly in use). At that point, you could shut down the "offending" VMs, enable EVC, then power up the "offending" VMs again. There's some " unofficial workarounds" where you put the "offending" VMs on one host, disconnect that host from vCenter, enable EVC, and re-connect the host.
With EVC, you can always go from an older CPU mode to a newer one without issue, because you're enabling instruction sets that are not being used yet. However, backpeddling and going from a newer EVC mode to an older will require some additional steps like ones mentioned above. EVC should be set to the lowest available level in the cluster. If you have 3 Skylake Intels and one Haswell generation, EVC needs to be set to Haswell until you decommission that host.
Hope this helps.