「VMware Fusion 12 player での仮想マシンのプロセッサ数について」を参照して気付きました。
プロセッサ数4の場合の .vmx ファイルには、cpuid.coresPerSocket の記述がありませんでした。
プロセッサ数6の場合は、cpuid.coresPerSocket = "3" の記述があります。
試しにプロセッサ数4の場合に、cpuid.coresPerSocket = "2" を追加したところ、正常に2スロットで4つのプロセッサを認識しました。
なお、追加する前でも、デバイスマネージャーでは4つのプロセッサを認識していましたが、タスクマネージャでは2ソケット2仮想プロセッサとなっていました。cpuid.coresPerSocket がない場合は、1ソケット1仮想プロセッサ?
元々は Windows 10 64bit で仮想マシンを作成したのだから、OS の制限(Home なら1ソケット)に合わせて cpuid.coresPerSocket を自動で記述すべきと思います。今回、6プロセッサを試したのがたまたま Pro だったから良かったものの、Home だったら3つしか認識されなかったのでは?
アップグレードインストールした Windows 11 Home の .vmx には、cpuid.coresPerSocket = "4" となっていました。
cpuid.coresPerSocket の値に問題があるのは、16.2.0 build-18760230 のバグと思います。
誤記修正
↑で、「プロセッサ数」と書いていますが、正しくは、「プロセッサ コアの数」でした m(_._)m 。