Index: benchmark/readyQ/locality.go
===================================================================
--- benchmark/readyQ/locality.go	(revision 2dd0689c02bb6821208983de34ad547817d60011)
+++ benchmark/readyQ/locality.go	(revision fd8453826f110225473b7e4733526a9736256037)
@@ -61,8 +61,15 @@
 }
 
-
+func __xorshift64( state * uint64 ) (uint64) {
+	x := *state
+	x ^= x << 13
+	x ^= x >> 7
+	x ^= x << 17
+	*state = x
+	return x
+}
 
 func local(result chan uint64, start chan struct{}, size uint64, cnt uint64, channels [] Spot, share bool) {
-    	lrand := rand.New(rand.NewSource(rand.Int63()))
+    	state := rand.Uint64()
 	var data [] uint64
 	data = make([]uint64, size)
@@ -78,8 +85,8 @@
 	for true {
 		for i := uint64(0); i < cnt; i++ {
-			data[lrand.Uint64() % size] += 1
+			data[__xorshift64(&state) % size] += 1
 		}
 
-		i := lrand.Int() % len(channels)
+		i := __xorshift64(&state) % uint64(len(channels))
 		data = channels[i].put(sem, data, share)
 		count += 1
