1 public class ReadArrayObj extends Thread {
6 public ReadArrayObj() {
9 public ReadArrayObj(int id, int nthreads, ReadArrayObj[] ra) {
11 this.nthreads = nthreads;
18 barr = new Barrier("128.195.175.84");
19 //Create array objects locally
22 myra[tmpid] = global new ReadArrayObj();
23 myra[tmpid].val = tmpid*10+1;
26 Barrier.enterBarrier(barr);
28 //All machines reading data from array
30 for(int i=0; i<10000; i++) {
32 for(int j=0; j<nthreads; j++) {
39 public static void main(String[] args) {
43 nthreads = Integer.parseInt(args[0]);
46 int[] mid = new int[8];
47 mid[0] = (128<<24)|(195<<16)|(175<<8)|84;//dw-10
48 mid[1] = (128<<24)|(195<<16)|(175<<8)|85;//dw-11
49 mid[2] = (128<<24)|(195<<16)|(175<<8)|86;//dw-12
50 mid[3] = (128<<24)|(195<<16)|(175<<8)|87;//dw-13
51 mid[4] = (128<<24)|(195<<16)|(175<<8)|88;//dw-14
52 mid[5] = (128<<24)|(195<<16)|(175<<8)|89;//dw-15
53 mid[6] = (128<<24)|(195<<16)|(175<<8)|90;//dw-16
54 mid[7] = (128<<24)|(195<<16)|(175<<8)|91;//dw-17
58 a=global new ReadArrayObj[nthreads]; //create object a
59 mybarr = global new BarrierServer(nthreads);
64 ReadArrayObjWrap[] ra = new ReadArrayObjWrap[nthreads];
67 for(int i=0;i<nthreads; i++) {
68 ra[i] = new ReadArrayObjWrap(global new ReadArrayObj(i, nthreads, a));
72 boolean waitfordone=true;
74 atomic { //Master aborts are from here
80 for(int i =0; i<nthreads; i++)
81 ra[i].ra.start(mid[i]);
83 for(int i =0; i<nthreads; i++)
86 System.printString("Finished\n");