So from what I understand the root cause of my initial problem was having the TrueNAS VM installed on a 120GB while assigning 128GB resulting in no space for the swap. I would still like to assign 128GB for ZFS cache although it currently only utilizes 50%. I will install 196GB of memory (64GB ESXi/128GB TrueNAS). What size vdisk should I assign to the TrueNAS VM. Looks like I will be using 2 800GB 2.5" SSDs mirrored and need room for vCenter, PFsense and a few more maybe. Promox will be my main VM server on the other P700.
Question before you go too far ahead:
If you have ESXi as the hypervisor in "P700 #1" and ProxMox/KVM as the hypervisor on "P700 #2" - is there a reason you've chosen SCALE for a nested storage solution? If you plan to use the "Apps" library in SCALE or Docker, then certainly that's justification - but if you just plan to serve storage back to your ESXi/ProxMox solution over NFS/iSCSI then CORE is more mature (and will use more than half of the RAM for ARC by default)
But either way:
Yes, the problem is that ESXi will try to create a .vswp file for virtual memory swap equivalent to the size of the VM's RAM. You can prevent this by opting to reserve all of the system memory for it (128GB) but this is automatically done when you pass a physical hardware device (like your HBA) into a VM. That's what tipped me off to the fact that you were probably doing virtual disks, local RDM, or similar.
So you'll use the 2x800G SSD's as a mirrored datastore local to ESXi - on there, you can create a 16/32G virtual disk for TrueNAS to install to. Then you set up hardware passthrough for the HBA, and you will see the 4x 8TB disks connected there in TrueNAS - although RAIDZ isn't recommended for block/VMFS storage, mirrors are preferred.