// matmulb_thread4.java for compare with matmulb_thread4 import java.lang.management.ManagementFactory; import java.lang.management.ThreadMXBean; public class matmulb_thread4 { int nthread = 4; double cpu_start[] = new double[nthread]; // for each thread double cpu_end[] = new double[nthread]; int DIM = 4096; double a[][] = new double[DIM][DIM]; double b[][] = new double[DIM][DIM]; double c[][] = new double[DIM][DIM]; Thread t[] = new Thread[nthread]; ThreadMXBean tb = ManagementFactory.getThreadMXBean(); public matmulb_thread4() { double twall = 0.0, tcpu = 0.0, total_tcpu; System.out.println("matmulb_thread4.java running"); System.out.println("DIM="+DIM+", nthread="+nthread); // initialize arrays (not timed) for(int i=0; i