Multiprogramming at each processor
Completion time and other application-related performance metrics are much more important than processor utilization in multi-processor environment.
For example, a multi-threaded application may require all its threads be assigned to different processors for good performance.
Static or dynamic allocation of processes.