Going up to 254 vCPUs is straightforward enough, and with a recent Helios change we're free to bump Propolis' MAXCPU up to 254, but going beyond that will involve some work.
The obvious and somewhat daunting solution would be for Propolis to grow an IOMMU which can be used to let guests remap interrupts towards high-number cores like you'd do on real hardware.
https://david.woodhou.se/ExtDestId.pdf describes an alternative that might be workable: Hyper-V, KVM, FreeBSD byhve, and Xen all support a hypervisor feature to expand APIC IDs as used in MSI, but guest OS support is more mixed. Reportedly Linux supports this, Windows would be in a weird state either way, and the FreeBSD issue linked there is still open. I assume it would be mildly better for everyone to help get OSes in a good state with this than to build an IOMMU for Propolis, when the need comes..
Going up to 254 vCPUs is straightforward enough, and with a recent Helios change we're free to bump Propolis'
MAXCPUup to 254, but going beyond that will involve some work.The obvious and somewhat daunting solution would be for Propolis to grow an IOMMU which can be used to let guests remap interrupts towards high-number cores like you'd do on real hardware.
https://david.woodhou.se/ExtDestId.pdf describes an alternative that might be workable: Hyper-V, KVM, FreeBSD byhve, and Xen all support a hypervisor feature to expand APIC IDs as used in MSI, but guest OS support is more mixed. Reportedly Linux supports this, Windows would be in a weird state either way, and the FreeBSD issue linked there is still open. I assume it would be mildly better for everyone to help get OSes in a good state with this than to build an IOMMU for Propolis, when the need comes..