import java.util.Arrays;
import java.util.concurrent.ForkJoinPool;
import java.util.concurrent.ThreadLocalRandom;

public class JI9041930 {

	public static void main(String[] args) {
		System.out.println("parallelism property = " + 
				System.getProperty("java.util.concurrent.ForkJoinPool.common.parallelism")); 
		ForkJoinPool pool = ForkJoinPool.commonPool(); 
		System.out.println("pool.getCommonPoolParallelism() = " + 
				pool.getCommonPoolParallelism()); 

		// generate int[] of random numbers 
		int[] numbers = ThreadLocalRandom.current().ints(10_000_000) 
				.parallel().toArray(); 

		for (int i = 0; i < 10; i++) { 
			long sequentialTime = System.currentTimeMillis(); 
			Arrays.sort(numbers.clone()); 
			sequentialTime = System.currentTimeMillis() - sequentialTime; 
			System.out.println("sequentialTime = " + sequentialTime); 

			long parallelTime = System.currentTimeMillis(); 
			Arrays.parallelSort(numbers.clone()); 
			parallelTime = System.currentTimeMillis() - parallelTime; 

			System.out.println("parallelTime = " + parallelTime); 

		}

	}
}
