1 vCPU maps to one physical core on the physical end
So, if we either give 1 socket with 2 vCPU or 2 socket with 1 vCPU, the virtual machine is gonna see 2 virtual cores and the process scheduling is done on the respective two physical cores. This really doesn't make any performance difference.
This is considered where in some cases licensing for application or Guest OS was done for sockets rather than cores.
What I like to follow is always replicate the underlying hardware. If I have 4 sockets and 4 cores each (physical) and I want to assign 4 vCPUs then, I rather make 4 virtual socket with 1 vCPU each.
Suhas