if (dhe==null)
return null;
- /****** Add Manual Prefetch *****/
- //dhe.array.next(5).key
- Object obj1 = dhe.array;
- short[] offsets1 = new short[4];
- offsets1[0] = getoffset {DHashEntry, next};
- offsets1[1] = (short) 5;
- offsets1[2] = getoffset {DHashEntry, key};
- offsets1[3] = (short) 0;
- System.rangePrefetch(obj1, offsets1);
- /********************************/
-
DHashEntry ptr=dhe.array;
while(ptr!=null) {
offsets[0] = getoffset{Array, array};
offsets[1] = (short) 0;
offsets[2] = (short) 0;
- offsets[3] = (short) 100;
+ offsets[3] = (short) 4000;
+ System.rangePrefetch(this, offsets);
+ offsets[2] = (short) 4001;
+ offsets[3] = (short) 4000;
+ System.rangePrefetch(this, offsets);
+ offsets[2] = (short) 8002;
+ offsets[3] = (short) 1997;
System.rangePrefetch(this, offsets);
atomic {
int xlength=array.length;
public static void main(String [] argv) {
Chase c;
- int numTraverse = 10000;
+ int numTraverse = 40000;
atomic {
Foo fold=global new Foo();
public void run() {
short[] offsets = new short[4];
+ short[] offsets1 = new short[2];
+
offsets[0] = getoffset{Chase, base};
offsets[1] = (short) 0;
offsets[2] = getoffset{Foo, next};
- offsets[3] = (short) 127;
+ offsets[3] = (short) 3000;
System.rangePrefetch(this, offsets);
atomic {
Foo b=base;
- int i = 0;
+ int i = 50;
while(b!=null) {
b=b.next;
i++;
- base = base.next;
- if((i&127) == 0) {
- short[] offsets1 = new short[2];
+ if((i&3000) == 0) {
+ i=50;
offsets1[0] = getoffset{Foo, next};
- offsets1[1] = (short) 127;
- System.rangePrefetch(base, offsets1);
+ offsets1[1] = (short) 3000;
+ System.rangePrefetch(b, offsets1);
}
}
}
Em3d:Em3d/dsm:-T 1 -N 4000 -d 130 -p -i 6:-T 2 -N 4000 -d 130 -p -i 6:-T 3 -N 4000 -d 130 -p -i 6:-T 4 -N 4000 -d 130 -p -i 6:-T 5 -N 4000 -d 130 -p -i 6:-T 6 -N 4000 -d 130 -p -i 6:-T 7 -N 4000 -d 130 -p -i 6:-T 8 -N 4000 -d 130 -p -i 6:em3dver40001306
Em3d:Em3d/dsm:-T 1 -N 6000 -d 200 -p -i 10:-T 2 -N 6000 -d 200 -p -i 10:-T 3 -N 6000 -d 200 -p -i 10:-T 4 -N 6000 -d 200 -p -i 10:-T 5 -N 6000 -d 200 -p -i 10:-T 6 -N 6000 -d 200 -p -i 10:-T 7 -N 6000 -d 200 -p -i 10:-T 8 -N 6000 -d 200 -p -i 10:em3dver600020010
Em3d:Em3d/dsm:-T 1 -N 10000 -d 1000 -i 15:-T 2 -N 10000 -d 1000 -i 15:-T 3 -N 10000 -d 1000 -i 15:-T 4 -N 10000 -d 1000 -i 15:-T 5 -N 10000 -d 1000 -i 15:-T 6 -N 10000 -d 1000 -i 15:-T 7 -N 10000 -d 1000 -i 15:-T 8 -N 10000 -d 1000 -i 15:em3dver10000100015
-Chase:Chase:::::chase
-Array:Array:::::array
+Chase:Chase:::::::::chase
+Array:Array:::::::::array
fft2d:2DFFT/dsm:1 1600:2 1600:3 1600:4 1600:5 1600:6 1600:7 1600:8 1600:1600fft2d
fft2d:2DFFT/dsm:1 1152:2 1152:3 1152:4 1152:5 1152:6 1152:7 1152:8 1152:1152fft2d
fft2d:2DFFT/dsm:1 3200:2 3200:3 3200:4 3200:5 3200:6 3200:7 3200:8 3200:3200fft2d