There is no confusion really.
A core is a processor, on a die. You can have a processor, which is a single core on a single package.
You can also have a dual-core processor which is 1 package with multiple CPUs. The same goes for any multicore. You could have a 1000 core processor, its still one package with 1000 processors.
Multiprocessor is multiple sockets, and physical CPU packages. You can have 2 single core processors, or more. You can also have multiple multi-core processors assuming the CPU supports it. 4 quad core processors is basically the same as a having 16 processors on separate packages or 1 16 core package as far as power and performance goes. It is just 4 packages and 4 cores for each package.
Threads are how many separate processes can run at a time. To put it simply, most processors can handle 1 thread at a time, Hyperthreading can do 2 at a time. HTT (Hyperthreading) means each core (Doesn't matter if its 2 on 1, or 1 by 2) can do 2 threads. So a quad core HTT processor can in theory do 8 threads. This is not always correct, and some software handles going through HTT very poorly.
As for your process, it is hard to say. If you had 10 cores with Hyper threading, and the application can only run on a single thread, then you could likely have 20 separate instances assuming:
You have enough RAM
You disk drives can keep up with the IOs
Nothing else interrupts or takes over
If the process cannot fill the entire CPU on its own (Say it caps at 50% usage) you might be able to add some extra threads / jobs to the pool too.