As many cores per socket as necessary to replicate the underlying HW the vCPUs are scheduled on, that usually means as many cores (or threads) as are in a socket / NUMA node (depending on VM / HW size).
Longer explanation here: https://communities.vmware.com/t5/ESXi-Discussions/cores-vs-sockets-disks-vs-controllers/m-p/2829364...
Yes, same for Linux guests (even more so since Linux is using a relationship scheduler that takes that information into account).