1
2 void broadcastShared(int window, Blackhole bh) {
3 $type$[] as = fa.apply(size);
4 $type$[] rs = fr.apply(size);
5
6 for (int ic = 0; ic < INVOC_COUNT; ic++) {
7 for (int i = 0; i < as.length; i += window) {
8 int idx = i;
9 for (int j = 0; j < window; j++) {
10 rs[j] = as[idx];
11 }
12 }
13 }
14
15 bh.consume(rs);
16 }
17
18 @Benchmark
19 public void broadcast064(Blackhole bh) {
20 int window = 64 / $Wideboxtype$.SIZE;
21 broadcastShared(window, bh);
22 }
23
24 @Benchmark
25 public void broadcast128(Blackhole bh) {
26 int window = 128 / $Wideboxtype$.SIZE;
27 broadcastShared(window, bh);
28 }
29
30 @Benchmark
31 public void broadcast256(Blackhole bh) {
32 int window = 256 / $Wideboxtype$.SIZE;
33 broadcastShared(window, bh);
34 }
35
36 @Benchmark
37 public void broadcast512(Blackhole bh) {
38 int window = 512 / $Wideboxtype$.SIZE;
39 broadcastShared(window, bh);
40 }