I don’t think you need to tie the cpu to the application, only that a license needs to be purchased for each cpu in the server. Such is the case with MS SQL licensing.
With most Microsoft CPU licensing you have to purchase as many licenses as there are in the server. No matter if the software is using those CPUs or not. If you don’t want to license the CPUs, then you have to remove them from the server. The only other option would be to install a hypervisor and run that software in a virtual machine where the virtual machine only has a single CPU assigned to it. But this has it’s own licensing issues to deal with as each virtual machine would need a Windows license (assuming that you install a Windows OS in the VM).