Efficient Parallelization of Simulated Annealing Using Multiple Markov Chains: An Application to Graph Partitioning