1. A non-transitory computer readable medium storing instructions that enable a computer system to: assign two threads to processors based on bandwidth utilization of the two threads in combination; determine whether the bandwidth utilization of the two combined threads exceeds a threshold value; use a cache simulator to construct a coupling degree matrix; and use a software library to develop said coupling degree matrix.