lab1 | lab2 | lab3 | lab4 | lab5 | lab6 | lab7 | lab8 | lab9 | lab10 | lab11 | lab12 | |
---|---|---|---|---|---|---|---|---|---|---|---|---|
arith/mixed | 100 |
100 |
98 |
96 |
103 |
101 |
105 |
100 |
89 |
90 |
90 |
96 |
arith/trig | 100 |
101 |
100 |
100 |
108 |
110 |
110 |
108 |
96 |
97 |
96 |
100 |
array/copy | 100 |
100 |
100 |
100 |
100 |
101 |
100 |
100 |
89 |
89 |
89 |
90 |
array/foreach | 100 |
100 |
100 |
100 |
104 |
103 |
104 |
102 |
95 |
95 |
95 |
97 |
array/index | 100 |
100 |
100 |
100 |
105 |
103 |
100 |
103 |
85 |
85 |
85 |
90 |
array/pop | 100 |
100 |
100 |
98 |
100 |
102 |
100 |
99 |
88 |
89 |
89 |
89 |
array/shift | 100 |
100 |
100 |
99 |
100 |
100 |
100 |
100 |
91 |
92 |
92 |
89 |
array/sort | 100 |
100 |
100 |
100 |
100 |
100 |
100 |
100 |
80 |
80 |
81 |
80 |
array/sort-num | 100 |
100 |
100 |
100 |
100 |
100 |
100 |
100 |
88 |
88 |
90 |
89 |
call/0arg | 100 |
117 |
113 |
115 |
140 |
139 |
119 |
124 |
104 |
100 |
100 |
100 |
call/1arg | 100 |
113 |
104 |
100 |
110 |
118 |
116 |
114 |
100 |
100 |
100 |
100 |
call/2arg | 100 |
102 |
102 |
100 |
113 |
116 |
106 |
113 |
97 |
99 |
96 |
94 |
call/9arg | 100 |
101 |
100 |
100 |
106 |
109 |
106 |
108 |
100 |
100 |
100 |
99 |
call/empty | 100 |
103 |
108 |
101 |
123 |
123 |
123 |
108 |
100 |
100 |
100 |
97 |
call/fib | 100 |
103 |
106 |
100 |
112 |
117 |
114 |
116 |
101 |
102 |
103 |
100 |
call/method | 100 |
100 |
100 |
100 |
104 |
112 |
104 |
106 |
100 |
100 |
100 |
100 |
call/wantarray | 100 |
100 |
103 |
100 |
106 |
118 |
108 |
108 |
94 |
93 |
92 |
93 |
hash/copy | 100 |
100 |
100 |
100 |
101 |
100 |
100 |
100 |
94 |
96 |
92 |
94 |
hash/each | 100 |
108 |
96 |
96 |
101 |
109 |
106 |
100 |
91 |
91 |
92 |
83 |
hash/foreach | 100 |
100 |
100 |
100 |
102 |
100 |
100 |
102 |
95 |
95 |
94 |
89 |
hash/foreach-sort | 100 |
100 |
99 |
100 |
101 |
101 |
100 |
101 |
76 |
76 |
77 |
78 |
hash/get | 100 |
100 |
100 |
100 |
106 |
108 |
105 |
100 |
81 |
81 |
82 |
92 |
hash/set | 100 |
100 |
88 |
90 |
106 |
105 |
102 |
100 |
79 |
80 |
79 |
87 |
loop/for-c | 100 |
128 |
122 |
120 |
128 |
128 |
146 |
117 |
111 |
106 |
108 |
109 |
loop/for-range | 100 |
118 |
117 |
117 |
125 |
123 |
126 |
103 |
100 |
100 |
100 |
100 |
loop/for-range-const | 100 |
110 |
106 |
110 |
116 |
116 |
116 |
102 |
96 |
96 |
96 |
96 |
loop/getline | 100 |
100 |
100 |
100 |
104 |
100 |
100 |
107 |
91 |
91 |
91 |
95 |
loop/while | 100 |
139 |
124 |
127 |
142 |
148 |
144 |
129 |
109 |
111 |
111 |
109 |
loop/while-my | 100 |
100 |
100 |
100 |
103 |
104 |
107 |
103 |
89 |
89 |
89 |
87 |
re/const | 100 |
100 |
100 |
100 |
100 |
100 |
100 |
101 |
90 |
90 |
89 |
95 |
re/w | 100 |
100 |
100 |
100 |
100 |
100 |
100 |
100 |
97 |
98 |
99 |
97 |
startup/fewmod | 100 |
100 |
100 |
100 |
100 |
100 |
100 |
102 |
100 |
100 |
100 |
100 |
startup/lotsofsub | 100 |
100 |
100 |
100 |
100 |
100 |
100 |
102 |
100 |
100 |
100 |
100 |
startup/noprog | 100 |
100 |
100 |
100 |
100 |
100 |
100 |
100 |
100 |
100 |
100 |
100 |
string/base64 | 100 |
100 |
100 |
100 |
109 |
117 |
115 |
109 |
100 |
100 |
100 |
100 |
string/htmlparser | 100 |
104 |
101 |
100 |
106 |
112 |
110 |
112 |
99 |
100 |
99 |
99 |
string/index-const | 100 |
100 |
95 |
99 |
100 |
100 |
100 |
94 |
91 |
88 |
87 |
92 |
string/index-var | 100 |
104 |
103 |
103 |
95 |
97 |
95 |
100 |
92 |
92 |
92 |
92 |
string/ipol | 100 |
100 |
98 |
100 |
100 |
100 |
100 |
100 |
96 |
95 |
95 |
94 |
string/tr | 100 |
100 |
100 |
100 |
102 |
107 |
111 |
109 |
94 |
94 |
94 |
94 |
AVERAGE | 100 | 104 | 102 | 102 | 107 | 109 | 107 | 105 | 94 | 94 | 94 | 95 |
Test ran on a freebsd machine that reports its uname as "FreeBSD 8.2-RELEASE #0 r218742M: Mon Feb 21 11:49:51 CET 2011 amd64".
Lab | Perl version | Compiler | Optimization |
---|---|---|---|
lab1 | 5.12.3 | 4.2.1 20070719 [FreeBSD] | -O2 -pipe -fno-strict-aliasing |
lab2 | 5.12.3 | 4.2.1 20070719 [FreeBSD] | -O2 -pipe -march=nocona -fno-strict-aliasing |
lab3 | 5.12.3 | 4.2.1 20070719 [FreeBSD] | -O2 -pipe -march=core2 -mno-ssse3 -fno-strict-aliasing |
lab4 | 5.12.3 | 4.2.1 20070719 [FreeBSD] | -O2 -pipe -mssse3 -march=core2 -fno-strict-aliasing |
lab5 | 5.12.3 | 4.5.3 20110106 (prerelease) | -O2 -pipe -Wl,-rpath=/usr/local/lib/gcc45 -fno-strict-aliasing |
lab6 | 5.12.3 | 4.5.3 20110106 (prerelease) | -O2 -pipe -march=nocona -Wl,-rpath=/usr/local/lib/gcc45 -fno-strict-aliasing |
lab7 | 5.12.3 | 4.5.3 20110106 (prerelease) | -O2 -pipe -march=core2 -Wl,-rpath=/usr/local/lib/gcc45 -fno-strict-aliasing |
lab8 | 5.12.3 | 4.6.0 20110226 (experimental) | -O2 -pipe -march=corei7 -Wl,-rpath=/usr/local/lib/gcc46 -fno-strict-aliasing |
lab9 | 5.12.3 | 4.2.1 Compatible Clang Compiler | -O2 -pipe -fno-strict-aliasing |
lab10 | 5.12.3 | 4.2.1 Compatible Clang Compiler | -O2 -pipe -march=nocona -fno-strict-aliasing |
lab11 | 5.12.3 | 4.2.1 Compatible Clang Compiler | -O2 -pipe -march=core2 -fno-strict-aliasing |
lab12 | 5.12.3 | 4.2.1 Compatible Clang Compiler | -O2 -pipe -march=corei7 -fno-strict-aliasing |