| 1 |
28 |
unneback |
|
| 2 |
|
|
|
| 3 |
|
|
|
| 4 |
|
|
|
| 5 |
|
|
|
| 6 |
|
|
|
| 7 |
|
|
|
| 8 |
|
|
|
| 9 |
|
|
|
| 10 |
|
|
|
| 11 |
|
|
|
| 12 |
|
|
|
| 13 |
|
|
|
| 14 |
|
|
|
| 15 |
|
|
|
| 16 |
|
|
|
| 17 |
|
|
|
| 18 |
|
|
|
| 19 |
|
|
|
| 20 |
|
|
|
| 21 |
|
|
|
| 22 |
|
|
|
| 23 |
|
|
|
| 24 |
|
|
|
| 25 |
|
|
|
| 26 |
|
|
|
| 27 |
|
|
|
| 28 |
|
|
|
| 29 |
|
|
|
| 30 |
|
|
|
| 31 |
|
|
|
| 32 |
|
|
|
| 33 |
|
|
Real-time characterization
|
| 34 |
|
|
|
| 35 |
|
|
For a discussion of real-time performance measurement for eCos, see the eCos
|
| 36 |
|
|
Users' Guide.
|
| 37 |
|
|
|
| 38 |
|
|
|
| 39 |
|
|
|
| 40 |
|
|
|
| 41 |
|
|
As with the target setup descriptions in the previous appendix, this
|
| 42 |
|
|
information will eventually be merged into per-target documents.
|
| 43 |
|
|
|
| 44 |
|
|
|
| 45 |
|
|
|
| 46 |
|
|
Sample numbers:
|
| 47 |
|
|
|
| 48 |
|
|
|
| 49 |
|
|
|
| 50 |
|
|
|
| 51 |
|
|
|
| 52 |
|
|
Board: ARM AEB-1 Revision B Evaluation Board
|
| 53 |
|
|
|
| 54 |
|
|
|
| 55 |
|
|
Board: ARM AEB-1 Revision B Evaluation Board
|
| 56 |
|
|
|
| 57 |
|
|
CPU : Sharp LH77790A 24MHz
|
| 58 |
|
|
|
| 59 |
|
|
|
| 60 |
|
|
|
| 61 |
|
|
Startup, main stack : stack used 404 size 2400
|
| 62 |
|
|
Startup : Interrupt stack used 128 size 2048
|
| 63 |
|
|
Startup : Idlethread stack used 80 size 2048
|
| 64 |
|
|
|
| 65 |
|
|
eCos Kernel Timings
|
| 66 |
|
|
Notes: all times are in microseconds (.000001) unless otherwise stated
|
| 67 |
|
|
|
| 68 |
|
|
Reading the hardware clock takes 13 'ticks' overhead
|
| 69 |
|
|
... this value will be factored out of all other measurements
|
| 70 |
|
|
Clock interrupt took 193.49 microseconds (290 raw clock ticks)
|
| 71 |
|
|
|
| 72 |
|
|
Testing parameters:
|
| 73 |
|
|
Clock samples: 32
|
| 74 |
|
|
Threads: 7
|
| 75 |
|
|
Thread switches: 128
|
| 76 |
|
|
Mutexes: 32
|
| 77 |
|
|
Mailboxes: 32
|
| 78 |
|
|
Semaphores: 32
|
| 79 |
|
|
Scheduler operations: 128
|
| 80 |
|
|
Counters: 32
|
| 81 |
|
|
Alarms: 32
|
| 82 |
|
|
|
| 83 |
|
|
|
| 84 |
|
|
Confidence
|
| 85 |
|
|
Ave Min Max Var Ave Min Function
|
| 86 |
|
|
====== ====== ====== ====== ========== ========
|
| 87 |
|
|
110.19 104.67 116.00 3.26 42% 28% Create thread
|
| 88 |
|
|
34.00 34.00 34.00 0.00 100% 100% Yield thread [all suspended]
|
| 89 |
|
|
24.67 24.67 24.67 0.00 100% 100% Suspend [suspended] thread
|
| 90 |
|
|
25.05 24.67 25.33 0.33 57% 42% Resume thread
|
| 91 |
|
|
37.14 36.67 37.33 0.27 71% 28% Set priority
|
| 92 |
|
|
3.81 3.33 4.00 0.27 71% 28% Get priority
|
| 93 |
|
|
80.00 80.00 80.00 0.00 100% 100% Kill [suspended] thread
|
| 94 |
|
|
33.90 33.33 34.00 0.16 85% 14% Yield [no other] thread
|
| 95 |
|
|
45.90 44.00 46.67 0.54 57% 14% Resume [suspended low prio] thread
|
| 96 |
|
|
24.57 24.00 24.67 0.16 85% 14% Resume [runnable low prio] thread
|
| 97 |
|
|
42.29 36.67 43.33 1.61 85% 14% Suspend [runnable] thread
|
| 98 |
|
|
33.90 33.33 34.00 0.16 85% 14% Yield [only low prio] thread
|
| 99 |
|
|
24.67 24.67 24.67 0.00 100% 100% Suspend [runnable->not runnable]
|
| 100 |
|
|
80.00 80.00 80.00 0.00 100% 100% Kill [runnable] thread
|
| 101 |
|
|
43.33 43.33 43.33 0.00 100% 100% Destroy [dead] thread
|
| 102 |
|
|
106.29 101.33 107.33 1.41 85% 14% Destroy [runnable] thread
|
| 103 |
|
|
144.95 141.33 166.00 6.01 85% 85% Resume [high priority] thread
|
| 104 |
|
|
78.31 76.67 254.67 2.75 99% 99% Thread switch
|
| 105 |
|
|
|
| 106 |
|
|
4.00 4.00 4.00 0.00 100% 100% Scheduler lock
|
| 107 |
|
|
16.37 16.00 16.67 0.33 56% 43% Scheduler unlock [0 threads]
|
| 108 |
|
|
16.37 16.00 16.67 0.33 56% 43% Scheduler unlock [1 suspended]
|
| 109 |
|
|
16.37 16.00 16.67 0.33 56% 43% Scheduler unlock [many suspended]
|
| 110 |
|
|
16.37 16.00 16.67 0.33 56% 43% Scheduler unlock [many low prio]
|
| 111 |
|
|
|
| 112 |
|
|
10.67 10.67 10.67 0.00 100% 100% Init mutex
|
| 113 |
|
|
28.67 28.67 28.67 0.00 100% 100% Lock [unlocked] mutex
|
| 114 |
|
|
30.44 30.00 31.33 0.33 59% 37% Unlock [locked] mutex
|
| 115 |
|
|
25.42 25.33 26.00 0.15 87% 87% Trylock [unlocked] mutex
|
| 116 |
|
|
22.50 22.00 22.67 0.25 75% 25% Trylock [locked] mutex
|
| 117 |
|
|
5.75 5.33 6.00 0.31 62% 37% Destroy mutex
|
| 118 |
|
|
185.33 185.33 185.33 0.00 100% 100% Unlock/Lock mutex
|
| 119 |
|
|
|
| 120 |
|
|
20.17 20.00 20.67 0.25 75% 75% Create mbox
|
| 121 |
|
|
2.92 2.67 3.33 0.31 62% 62% Peek [empty] mbox
|
| 122 |
|
|
32.42 32.00 32.67 0.31 62% 37% Put [first] mbox
|
| 123 |
|
|
3.00 2.67 3.33 0.33 100% 50% Peek [1 msg] mbox
|
| 124 |
|
|
32.50 32.00 32.67 0.25 75% 25% Put [second] mbox
|
| 125 |
|
|
2.92 2.67 3.33 0.31 62% 62% Peek [2 msgs] mbox
|
| 126 |
|
|
32.83 32.67 33.33 0.25 75% 75% Get [first] mbox
|
| 127 |
|
|
32.67 32.67 32.67 0.00 100% 100% Get [second] mbox
|
| 128 |
|
|
31.33 31.33 31.33 0.00 100% 100% Tryput [first] mbox
|
| 129 |
|
|
27.58 27.33 28.00 0.31 62% 62% Peek item [non-empty] mbox
|
| 130 |
|
|
32.83 32.67 33.33 0.25 75% 75% Tryget [non-empty] mbox
|
| 131 |
|
|
26.50 26.00 26.67 0.25 75% 25% Peek item [empty] mbox
|
| 132 |
|
|
28.00 28.00 28.00 0.00 100% 100% Tryget [empty] mbox
|
| 133 |
|
|
3.25 2.67 3.33 0.15 87% 12% Waiting to get mbox
|
| 134 |
|
|
3.25 2.67 3.33 0.15 87% 12% Waiting to put mbox
|
| 135 |
|
|
30.83 30.67 31.33 0.25 75% 75% Delete mbox
|
| 136 |
|
|
101.08 100.67 101.33 0.31 62% 37% Put/Get mbox
|
| 137 |
|
|
|
| 138 |
|
|
11.17 10.67 11.33 0.25 75% 25% Init semaphore
|
| 139 |
|
|
24.17 24.00 24.67 0.25 75% 75% Post [0] semaphore
|
| 140 |
|
|
27.08 26.67 27.33 0.31 62% 37% Wait [1] semaphore
|
| 141 |
|
|
22.75 22.67 23.33 0.15 87% 87% Trywait [0] semaphore
|
| 142 |
|
|
22.21 22.00 22.67 0.29 68% 68% Trywait [1] semaphore
|
| 143 |
|
|
7.33 7.33 7.33 0.00 100% 100% Peek semaphore
|
| 144 |
|
|
5.92 5.33 6.00 0.15 87% 12% Destroy semaphore
|
| 145 |
|
|
110.04 110.00 110.67 0.08 93% 93% Post/Wait semaphore
|
| 146 |
|
|
|
| 147 |
|
|
9.54 9.33 10.00 0.29 68% 68% Create counter
|
| 148 |
|
|
3.92 3.33 4.00 0.15 87% 12% Get counter value
|
| 149 |
|
|
4.00 4.00 4.00 0.00 100% 100% Set counter value
|
| 150 |
|
|
30.92 30.67 31.33 0.31 62% 62% Tick counter
|
| 151 |
|
|
5.75 5.33 6.00 0.31 62% 37% Delete counter
|
| 152 |
|
|
|
| 153 |
|
|
13.83 13.33 14.00 0.25 75% 25% Create alarm
|
| 154 |
|
|
46.67 46.67 46.67 0.00 100% 100% Initialize alarm
|
| 155 |
|
|
3.67 3.33 4.00 0.33 100% 50% Disable alarm
|
| 156 |
|
|
45.67 45.33 46.00 0.33 100% 50% Enable alarm
|
| 157 |
|
|
8.33 8.00 8.67 0.33 100% 50% Delete alarm
|
| 158 |
|
|
36.33 36.00 36.67 0.33 100% 50% Tick counter [1 alarm]
|
| 159 |
|
|
214.67 214.67 214.67 0.00 100% 100% Tick counter [many alarms]
|
| 160 |
|
|
62.67 62.67 62.67 0.00 100% 100% Tick & fire counter [1 alarm]
|
| 161 |
|
|
1087.04 1075.33 1278.67 21.91 93% 93% Tick & fire counters [>1 together]
|
| 162 |
|
|
246.35 240.67 412.00 10.35 96% 96% Tick & fire counters [>1 separately]
|
| 163 |
|
|
168.01 167.33 237.33 1.08 99% 99% Alarm latency [0 threads]
|
| 164 |
|
|
187.36 168.00 234.67 3.60 86% 1% Alarm latency [2 threads]
|
| 165 |
|
|
187.37 167.33 235.33 3.59 85% 1% Alarm latency [many threads]
|
| 166 |
|
|
303.12 280.00 508.67 3.21 98% 0% Alarm -> thread resume latency
|
| 167 |
|
|
|
| 168 |
|
|
36.65 36.00 38.67 0.00 Clock/interrupt latency
|
| 169 |
|
|
|
| 170 |
|
|
65.79 52.00 152.67 0.00 Clock DSR latency
|
| 171 |
|
|
|
| 172 |
|
|
316 316 316 (main stack: 752) Thread stack used (1120 total)
|
| 173 |
|
|
All done, main stack : stack used 752 size 2400
|
| 174 |
|
|
All done : Interrupt stack used 280 size 2048
|
| 175 |
|
|
All done : Idlethread stack used 268 size 2048
|
| 176 |
|
|
|
| 177 |
|
|
Timing complete - 30390 ms total
|
| 178 |
|
|
|
| 179 |
|
|
PASS:<Basic timing OK>
|
| 180 |
|
|
EXIT:<done>
|
| 181 |
|
|
|
| 182 |
|
|
|
| 183 |
|
|
|
| 184 |
|
|
|
| 185 |
|
|
|
| 186 |
|
|
|
| 187 |
|
|
|
| 188 |
|
|
Board: Atmel AT91/EB40
|
| 189 |
|
|
|
| 190 |
|
|
Board: Atmel AT91/EB40
|
| 191 |
|
|
CPU : AT91R40807 (ARM7TDMI core), 32MHz
|
| 192 |
|
|
512KB RAM, 64K Flash
|
| 193 |
|
|
|
| 194 |
|
|
Startup, main stack : stack used 420 size 2400
|
| 195 |
|
|
Startup : Interrupt stack used 144 size 4096
|
| 196 |
|
|
Startup : Idlethread stack used 84 size 2048
|
| 197 |
|
|
|
| 198 |
|
|
eCos Kernel Timings
|
| 199 |
|
|
Notes: all times are in microseconds (.000001) unless otherwise stated
|
| 200 |
|
|
|
| 201 |
|
|
Reading the hardware clock takes 3 'ticks' overhead
|
| 202 |
|
|
... this value will be factored out of all other measurements
|
| 203 |
|
|
Clock interrupt took 127.53 microseconds (130 raw clock ticks)
|
| 204 |
|
|
|
| 205 |
|
|
Testing parameters:
|
| 206 |
|
|
Clock samples: 32
|
| 207 |
|
|
Threads: 25
|
| 208 |
|
|
Thread switches: 128
|
| 209 |
|
|
Mutexes: 32
|
| 210 |
|
|
Mailboxes: 32
|
| 211 |
|
|
Semaphores: 32
|
| 212 |
|
|
Scheduler operations: 128
|
| 213 |
|
|
Counters: 32
|
| 214 |
|
|
Alarms: 32
|
| 215 |
|
|
|
| 216 |
|
|
|
| 217 |
|
|
Confidence
|
| 218 |
|
|
Ave Min Max Var Ave Min Function
|
| 219 |
|
|
====== ====== ====== ====== ========== ========
|
| 220 |
|
|
86.48 71.29 101.56 7.99 48% 28% Create thread
|
| 221 |
|
|
20.70 20.51 21.48 0.31 80% 80% Yield thread [all suspended]
|
| 222 |
|
|
17.15 16.60 17.58 0.48 56% 44% Suspend [suspended] thread
|
| 223 |
|
|
17.07 16.60 17.58 0.49 52% 52% Resume thread
|
| 224 |
|
|
25.51 25.39 26.37 0.21 88% 88% Set priority
|
| 225 |
|
|
3.16 2.93 3.91 0.36 76% 76% Get priority
|
| 226 |
|
|
52.34 51.76 52.73 0.47 60% 40% Kill [suspended] thread
|
| 227 |
|
|
20.70 20.51 21.48 0.31 80% 80% Yield [no other] thread
|
| 228 |
|
|
28.98 28.32 30.27 0.48 60% 36% Resume [suspended low prio] thread
|
| 229 |
|
|
17.11 16.60 17.58 0.49 52% 48% Resume [runnable low prio] thread
|
| 230 |
|
|
27.85 26.37 28.32 0.52 96% 4% Suspend [runnable] thread
|
| 231 |
|
|
20.70 20.51 21.48 0.31 80% 80% Yield [only low prio] thread
|
| 232 |
|
|
17.23 16.60 17.58 0.45 64% 36% Suspend [runnable->not runnable]
|
| 233 |
|
|
52.34 51.76 52.73 0.47 60% 40% Kill [runnable] thread
|
| 234 |
|
|
33.01 32.23 33.20 0.31 80% 20% Destroy [dead] thread
|
| 235 |
|
|
72.03 70.31 72.27 0.38 80% 4% Destroy [runnable] thread
|
| 236 |
|
|
96.99 95.70 112.30 1.22 64% 96% Resume [high priority] thread
|
| 237 |
|
|
51.48 49.80 164.06 1.76 99% 99% Thread switch
|
| 238 |
|
|
|
| 239 |
|
|
2.78 1.95 2.93 0.26 84% 15% Scheduler lock
|
| 240 |
|
|
11.81 11.72 12.70 0.17 90% 90% Scheduler unlock [0 threads]
|
| 241 |
|
|
11.81 11.72 12.70 0.17 90% 90% Scheduler unlock [1 suspended]
|
| 242 |
|
|
11.81 11.72 12.70 0.17 90% 90% Scheduler unlock [many suspended]
|
| 243 |
|
|
11.81 11.72 12.70 0.17 90% 90% Scheduler unlock [many low prio]
|
| 244 |
|
|
|
| 245 |
|
|
5.49 4.88 5.86 0.46 62% 37% Init mutex
|
| 246 |
|
|
20.20 19.53 20.51 0.42 68% 31% Lock [unlocked] mutex
|
| 247 |
|
|
24.44 24.41 25.39 0.06 96% 96% Unlock [locked] mutex
|
| 248 |
|
|
18.25 17.58 18.55 0.42 68% 31% Trylock [unlocked] mutex
|
| 249 |
|
|
16.11 15.63 16.60 0.49 100% 50% Trylock [locked] mutex
|
| 250 |
|
|
6.10 5.86 6.84 0.37 75% 75% Destroy mutex
|
| 251 |
|
|
124.21 124.02 125.00 0.30 81% 81% Unlock/Lock mutex
|
| 252 |
|
|
|
| 253 |
|
|
9.28 8.79 9.77 0.49 100% 50% Create mbox
|
| 254 |
|
|
2.93 2.93 2.93 0.00 100% 100% Peek [empty] mbox
|
| 255 |
|
|
22.58 22.46 23.44 0.21 87% 87% Put [first] mbox
|
| 256 |
|
|
2.44 1.95 2.93 0.49 100% 50% Peek [1 msg] mbox
|
| 257 |
|
|
22.58 22.46 23.44 0.21 87% 87% Put [second] mbox
|
| 258 |
|
|
2.44 1.95 2.93 0.49 100% 50% Peek [2 msgs] mbox
|
| 259 |
|
|
22.71 22.46 23.44 0.37 75% 75% Get [first] mbox
|
| 260 |
|
|
22.71 22.46 23.44 0.37 75% 75% Get [second] mbox
|
| 261 |
|
|
21.18 20.51 21.48 0.42 68% 31% Tryput [first] mbox
|
| 262 |
|
|
18.98 18.55 19.53 0.48 56% 56% Peek item [non-empty] mbox
|
| 263 |
|
|
22.46 22.46 22.46 0.00 100% 100% Tryget [non-empty] mbox
|
| 264 |
|
|
18.31 17.58 18.55 0.37 75% 25% Peek item [empty] mbox
|
| 265 |
|
|
19.53 19.53 19.53 0.00 100% 100% Tryget [empty] mbox
|
| 266 |
|
|
2.69 1.95 2.93 0.37 75% 25% Waiting to get mbox
|
| 267 |
|
|
2.93 2.93 2.93 0.00 100% 100% Waiting to put mbox
|
| 268 |
|
|
23.86 23.44 24.41 0.48 56% 56% Delete mbox
|
| 269 |
|
|
67.60 67.38 68.36 0.33 78% 78% Put/Get mbox
|
| 270 |
|
|
|
| 271 |
|
|
5.37 4.88 5.86 0.49 100% 50% Init semaphore
|
| 272 |
|
|
16.97 16.60 17.58 0.46 62% 62% Post [0] semaphore
|
| 273 |
|
|
18.98 18.55 19.53 0.48 56% 56% Wait [1] semaphore
|
| 274 |
|
|
15.81 15.63 16.60 0.30 81% 81% Trywait [0] semaphore
|
| 275 |
|
|
15.29 14.65 15.63 0.44 65% 34% Trywait [1] semaphore
|
| 276 |
|
|
5.62 4.88 5.86 0.37 75% 25% Peek semaphore
|
| 277 |
|
|
6.35 5.86 6.84 0.49 100% 50% Destroy semaphore
|
| 278 |
|
|
72.36 72.27 73.24 0.17 90% 90% Post/Wait semaphore
|
| 279 |
|
|
|
| 280 |
|
|
7.08 6.84 7.81 0.37 75% 75% Create counter
|
| 281 |
|
|
3.17 2.93 3.91 0.37 75% 75% Get counter value
|
| 282 |
|
|
3.05 2.93 3.91 0.21 87% 87% Set counter value
|
| 283 |
|
|
24.11 23.44 24.41 0.42 68% 31% Tick counter
|
| 284 |
|
|
5.49 4.88 5.86 0.46 62% 37% Delete counter
|
| 285 |
|
|
|
| 286 |
|
|
10.92 10.74 11.72 0.30 81% 81% Create alarm
|
| 287 |
|
|
31.46 31.25 32.23 0.33 78% 78% Initialize alarm
|
| 288 |
|
|
3.05 2.93 3.91 0.21 87% 87% Disable alarm
|
| 289 |
|
|
31.49 31.25 32.23 0.37 75% 75% Enable alarm
|
| 290 |
|
|
7.02 6.84 7.81 0.30 81% 81% Delete alarm
|
| 291 |
|
|
31.16 30.27 31.25 0.17 90% 9% Tick counter [1 alarm]
|
| 292 |
|
|
309.26 304.69 425.78 7.28 96% 96% Tick counter [many alarms]
|
| 293 |
|
|
44.83 43.95 44.92 0.17 90% 9% Tick & fire counter [1 alarm]
|
| 294 |
|
|
781.68 774.41 893.55 13.62 93% 93% Tick & fire counters [>1 together]
|
| 295 |
|
|
324.16 320.31 433.59 6.84 96% 96% Tick & fire counters [>1 separately]
|
| 296 |
|
|
114.26 113.28 167.97 0.84 57% 42% Alarm latency [0 threads]
|
| 297 |
|
|
126.91 113.28 159.18 8.20 50% 31% Alarm latency [2 threads]
|
| 298 |
|
|
127.11 113.28 158.20 8.09 51% 28% Alarm latency [many threads]
|
| 299 |
|
|
196.49 189.45 331.05 2.10 98% 0% Alarm -> thread resume latency
|
| 300 |
|
|
|
| 301 |
|
|
23.50 23.44 25.39 0.00 Clock/interrupt latency
|
| 302 |
|
|
|
| 303 |
|
|
40.31 33.20 514.65 0.00 Clock DSR latency
|
| 304 |
|
|
|
| 305 |
|
|
300 271 312 (main stack: 832) Thread stack used (1120 total)
|
| 306 |
|
|
All done, main stack : stack used 832 size 2400
|
| 307 |
|
|
All done : Interrupt stack used 288 size 4096
|
| 308 |
|
|
All done : Idlethread stack used 272 size 2048
|
| 309 |
|
|
|
| 310 |
|
|
Timing complete - 30350 ms total
|
| 311 |
|
|
|
| 312 |
|
|
PASS:<Basic timing OK>
|
| 313 |
|
|
EXIT:<done>
|
| 314 |
|
|
|
| 315 |
|
|
|
| 316 |
|
|
|
| 317 |
|
|
|
| 318 |
|
|
|
| 319 |
|
|
|
| 320 |
|
|
Board: Intel StrongARM EBSA-285 Evaluation Board
|
| 321 |
|
|
Board: Intel StrongARM EBSA-285 Evaluation Board
|
| 322 |
|
|
|
| 323 |
|
|
CPU : Intel StrongARM SA-110 228MHz
|
| 324 |
|
|
|
| 325 |
|
|
|
| 326 |
|
|
Startup, main stack : stack used 404 size 2400
|
| 327 |
|
|
Startup : Interrupt stack used 136 size 4096
|
| 328 |
|
|
Startup : Idlethread stack used 80 size 2048
|
| 329 |
|
|
|
| 330 |
|
|
eCos Kernel Timings
|
| 331 |
|
|
Notes: all times are in microseconds (.000001) unless otherwise stated
|
| 332 |
|
|
|
| 333 |
|
|
Reading the hardware clock takes 1 'ticks' overhead
|
| 334 |
|
|
... this value will be factored out of all other measurements
|
| 335 |
|
|
Clock interrupt took 4.61 microseconds (16 raw clock ticks)
|
| 336 |
|
|
|
| 337 |
|
|
Testing parameters:
|
| 338 |
|
|
Clock samples: 32
|
| 339 |
|
|
Threads: 64
|
| 340 |
|
|
Thread switches: 128
|
| 341 |
|
|
Mutexes: 32
|
| 342 |
|
|
Mailboxes: 32
|
| 343 |
|
|
Semaphores: 32
|
| 344 |
|
|
Scheduler operations: 128
|
| 345 |
|
|
Counters: 32
|
| 346 |
|
|
Alarms: 32
|
| 347 |
|
|
|
| 348 |
|
|
|
| 349 |
|
|
Confidence
|
| 350 |
|
|
Ave Min Max Var Ave Min Function
|
| 351 |
|
|
====== ====== ====== ====== ========== ========
|
| 352 |
|
|
4.97 3.26 7.34 0.60 50% 4% Create thread
|
| 353 |
|
|
0.73 0.54 2.17 0.14 60% 37% Yield thread [all suspended]
|
| 354 |
|
|
0.98 0.82 2.99 0.23 81% 68% Suspend [suspended] thread
|
| 355 |
|
|
0.54 0.27 1.63 0.03 92% 6% Resume thread
|
| 356 |
|
|
0.83 0.54 1.90 0.10 73% 14% Set priority
|
| 357 |
|
|
0.21 0.00 0.54 0.21 25% 48% Get priority
|
| 358 |
|
|
2.25 1.90 10.05 0.37 96% 67% Kill [suspended] thread
|
| 359 |
|
|
0.70 0.54 1.09 0.14 53% 45% Yield [no other] thread
|
| 360 |
|
|
0.96 0.82 1.36 0.14 50% 48% Resume [suspended low prio] thread
|
| 361 |
|
|
0.53 0.27 0.82 0.03 92% 6% Resume [runnable low prio] thread
|
| 362 |
|
|
0.90 0.82 1.63 0.13 70% 70% Suspend [runnable] thread
|
| 363 |
|
|
0.70 0.54 0.82 0.13 57% 42% Yield [only low prio] thread
|
| 364 |
|
|
0.55 0.54 0.82 0.01 98% 98% Suspend [runnable->not runnable]
|
| 365 |
|
|
1.64 1.63 2.17 0.02 98% 98% Kill [runnable] thread
|
| 366 |
|
|
0.97 0.82 4.62 0.20 98% 64% Destroy [dead] thread
|
| 367 |
|
|
2.17 1.90 2.17 0.01 98% 1% Destroy [runnable] thread
|
| 368 |
|
|
6.06 5.16 10.60 0.53 59% 31% Resume [high priority] thread
|
| 369 |
|
|
1.69 1.63 5.98 0.11 90% 90% Thread switch
|
| 370 |
|
|
|
| 371 |
|
|
0.14 0.00 1.36 0.14 99% 50% Scheduler lock
|
| 372 |
|
|
0.37 0.27 0.54 0.13 62% 62% Scheduler unlock [0 threads]
|
| 373 |
|
|
0.38 0.27 0.54 0.13 60% 60% Scheduler unlock [1 suspended]
|
| 374 |
|
|
0.37 0.27 0.54 0.13 63% 63% Scheduler unlock [many suspended]
|
| 375 |
|
|
0.37 0.27 0.54 0.13 63% 63% Scheduler unlock [many low prio]
|
| 376 |
|
|
|
| 377 |
|
|
0.34 0.00 1.90 0.15 78% 6% Init mutex
|
| 378 |
|
|
0.88 0.54 4.62 0.37 93% 71% Lock [unlocked] mutex
|
| 379 |
|
|
0.79 0.54 4.35 0.26 93% 53% Unlock [locked] mutex
|
| 380 |
|
|
0.59 0.27 2.17 0.10 93% 3% Trylock [unlocked] mutex
|
| 381 |
|
|
0.50 0.27 0.82 0.09 78% 18% Trylock [locked] mutex
|
| 382 |
|
|
0.18 0.00 0.54 0.13 59% 37% Destroy mutex
|
| 383 |
|
|
3.85 3.80 5.16 0.08 96% 96% Unlock/Lock mutex
|
| 384 |
|
|
|
| 385 |
|
|
0.64 0.27 3.53 0.24 81% 15% Create mbox
|
| 386 |
|
|
0.61 0.27 2.17 0.21 68% 18% Peek [empty] mbox
|
| 387 |
|
|
0.87 0.54 5.16 0.31 59% 87% Put [first] mbox
|
| 388 |
|
|
0.08 0.00 0.54 0.12 71% 71% Peek [1 msg] mbox
|
| 389 |
|
|
0.71 0.54 1.09 0.14 56% 40% Put [second] mbox
|
| 390 |
|
|
0.08 0.00 0.27 0.12 68% 68% Peek [2 msgs] mbox
|
| 391 |
|
|
0.89 0.54 4.89 0.31 62% 81% Get [first] mbox
|
| 392 |
|
|
0.76 0.54 1.09 0.17 43% 37% Get [second] mbox
|
| 393 |
|
|
0.76 0.54 3.26 0.21 96% 50% Tryput [first] mbox
|
| 394 |
|
|
0.65 0.54 2.45 0.17 81% 81% Peek item [non-empty] mbox
|
| 395 |
|
|
0.76 0.54 2.72 0.19 53% 43% Tryget [non-empty] mbox
|
| 396 |
|
|
0.58 0.54 0.82 0.06 87% 87% Peek item [empty] mbox
|
| 397 |
|
|
0.61 0.54 0.82 0.10 75% 75% Tryget [empty] mbox
|
| 398 |
|
|
0.10 0.00 0.54 0.13 65% 65% Waiting to get mbox
|
| 399 |
|
|
0.10 0.00 0.54 0.13 65% 65% Waiting to put mbox
|
| 400 |
|
|
0.77 0.54 3.26 0.20 53% 43% Delete mbox
|
| 401 |
|
|
2.10 1.90 6.25 0.30 93% 93% Put/Get mbox
|
| 402 |
|
|
|
| 403 |
|
|
0.34 0.27 1.09 0.11 81% 81% Init semaphore
|
| 404 |
|
|
0.60 0.27 1.09 0.12 68% 6% Post [0] semaphore
|
| 405 |
|
|
0.59 0.54 0.82 0.08 81% 81% Wait [1] semaphore
|
| 406 |
|
|
0.59 0.54 2.17 0.10 96% 96% Trywait [0] semaphore
|
| 407 |
|
|
0.48 0.27 0.82 0.11 71% 25% Trywait [1] semaphore
|
| 408 |
|
|
0.24 0.00 0.82 0.09 78% 18% Peek semaphore
|
| 409 |
|
|
0.19 0.00 0.54 0.13 62% 34% Destroy semaphore
|
| 410 |
|
|
2.28 2.17 4.08 0.18 93% 90% Post/Wait semaphore
|
| 411 |
|
|
|
| 412 |
|
|
0.43 0.00 2.72 0.23 90% 6% Create counter
|
| 413 |
|
|
0.40 0.00 1.63 0.25 68% 28% Get counter value
|
| 414 |
|
|
0.13 0.00 0.82 0.15 96% 59% Set counter value
|
| 415 |
|
|
0.71 0.54 1.63 0.16 50% 46% Tick counter
|
| 416 |
|
|
0.16 0.00 0.54 0.14 53% 43% Delete counter
|
| 417 |
|
|
|
| 418 |
|
|
0.47 0.27 1.36 0.15 59% 37% Create alarm
|
| 419 |
|
|
1.58 1.09 7.07 0.44 71% 68% Initialize alarm
|
| 420 |
|
|
0.12 0.00 1.09 0.16 96% 65% Disable alarm
|
| 421 |
|
|
1.01 0.82 2.45 0.17 53% 43% Enable alarm
|
| 422 |
|
|
0.21 0.00 0.27 0.09 78% 21% Delete alarm
|
| 423 |
|
|
0.78 0.54 1.90 0.12 71% 25% Tick counter [1 alarm]
|
| 424 |
|
|
3.90 3.80 4.35 0.13 68% 68% Tick counter [many alarms]
|
| 425 |
|
|
1.25 1.09 1.63 0.14 53% 43% Tick & fire counter [1 alarm]
|
| 426 |
|
|
19.88 19.84 20.11 0.07 84% 84% Tick & fire counters [>1 together]
|
| 427 |
|
|
4.37 4.35 4.62 0.05 90% 90% Tick & fire counters [>1 separately]
|
| 428 |
|
|
3.83 3.80 7.61 0.06 99% 99% Alarm latency [0 threads]
|
| 429 |
|
|
4.46 3.80 7.88 0.27 71% 24% Alarm latency [2 threads]
|
| 430 |
|
|
16.06 13.59 26.36 1.05 54% 10% Alarm latency [many threads]
|
| 431 |
|
|
6.67 6.52 22.83 0.29 98% 98% Alarm -> thread resume latency
|
| 432 |
|
|
|
| 433 |
|
|
1.89 0.82 9.78 0.00 Clock/interrupt latency
|
| 434 |
|
|
|
| 435 |
|
|
2.17 1.09 7.34 0.00 Clock DSR latency
|
| 436 |
|
|
|
| 437 |
|
|
11 0 316 (main stack: 744) Thread stack used (1120 total)
|
| 438 |
|
|
All done, main stack : stack used 744 size 2400
|
| 439 |
|
|
All done : Interrupt stack used 288 size 4096
|
| 440 |
|
|
All done : Idlethread stack used 268 size 2048
|
| 441 |
|
|
|
| 442 |
|
|
Timing complete - 30210 ms total
|
| 443 |
|
|
|
| 444 |
|
|
PASS:<Basic timing OK>
|
| 445 |
|
|
EXIT:<done>
|
| 446 |
|
|
|
| 447 |
|
|
|
| 448 |
|
|
|
| 449 |
|
|
|
| 450 |
|
|
|
| 451 |
|
|
|
| 452 |
|
|
Board: Cirrus Logic EDB7111-2 Development Board
|
| 453 |
|
|
|
| 454 |
|
|
CPU : Cirrus Logic EP7211 73MHz
|
| 455 |
|
|
Board: Cirrus Logic EDB7111-2 Development Board
|
| 456 |
|
|
|
| 457 |
|
|
CPU : Cirrus Logic EP7211 73MHz
|
| 458 |
|
|
|
| 459 |
|
|
|
| 460 |
|
|
|
| 461 |
|
|
Startup, main stack : stack used 404 size 2400
|
| 462 |
|
|
Startup : Interrupt stack used 136 size 4096
|
| 463 |
|
|
Startup : Idlethread stack used 88 size 2048
|
| 464 |
|
|
|
| 465 |
|
|
eCos Kernel Timings
|
| 466 |
|
|
Notes: all times are in microseconds (.000001) unless otherwise stated
|
| 467 |
|
|
|
| 468 |
|
|
Reading the hardware clock takes 0 'ticks' overhead
|
| 469 |
|
|
... this value will be factored out of all other measurements
|
| 470 |
|
|
Clock interrupt took 356.69 microseconds (182 raw clock ticks)
|
| 471 |
|
|
|
| 472 |
|
|
Testing parameters:
|
| 473 |
|
|
Clock samples: 32
|
| 474 |
|
|
Threads: 64
|
| 475 |
|
|
Thread switches: 128
|
| 476 |
|
|
Mutexes: 32
|
| 477 |
|
|
Mailboxes: 32
|
| 478 |
|
|
Semaphores: 32
|
| 479 |
|
|
Scheduler operations: 128
|
| 480 |
|
|
Counters: 32
|
| 481 |
|
|
Alarms: 32
|
| 482 |
|
|
|
| 483 |
|
|
|
| 484 |
|
|
Confidence
|
| 485 |
|
|
Ave Min Max Var Ave Min Function
|
| 486 |
|
|
====== ====== ====== ====== ========== ========
|
| 487 |
|
|
22.71 17.58 37.11 3.07 46% 34% Create thread
|
| 488 |
|
|
4.36 3.91 5.86 0.70 76% 76% Yield thread [all suspended]
|
| 489 |
|
|
4.24 3.91 7.81 0.56 84% 84% Suspend [suspended] thread
|
| 490 |
|
|
4.09 1.95 7.81 0.45 85% 3% Resume thread
|
| 491 |
|
|
5.31 3.91 11.72 0.92 65% 32% Set priority
|
| 492 |
|
|
2.11 1.95 3.91 0.28 92% 92% Get priority
|
| 493 |
|
|
11.54 9.77 25.39 0.99 62% 28% Kill [suspended] thread
|
| 494 |
|
|
4.46 3.91 9.77 0.82 75% 75% Yield [no other] thread
|
| 495 |
|
|
7.57 5.86 13.67 0.69 75% 20% Resume [suspended low prio] thread
|
| 496 |
|
|
3.94 1.95 5.86 0.18 92% 3% Resume [runnable low prio] thread
|
| 497 |
|
|
7.02 5.86 13.67 1.05 53% 45% Suspend [runnable] thread
|
| 498 |
|
|
4.42 3.91 9.77 0.79 76% 76% Yield [only low prio] thread
|
| 499 |
|
|
4.24 1.95 5.86 0.61 79% 1% Suspend [runnable->not runnable]
|
| 500 |
|
|
11.29 9.77 27.34 1.14 57% 37% Kill [runnable] thread
|
| 501 |
|
|
6.29 3.91 11.72 0.84 71% 4% Destroy [dead] thread
|
| 502 |
|
|
13.52 11.72 31.25 0.90 70% 25% Destroy [runnable] thread
|
| 503 |
|
|
24.50 21.48 42.97 1.69 79% 12% Resume [high priority] thread
|
| 504 |
|
|
8.79 7.81 19.53 1.05 99% 53% Thread switch
|
| 505 |
|
|
|
| 506 |
|
|
1.66 0.00 3.91 0.52 83% 15% Scheduler lock
|
| 507 |
|
|
2.59 1.95 3.91 0.86 67% 67% Scheduler unlock [0 threads]
|
| 508 |
|
|
2.62 1.95 3.91 0.88 65% 65% Scheduler unlock [1 suspended]
|
| 509 |
|
|
2.61 1.95 3.91 0.87 66% 66% Scheduler unlock [many suspended]
|
| 510 |
|
|
2.58 1.95 3.91 0.85 67% 67% Scheduler unlock [many low prio]
|
| 511 |
|
|
|
| 512 |
|
|
2.69 1.95 5.86 0.96 65% 65% Init mutex
|
| 513 |
|
|
4.88 3.91 9.77 1.10 96% 56% Lock [unlocked] mutex
|
| 514 |
|
|
4.64 3.91 11.72 1.05 71% 71% Unlock [locked] mutex
|
| 515 |
|
|
3.97 1.95 7.81 0.47 81% 9% Trylock [unlocked] mutex
|
| 516 |
|
|
3.48 1.95 3.91 0.67 78% 21% Trylock [locked] mutex
|
| 517 |
|
|
1.77 0.00 3.91 0.44 84% 12% Destroy mutex
|
| 518 |
|
|
31.92 29.30 42.97 1.65 71% 18% Unlock/Lock mutex
|
| 519 |
|
|
|
| 520 |
|
|
4.09 3.91 9.77 0.35 96% 96% Create mbox
|
| 521 |
|
|
1.83 0.00 3.91 0.34 87% 9% Peek [empty] mbox
|
| 522 |
|
|
5.31 3.91 9.77 0.96 62% 34% Put [first] mbox
|
| 523 |
|
|
1.59 0.00 1.95 0.60 81% 18% Peek [1 msg] mbox
|
| 524 |
|
|
5.19 3.91 9.77 1.04 56% 40% Put [second] mbox
|
| 525 |
|
|
1.65 0.00 3.91 0.62 78% 18% Peek [2 msgs] mbox
|
| 526 |
|
|
5.43 3.91 9.77 0.86 68% 28% Get [first] mbox
|
| 527 |
|
|
5.31 3.91 7.81 0.96 59% 34% Get [second] mbox
|
| 528 |
|
|
4.76 3.91 9.77 1.07 62% 62% Tryput [first] mbox
|
| 529 |
|
|
4.82 1.95 9.77 1.15 93% 3% Peek item [non-empty] mbox
|
| 530 |
|
|
5.55 3.91 11.72 0.82 71% 25% Tryget [non-empty] mbox
|
| 531 |
|
|
3.97 1.95 7.81 0.59 75% 12% Peek item [empty] mbox
|
| 532 |
|
|
4.33 3.91 7.81 0.69 81% 81% Tryget [empty] mbox
|
| 533 |
|
|
1.59 0.00 3.91 0.79 68% 25% Waiting to get mbox
|
| 534 |
|
|
1.71 0.00 3.91 0.53 81% 15% Waiting to put mbox
|
| 535 |
|
|
5.25 3.91 9.77 1.01 59% 37% Delete mbox
|
| 536 |
|
|
17.82 15.63 29.30 1.14 65% 18% Put/Get mbox
|
| 537 |
|
|
|
| 538 |
|
|
2.69 1.95 5.86 0.96 65% 65% Init semaphore
|
| 539 |
|
|
3.78 1.95 7.81 0.46 84% 12% Post [0] semaphore
|
| 540 |
|
|
4.27 3.91 7.81 0.62 84% 84% Wait [1] semaphore
|
| 541 |
|
|
3.72 1.95 7.81 0.66 75% 18% Trywait [0] semaphore
|
| 542 |
|
|
3.29 1.95 5.86 0.92 62% 34% Trywait [1] semaphore
|
| 543 |
|
|
2.32 1.95 3.91 0.59 81% 81% Peek semaphore
|
| 544 |
|
|
1.89 0.00 3.91 0.24 90% 6% Destroy semaphore
|
| 545 |
|
|
15.75 13.67 29.30 1.07 68% 21% Post/Wait semaphore
|
| 546 |
|
|
|
| 547 |
|
|
2.69 1.95 5.86 0.96 65% 65% Create counter
|
| 548 |
|
|
1.83 0.00 1.95 0.23 93% 6% Get counter value
|
| 549 |
|
|
1.53 0.00 3.91 0.76 71% 25% Set counter value
|
| 550 |
|
|
4.82 3.91 5.86 0.97 53% 53% Tick counter
|
| 551 |
|
|
1.89 0.00 1.95 0.12 96% 3% Delete counter
|
| 552 |
|
|
|
| 553 |
|
|
3.78 1.95 7.81 0.46 84% 12% Create alarm
|
| 554 |
|
|
7.99 5.86 15.63 0.70 81% 9% Initialize alarm
|
| 555 |
|
|
1.71 0.00 1.95 0.43 87% 12% Disable alarm
|
| 556 |
|
|
7.14 5.86 11.72 1.04 56% 40% Enable alarm
|
| 557 |
|
|
2.50 1.95 3.91 0.79 71% 71% Delete alarm
|
| 558 |
|
|
4.94 3.91 7.81 1.04 96% 50% Tick counter [1 alarm]
|
| 559 |
|
|
19.47 17.58 23.44 0.36 87% 9% Tick counter [many alarms]
|
| 560 |
|
|
7.63 5.86 11.72 0.55 81% 15% Tick & fire counter [1 alarm]
|
| 561 |
|
|
99.06 97.66 105.47 1.05 59% 37% Tick & fire counters [>1 together]
|
| 562 |
|
|
22.15 21.48 27.34 0.96 71% 71% Tick & fire counters [>1 separately]
|
| 563 |
|
|
359.16 357.42 378.91 0.87 71% 25% Alarm latency [0 threads]
|
| 564 |
|
|
364.03 357.42 402.34 3.03 58% 15% Alarm latency [2 threads]
|
| 565 |
|
|
408.25 402.34 416.02 2.89 53% 24% Alarm latency [many threads]
|
| 566 |
|
|
381.16 376.95 492.19 2.48 95% 46% Alarm -> thread resume latency
|
| 567 |
|
|
|
| 568 |
|
|
9.79 5.86 19.53 0.00 Clock/interrupt latency
|
| 569 |
|
|
|
| 570 |
|
|
12.13 5.86 31.25 0.00 Clock DSR latency
|
| 571 |
|
|
|
| 572 |
|
|
12 0 316 (main stack: 752) Thread stack used (1120 total)
|
| 573 |
|
|
All done, main stack : stack used 752 size 2400
|
| 574 |
|
|
All done : Interrupt stack used 288 size 4096
|
| 575 |
|
|
All done : Idlethread stack used 276 size 2048
|
| 576 |
|
|
|
| 577 |
|
|
Timing complete - 30450 ms total
|
| 578 |
|
|
|
| 579 |
|
|
PASS:<Basic timing OK>
|
| 580 |
|
|
EXIT:<done>
|
| 581 |
|
|
|
| 582 |
|
|
|
| 583 |
|
|
|
| 584 |
|
|
|
| 585 |
|
|
CPU : Cirrus Logic EP7212 73MHz
|
| 586 |
|
|
Board: Cirrus Logic EDB7111-2 Development Board
|
| 587 |
|
|
|
| 588 |
|
|
CPU : Cirrus Logic EP7212 73MHz
|
| 589 |
|
|
|
| 590 |
|
|
|
| 591 |
|
|
|
| 592 |
|
|
Startup, main stack : stack used 404 size 2400
|
| 593 |
|
|
Startup : Interrupt stack used 136 size 4096
|
| 594 |
|
|
Startup : Idlethread stack used 88 size 2048
|
| 595 |
|
|
|
| 596 |
|
|
eCos Kernel Timings
|
| 597 |
|
|
Notes: all times are in microseconds (.000001) unless otherwise stated
|
| 598 |
|
|
|
| 599 |
|
|
Reading the hardware clock takes 0 'ticks' overhead
|
| 600 |
|
|
... this value will be factored out of all other measurements
|
| 601 |
|
|
Clock interrupt took 356.32 microseconds (182 raw clock ticks)
|
| 602 |
|
|
|
| 603 |
|
|
Testing parameters:
|
| 604 |
|
|
Clock samples: 32
|
| 605 |
|
|
Threads: 64
|
| 606 |
|
|
Thread switches: 128
|
| 607 |
|
|
Mutexes: 32
|
| 608 |
|
|
Mailboxes: 32
|
| 609 |
|
|
Semaphores: 32
|
| 610 |
|
|
Scheduler operations: 128
|
| 611 |
|
|
Counters: 32
|
| 612 |
|
|
Alarms: 32
|
| 613 |
|
|
|
| 614 |
|
|
|
| 615 |
|
|
Confidence
|
| 616 |
|
|
Ave Min Max Var Ave Min Function
|
| 617 |
|
|
====== ====== ====== ====== ========== ========
|
| 618 |
|
|
22.43 15.63 33.20 3.02 68% 18% Create thread
|
| 619 |
|
|
4.48 3.91 5.86 0.81 70% 70% Yield thread [all suspended]
|
| 620 |
|
|
4.42 3.91 7.81 0.78 75% 75% Suspend [suspended] thread
|
| 621 |
|
|
4.12 1.95 5.86 0.49 82% 3% Resume thread
|
| 622 |
|
|
5.62 3.91 11.72 0.64 78% 18% Set priority
|
| 623 |
|
|
2.17 1.95 3.91 0.38 89% 89% Get priority
|
| 624 |
|
|
11.54 9.77 27.34 0.88 70% 25% Kill [suspended] thread
|
| 625 |
|
|
4.64 3.91 9.77 0.96 65% 65% Yield [no other] thread
|
| 626 |
|
|
7.51 5.86 15.63 0.72 76% 21% Resume [suspended low prio] thread
|
| 627 |
|
|
3.88 1.95 9.77 0.42 82% 10% Resume [runnable low prio] thread
|
| 628 |
|
|
7.14 5.86 13.67 1.00 59% 39% Suspend [runnable] thread
|
| 629 |
|
|
4.52 3.91 7.81 0.86 70% 70% Yield [only low prio] thread
|
| 630 |
|
|
4.15 1.95 7.81 0.49 85% 1% Suspend [runnable->not runnable]
|
| 631 |
|
|
11.26 9.77 27.34 1.17 56% 39% Kill [runnable] thread
|
| 632 |
|
|
6.22 3.91 13.67 0.88 70% 7% Destroy [dead] thread
|
| 633 |
|
|
13.64 11.72 33.20 1.02 64% 26% Destroy [runnable] thread
|
| 634 |
|
|
24.17 21.48 41.02 1.49 82% 12% Resume [high priority] thread
|
| 635 |
|
|
8.80 7.81 21.48 1.08 98% 54% Thread switch
|
| 636 |
|
|
|
| 637 |
|
|
1.60 0.00 1.95 0.58 82% 17% Scheduler lock
|
| 638 |
|
|
2.61 1.95 3.91 0.87 66% 66% Scheduler unlock [0 threads]
|
| 639 |
|
|
2.59 1.95 3.91 0.86 67% 67% Scheduler unlock [1 suspended]
|
| 640 |
|
|
2.61 1.95 3.91 0.87 66% 66% Scheduler unlock [many suspended]
|
| 641 |
|
|
2.59 1.95 3.91 0.86 67% 67% Scheduler unlock [many low prio]
|
| 642 |
|
|
|
| 643 |
|
|
2.62 1.95 3.91 0.88 65% 65% Init mutex
|
| 644 |
|
|
4.82 3.91 9.77 1.09 96% 59% Lock [unlocked] mutex
|
| 645 |
|
|
4.39 3.91 9.77 0.79 81% 81% Unlock [locked] mutex
|
| 646 |
|
|
3.84 1.95 7.81 0.36 87% 9% Trylock [unlocked] mutex
|
| 647 |
|
|
3.54 1.95 5.86 0.69 75% 21% Trylock [locked] mutex
|
| 648 |
|
|
1.83 0.00 3.91 0.34 87% 9% Destroy mutex
|
| 649 |
|
|
34.61 31.25 46.88 1.68 78% 9% Unlock/Lock mutex
|
| 650 |
|
|
|
| 651 |
|
|
3.97 1.95 7.81 0.24 93% 3% Create mbox
|
| 652 |
|
|
1.83 0.00 3.91 0.34 87% 9% Peek [empty] mbox
|
| 653 |
|
|
4.76 3.91 9.77 1.07 62% 62% Put [first] mbox
|
| 654 |
|
|
1.71 0.00 3.91 0.64 75% 18% Peek [1 msg] mbox
|
| 655 |
|
|
5.00 3.91 9.77 1.10 96% 50% Put [second] mbox
|
| 656 |
|
|
1.65 0.00 1.95 0.52 84% 15% Peek [2 msgs] mbox
|
| 657 |
|
|
5.31 3.91 11.72 1.05 59% 37% Get [first] mbox
|
| 658 |
|
|
5.13 3.91 7.81 0.99 56% 40% Get [second] mbox
|
| 659 |
|
|
4.76 3.91 11.72 1.12 96% 65% Tryput [first] mbox
|
| 660 |
|
|
4.46 3.91 7.81 0.82 75% 75% Peek item [non-empty] mbox
|
| 661 |
|
|
5.55 3.91 9.77 0.82 68% 25% Tryget [non-empty] mbox
|
| 662 |
|
|
4.03 1.95 7.81 0.58 78% 9% Peek item [empty] mbox
|
| 663 |
|
|
4.27 3.91 5.86 0.59 81% 81% Tryget [empty] mbox
|
| 664 |
|
|
1.77 0.00 3.91 0.44 84% 12% Waiting to get mbox
|
| 665 |
|
|
1.59 0.00 1.95 0.60 81% 18% Waiting to put mbox
|
| 666 |
|
|
5.37 3.91 9.77 0.91 65% 31% Delete mbox
|
| 667 |
|
|
16.66 13.67 27.34 1.42 90% 3% Put/Get mbox
|
| 668 |
|
|
|
| 669 |
|
|
2.62 1.95 5.86 0.92 68% 68% Init semaphore
|
| 670 |
|
|
3.84 1.95 7.81 0.47 81% 12% Post [0] semaphore
|
| 671 |
|
|
4.21 3.91 7.81 0.53 87% 87% Wait [1] semaphore
|
| 672 |
|
|
3.48 1.95 5.86 0.76 71% 25% Trywait [0] semaphore
|
| 673 |
|
|
3.60 1.95 5.86 0.62 78% 18% Trywait [1] semaphore
|
| 674 |
|
|
2.26 1.95 5.86 0.53 87% 87% Peek semaphore
|
| 675 |
|
|
1.89 0.00 1.95 0.12 96% 3% Destroy semaphore
|
| 676 |
|
|
16.05 13.67 29.30 1.40 59% 18% Post/Wait semaphore
|
| 677 |
|
|
|
| 678 |
|
|
2.38 1.95 3.91 0.67 78% 78% Create counter
|
| 679 |
|
|
2.01 0.00 3.91 0.35 84% 6% Get counter value
|
| 680 |
|
|
1.89 0.00 3.91 0.24 90% 6% Set counter value
|
| 681 |
|
|
4.58 3.91 5.86 0.88 65% 65% Tick counter
|
| 682 |
|
|
1.71 0.00 1.95 0.43 87% 12% Delete counter
|
| 683 |
|
|
|
| 684 |
|
|
3.84 1.95 7.81 0.36 87% 9% Create alarm
|
| 685 |
|
|
7.99 5.86 15.63 0.47 93% 3% Initialize alarm
|
| 686 |
|
|
2.01 0.00 3.91 0.35 84% 6% Disable alarm
|
| 687 |
|
|
6.53 5.86 13.67 1.01 75% 75% Enable alarm
|
| 688 |
|
|
2.32 1.95 3.91 0.59 81% 81% Delete alarm
|
| 689 |
|
|
4.76 3.91 7.81 1.01 59% 59% Tick counter [1 alarm]
|
| 690 |
|
|
19.53 17.58 23.44 0.24 90% 6% Tick counter [many alarms]
|
| 691 |
|
|
7.57 5.86 13.67 0.75 75% 21% Tick & fire counter [1 alarm]
|
| 692 |
|
|
98.57 97.66 105.47 1.14 96% 62% Tick & fire counters [>1 together]
|
| 693 |
|
|
22.15 21.48 27.34 0.96 71% 71% Tick & fire counters [>1 separately]
|
| 694 |
|
|
359.18 357.42 384.77 1.10 65% 31% Alarm latency [0 threads]
|
| 695 |
|
|
362.63 357.42 396.48 2.55 43% 27% Alarm latency [2 threads]
|
| 696 |
|
|
408.22 402.34 416.02 2.73 55% 21% Alarm latency [many threads]
|
| 697 |
|
|
378.63 375.00 494.14 2.56 93% 71% Alarm -> thread resume latency
|
| 698 |
|
|
|
| 699 |
|
|
9.78 5.86 19.53 0.00 Clock/interrupt latency
|
| 700 |
|
|
|
| 701 |
|
|
12.21 5.86 31.25 0.00 Clock DSR latency
|
| 702 |
|
|
|
| 703 |
|
|
12 0 316 (main stack: 752) Thread stack used (1120 total)
|
| 704 |
|
|
All done, main stack : stack used 752 size 2400
|
| 705 |
|
|
All done : Interrupt stack used 288 size 4096
|
| 706 |
|
|
All done : Idlethread stack used 276 size 2048
|
| 707 |
|
|
|
| 708 |
|
|
Timing complete - 30550 ms total
|
| 709 |
|
|
|
| 710 |
|
|
PASS:<Basic timing OK>
|
| 711 |
|
|
EXIT:<done>
|
| 712 |
|
|
|
| 713 |
|
|
|
| 714 |
|
|
|
| 715 |
|
|
|
| 716 |
|
|
|
| 717 |
|
|
|
| 718 |
|
|
|
| 719 |
|
|
|
| 720 |
|
|
Board: ARM PID Evaluation Board
|
| 721 |
|
|
|
| 722 |
|
|
CPU : ARM 7TDMI 20 MHz
|
| 723 |
|
|
Board: ARM PID Evaluation Board
|
| 724 |
|
|
|
| 725 |
|
|
CPU : ARM 7TDMI 20 MHz
|
| 726 |
|
|
|
| 727 |
|
|
|
| 728 |
|
|
|
| 729 |
|
|
Startup, main stack : stack used 404 size 2400
|
| 730 |
|
|
Startup : Interrupt stack used 136 size 4096
|
| 731 |
|
|
Startup : Idlethread stack used 84 size 2048
|
| 732 |
|
|
|
| 733 |
|
|
eCos Kernel Timings
|
| 734 |
|
|
Notes: all times are in microseconds (.000001) unless otherwise stated
|
| 735 |
|
|
|
| 736 |
|
|
Reading the hardware clock takes 6 'ticks' overhead
|
| 737 |
|
|
... this value will be factored out of all other measurements
|
| 738 |
|
|
Clock interrupt took 120.74 microseconds (150 raw clock ticks)
|
| 739 |
|
|
|
| 740 |
|
|
Testing parameters:
|
| 741 |
|
|
Clock samples: 32
|
| 742 |
|
|
Threads: 50
|
| 743 |
|
|
Thread switches: 128
|
| 744 |
|
|
Mutexes: 32
|
| 745 |
|
|
Mailboxes: 32
|
| 746 |
|
|
Semaphores: 32
|
| 747 |
|
|
Scheduler operations: 128
|
| 748 |
|
|
Counters: 32
|
| 749 |
|
|
Alarms: 32
|
| 750 |
|
|
|
| 751 |
|
|
|
| 752 |
|
|
Confidence
|
| 753 |
|
|
Ave Min Max Var Ave Min Function
|
| 754 |
|
|
====== ====== ====== ====== ========== ========
|
| 755 |
|
|
99.01 68.00 129.60 15.62 50% 26% Create thread
|
| 756 |
|
|
21.60 21.60 21.60 0.00 100% 100% Yield thread [all suspended]
|
| 757 |
|
|
15.65 15.20 16.00 0.39 56% 44% Suspend [suspended] thread
|
| 758 |
|
|
15.79 15.20 16.00 0.31 74% 26% Resume thread
|
| 759 |
|
|
23.65 23.20 24.00 0.39 56% 44% Set priority
|
| 760 |
|
|
2.26 1.60 2.40 0.24 82% 18% Get priority
|
| 761 |
|
|
51.39 51.20 52.00 0.29 76% 76% Kill [suspended] thread
|
| 762 |
|
|
21.60 21.60 21.60 0.00 100% 100% Yield [no other] thread
|
| 763 |
|
|
29.47 28.00 29.60 0.22 86% 2% Resume [suspended low prio] thread
|
| 764 |
|
|
15.60 15.20 16.00 0.40 100% 50% Resume [runnable low prio] thread
|
| 765 |
|
|
27.73 24.00 28.00 0.40 74% 2% Suspend [runnable] thread
|
| 766 |
|
|
21.60 21.60 21.60 0.00 100% 100% Yield [only low prio] thread
|
| 767 |
|
|
15.65 15.20 16.00 0.39 56% 44% Suspend [runnable->not runnable]
|
| 768 |
|
|
51.39 51.20 52.00 0.29 76% 76% Kill [runnable] thread
|
| 769 |
|
|
27.66 27.20 28.80 0.41 54% 44% Destroy [dead] thread
|
| 770 |
|
|
68.93 64.80 69.60 0.35 72% 2% Destroy [runnable] thread
|
| 771 |
|
|
91.26 90.40 107.20 0.64 66% 32% Resume [high priority] thread
|
| 772 |
|
|
49.14 48.80 49.60 0.39 57% 57% Thread switch
|
| 773 |
|
|
|
| 774 |
|
|
2.20 1.60 2.40 0.30 75% 25% Scheduler lock
|
| 775 |
|
|
10.20 9.60 10.40 0.30 75% 25% Scheduler unlock [0 threads]
|
| 776 |
|
|
10.20 9.60 10.40 0.30 75% 25% Scheduler unlock [1 suspended]
|
| 777 |
|
|
10.20 9.60 10.40 0.30 75% 25% Scheduler unlock [many suspended]
|
| 778 |
|
|
10.20 9.60 10.40 0.30 75% 25% Scheduler unlock [many low prio]
|
| 779 |
|
|
|
| 780 |
|
|
6.85 6.40 7.20 0.39 56% 43% Init mutex
|
| 781 |
|
|
18.40 18.40 18.40 0.00 100% 100% Lock [unlocked] mutex
|
| 782 |
|
|
19.57 19.20 20.00 0.40 53% 53% Unlock [locked] mutex
|
| 783 |
|
|
16.55 16.00 16.80 0.34 68% 31% Trylock [unlocked] mutex
|
| 784 |
|
|
14.55 14.40 15.20 0.24 81% 81% Trylock [locked] mutex
|
| 785 |
|
|
3.55 3.20 4.00 0.39 56% 56% Destroy mutex
|
| 786 |
|
|
119.85 119.20 120.00 0.24 81% 18% Unlock/Lock mutex
|
| 787 |
|
|
|
| 788 |
|
|
12.85 12.80 13.60 0.09 93% 93% Create mbox
|
| 789 |
|
|
1.65 1.60 2.40 0.09 93% 93% Peek [empty] mbox
|
| 790 |
|
|
20.70 20.00 20.80 0.17 87% 12% Put [first] mbox
|
| 791 |
|
|
1.65 1.60 2.40 0.09 93% 93% Peek [1 msg] mbox
|
| 792 |
|
|
20.70 20.00 20.80 0.17 87% 12% Put [second] mbox
|
| 793 |
|
|
1.65 1.60 2.40 0.09 93% 93% Peek [2 msgs] mbox
|
| 794 |
|
|
20.85 20.80 21.60 0.09 93% 93% Get [first] mbox
|
| 795 |
|
|
20.85 20.80 21.60 0.09 93% 93% Get [second] mbox
|
| 796 |
|
|
19.90 19.20 20.00 0.17 87% 12% Tryput [first] mbox
|
| 797 |
|
|
17.60 17.60 17.60 0.00 100% 100% Peek item [non-empty] mbox
|
| 798 |
|
|
20.90 20.80 21.60 0.17 87% 87% Tryget [non-empty] mbox
|
| 799 |
|
|
16.80 16.80 16.80 0.00 100% 100% Peek item [empty] mbox
|
| 800 |
|
|
17.65 17.60 18.40 0.09 93% 93% Tryget [empty] mbox
|
| 801 |
|
|
1.85 1.60 2.40 0.34 68% 68% Waiting to get mbox
|
| 802 |
|
|
1.85 1.60 2.40 0.34 68% 68% Waiting to put mbox
|
| 803 |
|
|
19.40 19.20 20.00 0.30 75% 75% Delete mbox
|
| 804 |
|
|
65.05 64.80 65.60 0.34 68% 68% Put/Get mbox
|
| 805 |
|
|
|
| 806 |
|
|
7.05 6.40 7.20 0.24 81% 18% Init semaphore
|
| 807 |
|
|
15.55 15.20 16.00 0.39 56% 56% Post [0] semaphore
|
| 808 |
|
|
17.35 16.80 17.60 0.34 68% 31% Wait [1] semaphore
|
| 809 |
|
|
14.60 14.40 15.20 0.30 75% 75% Trywait [0] semaphore
|
| 810 |
|
|
14.20 13.60 14.40 0.30 75% 25% Trywait [1] semaphore
|
| 811 |
|
|
4.55 4.00 4.80 0.34 68% 31% Peek semaphore
|
| 812 |
|
|
3.75 3.20 4.00 0.34 68% 31% Destroy semaphore
|
| 813 |
|
|
70.85 70.40 71.20 0.39 56% 43% Post/Wait semaphore
|
| 814 |
|
|
|
| 815 |
|
|
6.05 5.60 6.40 0.39 56% 43% Create counter
|
| 816 |
|
|
2.25 1.60 2.40 0.24 81% 18% Get counter value
|
| 817 |
|
|
2.25 1.60 2.40 0.24 81% 18% Set counter value
|
| 818 |
|
|
19.70 19.20 20.00 0.37 62% 37% Tick counter
|
| 819 |
|
|
3.45 3.20 4.00 0.34 68% 68% Delete counter
|
| 820 |
|
|
|
| 821 |
|
|
9.05 8.80 9.60 0.34 68% 68% Create alarm
|
| 822 |
|
|
29.60 29.60 29.60 0.00 100% 100% Initialize alarm
|
| 823 |
|
|
2.15 1.60 2.40 0.34 68% 31% Disable alarm
|
| 824 |
|
|
29.35 28.80 29.60 0.34 68% 31% Enable alarm
|
| 825 |
|
|
5.10 4.80 5.60 0.37 62% 62% Delete alarm
|
| 826 |
|
|
23.20 23.20 23.20 0.00 100% 100% Tick counter [1 alarm]
|
| 827 |
|
|
138.00 137.60 138.40 0.40 100% 50% Tick counter [many alarms]
|
| 828 |
|
|
40.40 40.00 40.80 0.40 100% 50% Tick & fire counter [1 alarm]
|
| 829 |
|
|
704.25 697.60 804.00 12.47 93% 93% Tick & fire counters [>1 together]
|
| 830 |
|
|
155.20 155.20 155.20 0.00 100% 100% Tick & fire counters [>1 separately]
|
| 831 |
|
|
105.20 104.80 151.20 0.76 99% 94% Alarm latency [0 threads]
|
| 832 |
|
|
117.57 104.80 149.60 7.13 57% 25% Alarm latency [2 threads]
|
| 833 |
|
|
117.49 104.80 148.80 7.10 58% 26% Alarm latency [many threads]
|
| 834 |
|
|
192.59 177.60 316.00 1.93 98% 0% Alarm -> thread resume latency
|
| 835 |
|
|
|
| 836 |
|
|
22.10 21.60 24.00 0.00 Clock/interrupt latency
|
| 837 |
|
|
|
| 838 |
|
|
38.69 32.80 61.60 0.00 Clock DSR latency
|
| 839 |
|
|
|
| 840 |
|
|
297 276 316 (main stack: 752) Thread stack used (1120 total)
|
| 841 |
|
|
All done, main stack : stack used 752 size 2400
|
| 842 |
|
|
All done : Interrupt stack used 288 size 4096
|
| 843 |
|
|
All done : Idlethread stack used 272 size 2048
|
| 844 |
|
|
|
| 845 |
|
|
Timing complete - 30350 ms total
|
| 846 |
|
|
|
| 847 |
|
|
PASS:<Basic timing OK>
|
| 848 |
|
|
EXIT:<done>
|
| 849 |
|
|
|
| 850 |
|
|
|
| 851 |
|
|
|
| 852 |
|
|
|
| 853 |
|
|
CPU : ARM 920T 20 MHz
|
| 854 |
|
|
|
| 855 |
|
|
|
| 856 |
|
|
Board: ARM PID Evaluation Board
|
| 857 |
|
|
|
| 858 |
|
|
CPU : ARM 920T 20 MHz
|
| 859 |
|
|
|
| 860 |
|
|
|
| 861 |
|
|
Startup, main stack : stack used 404 size 2400
|
| 862 |
|
|
Startup : Interrupt stack used 136 size 4096
|
| 863 |
|
|
Startup : Idlethread stack used 84 size 2048
|
| 864 |
|
|
|
| 865 |
|
|
eCos Kernel Timings
|
| 866 |
|
|
Notes: all times are in microseconds (.000001) unless otherwise stated
|
| 867 |
|
|
|
| 868 |
|
|
Reading the hardware clock takes 15 'ticks' overhead
|
| 869 |
|
|
... this value will be factored out of all other measurements
|
| 870 |
|
|
Clock interrupt took 291.41 microseconds (364 raw clock ticks)
|
| 871 |
|
|
|
| 872 |
|
|
Testing parameters:
|
| 873 |
|
|
Clock samples: 32
|
| 874 |
|
|
Threads: 50
|
| 875 |
|
|
Thread switches: 128
|
| 876 |
|
|
Mutexes: 32
|
| 877 |
|
|
Mailboxes: 32
|
| 878 |
|
|
Semaphores: 32
|
| 879 |
|
|
Scheduler operations: 128
|
| 880 |
|
|
Counters: 32
|
| 881 |
|
|
Alarms: 32
|
| 882 |
|
|
|
| 883 |
|
|
|
| 884 |
|
|
Confidence
|
| 885 |
|
|
Ave Min Max Var Ave Min Function
|
| 886 |
|
|
====== ====== ====== ====== ========== ========
|
| 887 |
|
|
257.78 168.00 568.00 48.70 56% 28% Create thread
|
| 888 |
|
|
50.21 49.60 50.40 0.29 76% 24% Yield thread [all suspended]
|
| 889 |
|
|
36.26 36.00 36.80 0.35 68% 68% Suspend [suspended] thread
|
| 890 |
|
|
37.20 36.80 37.60 0.40 100% 50% Resume thread
|
| 891 |
|
|
56.24 56.00 56.80 0.34 70% 70% Set priority
|
| 892 |
|
|
5.20 4.80 5.60 0.40 100% 50% Get priority
|
| 893 |
|
|
122.75 122.40 123.20 0.39 56% 56% Kill [suspended] thread
|
| 894 |
|
|
50.19 49.60 50.40 0.31 74% 26% Yield [no other] thread
|
| 895 |
|
|
69.49 66.40 69.60 0.21 92% 2% Resume [suspended low prio] thread
|
| 896 |
|
|
37.01 36.80 37.60 0.31 74% 74% Resume [runnable low prio] thread
|
| 897 |
|
|
64.75 55.20 65.60 0.38 80% 2% Suspend [runnable] thread
|
| 898 |
|
|
50.19 49.60 50.40 0.31 74% 26% Yield [only low prio] thread
|
| 899 |
|
|
36.24 36.00 36.80 0.34 70% 70% Suspend [runnable->not runnable]
|
| 900 |
|
|
122.75 122.40 123.20 0.39 56% 56% Kill [runnable] thread
|
| 901 |
|
|
67.76 67.20 68.00 0.34 70% 30% Destroy [dead] thread
|
| 902 |
|
|
167.07 158.40 168.00 0.35 92% 2% Destroy [runnable] thread
|
| 903 |
|
|
213.49 212.00 249.60 1.46 84% 90% Resume [high priority] thread
|
| 904 |
|
|
122.81 120.00 389.60 4.17 99% 99% Thread switch
|
| 905 |
|
|
|
| 906 |
|
|
4.70 4.00 4.80 0.17 87% 12% Scheduler lock
|
| 907 |
|
|
23.70 23.20 24.00 0.37 62% 37% Scheduler unlock [0 threads]
|
| 908 |
|
|
23.60 23.20 24.00 0.40 100% 50% Scheduler unlock [1 suspended]
|
| 909 |
|
|
23.70 23.20 24.00 0.37 62% 37% Scheduler unlock [many suspended]
|
| 910 |
|
|
23.60 23.20 24.00 0.40 100% 50% Scheduler unlock [many low prio]
|
| 911 |
|
|
|
| 912 |
|
|
15.65 15.20 16.00 0.39 56% 43% Init mutex
|
| 913 |
|
|
42.40 42.40 42.40 0.00 100% 100% Lock [unlocked] mutex
|
| 914 |
|
|
45.37 44.80 46.40 0.36 65% 31% Unlock [locked] mutex
|
| 915 |
|
|
39.20 39.20 39.20 0.00 100% 100% Trylock [unlocked] mutex
|
| 916 |
|
|
34.45 34.40 35.20 0.09 93% 93% Trylock [locked] mutex
|
| 917 |
|
|
8.00 8.00 8.00 0.00 100% 100% Destroy mutex
|
| 918 |
|
|
284.42 284.00 284.80 0.40 53% 46% Unlock/Lock mutex
|
| 919 |
|
|
|
| 920 |
|
|
29.40 28.80 29.60 0.30 75% 25% Create mbox
|
| 921 |
|
|
3.35 3.20 4.00 0.24 81% 81% Peek [empty] mbox
|
| 922 |
|
|
49.35 48.80 49.60 0.34 68% 31% Put [first] mbox
|
| 923 |
|
|
3.35 3.20 4.00 0.24 81% 81% Peek [1 msg] mbox
|
| 924 |
|
|
49.35 48.80 49.60 0.34 68% 31% Put [second] mbox
|
| 925 |
|
|
3.35 3.20 4.00 0.24 81% 81% Peek [2 msgs] mbox
|
| 926 |
|
|
49.15 48.80 49.60 0.39 56% 56% Get [first] mbox
|
| 927 |
|
|
49.15 48.80 49.60 0.39 56% 56% Get [second] mbox
|
| 928 |
|
|
47.80 47.20 48.00 0.30 75% 25% Tryput [first] mbox
|
| 929 |
|
|
41.40 40.80 41.60 0.30 75% 25% Peek item [non-empty] mbox
|
| 930 |
|
|
49.40 48.80 49.60 0.30 75% 25% Tryget [non-empty] mbox
|
| 931 |
|
|
40.15 40.00 40.80 0.24 81% 81% Peek item [empty] mbox
|
| 932 |
|
|
40.95 40.80 41.60 0.24 81% 81% Tryget [empty] mbox
|
| 933 |
|
|
4.05 4.00 4.80 0.09 93% 93% Waiting to get mbox
|
| 934 |
|
|
4.05 4.00 4.80 0.09 93% 93% Waiting to put mbox
|
| 935 |
|
|
45.60 45.60 45.60 0.00 100% 100% Delete mbox
|
| 936 |
|
|
153.27 152.80 153.60 0.39 59% 40% Put/Get mbox
|
| 937 |
|
|
|
| 938 |
|
|
16.80 16.80 16.80 0.00 100% 100% Init semaphore
|
| 939 |
|
|
36.60 36.00 36.80 0.30 75% 25% Post [0] semaphore
|
| 940 |
|
|
39.60 39.20 40.00 0.40 100% 50% Wait [1] semaphore
|
| 941 |
|
|
34.80 34.40 35.20 0.40 100% 50% Trywait [0] semaphore
|
| 942 |
|
|
33.35 32.80 33.60 0.34 68% 31% Trywait [1] semaphore
|
| 943 |
|
|
10.30 9.60 10.40 0.17 87% 12% Peek semaphore
|
| 944 |
|
|
8.80 8.80 8.80 0.00 100% 100% Destroy semaphore
|
| 945 |
|
|
166.92 166.40 167.20 0.36 65% 34% Post/Wait semaphore
|
| 946 |
|
|
|
| 947 |
|
|
13.60 13.60 13.60 0.00 100% 100% Create counter
|
| 948 |
|
|
4.85 4.80 5.60 0.09 93% 93% Get counter value
|
| 949 |
|
|
4.80 4.80 4.80 0.00 100% 100% Set counter value
|
| 950 |
|
|
45.25 44.80 45.60 0.39 56% 43% Tick counter
|
| 951 |
|
|
7.75 7.20 8.00 0.34 68% 31% Delete counter
|
| 952 |
|
|
|
| 953 |
|
|
20.80 20.80 20.80 0.00 100% 100% Create alarm
|
| 954 |
|
|
69.30 68.80 69.60 0.37 62% 37% Initialize alarm
|
| 955 |
|
|
4.80 4.80 4.80 0.00 100% 100% Disable alarm
|
| 956 |
|
|
67.35 67.20 68.00 0.24 81% 81% Enable alarm
|
| 957 |
|
|
11.80 11.20 12.00 0.30 75% 25% Delete alarm
|
| 958 |
|
|
54.80 54.40 55.20 0.40 100% 50% Tick counter [1 alarm]
|
| 959 |
|
|
372.35 363.20 652.80 17.53 96% 96% Tick counter [many alarms]
|
| 960 |
|
|
95.50 95.20 96.00 0.37 62% 62% Tick & fire counter [1 alarm]
|
| 961 |
|
|
1757.92 1707.20 1996.80 81.43 81% 81% Tick & fire counters [>1 together]
|
| 962 |
|
|
404.37 404.00 404.80 0.40 53% 53% Tick & fire counters [>1 separately]
|
| 963 |
|
|
256.57 254.40 395.20 2.17 98% 97% Alarm latency [0 threads]
|
| 964 |
|
|
296.60 255.20 359.20 23.53 53% 31% Alarm latency [2 threads]
|
| 965 |
|
|
307.49 265.60 357.60 27.52 53% 53% Alarm latency [many threads]
|
| 966 |
|
|
467.04 432.00 788.80 5.03 97% 1% Alarm -> thread resume latency
|
| 967 |
|
|
|
| 968 |
|
|
55.63 54.40 60.80 0.00 Clock/interrupt latency
|
| 969 |
|
|
|
| 970 |
|
|
101.23 80.80 1433.60 0.00 Clock DSR latency
|
| 971 |
|
|
|
| 972 |
|
|
316 316 316 (main stack: 752) Thread stack used (1120 total)
|
| 973 |
|
|
All done, main stack : stack used 752 size 2400
|
| 974 |
|
|
All done : Interrupt stack used 288 size 4096
|
| 975 |
|
|
All done : Idlethread stack used 272 size 2048
|
| 976 |
|
|
|
| 977 |
|
|
Timing complete - 30780 ms total
|
| 978 |
|
|
|
| 979 |
|
|
PASS:<Basic timing OK>
|
| 980 |
|
|
EXIT:<done>
|
| 981 |
|
|
|
| 982 |
|
|
|
| 983 |
|
|
|
| 984 |
|
|
|
| 985 |
|
|
|
| 986 |
|
|
|
| 987 |
|
|
|
| 988 |
|
|
Board: Intel IQ80310 XScale Development Kit
|
| 989 |
|
|
Board: Intel IQ80310 XScale Development Kit
|
| 990 |
|
|
|
| 991 |
|
|
CPU: Intel XScale 600MHz
|
| 992 |
|
|
|
| 993 |
|
|
|
| 994 |
|
|
Startup, main stack : stack used 388 size 2400
|
| 995 |
|
|
Startup : Interrupt stack used 148 size 4096
|
| 996 |
|
|
Startup : Idlethread stack used 76 size 1120
|
| 997 |
|
|
|
| 998 |
|
|
eCos Kernel Timings
|
| 999 |
|
|
Notes: all times are in microseconds (.000001) unless otherwise stated
|
| 1000 |
|
|
|
| 1001 |
|
|
Reading the hardware clock takes 73 'ticks' overhead
|
| 1002 |
|
|
... this value will be factored out of all other measurements
|
| 1003 |
|
|
Clock interrupt took 12.11 microseconds (399 raw clock ticks)
|
| 1004 |
|
|
|
| 1005 |
|
|
Testing parameters:
|
| 1006 |
|
|
Clock samples: 32
|
| 1007 |
|
|
Threads: 64
|
| 1008 |
|
|
Thread switches: 128
|
| 1009 |
|
|
Mutexes: 32
|
| 1010 |
|
|
Mailboxes: 32
|
| 1011 |
|
|
Semaphores: 32
|
| 1012 |
|
|
Scheduler operations: 128
|
| 1013 |
|
|
Counters: 32
|
| 1014 |
|
|
Alarms: 32
|
| 1015 |
|
|
|
| 1016 |
|
|
|
| 1017 |
|
|
Confidence
|
| 1018 |
|
|
Ave Min Max Var Ave Min Function
|
| 1019 |
|
|
====== ====== ====== ====== ========== ========
|
| 1020 |
|
|
6.53 5.48 8.55 0.50 53% 23% Create thread
|
| 1021 |
|
|
0.37 0.03 3.24 0.18 87% 1% Yield thread [all suspended]
|
| 1022 |
|
|
0.24 0.00 2.06 0.12 87% 1% Suspend [suspended] thread
|
| 1023 |
|
|
0.25 0.00 0.73 0.06 71% 1% Resume thread
|
| 1024 |
|
|
0.36 0.09 0.82 0.10 89% 1% Set priority
|
| 1025 |
|
|
0.03 0.00 0.42 0.05 90% 90% Get priority
|
| 1026 |
|
|
1.07 0.52 6.39 0.18 92% 1% Kill [suspended] thread
|
| 1027 |
|
|
0.33 0.06 0.91 0.08 78% 3% Yield [no other] thread
|
| 1028 |
|
|
0.55 0.03 1.06 0.09 85% 1% Resume [suspended low prio] thread
|
| 1029 |
|
|
0.28 0.00 1.79 0.11 84% 4% Resume [runnable low prio] thread
|
| 1030 |
|
|
0.43 0.00 1.00 0.12 76% 1% Suspend [runnable] thread
|
| 1031 |
|
|
0.31 0.00 1.24 0.09 82% 4% Yield [only low prio] thread
|
| 1032 |
|
|
0.21 0.00 0.42 0.04 73% 1% Suspend [runnable->not runnable]
|
| 1033 |
|
|
1.00 0.88 1.45 0.04 78% 4% Kill [runnable] thread
|
| 1034 |
|
|
0.59 0.42 3.97 0.13 81% 87% Destroy [dead] thread
|
| 1035 |
|
|
1.43 1.27 1.94 0.07 78% 7% Destroy [runnable] thread
|
| 1036 |
|
|
3.12 2.58 5.09 0.33 56% 34% Resume [high priority] thread
|
| 1037 |
|
|
0.87 0.36 1.39 0.07 86% 0% Thread switch
|
| 1038 |
|
|
|
| 1039 |
|
|
0.15 0.00 1.39 0.21 81% 81% Scheduler lock
|
| 1040 |
|
|
0.16 0.00 0.64 0.08 85% 7% Scheduler unlock [0 threads]
|
| 1041 |
|
|
0.16 0.00 0.64 0.08 75% 8% Scheduler unlock [1 suspended]
|
| 1042 |
|
|
0.16 0.00 0.70 0.08 78% 6% Scheduler unlock [many suspended]
|
| 1043 |
|
|
0.16 0.00 0.64 0.07 81% 4% Scheduler unlock [many low prio]
|
| 1044 |
|
|
|
| 1045 |
|
|
0.45 0.00 1.39 0.34 56% 46% Init mutex
|
| 1046 |
|
|
0.43 0.18 3.27 0.23 87% 87% Lock [unlocked] mutex
|
| 1047 |
|
|
0.48 0.09 3.88 0.26 84% 71% Unlock [locked] mutex
|
| 1048 |
|
|
0.35 0.21 2.24 0.21 87% 84% Trylock [unlocked] mutex
|
| 1049 |
|
|
0.26 0.00 0.67 0.13 78% 9% Trylock [locked] mutex
|
| 1050 |
|
|
0.21 0.00 1.27 0.24 78% 75% Destroy mutex
|
| 1051 |
|
|
2.58 2.09 3.09 0.13 75% 9% Unlock/Lock mutex
|
| 1052 |
|
|
|
| 1053 |
|
|
0.99 0.21 2.48 0.41 65% 28% Create mbox
|
| 1054 |
|
|
0.04 0.00 0.39 0.07 90% 87% Peek [empty] mbox
|
| 1055 |
|
|
0.47 0.27 3.48 0.29 90% 78% Put [first] mbox
|
| 1056 |
|
|
0.02 0.00 0.39 0.03 90% 90% Peek [1 msg] mbox
|
| 1057 |
|
|
0.29 0.15 0.58 0.04 68% 3% Put [second] mbox
|
| 1058 |
|
|
0.02 0.00 0.45 0.04 93% 93% Peek [2 msgs] mbox
|
| 1059 |
|
|
0.48 0.21 3.67 0.26 84% 87% Get [first] mbox
|
| 1060 |
|
|
0.35 0.09 0.82 0.11 75% 3% Get [second] mbox
|
| 1061 |
|
|
0.50 0.21 3.18 0.33 90% 68% Tryput [first] mbox
|
| 1062 |
|
|
0.39 0.15 1.39 0.19 78% 68% Peek item [non-empty] mbox
|
| 1063 |
|
|
0.43 0.18 3.33 0.23 87% 90% Tryget [non-empty] mbox
|
| 1064 |
|
|
0.28 0.03 0.79 0.06 68% 3% Peek item [empty] mbox
|
| 1065 |
|
|
0.28 0.21 0.58 0.05 71% 65% Tryget [empty] mbox
|
| 1066 |
|
|
0.01 0.00 0.36 0.02 96% 90% Waiting to get mbox
|
| 1067 |
|
|
0.05 0.00 0.45 0.09 87% 84% Waiting to put mbox
|
| 1068 |
|
|
0.42 0.09 2.88 0.20 84% 12% Delete mbox
|
| 1069 |
|
|
1.39 1.27 2.39 0.14 87% 87% Put/Get mbox
|
| 1070 |
|
|
|
| 1071 |
|
|
0.35 0.00 1.36 0.45 75% 68% Init semaphore
|
| 1072 |
|
|
0.19 0.00 0.45 0.04 81% 3% Post [0] semaphore
|
| 1073 |
|
|
0.25 0.21 0.88 0.06 84% 81% Wait [1] semaphore
|
| 1074 |
|
|
0.32 0.06 1.79 0.21 78% 68% Trywait [0] semaphore
|
| 1075 |
|
|
0.20 0.00 0.52 0.06 62% 3% Trywait [1] semaphore
|
| 1076 |
|
|
0.07 0.00 0.45 0.10 84% 81% Peek semaphore
|
| 1077 |
|
|
0.06 0.00 0.52 0.06 71% 78% Destroy semaphore
|
| 1078 |
|
|
1.45 1.42 1.79 0.04 87% 87% Post/Wait semaphore
|
| 1079 |
|
|
|
| 1080 |
|
|
0.70 0.00 2.88 0.47 43% 34% Create counter
|
| 1081 |
|
|
0.05 0.00 0.42 0.09 87% 84% Get counter value
|
| 1082 |
|
|
0.02 0.00 0.45 0.04 93% 93% Set counter value
|
| 1083 |
|
|
0.38 0.12 0.58 0.06 59% 3% Tick counter
|
| 1084 |
|
|
0.03 0.00 0.48 0.05 93% 78% Delete counter
|
| 1085 |
|
|
|
| 1086 |
|
|
1.10 0.39 4.30 0.47 62% 53% Create alarm
|
| 1087 |
|
|
0.58 0.03 3.12 0.18 87% 3% Initialize alarm
|
| 1088 |
|
|
0.04 0.00 0.42 0.07 90% 90% Disable alarm
|
| 1089 |
|
|
0.54 0.36 1.36 0.12 84% 43% Enable alarm
|
| 1090 |
|
|
0.03 0.00 0.70 0.06 84% 84% Delete alarm
|
| 1091 |
|
|
0.50 0.24 0.97 0.08 84% 6% Tick counter [1 alarm]
|
| 1092 |
|
|
5.30 5.12 5.97 0.14 84% 75% Tick counter [many alarms]
|
| 1093 |
|
|
0.82 0.64 1.36 0.11 78% 43% Tick & fire counter [1 alarm]
|
| 1094 |
|
|
14.13 13.85 14.55 0.09 78% 3% Tick & fire counters [>1 together]
|
| 1095 |
|
|
5.56 5.45 6.00 0.09 78% 71% Tick & fire counters [>1 separately]
|
| 1096 |
|
|
9.69 9.45 12.52 0.22 64% 71% Alarm latency [0 threads]
|
| 1097 |
|
|
9.98 9.48 12.76 0.23 69% 14% Alarm latency [2 threads]
|
| 1098 |
|
|
10.38 9.48 24.67 0.59 74% 45% Alarm latency [many threads]
|
| 1099 |
|
|
11.72 11.30 21.33 0.32 81% 58% Alarm -> thread resume latency
|
| 1100 |
|
|
|
| 1101 |
|
|
1.87 1.82 10.42 0.00 Clock/interrupt latency
|
| 1102 |
|
|
|
| 1103 |
|
|
3.02 2.58 7.67 0.00 Clock DSR latency
|
| 1104 |
|
|
|
| 1105 |
|
|
9 0 260 (main stack: 776) Thread stack used (1120 total)
|
| 1106 |
|
|
All done, main stack : stack used 776 size 2400
|
| 1107 |
|
|
All done : Interrupt stack used 268 size 4096
|
| 1108 |
|
|
All done : Idlethread stack used 244 size 1120
|
| 1109 |
|
|
|
| 1110 |
|
|
Timing complete - 30300 ms total
|
| 1111 |
|
|
|
| 1112 |
|
|
PASS:<Basic timing OK>
|
| 1113 |
|
|
EXIT:<done>
|
| 1114 |
|
|
|
| 1115 |
|
|
|
| 1116 |
|
|
|
| 1117 |
|
|
|
| 1118 |
|
|
|
| 1119 |
|
|
|
| 1120 |
|
|
|
| 1121 |
|
|
Board: Toshiba JMR3904 Evaluation Board
|
| 1122 |
|
|
|
| 1123 |
|
|
|
| 1124 |
|
|
Board: Toshiba JMR3904 Evaluation Board
|
| 1125 |
|
|
|
| 1126 |
|
|
CPU : TMPR3904F 50MHz
|
| 1127 |
|
|
|
| 1128 |
|
|
|
| 1129 |
|
|
eCOS Kernel Timings
|
| 1130 |
|
|
Note: all times are in microseconds (.000001) unless otherwise stated
|
| 1131 |
|
|
|
| 1132 |
|
|
Reading the hardware clock takes 0 'ticks' overhead
|
| 1133 |
|
|
... this value will be factored out of all other measurements
|
| 1134 |
|
|
Clock interrupt took 29.68 microseconds (45 raw clock ticks)
|
| 1135 |
|
|
|
| 1136 |
|
|
Testing parameters:
|
| 1137 |
|
|
Clock samples: 32
|
| 1138 |
|
|
Threads: 24
|
| 1139 |
|
|
Thread switches: 128
|
| 1140 |
|
|
Mutexes: 32
|
| 1141 |
|
|
Mailboxes: 32
|
| 1142 |
|
|
Semaphores: 32
|
| 1143 |
|
|
Scheduler operations: 128
|
| 1144 |
|
|
Counters: 32
|
| 1145 |
|
|
Alarms: 32
|
| 1146 |
|
|
|
| 1147 |
|
|
|
| 1148 |
|
|
Confidence
|
| 1149 |
|
|
Ave Min Max Var Ave Min Function
|
| 1150 |
|
|
====== ====== ====== ====== ========== ========
|
| 1151 |
|
|
13.62 11.72 27.99 1.51 79% 54% Create thread
|
| 1152 |
|
|
2.77 2.60 3.91 0.26 79% 79% Yield thread [all suspended]
|
| 1153 |
|
|
3.31 2.60 6.51 0.27 83% 12% Suspend [suspended] thread
|
| 1154 |
|
|
2.58 1.95 7.81 0.47 58% 37% Resume thread
|
| 1155 |
|
|
4.94 4.56 11.07 0.60 95% 79% Set priority
|
| 1156 |
|
|
0.71 0.65 1.95 0.10 95% 95% Get priority
|
| 1157 |
|
|
14.97 14.32 25.39 0.87 95% 95% Kill [suspended] thread
|
| 1158 |
|
|
2.25 1.95 9.11 0.57 95% 95% Yield [no other] thread
|
| 1159 |
|
|
7.27 6.51 12.37 0.42 79% 16% Resume [suspended low prio] thread
|
| 1160 |
|
|
2.28 1.95 7.16 0.51 95% 79% Resume [runnable low prio] thread
|
| 1161 |
|
|
4.31 3.26 12.37 0.75 87% 79% Suspend [runnable] thread
|
| 1162 |
|
|
2.17 1.95 7.16 0.42 95% 95% Yield [only low prio] thread
|
| 1163 |
|
|
2.39 1.95 6.51 0.51 95% 58% Suspend [runnable->not runnable]
|
| 1164 |
|
|
13.43 12.37 22.79 0.80 91% 91% Kill [runnable] thread
|
| 1165 |
|
|
22.30 20.83 37.76 1.76 91% 91% Resume [high priority] thread
|
| 1166 |
|
|
4.62 4.56 11.07 0.13 98% 98% Thread switch
|
| 1167 |
|
|
|
| 1168 |
|
|
1.51 1.30 2.60 0.29 68% 68% Scheduler lock
|
| 1169 |
|
|
2.36 1.95 3.26 0.31 61% 37% Scheduler unlock [0 threads]
|
| 1170 |
|
|
2.39 1.95 5.21 0.32 62% 36% Scheduler unlock [1 suspended]
|
| 1171 |
|
|
2.38 1.95 4.56 0.32 61% 37% Scheduler unlock [many suspended]
|
| 1172 |
|
|
2.38 1.95 5.21 0.32 61% 37% Scheduler unlock [many low prio]
|
| 1173 |
|
|
|
| 1174 |
|
|
0.90 0.65 3.26 0.35 71% 71% Init mutex
|
| 1175 |
|
|
2.48 1.95 8.46 0.50 50% 46% Lock [unlocked] mutex
|
| 1176 |
|
|
2.83 2.60 9.11 0.42 93% 93% Unlock [locked] mutex
|
| 1177 |
|
|
2.30 1.95 6.51 0.45 96% 65% Trylock [unlocked] mutex
|
| 1178 |
|
|
1.99 1.30 5.86 0.24 84% 12% Trylock [locked] mutex
|
| 1179 |
|
|
0.04 0.00 1.30 0.08 96% 96% Destroy mutex
|
| 1180 |
|
|
42.40 42.32 44.92 0.16 96% 96% Unlock/Lock mutex
|
| 1181 |
|
|
|
| 1182 |
|
|
1.44 1.30 5.86 0.28 96% 96% Create mbox
|
| 1183 |
|
|
0.51 0.00 1.30 0.25 71% 25% Peek [empty] mbox
|
| 1184 |
|
|
2.93 2.60 9.11 0.51 96% 78% Put [first] mbox
|
| 1185 |
|
|
0.51 0.00 1.30 0.25 71% 25% Peek [1 msg] mbox
|
| 1186 |
|
|
4.19 3.91 5.21 0.34 59% 59% Put [second] mbox
|
| 1187 |
|
|
0.45 0.00 0.65 0.28 68% 31% Peek [2 msgs] mbox
|
| 1188 |
|
|
3.28 2.60 10.42 0.45 65% 31% Get [first] mbox
|
| 1189 |
|
|
3.34 2.60 9.77 0.40 78% 18% Get [second] mbox
|
| 1190 |
|
|
2.69 1.95 9.11 0.40 78% 18% Tryput [first] mbox
|
| 1191 |
|
|
2.75 1.95 7.81 0.32 93% 3% Peek item [non-empty] mbox
|
| 1192 |
|
|
3.15 2.60 9.11 0.48 53% 43% Tryget [non-empty] mbox
|
| 1193 |
|
|
2.22 1.95 6.51 0.41 96% 78% Peek item [empty] mbox
|
| 1194 |
|
|
2.40 1.95 5.86 0.42 50% 46% Tryget [empty] mbox
|
| 1195 |
|
|
0.47 0.00 0.65 0.26 71% 28% Waiting to get mbox
|
| 1196 |
|
|
0.59 0.00 1.30 0.15 84% 12% Waiting to put mbox
|
| 1197 |
|
|
4.01 3.26 10.42 0.40 81% 15% Delete mbox
|
| 1198 |
|
|
26.18 26.04 30.60 0.28 96% 96% Put/Get mbox
|
| 1199 |
|
|
|
| 1200 |
|
|
0.92 0.65 3.91 0.38 71% 71% Init semaphore
|
| 1201 |
|
|
2.24 1.95 6.51 0.43 96% 75% Post [0] semaphore
|
| 1202 |
|
|
2.32 1.95 7.16 0.48 96% 65% Wait [1] semaphore
|
| 1203 |
|
|
2.03 1.30 5.86 0.24 90% 6% Trywait [0] semaphore
|
| 1204 |
|
|
1.91 1.30 4.56 0.23 78% 18% Trywait [1] semaphore
|
| 1205 |
|
|
0.77 0.00 1.95 0.30 65% 9% Peek semaphore
|
| 1206 |
|
|
0.61 0.00 1.95 0.15 84% 12% Destroy semaphore
|
| 1207 |
|
|
22.62 22.14 30.60 0.61 96% 62% Post/Wait semaphore
|
| 1208 |
|
|
|
| 1209 |
|
|
0.92 0.65 3.91 0.38 71% 71% Create counter
|
| 1210 |
|
|
0.69 0.65 1.95 0.08 96% 96% Get counter value
|
| 1211 |
|
|
0.41 0.00 1.30 0.33 56% 40% Set counter value
|
| 1212 |
|
|
3.21 2.60 5.86 0.27 71% 21% Tick counter
|
| 1213 |
|
|
0.65 0.00 3.26 0.16 84% 12% Delete counter
|
| 1214 |
|
|
|
| 1215 |
|
|
1.57 1.30 4.56 0.38 71% 71% Create alarm
|
| 1216 |
|
|
4.52 3.91 13.02 0.57 50% 46% Initialize alarm
|
| 1217 |
|
|
0.61 0.00 1.95 0.15 84% 12% Disable alarm
|
| 1218 |
|
|
4.43 3.91 9.11 0.43 56% 40% Enable alarm
|
| 1219 |
|
|
0.87 0.65 2.60 0.32 71% 71% Delete alarm
|
| 1220 |
|
|
2.93 2.60 6.51 0.43 96% 65% Tick counter [1 alarm]
|
| 1221 |
|
|
14.83 14.32 22.79 0.60 96% 59% Tick counter [many alarms]
|
| 1222 |
|
|
4.88 4.56 11.07 0.51 96% 78% Tick & fire counter [1 alarm]
|
| 1223 |
|
|
83.25 82.03 102.86 1.23 96% 93% Tick & fire counters [>1 together]
|
| 1224 |
|
|
17.58 16.93 27.34 0.61 50% 46% Tick & fire counters [>1 separately]
|
| 1225 |
|
|
26.18 24.74 40.36 0.30 97% 0% Alarm latency [0 threads]
|
| 1226 |
|
|
33.88 29.30 56.64 1.70 85% 6% Alarm latency [2 threads]
|
| 1227 |
|
|
36.37 29.30 61.20 3.25 53% 24% Alarm latency [many threads]
|
| 1228 |
|
|
|
| 1229 |
|
|
7.85 6.51 14.97 0.00 Clock/interrupt latency
|
| 1230 |
|
|
|
| 1231 |
|
|
Timing complete - 23540 ms total
|
| 1232 |
|
|
|
| 1233 |
|
|
PASS:<Basic timing OK>
|
| 1234 |
|
|
EXIT:<done>
|
| 1235 |
|
|
|
| 1236 |
|
|
|
| 1237 |
|
|
|
| 1238 |
|
|
|
| 1239 |
|
|
|
| 1240 |
|
|
|
| 1241 |
|
|
|
| 1242 |
|
|
Board: Toshiba REF 4955
|
| 1243 |
|
|
|
| 1244 |
|
|
|
| 1245 |
|
|
Board: Toshiba REF 4955
|
| 1246 |
|
|
|
| 1247 |
|
|
CPU : Toshiba TX4955 66MHz
|
| 1248 |
|
|
|
| 1249 |
|
|
Startup, main stack : stack used 960 size 2936
|
| 1250 |
|
|
Startup : Interrupt stack used 168 size 4096
|
| 1251 |
|
|
Startup : Idlethread stack used 372 size 2048
|
| 1252 |
|
|
|
| 1253 |
|
|
eCos Kernel Timings
|
| 1254 |
|
|
Notes: all times are in microseconds (.000001) unless otherwise stated
|
| 1255 |
|
|
|
| 1256 |
|
|
Reading the hardware clock takes 3 `ticks' overhead
|
| 1257 |
|
|
... this value will be factored out of all other measurements
|
| 1258 |
|
|
Clock interrupt took 4.00 microseconds (264 raw clock ticks)
|
| 1259 |
|
|
|
| 1260 |
|
|
Testing parameters:
|
| 1261 |
|
|
Clock samples: 32
|
| 1262 |
|
|
Threads: 64
|
| 1263 |
|
|
Thread switches: 128
|
| 1264 |
|
|
Mutexes: 32
|
| 1265 |
|
|
Mailboxes: 32
|
| 1266 |
|
|
Semaphores: 32
|
| 1267 |
|
|
Scheduler operations: 128
|
| 1268 |
|
|
Counters: 32
|
| 1269 |
|
|
Alarms: 32
|
| 1270 |
|
|
|
| 1271 |
|
|
|
| 1272 |
|
|
Confidence
|
| 1273 |
|
|
Ave Min Max Var Ave Min Function
|
| 1274 |
|
|
====== ====== ====== ====== ========== ========
|
| 1275 |
|
|
11.21 9.58 14.11 0.95 48% 34% Create thread
|
| 1276 |
|
|
0.66 0.65 1.29 0.02 98% 98% Yield thread [all suspended]
|
| 1277 |
|
|
0.63 0.53 3.06 0.17 82% 82% Suspend [suspended] thread
|
| 1278 |
|
|
0.54 0.53 1.06 0.02 98% 98% Resume thread
|
| 1279 |
|
|
0.78 0.74 1.39 0.05 93% 93% Set priority
|
| 1280 |
|
|
0.05 0.05 0.36 0.01 98% 98% Get priority
|
| 1281 |
|
|
2.06 1.89 6.65 0.25 95% 79% Kill [suspended] thread
|
| 1282 |
|
|
0.65 0.65 0.68 0.00 98% 98% Yield [no other] thread
|
| 1283 |
|
|
1.15 1.02 3.03 0.20 81% 81% Resume [suspended low prio] thread
|
| 1284 |
|
|
0.54 0.52 1.18 0.03 96% 96% Resume [runnable low prio] thread
|
| 1285 |
|
|
0.94 0.88 1.27 0.01 95% 1% Suspend [runnable] thread
|
| 1286 |
|
|
0.65 0.65 0.68 0.00 98% 98% Yield [only low prio] thread
|
| 1287 |
|
|
0.54 0.53 0.86 0.01 98% 96% Suspend [runnable->not runnable]
|
| 1288 |
|
|
1.97 1.89 2.98 0.12 84% 84% Kill [runnable] thread
|
| 1289 |
|
|
1.03 0.92 4.94 0.17 89% 89% Destroy [dead] thread
|
| 1290 |
|
|
2.55 2.33 4.38 0.24 89% 70% Destroy [runnable] thread
|
| 1291 |
|
|
5.62 4.11 13.23 0.99 65% 40% Resume [high priority] thread
|
| 1292 |
|
|
1.84 1.83 2.79 0.02 98% 98% Thread switch
|
| 1293 |
|
|
|
| 1294 |
|
|
0.12 0.02 0.65 0.15 74% 74% Scheduler lock
|
| 1295 |
|
|
0.35 0.35 0.35 0.00 100% 100% Scheduler unlock [0 threads]
|
| 1296 |
|
|
0.35 0.35 0.35 0.00 100% 100% Scheduler unlock [1 suspended]
|
| 1297 |
|
|
0.43 0.35 1.17 0.13 78% 78% Scheduler unlock [many suspended]
|
| 1298 |
|
|
0.45 0.35 1.17 0.15 75% 75% Scheduler unlock [many low prio]
|
| 1299 |
|
|
|
| 1300 |
|
|
0.46 0.15 3.38 0.30 62% 50% Init mutex
|
| 1301 |
|
|
0.73 0.64 3.27 0.16 96% 96% Lock [unlocked] mutex
|
| 1302 |
|
|
0.77 0.65 4.50 0.23 96% 96% Unlock [locked] mutex
|
| 1303 |
|
|
0.58 0.55 1.42 0.05 96% 96% Trylock [unlocked] mutex
|
| 1304 |
|
|
0.51 0.50 0.83 0.02 96% 96% Trylock [locked] mutex
|
| 1305 |
|
|
0.12 0.11 0.41 0.02 96% 96% Destroy mutex
|
| 1306 |
|
|
4.72 4.70 5.58 0.05 96% 96% Unlock/Lock mutex
|
| 1307 |
|
|
|
| 1308 |
|
|
1.01 0.67 3.48 0.40 71% 71% Create mbox
|
| 1309 |
|
|
0.02 0.00 0.53 0.03 96% 96% Peek [empty] mbox
|
| 1310 |
|
|
0.89 0.68 4.20 0.29 96% 71% Put [first] mbox
|
| 1311 |
|
|
0.02 0.00 0.33 0.02 96% 96% Peek [1 msg] mbox
|
| 1312 |
|
|
0.69 0.68 0.76 0.01 50% 46% Put [second] mbox
|
| 1313 |
|
|
0.02 0.00 0.30 0.02 96% 96% Peek [2 msgs] mbox
|
| 1314 |
|
|
0.81 0.71 3.83 0.19 96% 96% Get [first] mbox
|
| 1315 |
|
|
0.72 0.71 1.02 0.02 96% 96% Get [second] mbox
|
| 1316 |
|
|
0.81 0.65 2.74 0.22 96% 71% Tryput [first] mbox
|
| 1317 |
|
|
0.67 0.62 2.27 0.10 96% 96% Peek item [non-empty] mbox
|
| 1318 |
|
|
0.77 0.71 2.41 0.10 96% 96% Tryget [non-empty] mbox
|
| 1319 |
|
|
0.59 0.58 0.88 0.02 96% 96% Peek item [empty] mbox
|
| 1320 |
|
|
0.62 0.62 0.67 0.00 96% 96% Tryget [empty] mbox
|
| 1321 |
|
|
0.03 0.02 0.32 0.02 96% 96% Waiting to get mbox
|
| 1322 |
|
|
0.02 0.02 0.06 0.01 50% 46% Waiting to put mbox
|
| 1323 |
|
|
0.75 0.65 3.59 0.18 96% 96% Delete mbox
|
| 1324 |
|
|
2.80 2.77 3.59 0.05 96% 96% Put/Get mbox
|
| 1325 |
|
|
|
| 1326 |
|
|
0.37 0.18 0.88 0.28 71% 71% Init semaphore
|
| 1327 |
|
|
0.48 0.47 0.80 0.02 96% 96% Post [0] semaphore
|
| 1328 |
|
|
0.60 0.59 0.67 0.01 50% 46% Wait [1] semaphore
|
| 1329 |
|
|
0.53 0.50 1.41 0.06 96% 96% Trywait [0] semaphore
|
| 1330 |
|
|
0.51 0.50 0.71 0.01 96% 50% Trywait [1] semaphore
|
| 1331 |
|
|
0.09 0.09 0.15 0.00 96% 96% Peek semaphore
|
| 1332 |
|
|
0.12 0.11 0.41 0.02 96% 96% Destroy semaphore
|
| 1333 |
|
|
3.05 3.05 3.05 0.00 100% 100% Post/Wait semaphore
|
| 1334 |
|
|
|
| 1335 |
|
|
0.57 0.17 2.76 0.24 59% 25% Create counter
|
| 1336 |
|
|
0.06 0.05 0.58 0.03 96% 96% Get counter value
|
| 1337 |
|
|
0.06 0.03 0.64 0.04 96% 96% Set counter value
|
| 1338 |
|
|
0.73 0.71 1.02 0.02 96% 96% Tick counter
|
| 1339 |
|
|
0.12 0.11 0.15 0.01 50% 46% Delete counter
|
| 1340 |
|
|
|
| 1341 |
|
|
0.89 0.64 3.15 0.34 84% 71% Create alarm
|
| 1342 |
|
|
1.00 0.95 2.41 0.09 96% 96% Initialize alarm
|
| 1343 |
|
|
0.09 0.06 0.68 0.04 96% 96% Disable alarm
|
| 1344 |
|
|
1.05 1.00 2.48 0.09 96% 96% Enable alarm
|
| 1345 |
|
|
0.18 0.17 0.50 0.02 96% 96% Delete alarm
|
| 1346 |
|
|
0.90 0.89 1.11 0.01 96% 96% Tick counter [1 alarm]
|
| 1347 |
|
|
5.60 5.59 5.88 0.02 96% 96% Tick counter [many alarms]
|
| 1348 |
|
|
1.53 1.52 2.11 0.04 96% 96% Tick & fire counter [1 alarm]
|
| 1349 |
|
|
25.48 25.47 25.76 0.02 96% 96% Tick & fire counters [>1 together]
|
| 1350 |
|
|
6.22 6.21 6.44 0.01 96% 96% Tick & fire counters [>1 separately]
|
| 1351 |
|
|
2.59 2.56 6.17 0.07 98% 98% Alarm latency [0 threads]
|
| 1352 |
|
|
4.06 3.95 6.24 0.08 78% 57% Alarm latency [2 threads]
|
| 1353 |
|
|
5.03 2.56 9.03 0.89 59% 10% Alarm latency [many threads]
|
| 1354 |
|
|
5.68 5.59 15.45 0.15 99% 99% Alarm -> thread resume latency
|
| 1355 |
|
|
|
| 1356 |
|
|
2.52 1.41 8.12 0.00 Clock/interrupt latency
|
| 1357 |
|
|
|
| 1358 |
|
|
2.05 1.17 6.00 0.00 Clock DSR latency
|
| 1359 |
|
|
|
| 1360 |
|
|
34 0 1072 (main stack: 1320) Thread stack used (1912 total)
|
| 1361 |
|
|
All done, main stack : stack used 1320 size 2936
|
| 1362 |
|
|
All done : Interrupt stack used 136 size 4096
|
| 1363 |
|
|
All done : Idlethread stack used 996 size 2048
|
| 1364 |
|
|
|
| 1365 |
|
|
Timing complete - 30360 ms total
|
| 1366 |
|
|
|
| 1367 |
|
|
PASS:<Basic timing OK>
|
| 1368 |
|
|
EXIT:<done>
|
| 1369 |
|
|
|
| 1370 |
|
|
|
| 1371 |
|
|
|
| 1372 |
|
|
|
| 1373 |
|
|
|
| 1374 |
|
|
|
| 1375 |
|
|
|
| 1376 |
|
|
Board: Matsushita STDEVAL1 Board
|
| 1377 |
|
|
|
| 1378 |
|
|
|
| 1379 |
|
|
Board: Matsushita STDEVAL1 Board
|
| 1380 |
|
|
|
| 1381 |
|
|
CPU : MN103002A 60MHz
|
| 1382 |
|
|
|
| 1383 |
|
|
eCOS Kernel Timings
|
| 1384 |
|
|
Note: all times are in microseconds (.000001) unless otherwise stated
|
| 1385 |
|
|
|
| 1386 |
|
|
Reading the hardware clock takes 18 'ticks' overhead
|
| 1387 |
|
|
... this value will be factored out of all other measurements
|
| 1388 |
|
|
Clock interrupt took 13.73 microseconds (205 raw clock ticks)
|
| 1389 |
|
|
|
| 1390 |
|
|
Testing parameters:
|
| 1391 |
|
|
Clock samples: 32
|
| 1392 |
|
|
Threads: 24
|
| 1393 |
|
|
Thread switches: 128
|
| 1394 |
|
|
Mutexes: 32
|
| 1395 |
|
|
Mailboxes: 32
|
| 1396 |
|
|
Semaphores: 32
|
| 1397 |
|
|
Scheduler operations: 128
|
| 1398 |
|
|
Counters: 32
|
| 1399 |
|
|
Alarms: 32
|
| 1400 |
|
|
|
| 1401 |
|
|
|
| 1402 |
|
|
Confidence
|
| 1403 |
|
|
Ave Min Max Var Ave Min Function
|
| 1404 |
|
|
====== ====== ====== ====== ========== ========
|
| 1405 |
|
|
14.36 11.53 23.53 1.81 54% 33% Create thread
|
| 1406 |
|
|
2.64 2.53 5.07 0.20 95% 95% Yield thread [all suspended]
|
| 1407 |
|
|
2.25 1.93 4.80 0.31 45% 83% Suspend [suspended] thread
|
| 1408 |
|
|
2.19 2.00 4.93 0.28 91% 91% Resume thread
|
| 1409 |
|
|
3.42 3.00 8.40 0.47 95% 87% Set priority
|
| 1410 |
|
|
0.31 0.13 1.20 0.19 79% 58% Get priority
|
| 1411 |
|
|
8.26 7.40 18.80 0.93 95% 87% Kill [suspended] thread
|
| 1412 |
|
|
2.58 2.47 5.13 0.21 95% 95% Yield [no other] thread
|
| 1413 |
|
|
5.07 4.53 8.67 0.44 62% 50% Resume [suspended low prio] thread
|
| 1414 |
|
|
2.27 2.07 4.53 0.23 87% 87% Resume [runnable low prio] thread
|
| 1415 |
|
|
4.76 4.07 9.40 0.65 66% 75% Suspend [runnable] thread
|
| 1416 |
|
|
2.63 2.53 4.73 0.18 95% 95% Yield [only low prio] thread
|
| 1417 |
|
|
2.09 1.87 4.27 0.27 91% 79% Suspend [runnable->not runnable]
|
| 1418 |
|
|
10.79 10.00 18.20 0.81 95% 79% Kill [runnable] thread
|
| 1419 |
|
|
20.30 18.40 28.80 1.42 79% 54% Resume [high priority] thread
|
| 1420 |
|
|
5.53 5.47 12.13 0.11 98% 97% Thread switch
|
| 1421 |
|
|
|
| 1422 |
|
|
0.28 0.27 2.20 0.03 97% 97% Scheduler lock
|
| 1423 |
|
|
1.14 1.13 2.00 0.01 99% 99% Scheduler unlock [0 threads]
|
| 1424 |
|
|
1.14 1.13 2.40 0.02 99% 99% Scheduler unlock [1 suspended]
|
| 1425 |
|
|
1.16 1.13 3.33 0.06 95% 95% Scheduler unlock [many suspended]
|
| 1426 |
|
|
1.23 1.20 3.13 0.05 95% 95% Scheduler unlock [many low prio]
|
| 1427 |
|
|
|
| 1428 |
|
|
1.29 1.00 4.20 0.25 65% 50% Init mutex
|
| 1429 |
|
|
2.65 2.47 5.27 0.23 93% 87% Lock [unlocked] mutex
|
| 1430 |
|
|
3.26 3.07 6.80 0.28 93% 87% Unlock [locked] mutex
|
| 1431 |
|
|
2.48 2.33 5.07 0.21 90% 87% Trylock [unlocked] mutex
|
| 1432 |
|
|
2.20 2.07 4.67 0.21 93% 87% Trylock [locked] mutex
|
| 1433 |
|
|
0.23 0.20 1.00 0.05 96% 93% Destroy mutex
|
| 1434 |
|
|
25.11 24.73 27.53 0.21 65% 31% Unlock/Lock mutex
|
| 1435 |
|
|
|
| 1436 |
|
|
2.49 2.00 5.73 0.32 81% 37% Create mbox
|
| 1437 |
|
|
0.11 0.00 1.60 0.15 84% 81% Peek [empty] mbox
|
| 1438 |
|
|
3.01 2.60 9.47 0.52 96% 78% Put [first] mbox
|
| 1439 |
|
|
0.10 0.00 1.67 0.15 87% 81% Peek [1 msg] mbox
|
| 1440 |
|
|
3.09 2.60 8.33 0.50 93% 75% Put [second] mbox
|
| 1441 |
|
|
0.06 0.00 1.13 0.08 96% 87% Peek [2 msgs] mbox
|
| 1442 |
|
|
3.10 2.80 7.93 0.40 93% 84% Get [first] mbox
|
| 1443 |
|
|
3.13 2.80 7.53 0.43 90% 78% Get [second] mbox
|
| 1444 |
|
|
2.99 2.60 8.53 0.52 93% 75% Tryput [first] mbox
|
| 1445 |
|
|
2.65 2.33 6.80 0.42 90% 78% Peek item [non-empty] mbox
|
| 1446 |
|
|
3.05 2.73 7.60 0.42 93% 78% Tryget [non-empty] mbox
|
| 1447 |
|
|
3.16 2.93 6.27 0.31 84% 84% Peek item [empty] mbox
|
| 1448 |
|
|
2.48 2.27 5.73 0.30 84% 84% Tryget [empty] mbox
|
| 1449 |
|
|
0.23 0.13 2.07 0.14 96% 87% Waiting to get mbox
|
| 1450 |
|
|
0.22 0.13 1.93 0.13 96% 75% Waiting to put mbox
|
| 1451 |
|
|
3.08 2.80 7.93 0.42 84% 84% Delete mbox
|
| 1452 |
|
|
16.01 15.53 19.00 0.52 78% 59% Put/Get mbox
|
| 1453 |
|
|
|
| 1454 |
|
|
0.85 0.67 3.27 0.19 96% 50% Init semaphore
|
| 1455 |
|
|
2.00 1.93 3.87 0.12 96% 90% Post [0] semaphore
|
| 1456 |
|
|
2.05 2.00 3.47 0.09 96% 96% Wait [1] semaphore
|
| 1457 |
|
|
1.85 1.80 3.47 0.10 96% 96% Trywait [0] semaphore
|
| 1458 |
|
|
1.82 1.80 2.53 0.04 96% 96% Trywait [1] semaphore
|
| 1459 |
|
|
0.36 0.33 1.33 0.06 96% 96% Peek semaphore
|
| 1460 |
|
|
0.38 0.33 1.87 0.09 96% 96% Destroy semaphore
|
| 1461 |
|
|
12.38 12.20 16.27 0.30 93% 87% Post/Wait semaphore
|
| 1462 |
|
|
|
| 1463 |
|
|
1.18 0.73 4.07 0.24 78% 18% Create counter
|
| 1464 |
|
|
0.20 0.13 1.40 0.11 87% 87% Get counter value
|
| 1465 |
|
|
0.24 0.20 1.40 0.08 93% 93% Set counter value
|
| 1466 |
|
|
3.17 3.13 4.20 0.07 93% 93% Tick counter
|
| 1467 |
|
|
0.44 0.40 1.73 0.08 96% 96% Delete counter
|
| 1468 |
|
|
|
| 1469 |
|
|
2.24 1.67 5.13 0.47 68% 65% Create alarm
|
| 1470 |
|
|
3.86 3.40 9.67 0.51 90% 78% Initialize alarm
|
| 1471 |
|
|
0.15 0.07 1.60 0.12 96% 68% Disable alarm
|
| 1472 |
|
|
3.76 3.47 7.67 0.35 93% 75% Enable alarm
|
| 1473 |
|
|
0.57 0.47 2.73 0.16 96% 84% Delete alarm
|
| 1474 |
|
|
3.64 3.60 4.73 0.07 96% 96% Tick counter [1 alarm]
|
| 1475 |
|
|
21.72 21.67 23.27 0.10 96% 96% Tick counter [many alarms]
|
| 1476 |
|
|
6.13 6.07 8.07 0.12 96% 96% Tick & fire counter [1 alarm]
|
| 1477 |
|
|
101.40 99.53 132.73 2.75 93% 93% Tick & fire counters [>1 together]
|
| 1478 |
|
|
24.21 24.13 26.40 0.14 96% 96% Tick & fire counters [>1 separately]
|
| 1479 |
|
|
11.74 11.60 22.67 0.26 98% 98% Alarm latency [0 threads]
|
| 1480 |
|
|
14.58 11.73 24.93 1.59 54% 28% Alarm latency [2 threads]
|
| 1481 |
|
|
18.18 15.20 41.07 1.96 60% 43% Alarm latency [many threads]
|
| 1482 |
|
|
|
| 1483 |
|
|
3.06 2.13 10.33 0.00 Clock/interrupt latency
|
| 1484 |
|
|
|
| 1485 |
|
|
Timing complete - 23480 ms total
|
| 1486 |
|
|
|
| 1487 |
|
|
PASS:<Basic timing OK>
|
| 1488 |
|
|
EXIT:<done>
|
| 1489 |
|
|
|
| 1490 |
|
|
|
| 1491 |
|
|
|
| 1492 |
|
|
|
| 1493 |
|
|
|
| 1494 |
|
|
|
| 1495 |
|
|
|
| 1496 |
|
|
Board: Fujitsu SPARClite Evaluation Board
|
| 1497 |
|
|
|
| 1498 |
|
|
|
| 1499 |
|
|
Board: Fujitsu SPARClite Evaluation Board
|
| 1500 |
|
|
|
| 1501 |
|
|
CPU : Fujitsu SPARClite MB8683X 100MHz
|
| 1502 |
|
|
|
| 1503 |
|
|
|
| 1504 |
|
|
eCOS Kernel Timings
|
| 1505 |
|
|
Note: all times are in microseconds (.000001) unless otherwise stated
|
| 1506 |
|
|
|
| 1507 |
|
|
Reading the hardware clock takes 0 'ticks' overhead
|
| 1508 |
|
|
... this value will be factored out of all other measurements
|
| 1509 |
|
|
Clock interrupt took 17.19 microseconds (17 raw clock ticks)
|
| 1510 |
|
|
|
| 1511 |
|
|
Testing parameters:
|
| 1512 |
|
|
Clock samples: 32
|
| 1513 |
|
|
Threads: 24
|
| 1514 |
|
|
Thread switches: 128
|
| 1515 |
|
|
Mutexes: 32
|
| 1516 |
|
|
Mailboxes: 32
|
| 1517 |
|
|
Semaphores: 32
|
| 1518 |
|
|
Scheduler operations: 128
|
| 1519 |
|
|
Counters: 32
|
| 1520 |
|
|
Alarms: 32
|
| 1521 |
|
|
|
| 1522 |
|
|
|
| 1523 |
|
|
Confidence
|
| 1524 |
|
|
Ave Min Max Var Ave Min Function
|
| 1525 |
|
|
====== ====== ====== ====== ========== ========
|
| 1526 |
|
|
48.59 47.00 63.01 1.41 66% 70% Create thread
|
| 1527 |
|
|
2.13 2.00 5.00 0.24 95% 95% Yield thread [all suspended]
|
| 1528 |
|
|
2.92 2.00 10.00 0.69 58% 37% Suspend [suspended] thread
|
| 1529 |
|
|
2.13 1.00 10.00 0.66 75% 20% Resume thread
|
| 1530 |
|
|
2.79 2.00 11.00 0.86 95% 54% Set priority
|
| 1531 |
|
|
1.00 0.00 5.00 0.33 79% 16% Get priority
|
| 1532 |
|
|
7.17 5.00 34.00 2.24 95% 95% Kill [suspended] thread
|
| 1533 |
|
|
2.42 2.00 12.00 0.80 95% 95% Yield [no other] thread
|
| 1534 |
|
|
3.46 2.00 14.00 1.10 75% 83% Resume [suspended low prio] thread
|
| 1535 |
|
|
2.00 1.00 9.00 0.58 66% 29% Resume [runnable low prio] thread
|
| 1536 |
|
|
4.21 3.00 20.00 1.38 95% 91% Suspend [runnable] thread
|
| 1537 |
|
|
2.33 2.00 10.00 0.64 95% 95% Yield [only low prio] thread
|
| 1538 |
|
|
2.00 1.00 9.00 0.67 58% 33% Suspend [runnable->not runnable]
|
| 1539 |
|
|
5.79 4.00 30.00 2.07 95% 95% Kill [runnable] thread
|
| 1540 |
|
|
39.34 37.00 75.01 3.36 91% 91% Resume [high priority] thread
|
| 1541 |
|
|
15.20 15.00 31.00 0.40 97% 97% Thread switch
|
| 1542 |
|
|
|
| 1543 |
|
|
1.04 1.00 4.00 0.08 97% 97% Scheduler lock
|
| 1544 |
|
|
1.42 1.00 5.00 0.51 60% 60% Scheduler unlock [0 threads]
|
| 1545 |
|
|
1.41 1.00 5.00 0.50 61% 61% Scheduler unlock [1 suspended]
|
| 1546 |
|
|
1.41 1.00 5.00 0.50 60% 60% Scheduler unlock [many suspended]
|
| 1547 |
|
|
1.40 1.00 5.00 0.50 62% 62% Scheduler unlock [many low prio]
|
| 1548 |
|
|
|
| 1549 |
|
|
1.19 1.00 6.00 0.35 93% 93% Init mutex
|
| 1550 |
|
|
2.34 2.00 12.00 0.64 93% 93% Lock [unlocked] mutex
|
| 1551 |
|
|
3.41 3.00 13.00 0.71 96% 87% Unlock [locked] mutex
|
| 1552 |
|
|
2.16 1.00 10.00 0.49 87% 9% Trylock [unlocked] mutex
|
| 1553 |
|
|
1.78 1.00 7.00 0.59 59% 37% Trylock [locked] mutex
|
| 1554 |
|
|
0.72 0.00 2.00 0.45 65% 31% Destroy mutex
|
| 1555 |
|
|
25.25 24.00 41.00 0.98 71% 25% Unlock/Lock mutex
|
| 1556 |
|
|
|
| 1557 |
|
|
1.44 1.00 9.00 0.68 96% 78% Create mbox
|
| 1558 |
|
|
0.94 0.00 3.00 0.23 84% 12% Peek [empty] mbox
|
| 1559 |
|
|
3.06 2.00 13.00 0.62 71% 25% Put [first] mbox
|
| 1560 |
|
|
0.69 0.00 3.00 0.52 59% 37% Peek [1 msg] mbox
|
| 1561 |
|
|
2.44 2.00 10.00 0.68 96% 78% Put [second] mbox
|
| 1562 |
|
|
0.78 0.00 3.00 0.44 68% 28% Peek [2 msgs] mbox
|
| 1563 |
|
|
3.78 3.00 14.00 0.83 96% 53% Get [first] mbox
|
| 1564 |
|
|
2.97 2.00 9.00 0.61 56% 31% Get [second] mbox
|
| 1565 |
|
|
2.53 2.00 12.00 0.80 96% 75% Tryput [first] mbox
|
| 1566 |
|
|
2.72 2.00 12.00 0.81 96% 56% Peek item [non-empty] mbox
|
| 1567 |
|
|
2.63 2.00 13.00 0.94 90% 75% Tryget [non-empty] mbox
|
| 1568 |
|
|
1.97 1.00 6.00 0.42 68% 21% Peek item [empty] mbox
|
| 1569 |
|
|
2.09 1.00 9.00 0.49 78% 15% Tryget [empty] mbox
|
| 1570 |
|
|
0.84 0.00 4.00 0.42 71% 25% Waiting to get mbox
|
| 1571 |
|
|
0.81 0.00 4.00 0.46 68% 28% Waiting to put mbox
|
| 1572 |
|
|
2.38 2.00 11.00 0.66 96% 87% Delete mbox
|
| 1573 |
|
|
23.41 22.00 47.00 1.47 96% 96% Put/Get mbox
|
| 1574 |
|
|
|
| 1575 |
|
|
1.03 0.00 6.00 0.31 84% 12% Init semaphore
|
| 1576 |
|
|
2.66 2.00 8.00 0.66 96% 50% Post [0] semaphore
|
| 1577 |
|
|
1.97 1.00 10.00 0.55 68% 28% Wait [1] semaphore
|
| 1578 |
|
|
1.78 1.00 8.00 0.63 56% 40% Trywait [0] semaphore
|
| 1579 |
|
|
1.84 1.00 8.00 0.58 62% 34% Trywait [1] semaphore
|
| 1580 |
|
|
1.00 0.00 5.00 0.25 84% 12% Peek semaphore
|
| 1581 |
|
|
0.81 0.00 4.00 0.46 68% 28% Destroy semaphore
|
| 1582 |
|
|
19.03 18.00 41.00 1.37 96% 96% Post/Wait semaphore
|
| 1583 |
|
|
|
| 1584 |
|
|
1.38 1.00 6.00 0.56 75% 75% Create counter
|
| 1585 |
|
|
1.09 1.00 3.00 0.18 93% 93% Get counter value
|
| 1586 |
|
|
1.00 0.00 5.00 0.31 78% 15% Set counter value
|
| 1587 |
|
|
3.09 2.00 6.00 0.35 78% 9% Tick counter
|
| 1588 |
|
|
0.91 0.00 5.00 0.40 75% 21% Delete counter
|
| 1589 |
|
|
|
| 1590 |
|
|
2.53 2.00 9.00 0.70 96% 65% Create alarm
|
| 1591 |
|
|
6.03 5.00 22.00 1.00 50% 46% Initialize alarm
|
| 1592 |
|
|
0.78 0.00 4.00 0.49 65% 31% Disable alarm
|
| 1593 |
|
|
2.91 2.00 13.00 0.91 87% 50% Enable alarm
|
| 1594 |
|
|
0.97 0.00 5.00 0.30 81% 15% Delete alarm
|
| 1595 |
|
|
2.69 2.00 9.00 0.69 96% 50% Tick counter [1 alarm]
|
| 1596 |
|
|
12.00 11.00 23.00 0.69 62% 34% Tick counter [many alarms]
|
| 1597 |
|
|
4.16 3.00 13.00 0.55 84% 12% Tick & fire counter [1 alarm]
|
| 1598 |
|
|
72.69 72.01 87.01 1.03 96% 96% Tick & fire counters [>1 together]
|
| 1599 |
|
|
13.66 13.00 23.00 0.82 96% 62% Tick & fire counters [>1 separately]
|
| 1600 |
|
|
13.26 13.00 42.00 0.51 98% 98% Alarm latency [0 threads]
|
| 1601 |
|
|
16.75 11.00 53.01 2.78 64% 16% Alarm latency [2 threads]
|
| 1602 |
|
|
24.06 18.00 58.01 3.55 67% 25% Alarm latency [many threads]
|
| 1603 |
|
|
|
| 1604 |
|
|
3.61 2.00 13.00 0.00 Clock/interrupt latency
|
| 1605 |
|
|
|
| 1606 |
|
|
Timing complete - 23590 ms total
|
| 1607 |
|
|
|
| 1608 |
|
|
PASS:<Basic timing OK>
|
| 1609 |
|
|
EXIT:<done>
|
| 1610 |
|
|
|
| 1611 |
|
|
|
| 1612 |
|
|
|
| 1613 |
|
|
|
| 1614 |
|
|
|
| 1615 |
|
|
|
| 1616 |
|
|
|
| 1617 |
|
|
Board: Cogent CMA MPC860 (PowerPC) Evaluation
|
| 1618 |
|
|
Board: Cogent CMA MPC860 (PowerPC) Evaluation
|
| 1619 |
|
|
CPU : MPC860, revision A3 33MHz
|
| 1620 |
|
|
|
| 1621 |
|
|
|
| 1622 |
|
|
eCOS Kernel Timings
|
| 1623 |
|
|
Note: all times are in microseconds (.000001) unless otherwise stated
|
| 1624 |
|
|
|
| 1625 |
|
|
Reading the hardware clock takes 0 'ticks' overhead
|
| 1626 |
|
|
... this value will be factored out of all other measurements
|
| 1627 |
|
|
Clock interrupt took 14.46 microseconds (30 raw clock ticks)
|
| 1628 |
|
|
|
| 1629 |
|
|
Testing parameters:
|
| 1630 |
|
|
Clock samples: 32
|
| 1631 |
|
|
Threads: 24
|
| 1632 |
|
|
Thread switches: 128
|
| 1633 |
|
|
Mutexes: 32
|
| 1634 |
|
|
Mailboxes: 32
|
| 1635 |
|
|
Semaphores: 32
|
| 1636 |
|
|
Scheduler operations: 128
|
| 1637 |
|
|
Counters: 32
|
| 1638 |
|
|
Alarms: 32
|
| 1639 |
|
|
|
| 1640 |
|
|
|
| 1641 |
|
|
|
| 1642 |
|
|
|
| 1643 |
|
|
|
| 1644 |
|
|
Confidence
|
| 1645 |
|
|
Ave Min Max Var Ave Min Function
|
| 1646 |
|
|
====== ====== ====== ====== ========== ========
|
| 1647 |
|
|
26.78 23.52 41.76 1.97 66% 37% Create thread
|
| 1648 |
|
|
4.00 3.84 4.80 0.23 70% 70% Yield thread [all suspended]
|
| 1649 |
|
|
3.78 3.36 7.68 0.38 50% 45% Suspend [suspended] thread
|
| 1650 |
|
|
3.56 3.36 7.68 0.37 95% 91% Resume thread
|
| 1651 |
|
|
5.28 4.32 12.96 0.76 83% 66% Set priority
|
| 1652 |
|
|
0.84 0.48 3.84 0.39 91% 54% Get priority
|
| 1653 |
|
|
11.76 10.08 32.16 1.70 95% 95% Kill [suspended] thread
|
| 1654 |
|
|
4.14 3.84 8.64 0.45 95% 75% Yield [no other] thread
|
| 1655 |
|
|
7.14 5.76 17.76 1.07 79% 70% Resume [suspended low prio] thread
|
| 1656 |
|
|
3.60 3.36 8.16 0.42 95% 87% Resume [runnable low prio] thread
|
| 1657 |
|
|
6.10 5.28 14.88 0.80 62% 70% Suspend [runnable] thread
|
| 1658 |
|
|
4.00 3.84 5.76 0.25 79% 79% Yield [only low prio] thread
|
| 1659 |
|
|
3.66 3.36 8.64 0.47 95% 79% Suspend [runnable->not runnable]
|
| 1660 |
|
|
11.66 10.08 30.24 1.58 79% 91% Kill [runnable] thread
|
| 1661 |
|
|
31.12 27.84 53.28 2.35 87% 50% Resume [high priority] thread
|
| 1662 |
|
|
7.52 7.20 15.84 0.30 50% 48% Thread switch
|
| 1663 |
|
|
|
| 1664 |
|
|
1.00 0.48 2.88 0.21 63% 14% Scheduler lock
|
| 1665 |
|
|
2.57 2.40 3.84 0.23 65% 65% Scheduler unlock [0 threads]
|
| 1666 |
|
|
2.58 2.40 4.32 0.23 64% 64% Scheduler unlock [1 suspended]
|
| 1667 |
|
|
2.59 2.40 4.32 0.24 62% 62% Scheduler unlock [many suspended]
|
| 1668 |
|
|
2.59 2.40 4.32 0.24 61% 61% Scheduler unlock [many low prio]
|
| 1669 |
|
|
|
| 1670 |
|
|
1.69 1.44 5.76 0.37 96% 71% Init mutex
|
| 1671 |
|
|
4.15 3.84 10.56 0.47 96% 75% Lock [unlocked] mutex
|
| 1672 |
|
|
5.82 5.28 10.56 0.38 62% 28% Unlock [locked] mutex
|
| 1673 |
|
|
3.70 3.36 8.64 0.41 96% 59% Trylock [unlocked] mutex
|
| 1674 |
|
|
3.42 2.88 6.72 0.26 75% 15% Trylock [locked] mutex
|
| 1675 |
|
|
0.36 0.00 1.92 0.25 62% 34% Destroy mutex
|
| 1676 |
|
|
43.41 42.72 45.12 0.34 81% 3% Unlock/Lock mutex
|
| 1677 |
|
|
|
| 1678 |
|
|
3.27 2.88 8.16 0.39 96% 50% Create mbox
|
| 1679 |
|
|
0.57 0.00 2.40 0.34 50% 21% Peek [empty] mbox
|
| 1680 |
|
|
6.16 5.76 11.04 0.48 87% 87% Put [first] mbox
|
| 1681 |
|
|
0.48 0.00 1.92 0.27 50% 28% Peek [1 msg] mbox
|
| 1682 |
|
|
5.92 5.28 10.56 0.35 90% 6% Put [second] mbox
|
| 1683 |
|
|
0.60 0.00 2.40 0.30 62% 12% Peek [2 msgs] mbox
|
| 1684 |
|
|
4.69 4.32 12.00 0.54 93% 93% Get [first] mbox
|
| 1685 |
|
|
4.68 4.32 11.52 0.52 93% 93% Get [second] mbox
|
| 1686 |
|
|
5.86 5.28 11.04 0.47 62% 31% Tryput [first] mbox
|
| 1687 |
|
|
4.00 3.36 9.12 0.38 87% 9% Peek item [non-empty] mbox
|
| 1688 |
|
|
4.59 3.84 12.48 0.61 71% 75% Tryget [non-empty] mbox
|
| 1689 |
|
|
3.75 3.36 7.68 0.34 53% 43% Peek item [empty] mbox
|
| 1690 |
|
|
3.93 3.36 9.60 0.45 65% 31% Tryget [empty] mbox
|
| 1691 |
|
|
0.63 0.00 2.40 0.28 68% 6% Waiting to get mbox
|
| 1692 |
|
|
0.54 0.00 1.92 0.19 75% 9% Waiting to put mbox
|
| 1693 |
|
|
4.84 4.32 12.00 0.47 56% 40% Delete mbox
|
| 1694 |
|
|
24.18 23.52 29.76 0.66 81% 75% Put/Get mbox
|
| 1695 |
|
|
|
| 1696 |
|
|
1.72 0.96 3.84 0.33 90% 6% Init semaphore
|
| 1697 |
|
|
3.15 2.88 6.24 0.34 96% 62% Post [0] semaphore
|
| 1698 |
|
|
3.85 3.36 8.64 0.30 68% 28% Wait [1] semaphore
|
| 1699 |
|
|
3.24 2.88 6.24 0.34 46% 46% Trywait [0] semaphore
|
| 1700 |
|
|
3.22 2.88 6.24 0.32 50% 46% Trywait [1] semaphore
|
| 1701 |
|
|
0.96 0.48 2.88 0.12 84% 12% Peek semaphore
|
| 1702 |
|
|
0.99 0.96 1.92 0.06 96% 96% Destroy semaphore
|
| 1703 |
|
|
24.71 24.00 28.80 0.40 87% 6% Post/Wait semaphore
|
| 1704 |
|
|
|
| 1705 |
|
|
2.31 1.44 6.24 0.77 46% 56% Create counter
|
| 1706 |
|
|
0.45 0.00 0.96 0.08 87% 9% Get counter value
|
| 1707 |
|
|
0.42 0.00 0.96 0.16 75% 18% Set counter value
|
| 1708 |
|
|
4.14 3.84 4.80 0.26 50% 43% Tick counter
|
| 1709 |
|
|
0.91 0.48 2.40 0.19 71% 21% Delete counter
|
| 1710 |
|
|
|
| 1711 |
|
|
5.23 4.32 7.68 0.61 65% 53% Create alarm
|
| 1712 |
|
|
5.58 4.80 12.96 0.72 68% 84% Initialize alarm
|
| 1713 |
|
|
0.75 0.48 1.92 0.30 90% 56% Disable alarm
|
| 1714 |
|
|
8.02 7.20 14.40 0.53 84% 68% Enable alarm
|
| 1715 |
|
|
1.32 0.96 3.84 0.29 56% 40% Delete alarm
|
| 1716 |
|
|
4.63 4.32 6.24 0.28 53% 43% Tick counter [1 alarm]
|
| 1717 |
|
|
23.67 23.52 25.44 0.23 78% 78% Tick counter [many alarms]
|
| 1718 |
|
|
7.24 6.72 10.56 0.21 84% 12% Tick & fire counter [1 alarm]
|
| 1719 |
|
|
106.83 106.56 110.40 0.35 96% 65% Tick & fire counters [>1 together]
|
| 1720 |
|
|
26.18 25.44 29.76 0.46 81% 9% Tick & fire counters [>1 separately]
|
| 1721 |
|
|
10.79 10.08 29.28 0.66 53% 55% Alarm latency [0 threads]
|
| 1722 |
|
|
17.20 13.92 35.52 1.48 67% 21% Alarm latency [2 threads]
|
| 1723 |
|
|
29.69 22.56 47.04 3.58 57% 17% Alarm latency [many threads]
|
| 1724 |
|
|
|
| 1725 |
|
|
7.66 3.84 19.20 0.00 Clock/interrupt latency
|
| 1726 |
|
|
|
| 1727 |
|
|
Timing complete - 23530 ms total
|
| 1728 |
|
|
|
| 1729 |
|
|
PASS:<Basic timing OK>
|
| 1730 |
|
|
EXIT:<done>
|
| 1731 |
|
|
|
| 1732 |
|
|
|
| 1733 |
|
|
|
| 1734 |
|
|
|
| 1735 |
|
|
|
| 1736 |
|
|
|
| 1737 |
|
|
|
| 1738 |
|
|
Board: NEC VR4373
|
| 1739 |
|
|
|
| 1740 |
|
|
|
| 1741 |
|
|
Board: NEC VR4373
|
| 1742 |
|
|
|
| 1743 |
|
|
CPU : NEC VR4300 133MHz
|
| 1744 |
|
|
|
| 1745 |
|
|
|
| 1746 |
|
|
Startup, main stack : stack used 1304 size 3576
|
| 1747 |
|
|
Startup : Interrupt stack used 980 size 4096
|
| 1748 |
|
|
Startup : Idlethread stack used 494 size 2552
|
| 1749 |
|
|
|
| 1750 |
|
|
eCos Kernel Timings
|
| 1751 |
|
|
Notes: all times are in microseconds (.000001) unless otherwise stated
|
| 1752 |
|
|
|
| 1753 |
|
|
Reading the hardware clock takes 3 `ticks' overhead
|
| 1754 |
|
|
... this value will be factored out of all other measurements
|
| 1755 |
|
|
Clock interrupt took 6.49 microseconds (431 raw clock ticks)
|
| 1756 |
|
|
|
| 1757 |
|
|
Testing parameters:
|
| 1758 |
|
|
Clock samples: 32
|
| 1759 |
|
|
Threads: 16
|
| 1760 |
|
|
Thread switches: 128
|
| 1761 |
|
|
Mutexes: 32
|
| 1762 |
|
|
Mailboxes: 32
|
| 1763 |
|
|
Semaphores: 32
|
| 1764 |
|
|
Scheduler operations: 128
|
| 1765 |
|
|
Counters: 32
|
| 1766 |
|
|
Alarms: 32
|
| 1767 |
|
|
|
| 1768 |
|
|
|
| 1769 |
|
|
Confidence
|
| 1770 |
|
|
Ave Min Max Var Ave Min Function
|
| 1771 |
|
|
====== ====== ====== ====== ========== ========
|
| 1772 |
|
|
17.21 16.18 22.14 0.88 75% 68% Create thread
|
| 1773 |
|
|
0.84 0.78 1.29 0.10 81% 81% Yield thread [all suspended]
|
| 1774 |
|
|
0.90 0.62 3.20 0.35 87% 87% Suspend [suspended] thread
|
| 1775 |
|
|
0.74 0.65 1.16 0.12 81% 68% Resume thread
|
| 1776 |
|
|
1.11 0.90 1.70 0.25 75% 68% Set priority
|
| 1777 |
|
|
0.11 0.05 0.35 0.09 75% 75% Get priority
|
| 1778 |
|
|
2.93 2.24 8.27 0.78 93% 75% Kill [suspended] thread
|
| 1779 |
|
|
0.88 0.78 1.92 0.16 93% 81% Yield [no other] thread
|
| 1780 |
|
|
1.82 1.20 4.71 0.62 87% 62% Resume [suspended low prio] thread
|
| 1781 |
|
|
0.70 0.63 0.86 0.09 68% 68% Resume [runnable low prio] thread
|
| 1782 |
|
|
1.21 1.07 1.61 0.13 81% 68% Suspend [runnable] thread
|
| 1783 |
|
|
0.86 0.78 1.58 0.13 81% 81% Yield [only low prio] thread
|
| 1784 |
|
|
0.69 0.62 0.84 0.09 68% 68% Suspend [runnable->not runnable]
|
| 1785 |
|
|
2.64 2.24 4.35 0.43 81% 62% Kill [runnable] thread
|
| 1786 |
|
|
1.50 1.07 5.82 0.56 93% 87% Destroy [dead] thread
|
| 1787 |
|
|
3.66 2.75 7.74 0.82 50% 56% Destroy [runnable] thread
|
| 1788 |
|
|
13.65 8.33 27.88 3.70 50% 43% Resume [high priority] thread
|
| 1789 |
|
|
2.04 1.89 3.32 0.15 46% 49% Thread switch
|
| 1790 |
|
|
|
| 1791 |
|
|
0.19 0.05 0.83 0.13 48% 44% Scheduler lock
|
| 1792 |
|
|
0.50 0.41 1.59 0.13 89% 73% Scheduler unlock [0 threads]
|
| 1793 |
|
|
0.52 0.41 1.29 0.14 89% 64% Scheduler unlock [1 suspended]
|
| 1794 |
|
|
0.56 0.41 1.49 0.15 42% 47% Scheduler unlock [many suspended]
|
| 1795 |
|
|
0.56 0.41 1.41 0.15 43% 47% Scheduler unlock [many low prio]
|
| 1796 |
|
|
|
| 1797 |
|
|
0.57 0.20 2.33 0.27 65% 50% Init mutex
|
| 1798 |
|
|
0.89 0.75 3.35 0.20 96% 75% Lock [unlocked] mutex
|
| 1799 |
|
|
0.90 0.74 4.38 0.25 96% 93% Unlock [locked] mutex
|
| 1800 |
|
|
0.77 0.65 2.63 0.17 96% 75% Trylock [unlocked] mutex
|
| 1801 |
|
|
0.66 0.59 1.16 0.10 75% 75% Trylock [locked] mutex
|
| 1802 |
|
|
0.07 0.00 0.45 0.09 75% 75% Destroy mutex
|
| 1803 |
|
|
7.95 7.71 9.49 0.19 50% 46% Unlock/Lock mutex
|
| 1804 |
|
|
|
| 1805 |
|
|
1.04 0.81 3.44 0.27 93% 68% Create mbox
|
| 1806 |
|
|
0.10 0.02 0.57 0.11 71% 68% Peek [empty] mbox
|
| 1807 |
|
|
1.15 0.83 4.71 0.31 53% 71% Put [first] mbox
|
| 1808 |
|
|
0.10 0.02 0.57 0.12 68% 68% Peek [1 msg] mbox
|
| 1809 |
|
|
1.01 0.83 3.83 0.22 93% 75% Put [second] mbox
|
| 1810 |
|
|
0.09 0.02 0.57 0.10 71% 71% Peek [2 msgs] mbox
|
| 1811 |
|
|
1.03 0.81 5.02 0.27 96% 87% Get [first] mbox
|
| 1812 |
|
|
0.93 0.81 1.61 0.14 84% 62% Get [second] mbox
|
| 1813 |
|
|
1.07 0.77 4.18 0.23 68% 50% Tryput [first] mbox
|
| 1814 |
|
|
0.89 0.72 3.49 0.21 93% 71% Peek item [non-empty] mbox
|
| 1815 |
|
|
1.04 0.83 4.09 0.26 90% 81% Tryget [non-empty] mbox
|
| 1816 |
|
|
0.79 0.68 1.97 0.15 87% 68% Peek item [empty] mbox
|
| 1817 |
|
|
0.84 0.72 2.36 0.17 93% 68% Tryget [empty] mbox
|
| 1818 |
|
|
0.13 0.02 0.59 0.13 87% 62% Waiting to get mbox
|
| 1819 |
|
|
0.13 0.02 0.90 0.13 90% 62% Waiting to put mbox
|
| 1820 |
|
|
0.93 0.77 3.23 0.21 90% 71% Delete mbox
|
| 1821 |
|
|
4.74 4.51 8.80 0.32 93% 78% Put/Get mbox
|
| 1822 |
|
|
|
| 1823 |
|
|
0.50 0.21 1.95 0.29 90% 50% Init semaphore
|
| 1824 |
|
|
0.86 0.57 2.87 0.29 93% 56% Post [0] semaphore
|
| 1825 |
|
|
1.01 0.74 3.62 0.28 93% 56% Wait [1] semaphore
|
| 1826 |
|
|
0.87 0.60 3.17 0.28 90% 59% Trywait [0] semaphore
|
| 1827 |
|
|
0.74 0.62 1.70 0.14 93% 56% Trywait [1] semaphore
|
| 1828 |
|
|
0.36 0.11 1.11 0.26 65% 56% Peek semaphore
|
| 1829 |
|
|
0.25 0.12 1.19 0.14 93% 56% Destroy semaphore
|
| 1830 |
|
|
7.85 7.52 8.93 0.21 62% 43% Post/Wait semaphore
|
| 1831 |
|
|
|
| 1832 |
|
|
0.90 0.44 3.08 0.29 65% 28% Create counter
|
| 1833 |
|
|
0.07 0.05 0.89 0.05 96% 96% Get counter value
|
| 1834 |
|
|
0.06 0.05 0.33 0.02 96% 96% Set counter value
|
| 1835 |
|
|
0.88 0.86 1.62 0.05 96% 96% Tick counter
|
| 1836 |
|
|
0.13 0.12 0.41 0.02 96% 96% Delete counter
|
| 1837 |
|
|
|
| 1838 |
|
|
1.37 0.81 2.95 0.27 62% 25% Create alarm
|
| 1839 |
|
|
1.35 1.17 6.03 0.31 96% 93% Initialize alarm
|
| 1840 |
|
|
0.11 0.08 0.65 0.05 90% 90% Disable alarm
|
| 1841 |
|
|
1.23 1.14 3.05 0.15 93% 87% Enable alarm
|
| 1842 |
|
|
0.21 0.18 0.47 0.04 90% 90% Delete alarm
|
| 1843 |
|
|
1.03 0.99 2.11 0.07 96% 96% Tick counter [1 alarm]
|
| 1844 |
|
|
4.96 4.96 4.96 0.00 100% 100% Tick counter [many alarms]
|
| 1845 |
|
|
1.70 1.67 2.51 0.05 96% 96% Tick & fire counter [1 alarm]
|
| 1846 |
|
|
26.39 26.38 26.71 0.02 96% 96% Tick & fire counters [>1 together]
|
| 1847 |
|
|
5.65 5.64 5.91 0.02 96% 96% Tick & fire counters [>1 separately]
|
| 1848 |
|
|
2.55 2.38 9.86 0.19 96% 54% Alarm latency [0 threads]
|
| 1849 |
|
|
5.37 3.80 9.73 0.95 50% 34% Alarm latency [2 threads]
|
| 1850 |
|
|
8.79 5.83 16.12 1.29 57% 14% Alarm latency [many threads]
|
| 1851 |
|
|
|
| 1852 |
|
|
5.85 2.26 16.24 0.00 Clock/interrupt latency
|
| 1853 |
|
|
|
| 1854 |
|
|
1540 1536 1544 (main stack: 1664) Thread stack used (2552 total)
|
| 1855 |
|
|
All done, main stack : stack used 1664 size 3576
|
| 1856 |
|
|
All done : Interrupt stack used 312 size 4096
|
| 1857 |
|
|
All done : Idlethread stack used 1440 size 2552
|
| 1858 |
|
|
|
| 1859 |
|
|
Timing complete - 23810 ms total
|
| 1860 |
|
|
|
| 1861 |
|
|
PASS:<Basic timing OK>
|
| 1862 |
|
|
EXIT:<done>
|
| 1863 |
|
|
|
| 1864 |
|
|
|
| 1865 |
|
|
|
| 1866 |
|
|
|
| 1867 |
|
|
|
| 1868 |
|
|
|
| 1869 |
|
|
Board: Intel SA1110 (Assabet)
|
| 1870 |
|
|
Board: Intel SA1110 (Assabet)
|
| 1871 |
|
|
|
| 1872 |
|
|
CPU : StrongARM 221.2 MHz
|
| 1873 |
|
|
|
| 1874 |
|
|
|
| 1875 |
|
|
|
| 1876 |
|
|
Microseconds for one run through Dhrystone: 3.3
|
| 1877 |
|
|
Dhrystones per Second: 306748.5
|
| 1878 |
|
|
VAX MIPS rating = 174.586
|
| 1879 |
|
|
|
| 1880 |
|
|
Startup, main stack : stack used 420 size 2400
|
| 1881 |
|
|
Startup : Interrupt stack used 136 size 4096
|
| 1882 |
|
|
Startup : Idlethread stack used 84 size 2048
|
| 1883 |
|
|
|
| 1884 |
|
|
eCos Kernel Timings
|
| 1885 |
|
|
Notes: all times are in microseconds (.000001) unless otherwise stated
|
| 1886 |
|
|
|
| 1887 |
|
|
Reading the hardware clock takes 0 `ticks' overhead
|
| 1888 |
|
|
... this value will be factored out of all other measurements
|
| 1889 |
|
|
Clock interrupt took 3.20 microseconds (11 raw clock ticks)
|
| 1890 |
|
|
|
| 1891 |
|
|
Testing parameters:
|
| 1892 |
|
|
Clock samples: 32
|
| 1893 |
|
|
Threads: 64
|
| 1894 |
|
|
Thread switches: 128
|
| 1895 |
|
|
Mutexes: 32
|
| 1896 |
|
|
Mailboxes: 32
|
| 1897 |
|
|
Semaphores: 32
|
| 1898 |
|
|
Scheduler operations: 128
|
| 1899 |
|
|
Counters: 32
|
| 1900 |
|
|
Alarms: 32
|
| 1901 |
|
|
|
| 1902 |
|
|
|
| 1903 |
|
|
Confidence
|
| 1904 |
|
|
Ave Min Max Var Ave Min Function
|
| 1905 |
|
|
====== ====== ====== ====== ========== ========
|
| 1906 |
|
|
5.98 4.88 14.38 0.70 57% 35% Create thread
|
| 1907 |
|
|
0.86 0.81 1.90 0.08 87% 87% Yield thread [all suspended]
|
| 1908 |
|
|
1.05 0.81 3.53 0.19 46% 39% Suspend [suspended] thread
|
| 1909 |
|
|
1.07 0.81 3.80 0.18 48% 35% Resume thread
|
| 1910 |
|
|
1.36 1.09 5.97 0.22 45% 39% Set priority
|
| 1911 |
|
|
0.73 0.54 1.90 0.19 85% 50% Get priority
|
| 1912 |
|
|
2.93 2.44 13.56 0.39 79% 70% Kill [suspended] thread
|
| 1913 |
|
|
0.89 0.81 4.34 0.14 89% 89% Yield [no other] thread
|
| 1914 |
|
|
1.63 1.36 4.61 0.17 57% 29% Resume [suspended low prio] thread
|
| 1915 |
|
|
1.03 0.81 3.53 0.19 46% 42% Resume [runnable low prio] thread
|
| 1916 |
|
|
1.74 1.36 6.51 0.22 87% 6% Suspend [runnable] thread
|
| 1917 |
|
|
0.93 0.81 4.61 0.18 98% 78% Yield [only low prio] thread
|
| 1918 |
|
|
1.06 0.81 3.26 0.19 42% 39% Suspend [runnable->not runnable]
|
| 1919 |
|
|
2.56 1.90 13.02 0.41 87% 34% Kill [runnable] thread
|
| 1920 |
|
|
2.02 1.63 7.05 0.22 92% 3% Destroy [dead] thread
|
| 1921 |
|
|
3.09 2.44 15.19 0.51 78% 46% Destroy [runnable] thread
|
| 1922 |
|
|
6.77 5.43 13.02 0.59 75% 17% Resume [high priority] thread
|
| 1923 |
|
|
1.81 1.63 7.87 0.18 49% 49% Thread switch
|
| 1924 |
|
|
|
| 1925 |
|
|
0.25 0.00 1.36 0.05 89% 10% Scheduler lock
|
| 1926 |
|
|
0.51 0.27 1.36 0.06 85% 13% Scheduler unlock [0 threads]
|
| 1927 |
|
|
0.51 0.27 1.09 0.06 85% 13% Scheduler unlock [1 suspended]
|
| 1928 |
|
|
0.51 0.27 1.09 0.07 85% 14% Scheduler unlock [many suspended]
|
| 1929 |
|
|
0.51 0.27 1.09 0.06 85% 13% Scheduler unlock [many low prio]
|
| 1930 |
|
|
|
| 1931 |
|
|
0.52 0.27 2.17 0.15 62% 31% Init mutex
|
| 1932 |
|
|
0.97 0.54 4.34 0.28 84% 65% Lock [unlocked] mutex
|
| 1933 |
|
|
1.05 0.81 5.15 0.28 96% 96% Unlock [locked] mutex
|
| 1934 |
|
|
0.86 0.54 3.26 0.24 65% 31% Trylock [unlocked] mutex
|
| 1935 |
|
|
0.79 0.54 3.53 0.23 43% 46% Trylock [locked] mutex
|
| 1936 |
|
|
0.33 0.27 1.63 0.11 90% 90% Destroy mutex
|
| 1937 |
|
|
4.16 3.80 8.95 0.30 75% 96% Unlock/Lock mutex
|
| 1938 |
|
|
|
| 1939 |
|
|
0.70 0.54 2.98 0.21 96% 65% Create mbox
|
| 1940 |
|
|
0.59 0.27 1.63 0.14 75% 9% Peek [empty] mbox
|
| 1941 |
|
|
1.33 1.09 5.70 0.31 96% 93% Put [first] mbox
|
| 1942 |
|
|
0.61 0.27 1.63 0.13 81% 3% Peek [1 msg] mbox
|
| 1943 |
|
|
1.35 1.09 5.43 0.31 96% 87% Put [second] mbox
|
| 1944 |
|
|
0.58 0.27 1.36 0.11 78% 6% Peek [2 msgs] mbox
|
| 1945 |
|
|
1.38 1.09 4.88 0.25 59% 37% Get [first] mbox
|
| 1946 |
|
|
1.40 1.09 5.15 0.26 62% 34% Get [second] mbox
|
| 1947 |
|
|
1.27 0.81 4.88 0.28 90% 65% Tryput [first] mbox
|
| 1948 |
|
|
1.34 0.81 4.61 0.22 59% 6% Peek item [non-empty] mbox
|
| 1949 |
|
|
1.47 1.09 5.15 0.27 84% 12% Tryget [non-empty] mbox
|
| 1950 |
|
|
1.12 0.81 4.34 0.23 59% 31% Peek item [empty] mbox
|
| 1951 |
|
|
1.14 0.81 4.07 0.24 71% 25% Tryget [empty] mbox
|
| 1952 |
|
|
0.59 0.27 1.36 0.12 78% 6% Waiting to get mbox
|
| 1953 |
|
|
0.59 0.27 1.36 0.12 78% 6% Waiting to put mbox
|
| 1954 |
|
|
1.28 0.81 5.43 0.32 87% 78% Delete mbox
|
| 1955 |
|
|
2.64 2.17 10.31 0.48 96% 96% Put/Get mbox
|
| 1956 |
|
|
|
| 1957 |
|
|
0.47 0.27 2.17 0.19 46% 46% Init semaphore
|
| 1958 |
|
|
0.77 0.54 3.80 0.26 90% 56% Post [0] semaphore
|
| 1959 |
|
|
0.90 0.54 4.07 0.26 75% 21% Wait [1] semaphore
|
| 1960 |
|
|
0.85 0.54 3.26 0.21 56% 28% Trywait [0] semaphore
|
| 1961 |
|
|
0.69 0.54 2.17 0.18 96% 62% Trywait [1] semaphore
|
| 1962 |
|
|
0.44 0.27 2.17 0.19 96% 56% Peek semaphore
|
| 1963 |
|
|
0.38 0.27 1.90 0.17 96% 75% Destroy semaphore
|
| 1964 |
|
|
2.74 2.44 9.49 0.42 96% 96% Post/Wait semaphore
|
| 1965 |
|
|
|
| 1966 |
|
|
0.43 0.27 1.90 0.18 96% 56% Create counter
|
| 1967 |
|
|
0.49 0.00 2.17 0.18 56% 3% Get counter value
|
| 1968 |
|
|
0.33 0.00 1.63 0.13 78% 6% Set counter value
|
| 1969 |
|
|
1.03 0.81 2.44 0.22 84% 50% Tick counter
|
| 1970 |
|
|
0.42 0.27 1.90 0.20 90% 65% Delete counter
|
| 1971 |
|
|
|
| 1972 |
|
|
0.70 0.54 2.44 0.20 93% 62% Create alarm
|
| 1973 |
|
|
1.65 1.36 6.78 0.40 96% 81% Initialize alarm
|
| 1974 |
|
|
0.75 0.54 1.63 0.18 43% 43% Disable alarm
|
| 1975 |
|
|
1.75 1.36 7.05 0.38 65% 81% Enable alarm
|
| 1976 |
|
|
0.81 0.54 2.44 0.15 62% 28% Delete alarm
|
| 1977 |
|
|
1.01 0.81 2.17 0.16 56% 40% Tick counter [1 alarm]
|
| 1978 |
|
|
4.19 4.07 5.43 0.16 96% 68% Tick counter [many alarms]
|
| 1979 |
|
|
1.48 1.36 3.80 0.20 96% 78% Tick & fire counter [1 alarm]
|
| 1980 |
|
|
20.23 20.07 22.52 0.21 96% 65% Tick & fire counters [>1 together]
|
| 1981 |
|
|
4.70 4.61 6.78 0.16 87% 87% Tick & fire counters [>1 separately]
|
| 1982 |
|
|
2.81 2.71 14.38 0.20 98% 98% Alarm latency [0 threads]
|
| 1983 |
|
|
3.19 2.71 13.56 0.38 73% 59% Alarm latency [2 threads]
|
| 1984 |
|
|
9.71 7.87 18.17 1.25 59% 53% Alarm latency [many threads]
|
| 1985 |
|
|
5.77 5.43 45.57 0.68 97% 97% Alarm -> thread resume latency
|
| 1986 |
|
|
|
| 1987 |
|
|
2.38 0.81 9.49 0.00 Clock/interrupt latency
|
| 1988 |
|
|
|
| 1989 |
|
|
2.02 1.09 7.32 0.00 Clock DSR latency
|
| 1990 |
|
|
|
| 1991 |
|
|
11 0 316 (main stack: 764) Thread stack used (1120 total)
|
| 1992 |
|
|
All done, main stack : stack used 764 size 2400
|
| 1993 |
|
|
All done : Interrupt stack used 287 size 4096
|
| 1994 |
|
|
All done : Idlethread stack used 272 size 2048
|
| 1995 |
|
|
|
| 1996 |
|
|
Timing complete - 30220 ms total
|
| 1997 |
|
|
|
| 1998 |
|
|
|
| 1999 |
|
|
|
| 2000 |
|
|
|
| 2001 |
|
|
|
| 2002 |
|
|
|
| 2003 |
|
|
Board: Intel SA1100 (Brutus)
|
| 2004 |
|
|
Board: Intel SA1100 (Brutus)
|
| 2005 |
|
|
|
| 2006 |
|
|
CPU : StrongARM 221.2 MHz
|
| 2007 |
|
|
|
| 2008 |
|
|
Microseconds for one run through Dhrystone: 3.3
|
| 2009 |
|
|
Dhrystones per Second: 306748.5
|
| 2010 |
|
|
VAX MIPS rating = 174.586
|
| 2011 |
|
|
|
| 2012 |
|
|
Startup, main stack : stack used 404 size 2400
|
| 2013 |
|
|
Startup : Interrupt stack used 136 size 4096
|
| 2014 |
|
|
Startup : Idlethread stack used 87 size 2048
|
| 2015 |
|
|
|
| 2016 |
|
|
eCos Kernel Timings
|
| 2017 |
|
|
Notes: all times are in microseconds (.000001) unless otherwise stated
|
| 2018 |
|
|
|
| 2019 |
|
|
Reading the hardware clock takes 0 `ticks' overhead
|
| 2020 |
|
|
... this value will be factored out of all other measurements
|
| 2021 |
|
|
Clock interrupt took 3.09 microseconds (11 raw clock ticks)
|
| 2022 |
|
|
|
| 2023 |
|
|
Testing parameters:
|
| 2024 |
|
|
Clock samples: 32
|
| 2025 |
|
|
Threads: 64
|
| 2026 |
|
|
Thread switches: 128
|
| 2027 |
|
|
Mutexes: 32
|
| 2028 |
|
|
Mailboxes: 32
|
| 2029 |
|
|
Semaphores: 32
|
| 2030 |
|
|
Scheduler operations: 128
|
| 2031 |
|
|
Counters: 32
|
| 2032 |
|
|
Alarms: 32
|
| 2033 |
|
|
|
| 2034 |
|
|
|
| 2035 |
|
|
Confidence
|
| 2036 |
|
|
Ave Min Max Var Ave Min Function
|
| 2037 |
|
|
====== ====== ====== ====== ========== ========
|
| 2038 |
|
|
6.63 5.43 18.99 0.77 70% 37% Create thread
|
| 2039 |
|
|
0.83 0.81 2.17 0.04 98% 98% Yield thread [all suspended]
|
| 2040 |
|
|
1.27 0.81 5.15 0.30 68% 73% Suspend [suspended] thread
|
| 2041 |
|
|
1.25 0.81 5.15 0.25 82% 1% Resume thread
|
| 2042 |
|
|
1.52 1.09 7.87 0.30 78% 75% Set priority
|
| 2043 |
|
|
0.97 0.54 2.71 0.28 64% 51% Get priority
|
| 2044 |
|
|
3.45 2.71 19.53 0.66 84% 76% Kill [suspended] thread
|
| 2045 |
|
|
0.90 0.81 6.24 0.17 98% 98% Yield [no other] thread
|
| 2046 |
|
|
1.86 1.36 6.24 0.33 68% 50% Resume [suspended low prio] thread
|
| 2047 |
|
|
1.25 0.81 5.15 0.25 82% 1% Resume [runnable low prio] thread
|
| 2048 |
|
|
2.01 1.63 10.04 0.32 70% 84% Suspend [runnable] thread
|
| 2049 |
|
|
0.90 0.81 6.24 0.17 98% 98% Yield [only low prio] thread
|
| 2050 |
|
|
1.25 0.81 5.15 0.24 84% 1% Suspend [runnable->not runnable]
|
| 2051 |
|
|
2.92 1.90 18.72 0.57 85% 43% Kill [runnable] thread
|
| 2052 |
|
|
2.45 1.90 10.31 0.33 95% 54% Destroy [dead] thread
|
| 2053 |
|
|
3.95 2.71 23.60 0.89 68% 54% Destroy [runnable] thread
|
| 2054 |
|
|
8.55 6.24 19.53 1.15 60% 23% Resume [high priority] thread
|
| 2055 |
|
|
1.85 1.63 11.94 0.21 49% 49% Thread switch
|
| 2056 |
|
|
|
| 2057 |
|
|
0.25 0.00 1.63 0.05 89% 10% Scheduler lock
|
| 2058 |
|
|
0.52 0.27 1.90 0.07 85% 13% Scheduler unlock [0 threads]
|
| 2059 |
|
|
0.51 0.27 1.36 0.06 85% 13% Scheduler unlock [1 suspended]
|
| 2060 |
|
|
0.51 0.27 1.36 0.06 85% 13% Scheduler unlock [many suspended]
|
| 2061 |
|
|
0.51 0.27 1.63 0.06 85% 13% Scheduler unlock [many low prio]
|
| 2062 |
|
|
|
| 2063 |
|
|
0.58 0.27 3.53 0.20 71% 21% Init mutex
|
| 2064 |
|
|
1.07 0.54 5.70 0.35 87% 59% Lock [unlocked] mutex
|
| 2065 |
|
|
1.14 0.81 6.51 0.40 96% 81% Unlock [locked] mutex
|
| 2066 |
|
|
0.96 0.54 5.15 0.34 68% 65% Trylock [unlocked] mutex
|
| 2067 |
|
|
0.94 0.54 4.88 0.34 65% 65% Trylock [locked] mutex
|
| 2068 |
|
|
0.33 0.27 2.17 0.11 96% 96% Destroy mutex
|
| 2069 |
|
|
4.21 3.80 10.85 0.41 71% 96% Unlock/Lock mutex
|
| 2070 |
|
|
0.76 0.54 4.07 0.25 96% 56% Create mbox
|
| 2071 |
|
|
0.75 0.54 1.90 0.20 84% 50% Peek [empty] mbox
|
| 2072 |
|
|
1.56 1.09 6.78 0.39 68% 59% Put [first] mbox
|
| 2073 |
|
|
0.75 0.54 1.90 0.20 84% 50% Peek [1 msg] mbox
|
| 2074 |
|
|
1.55 1.09 6.78 0.40 68% 62% Put [second] mbox
|
| 2075 |
|
|
0.77 0.54 1.63 0.17 46% 37% Peek [2 msgs] mbox
|
| 2076 |
|
|
1.67 1.09 6.24 0.31 87% 34% Get [first] mbox
|
| 2077 |
|
|
1.63 1.09 6.24 0.31 75% 34% Get [second] mbox
|
| 2078 |
|
|
1.50 1.09 6.51 0.40 56% 62% Tryput [first] mbox
|
| 2079 |
|
|
1.58 1.09 5.43 0.37 68% 53% Peek item [non-empty] mbox
|
| 2080 |
|
|
1.79 1.09 7.05 0.43 71% 25% Tryget [non-empty] mbox
|
| 2081 |
|
|
1.29 1.09 5.15 0.32 87% 87% Peek item [empty] mbox
|
| 2082 |
|
|
1.33 1.09 5.97 0.37 96% 84% Tryget [empty] mbox
|
| 2083 |
|
|
0.73 0.54 1.90 0.21 84% 56% Waiting to get mbox
|
| 2084 |
|
|
0.76 0.54 1.90 0.19 40% 43% Waiting to put mbox
|
| 2085 |
|
|
1.47 1.09 6.78 0.39 59% 84% Delete mbox
|
| 2086 |
|
|
2.70 2.17 12.75 0.63 96% 96% Put/Get mbox
|
| 2087 |
|
|
|
| 2088 |
|
|
0.47 0.27 2.71 0.20 96% 50% Init semaphore
|
| 2089 |
|
|
0.89 0.54 4.88 0.33 56% 75% Post [0] semaphore
|
| 2090 |
|
|
0.96 0.54 5.15 0.33 71% 75% Wait [1] semaphore
|
| 2091 |
|
|
0.86 0.54 4.88 0.32 96% 81% Trywait [0] semaphore
|
| 2092 |
|
|
0.69 0.54 3.26 0.22 96% 75% Trywait [1] semaphore
|
| 2093 |
|
|
0.49 0.27 3.26 0.28 84% 84% Peek semaphore
|
| 2094 |
|
|
0.39 0.27 2.44 0.19 96% 78% Destroy semaphore
|
| 2095 |
|
|
2.83 2.44 11.66 0.55 96% 96% Post/Wait semaphore
|
| 2096 |
|
|
|
| 2097 |
|
|
0.52 0.27 3.26 0.20 56% 40% Create counter
|
| 2098 |
|
|
0.59 0.00 2.71 0.34 81% 46% Get counter value
|
| 2099 |
|
|
0.36 0.00 2.44 0.21 81% 9% Set counter value
|
| 2100 |
|
|
1.13 0.81 2.98 0.26 59% 37% Tick counter
|
| 2101 |
|
|
0.39 0.27 1.90 0.19 90% 78% Delete counter
|
| 2102 |
|
|
|
| 2103 |
|
|
0.86 0.54 4.07 0.24 65% 31% Create alarm
|
| 2104 |
|
|
1.86 1.36 9.77 0.54 96% 90% Initialize alarm
|
| 2105 |
|
|
0.77 0.54 2.71 0.23 84% 50% Disable alarm
|
| 2106 |
|
|
1.86 1.36 9.22 0.51 96% 75% Enable alarm
|
| 2107 |
|
|
0.89 0.54 3.26 0.25 65% 21% Delete alarm
|
| 2108 |
|
|
0.99 0.81 3.26 0.21 96% 59% Tick counter [1 alarm]
|
| 2109 |
|
|
4.22 4.07 6.78 0.22 96% 71% Tick counter [many alarms]
|
| 2110 |
|
|
1.51 1.36 4.61 0.24 96% 78% Tick & fire counter [1 alarm]
|
| 2111 |
|
|
20.29 20.07 23.33 0.23 96% 53% Tick & fire counters [>1 together]
|
| 2112 |
|
|
4.71 4.61 7.87 0.20 96% 96% Tick & fire counters [>1 separately]
|
| 2113 |
|
|
2.88 2.71 23.87 0.33 99% 99% Alarm latency [0 threads]
|
| 2114 |
|
|
3.24 2.71 17.36 0.40 79% 58% Alarm latency [2 threads]
|
| 2115 |
|
|
15.71 12.48 27.40 1.47 53% 17% Alarm latency [many threads]
|
| 2116 |
|
|
5.95 5.43 64.56 1.02 97% 97% Alarm -> thread resume latency
|
| 2117 |
|
|
|
| 2118 |
|
|
3.25 0.81 14.11 0.00 Clock/interrupt latency
|
| 2119 |
|
|
|
| 2120 |
|
|
2.68 1.09 12.75 0.00 Clock DSR latency
|
| 2121 |
|
|
|
| 2122 |
|
|
29 0 316 (main stack: 764) Thread stack used (1120 total)
|
| 2123 |
|
|
All done, main stack : stack used 764 size 2400
|
| 2124 |
|
|
All done : Interrupt stack used 288 size 4096
|
| 2125 |
|
|
All done : Idlethread stack used 260 size 2048
|
| 2126 |
|
|
|
| 2127 |
|
|
|
| 2128 |
|
|
Timing complete - 30280 ms total
|
| 2129 |
|
|
|
| 2130 |
|
|
|
| 2131 |
|
|
|
| 2132 |
|
|
|
| 2133 |
|
|
|
| 2134 |
|
|
|
| 2135 |
|
|
|
| 2136 |
|
|
Board: Motorola MBX
|
| 2137 |
|
|
|
| 2138 |
|
|
|
| 2139 |
|
|
Board: Motorola MBX
|
| 2140 |
|
|
|
| 2141 |
|
|
CPU : Motorola MPC860 66MHZ
|
| 2142 |
|
|
|
| 2143 |
|
|
|
| 2144 |
|
|
Startup, main stack : stack used 643 size 5664
|
| 2145 |
|
|
Startup : Interrupt stack used 427 size 4096
|
| 2146 |
|
|
Startup : Idlethread stack used 236 size 2048
|
| 2147 |
|
|
|
| 2148 |
|
|
eCos Kernel Timings
|
| 2149 |
|
|
Notes: all times are in microseconds (.000001) unless otherwise stated
|
| 2150 |
|
|
|
| 2151 |
|
|
Reading the hardware clock takes 0 `ticks' overhead
|
| 2152 |
|
|
... this value will be factored out of all other measurements
|
| 2153 |
|
|
Clock interrupt took 25.36 microseconds (79 raw clock ticks)
|
| 2154 |
|
|
|
| 2155 |
|
|
Testing parameters:
|
| 2156 |
|
|
Clock samples: 32
|
| 2157 |
|
|
Threads: 16
|
| 2158 |
|
|
Thread switches: 128
|
| 2159 |
|
|
Mutexes: 32
|
| 2160 |
|
|
Mailboxes: 32
|
| 2161 |
|
|
Semaphores: 32
|
| 2162 |
|
|
Scheduler operations: 128
|
| 2163 |
|
|
Counters: 32
|
| 2164 |
|
|
Alarms: 32
|
| 2165 |
|
|
|
| 2166 |
|
|
|
| 2167 |
|
|
Confidence
|
| 2168 |
|
|
Ave Min Max Var Ave Min Function
|
| 2169 |
|
|
====== ====== ====== ====== ========== ========
|
| 2170 |
|
|
27.58 25.60 44.16 2.07 93% 93% Create thread
|
| 2171 |
|
|
5.94 5.76 7.04 0.22 93% 62% Yield thread [all suspended]
|
| 2172 |
|
|
6.06 5.44 10.56 0.57 75% 75% Suspend [suspended] thread
|
| 2173 |
|
|
5.42 4.80 9.60 0.53 87% 81% Resume thread
|
| 2174 |
|
|
7.10 6.40 14.08 0.90 93% 87% Set priority
|
| 2175 |
|
|
0.86 0.64 1.92 0.22 93% 50% Get priority
|
| 2176 |
|
|
16.74 15.04 36.48 2.47 93% 93% Kill [suspended] thread
|
| 2177 |
|
|
6.14 5.76 10.56 0.55 93% 93% Yield [no other] thread
|
| 2178 |
|
|
9.74 8.96 18.56 1.10 93% 93% Resume [suspended low prio] thread
|
| 2179 |
|
|
5.28 4.80 9.28 0.54 93% 81% Resume [runnable low prio] thread
|
| 2180 |
|
|
9.40 8.32 18.56 1.14 93% 93% Suspend [runnable] thread
|
| 2181 |
|
|
6.04 5.76 8.96 0.38 93% 93% Yield [only low prio] thread
|
| 2182 |
|
|
5.68 5.12 9.60 0.52 68% 75% Suspend [runnable->not runnable]
|
| 2183 |
|
|
16.10 14.40 35.20 2.39 93% 93% Kill [runnable] thread
|
| 2184 |
|
|
8.54 7.68 16.00 0.94 93% 87% Destroy [dead] thread
|
| 2185 |
|
|
20.20 18.56 40.64 2.55 93% 93% Destroy [runnable] thread
|
| 2186 |
|
|
39.02 36.48 57.28 3.28 87% 87% Resume [high priority] thread
|
| 2187 |
|
|
13.13 12.80 22.08 0.15 78% 20% Thread switch
|
| 2188 |
|
|
|
| 2189 |
|
|
0.59 0.32 1.60 0.09 82% 16% Scheduler lock
|
| 2190 |
|
|
3.67 3.52 5.12 0.17 99% 54% Scheduler unlock [0 threads]
|
| 2191 |
|
|
3.67 3.52 4.80 0.17 99% 53% Scheduler unlock [1 suspended]
|
| 2192 |
|
|
3.67 3.52 4.80 0.17 54% 54% Scheduler unlock [many suspended]
|
| 2193 |
|
|
3.69 3.52 5.12 0.17 99% 50% Scheduler unlock [many low prio]
|
| 2194 |
|
|
|
| 2195 |
|
|
2.41 2.24 5.44 0.25 96% 75% Init mutex
|
| 2196 |
|
|
6.83 6.40 11.84 0.34 75% 90% Lock [unlocked] mutex
|
| 2197 |
|
|
6.74 6.40 13.12 0.40 96% 96% Unlock [locked] mutex
|
| 2198 |
|
|
5.53 5.12 9.60 0.25 84% 12% Trylock [unlocked] mutex
|
| 2199 |
|
|
4.84 4.48 7.36 0.17 78% 15% Trylock [locked] mutex
|
| 2200 |
|
|
0.34 0.00 0.96 0.06 90% 3% Destroy mutex
|
| 2201 |
|
|
56.10 55.68 59.52 0.21 93% 3% Unlock/Lock mutex
|
| 2202 |
|
|
|
| 2203 |
|
|
4.72 4.48 10.24 0.37 96% 96% Create mbox
|
| 2204 |
|
|
0.75 0.64 1.92 0.16 75% 75% Peek [empty] mbox
|
| 2205 |
|
|
6.79 6.40 12.80 0.41 96% 90% Put [first] mbox
|
| 2206 |
|
|
0.46 0.32 1.60 0.19 93% 68% Peek [1 msg] mbox
|
| 2207 |
|
|
6.68 6.40 12.16 0.37 96% 96% Put [second] mbox
|
| 2208 |
|
|
0.50 0.32 1.60 0.20 93% 56% Peek [2 msgs] mbox
|
| 2209 |
|
|
7.13 6.40 14.08 0.49 90% 46% Get [first] mbox
|
| 2210 |
|
|
6.97 6.40 13.44 0.47 84% 78% Get [second] mbox
|
| 2211 |
|
|
6.24 5.76 11.52 0.38 78% 81% Tryput [first] mbox
|
| 2212 |
|
|
5.98 5.44 11.20 0.39 78% 62% Peek item [non-empty] mbox
|
| 2213 |
|
|
6.52 6.08 13.12 0.49 93% 81% Tryget [non-empty] mbox
|
| 2214 |
|
|
5.50 5.12 10.24 0.30 68% 28% Peek item [empty] mbox
|
| 2215 |
|
|
5.76 5.44 10.88 0.32 96% 96% Tryget [empty] mbox
|
| 2216 |
|
|
0.50 0.32 1.60 0.19 96% 53% Waiting to get mbox
|
| 2217 |
|
|
0.50 0.32 1.60 0.19 96% 53% Waiting to put mbox
|
| 2218 |
|
|
7.45 7.04 15.04 0.49 96% 93% Delete mbox
|
| 2219 |
|
|
37.47 36.80 48.64 0.70 96% 96% Put/Get mbox
|
| 2220 |
|
|
|
| 2221 |
|
|
2.49 2.24 6.08 0.28 96% 56% Init semaphore
|
| 2222 |
|
|
5.09 4.80 8.64 0.27 46% 46% Post [0] semaphore
|
| 2223 |
|
|
6.25 5.76 10.88 0.32 93% 3% Wait [1] semaphore
|
| 2224 |
|
|
4.84 4.48 8.32 0.23 68% 25% Trywait [0] semaphore
|
| 2225 |
|
|
4.98 4.80 8.00 0.26 96% 71% Trywait [1] semaphore
|
| 2226 |
|
|
1.66 1.28 3.84 0.20 68% 15% Peek semaphore
|
| 2227 |
|
|
1.24 0.96 3.20 0.17 65% 31% Destroy semaphore
|
| 2228 |
|
|
40.74 40.32 49.28 0.53 96% 96% Post/Wait semaphore
|
| 2229 |
|
|
|
| 2230 |
|
|
2.65 2.24 6.08 0.23 84% 9% Create counter
|
| 2231 |
|
|
0.85 0.64 2.24 0.22 90% 53% Get counter value
|
| 2232 |
|
|
0.68 0.64 1.92 0.08 96% 96% Set counter value
|
| 2233 |
|
|
7.13 6.72 8.64 0.24 78% 18% Tick counter
|
| 2234 |
|
|
1.30 0.96 3.20 0.12 84% 12% Delete counter
|
| 2235 |
|
|
|
| 2236 |
|
|
3.69 3.52 7.68 0.29 96% 84% Create alarm
|
| 2237 |
|
|
8.98 8.32 17.60 0.61 68% 62% Initialize alarm
|
| 2238 |
|
|
0.96 0.64 2.88 0.14 71% 21% Disable alarm
|
| 2239 |
|
|
8.76 8.32 17.60 0.59 96% 87% Enable alarm
|
| 2240 |
|
|
1.99 1.60 5.12 0.21 81% 12% Delete alarm
|
| 2241 |
|
|
7.44 7.36 9.92 0.15 96% 96% Tick counter [1 alarm]
|
| 2242 |
|
|
21.68 21.44 24.64 0.25 96% 53% Tick counter [many alarms]
|
| 2243 |
|
|
10.95 10.56 15.04 0.26 78% 18% Tick & fire counter [1 alarm]
|
| 2244 |
|
|
132.79 132.48 136.32 0.23 59% 37% Tick & fire counters [>1 together]
|
| 2245 |
|
|
25.18 24.96 28.80 0.29 96% 65% Tick & fire counters [>1 separately]
|
| 2246 |
|
|
23.06 22.72 47.36 0.40 98% 98% Alarm latency [0 threads]
|
| 2247 |
|
|
31.53 27.20 56.00 0.63 96% 0% Alarm latency [2 threads]
|
| 2248 |
|
|
36.86 30.40 58.88 4.15 50% 28% Alarm latency [many threads]
|
| 2249 |
|
|
|
| 2250 |
|
|
11.41 8.96 16.32 0.00 Clock/interrupt latency
|
| 2251 |
|
|
|
| 2252 |
|
|
609 603 651 (main stack: 1059) Thread stack used (1704 total)
|
| 2253 |
|
|
All done, main stack : stack used 1059 size 5664
|
| 2254 |
|
|
All done : Interrupt stack used 251 size 4096
|
| 2255 |
|
|
All done : Idlethread stack used 587 size 2048
|
| 2256 |
|
|
|
| 2257 |
|
|
Timing complete - 23690 ms total
|
| 2258 |
|
|
|
| 2259 |
|
|
PASS:<Basic timing OK>
|
| 2260 |
|
|
EXIT:<done>
|
| 2261 |
|
|
|
| 2262 |
|
|
|
| 2263 |
|
|
|
| 2264 |
|
|
|
| 2265 |
|
|
|
| 2266 |
|
|
|
| 2267 |
|
|
|
| 2268 |
|
|
Board: Hitachi EDK7708
|
| 2269 |
|
|
|
| 2270 |
|
|
|
| 2271 |
|
|
|
| 2272 |
|
|
Board: Hitachi EDK7708
|
| 2273 |
|
|
|
| 2274 |
|
|
CPU: Hitachi SH3/7708 60MHz
|
| 2275 |
|
|
|
| 2276 |
|
|
|
| 2277 |
|
|
|
| 2278 |
|
|
Startup, main stack : stack used 444 size 4112
|
| 2279 |
|
|
Startup : Interrupt stack used 76 size 4096
|
| 2280 |
|
|
Startup : Idlethread stack used 96 size 2048
|
| 2281 |
|
|
|
| 2282 |
|
|
eCos Kernel Timings
|
| 2283 |
|
|
Notes: all times are in microseconds (.000001) unless otherwise stated
|
| 2284 |
|
|
|
| 2285 |
|
|
Reading the hardware clock takes 2 `ticks' overhead
|
| 2286 |
|
|
... this value will be factored out of all other measurements
|
| 2287 |
|
|
Clock interrupt took 14.75 microseconds (55 raw clock ticks)
|
| 2288 |
|
|
|
| 2289 |
|
|
Testing parameters:
|
| 2290 |
|
|
Clock samples: 32
|
| 2291 |
|
|
Threads: 16
|
| 2292 |
|
|
Thread switches: 128
|
| 2293 |
|
|
Mutexes: 32
|
| 2294 |
|
|
Mailboxes: 32
|
| 2295 |
|
|
Semaphores: 32
|
| 2296 |
|
|
Scheduler operations: 128
|
| 2297 |
|
|
Counters: 32
|
| 2298 |
|
|
Alarms: 32
|
| 2299 |
|
|
|
| 2300 |
|
|
|
| 2301 |
|
|
Confidence
|
| 2302 |
|
|
Ave Min Max Var Ave Min Function
|
| 2303 |
|
|
====== ====== ====== ====== ========== ========
|
| 2304 |
|
|
15.43 13.60 24.00 1.29 62% 50% Create thread
|
| 2305 |
|
|
3.33 3.20 4.27 0.18 93% 68% Yield thread [all suspended]
|
| 2306 |
|
|
2.90 2.40 5.33 0.36 81% 62% Suspend [suspended] thread
|
| 2307 |
|
|
2.93 2.67 4.80 0.27 93% 87% Resume thread
|
| 2308 |
|
|
4.30 3.73 10.13 0.73 93% 93% Set priority
|
| 2309 |
|
|
0.65 0.27 2.13 0.28 68% 62% Get priority
|
| 2310 |
|
|
9.72 8.53 21.33 1.45 93% 93% Kill [suspended] thread
|
| 2311 |
|
|
3.33 3.20 4.53 0.20 93% 75% Yield [no other] thread
|
| 2312 |
|
|
5.30 4.80 10.13 0.65 93% 87% Resume [suspended low prio] thread
|
| 2313 |
|
|
2.80 2.40 4.53 0.27 81% 75% Resume [runnable low prio] thread
|
| 2314 |
|
|
4.82 4.00 8.27 0.49 68% 25% Suspend [runnable] thread
|
| 2315 |
|
|
3.32 3.20 4.00 0.16 93% 68% Yield [only low prio] thread
|
| 2316 |
|
|
2.82 2.40 4.27 0.25 81% 12% Suspend [runnable->not runnable]
|
| 2317 |
|
|
9.45 8.53 19.47 1.25 93% 93% Kill [runnable] thread
|
| 2318 |
|
|
5.30 4.53 11.20 0.74 87% 93% Destroy [dead] thread
|
| 2319 |
|
|
11.83 10.67 25.07 1.65 93% 93% Destroy [runnable] thread
|
| 2320 |
|
|
19.53 17.33 31.20 1.88 75% 75% Resume [high priority] thread
|
| 2321 |
|
|
6.70 6.67 11.47 0.07 99% 99% Thread switch
|
| 2322 |
|
|
|
| 2323 |
|
|
0.33 0.27 0.80 0.10 75% 75% Scheduler lock
|
| 2324 |
|
|
1.74 1.60 2.67 0.14 99% 50% Scheduler unlock [0 threads]
|
| 2325 |
|
|
1.72 1.60 3.20 0.14 99% 57% Scheduler unlock [1 suspended]
|
| 2326 |
|
|
1.81 1.60 3.20 0.10 75% 23% Scheduler unlock [many suspended]
|
| 2327 |
|
|
1.86 1.60 3.20 0.02 94% 4% Scheduler unlock [many low prio]
|
| 2328 |
|
|
|
| 2329 |
|
|
1.22 1.07 3.20 0.20 96% 65% Init mutex
|
| 2330 |
|
|
3.21 2.93 5.87 0.17 68% 28% Lock [unlocked] mutex
|
| 2331 |
|
|
3.36 2.93 7.47 0.30 84% 75% Unlock [locked] mutex
|
| 2332 |
|
|
2.83 2.67 5.33 0.22 96% 65% Trylock [unlocked] mutex
|
| 2333 |
|
|
2.53 2.40 2.93 0.14 96% 53% Trylock [locked] mutex
|
| 2334 |
|
|
0.28 0.27 0.80 0.03 96% 96% Destroy mutex
|
| 2335 |
|
|
20.09 19.73 23.20 0.23 84% 12% Unlock/Lock mutex
|
| 2336 |
|
|
|
| 2337 |
|
|
2.38 2.13 4.53 0.17 59% 34% Create mbox
|
| 2338 |
|
|
0.45 0.27 1.33 0.15 56% 40% Peek [empty] mbox
|
| 2339 |
|
|
3.70 3.20 7.20 0.29 84% 59% Put [first] mbox
|
| 2340 |
|
|
0.45 0.27 0.80 0.13 62% 34% Peek [1 msg] mbox
|
| 2341 |
|
|
3.67 3.20 5.60 0.23 81% 6% Put [second] mbox
|
| 2342 |
|
|
0.42 0.27 0.53 0.13 59% 40% Peek [2 msgs] mbox
|
| 2343 |
|
|
3.98 3.47 7.47 0.24 59% 9% Get [first] mbox
|
| 2344 |
|
|
3.97 3.47 4.80 0.24 59% 12% Get [second] mbox
|
| 2345 |
|
|
3.51 3.20 6.67 0.28 56% 78% Tryput [first] mbox
|
| 2346 |
|
|
3.29 2.93 5.60 0.29 59% 65% Peek item [non-empty] mbox
|
| 2347 |
|
|
4.06 3.47 7.20 0.26 68% 3% Tryget [non-empty] mbox
|
| 2348 |
|
|
3.03 2.67 5.33 0.19 93% 3% Peek item [empty] mbox
|
| 2349 |
|
|
3.36 3.20 4.80 0.18 96% 56% Tryget [empty] mbox
|
| 2350 |
|
|
0.57 0.27 1.33 0.09 84% 3% Waiting to get mbox
|
| 2351 |
|
|
0.52 0.27 1.07 0.11 62% 21% Waiting to put mbox
|
| 2352 |
|
|
3.88 3.47 7.47 0.30 78% 65% Delete mbox
|
| 2353 |
|
|
12.04 11.73 17.33 0.33 96% 96% Put/Get mbox
|
| 2354 |
|
|
|
| 2355 |
|
|
1.17 1.07 2.40 0.16 71% 71% Init semaphore
|
| 2356 |
|
|
2.67 2.40 4.27 0.15 62% 25% Post [0] semaphore
|
| 2357 |
|
|
3.00 2.67 4.53 0.17 65% 12% Wait [1] semaphore
|
| 2358 |
|
|
2.54 2.40 4.80 0.20 96% 71% Trywait [0] semaphore
|
| 2359 |
|
|
2.42 2.40 2.93 0.03 96% 96% Trywait [1] semaphore
|
| 2360 |
|
|
0.79 0.53 2.13 0.15 59% 28% Peek semaphore
|
| 2361 |
|
|
0.77 0.53 1.87 0.12 71% 25% Destroy semaphore
|
| 2362 |
|
|
12.64 12.27 17.07 0.28 84% 96% Post/Wait semaphore
|
| 2363 |
|
|
|
| 2364 |
|
|
1.27 1.07 2.93 0.17 53% 43% Create counter
|
| 2365 |
|
|
0.54 0.27 1.33 0.13 59% 21% Get counter value
|
| 2366 |
|
|
0.47 0.27 1.60 0.17 46% 43% Set counter value
|
| 2367 |
|
|
3.47 3.20 4.80 0.16 53% 28% Tick counter
|
| 2368 |
|
|
0.80 0.53 2.13 0.13 62% 25% Delete counter
|
| 2369 |
|
|
|
| 2370 |
|
|
1.86 1.60 4.00 0.21 43% 40% Create alarm
|
| 2371 |
|
|
5.12 4.80 9.07 0.36 93% 75% Initialize alarm
|
| 2372 |
|
|
0.44 0.27 1.33 0.19 87% 53% Disable alarm
|
| 2373 |
|
|
4.77 4.27 9.60 0.35 87% 62% Enable alarm
|
| 2374 |
|
|
1.02 0.80 2.67 0.18 53% 40% Delete alarm
|
| 2375 |
|
|
3.56 3.47 5.33 0.15 84% 84% Tick counter [1 alarm]
|
| 2376 |
|
|
15.04 14.93 16.27 0.16 71% 71% Tick counter [many alarms]
|
| 2377 |
|
|
5.75 5.60 8.00 0.21 96% 68% Tick & fire counter [1 alarm]
|
| 2378 |
|
|
79.60 79.47 81.07 0.17 96% 65% Tick & fire counters [>1 together]
|
| 2379 |
|
|
17.04 16.80 18.93 0.15 65% 31% Tick & fire counters [>1 separately]
|
| 2380 |
|
|
12.44 12.27 29.60 0.31 96% 96% Alarm latency [0 threads]
|
| 2381 |
|
|
14.06 12.27 27.20 0.53 82% 4% Alarm latency [2 threads]
|
| 2382 |
|
|
19.62 17.07 38.40 1.44 57% 34% Alarm latency [many threads]
|
| 2383 |
|
|
|
| 2384 |
|
|
2.79 2.40 6.13 0.00 Clock/interrupt latency
|
| 2385 |
|
|
|
| 2386 |
|
|
376 376 376 (main stack: 764) Thread stack used (992 total)
|
| 2387 |
|
|
All done, main stack : stack used 764 size 4112
|
| 2388 |
|
|
All done : Interrupt stack used 176 size 4096
|
| 2389 |
|
|
All done : Idlethread stack used 352 size 2048
|
| 2390 |
|
|
|
| 2391 |
|
|
Timing complete - 23860 ms total
|
| 2392 |
|
|
|
| 2393 |
|
|
PASS:<Basic timing OK>
|
| 2394 |
|
|
EXIT:<done>
|
| 2395 |
|
|
|
| 2396 |
|
|
|
| 2397 |
|
|
|
| 2398 |
|
|
|
| 2399 |
|
|
|
| 2400 |
|
|
|
| 2401 |
|
|
|
| 2402 |
|
|
Board: CQ CqREEK SH3 Evaluation Board (cq7708)
|
| 2403 |
|
|
|
| 2404 |
|
|
|
| 2405 |
|
|
Board: CQ CqREEK SH3 Evaluation Board (cq7708)
|
| 2406 |
|
|
|
| 2407 |
|
|
CPU: Hitachi SH3/7708 60MHz
|
| 2408 |
|
|
|
| 2409 |
|
|
Startup, main stack : stack used 448 size 4112
|
| 2410 |
|
|
Startup : Interrupt stack used 80 size 4096
|
| 2411 |
|
|
Startup : Idlethread stack used 96 size 2048
|
| 2412 |
|
|
|
| 2413 |
|
|
eCos Kernel Timings
|
| 2414 |
|
|
Notes: all times are in microseconds (.000001) unless otherwise stated
|
| 2415 |
|
|
|
| 2416 |
|
|
Reading the hardware clock takes 2 `ticks' overhead
|
| 2417 |
|
|
... this value will be factored out of all other measurements
|
| 2418 |
|
|
Clock interrupt took 19.17 microseconds (71 raw clock ticks)
|
| 2419 |
|
|
|
| 2420 |
|
|
Testing parameters:
|
| 2421 |
|
|
Clock samples: 32
|
| 2422 |
|
|
Threads: 64
|
| 2423 |
|
|
Thread switches: 128
|
| 2424 |
|
|
Mutexes: 32
|
| 2425 |
|
|
Mailboxes: 32
|
| 2426 |
|
|
Semaphores: 32
|
| 2427 |
|
|
Scheduler operations: 128
|
| 2428 |
|
|
Counters: 32
|
| 2429 |
|
|
Alarms: 32
|
| 2430 |
|
|
|
| 2431 |
|
|
|
| 2432 |
|
|
Confidence
|
| 2433 |
|
|
Ave Min Max Var Ave Min Function
|
| 2434 |
|
|
====== ====== ====== ====== ========== ========
|
| 2435 |
|
|
20.62 14.40 26.93 3.23 48% 26% Create thread
|
| 2436 |
|
|
3.16 2.93 4.27 0.09 78% 20% Yield thread [all suspended]
|
| 2437 |
|
|
2.91 2.40 5.87 0.17 57% 1% Suspend [suspended] thread
|
| 2438 |
|
|
2.73 2.40 6.40 0.19 64% 15% Resume thread
|
| 2439 |
|
|
4.05 3.73 11.47 0.27 62% 90% Set priority
|
| 2440 |
|
|
0.82 0.27 2.67 0.17 56% 3% Get priority
|
| 2441 |
|
|
9.07 8.53 24.27 0.51 78% 71% Kill [suspended] thread
|
| 2442 |
|
|
3.19 2.93 7.20 0.14 70% 28% Yield [no other] thread
|
| 2443 |
|
|
5.45 4.53 17.87 0.49 78% 17% Resume [suspended low prio] thread
|
| 2444 |
|
|
2.67 2.40 5.07 0.15 56% 28% Resume [runnable low prio] thread
|
| 2445 |
|
|
4.95 4.27 11.47 0.28 82% 14% Suspend [runnable] thread
|
| 2446 |
|
|
3.15 2.93 4.53 0.11 73% 25% Yield [only low prio] thread
|
| 2447 |
|
|
2.82 2.40 5.60 0.21 84% 10% Suspend [runnable->not runnable]
|
| 2448 |
|
|
8.92 8.00 24.27 0.51 84% 14% Kill [runnable] thread
|
| 2449 |
|
|
5.10 4.53 12.00 0.27 59% 39% Destroy [dead] thread
|
| 2450 |
|
|
11.81 10.93 37.33 0.81 87% 95% Destroy [runnable] thread
|
| 2451 |
|
|
22.15 20.80 54.67 1.27 92% 92% Resume [high priority] thread
|
| 2452 |
|
|
6.85 6.67 13.60 0.19 99% 50% Thread switch
|
| 2453 |
|
|
|
| 2454 |
|
|
0.27 0.27 1.07 0.01 99% 99% Scheduler lock
|
| 2455 |
|
|
1.74 1.60 2.67 0.14 99% 50% Scheduler unlock [0 threads]
|
| 2456 |
|
|
1.74 1.60 2.93 0.14 99% 50% Scheduler unlock [1 suspended]
|
| 2457 |
|
|
1.81 1.60 4.27 0.11 72% 26% Scheduler unlock [many suspended]
|
| 2458 |
|
|
1.75 1.60 4.00 0.15 50% 49% Scheduler unlock [many low prio]
|
| 2459 |
|
|
|
| 2460 |
|
|
1.22 1.07 4.27 0.23 96% 78% Init mutex
|
| 2461 |
|
|
3.18 2.93 7.20 0.27 96% 53% Lock [unlocked] mutex
|
| 2462 |
|
|
3.40 3.20 8.00 0.31 96% 96% Unlock [locked] mutex
|
| 2463 |
|
|
2.77 2.40 5.87 0.22 87% 9% Trylock [unlocked] mutex
|
| 2464 |
|
|
2.35 2.13 3.47 0.14 65% 31% Trylock [locked] mutex
|
| 2465 |
|
|
0.78 0.53 2.67 0.14 68% 28% Destroy mutex
|
| 2466 |
|
|
22.80 22.40 28.80 0.51 96% 71% Unlock/Lock mutex
|
| 2467 |
|
|
|
| 2468 |
|
|
2.61 2.40 6.13 0.26 96% 62% Create mbox
|
| 2469 |
|
|
0.52 0.27 1.60 0.19 40% 37% Peek [empty] mbox
|
| 2470 |
|
|
3.54 3.20 7.73 0.35 93% 78% Put [first] mbox
|
| 2471 |
|
|
0.50 0.27 1.60 0.17 46% 37% Peek [1 msg] mbox
|
| 2472 |
|
|
3.62 3.20 6.93 0.34 59% 65% Put [second] mbox
|
| 2473 |
|
|
0.52 0.27 2.13 0.23 31% 43% Peek [2 msgs] mbox
|
| 2474 |
|
|
3.93 3.47 10.13 0.43 65% 65% Get [first] mbox
|
| 2475 |
|
|
3.92 3.47 7.47 0.40 56% 56% Get [second] mbox
|
| 2476 |
|
|
3.37 2.93 6.93 0.36 59% 68% Tryput [first] mbox
|
| 2477 |
|
|
3.30 2.67 6.93 0.38 84% 40% Peek item [non-empty] mbox
|
| 2478 |
|
|
3.93 3.47 9.33 0.44 65% 71% Tryget [non-empty] mbox
|
| 2479 |
|
|
2.94 2.67 6.13 0.25 43% 43% Peek item [empty] mbox
|
| 2480 |
|
|
3.23 2.93 6.67 0.27 56% 84% Tryget [empty] mbox
|
| 2481 |
|
|
0.58 0.27 2.67 0.20 62% 21% Waiting to get mbox
|
| 2482 |
|
|
0.55 0.27 1.87 0.14 62% 21% Waiting to put mbox
|
| 2483 |
|
|
3.82 3.47 9.87 0.39 96% 93% Delete mbox
|
| 2484 |
|
|
13.35 12.80 21.33 0.50 87% 78% Put/Get mbox
|
| 2485 |
|
|
|
| 2486 |
|
|
1.22 1.07 2.93 0.19 96% 59% Init semaphore
|
| 2487 |
|
|
2.42 2.13 4.27 0.12 81% 15% Post [0] semaphore
|
| 2488 |
|
|
2.96 2.67 5.07 0.16 68% 21% Wait [1] semaphore
|
| 2489 |
|
|
2.37 2.13 4.53 0.17 62% 34% Trywait [0] semaphore
|
| 2490 |
|
|
2.29 2.13 3.47 0.17 96% 53% Trywait [1] semaphore
|
| 2491 |
|
|
0.66 0.53 2.13 0.17 96% 68% Peek semaphore
|
| 2492 |
|
|
0.81 0.53 2.93 0.13 75% 21% Destroy semaphore
|
| 2493 |
|
|
14.47 14.13 21.33 0.43 96% 96% Post/Wait semaphore
|
| 2494 |
|
|
|
| 2495 |
|
|
1.44 1.07 3.47 0.29 56% 71% Create counter
|
| 2496 |
|
|
0.62 0.27 1.07 0.14 62% 3% Get counter value
|
| 2497 |
|
|
0.56 0.27 1.60 0.17 50% 25% Set counter value
|
| 2498 |
|
|
3.39 3.20 4.27 0.16 53% 40% Tick counter
|
| 2499 |
|
|
0.83 0.53 1.87 0.14 68% 15% Delete counter
|
| 2500 |
|
|
|
| 2501 |
|
|
2.02 1.87 4.00 0.21 93% 68% Create alarm
|
| 2502 |
|
|
5.06 4.27 11.73 0.46 78% 18% Initialize alarm
|
| 2503 |
|
|
0.73 0.27 2.40 0.22 84% 3% Disable alarm
|
| 2504 |
|
|
4.82 4.27 11.47 0.48 81% 65% Enable alarm
|
| 2505 |
|
|
1.19 0.80 3.47 0.22 87% 9% Delete alarm
|
| 2506 |
|
|
3.63 3.47 5.60 0.20 96% 59% Tick counter [1 alarm]
|
| 2507 |
|
|
15.01 14.93 16.53 0.13 87% 87% Tick counter [many alarms]
|
| 2508 |
|
|
5.50 5.33 8.00 0.22 96% 65% Tick & fire counter [1 alarm]
|
| 2509 |
|
|
74.27 74.13 76.80 0.21 96% 78% Tick & fire counters [>1 together]
|
| 2510 |
|
|
16.90 16.53 19.47 0.23 81% 15% Tick & fire counters [>1 separately]
|
| 2511 |
|
|
16.70 16.53 36.27 0.33 98% 98% Alarm latency [0 threads]
|
| 2512 |
|
|
17.85 16.53 34.40 0.47 73% 0% Alarm latency [2 threads]
|
| 2513 |
|
|
63.26 58.40 80.00 2.64 52% 32% Alarm latency [many threads]
|
| 2514 |
|
|
30.37 29.33 124.80 1.68 98% 97% Alarm -> thread resume latency
|
| 2515 |
|
|
|
| 2516 |
|
|
7.37 5.07 17.87 0.00 Clock/interrupt latency
|
| 2517 |
|
|
|
| 2518 |
|
|
9.00 4.53 26.93 0.00 Clock DSR latency
|
| 2519 |
|
|
|
| 2520 |
|
|
106 0 376 (main stack: 764) Thread stack used (992 total)
|
| 2521 |
|
|
All done, main stack : stack used 764 size 4112
|
| 2522 |
|
|
All done : Interrupt stack used 176 size 4096
|
| 2523 |
|
|
All done : Idlethread stack used 352 size 2048
|
| 2524 |
|
|
|
| 2525 |
|
|
Timing complete - 30310 ms total
|
| 2526 |
|
|
|
| 2527 |
|
|
PASS:<Basic timing OK>
|
| 2528 |
|
|
EXIT:<done>
|
| 2529 |
|
|
|
| 2530 |
|
|
|
| 2531 |
|
|
|
| 2532 |
|
|
|
| 2533 |
|
|
|
| 2534 |
|
|
|
| 2535 |
|
|
|
| 2536 |
|
|
Board: Hitachi HS7729PCI HS7729 SH3
|
| 2537 |
|
|
|
| 2538 |
|
|
|
| 2539 |
|
|
Board: Hitachi HS7729PCI HS7729 SH3
|
| 2540 |
|
|
|
| 2541 |
|
|
CPU: Hitachi SH3/7729 132MHz
|
| 2542 |
|
|
|
| 2543 |
|
|
|
| 2544 |
|
|
Startup, main stack : stack used 464 size 4112
|
| 2545 |
|
|
Startup : Interrupt stack used 92 size 4096
|
| 2546 |
|
|
Startup : Idlethread stack used 94 size 2048
|
| 2547 |
|
|
|
| 2548 |
|
|
eCos Kernel Timings
|
| 2549 |
|
|
Notes: all times are in microseconds (.000001) unless otherwise stated
|
| 2550 |
|
|
|
| 2551 |
|
|
Reading the hardware clock takes 3 'ticks' overhead
|
| 2552 |
|
|
... this value will be factored out of all other measurements
|
| 2553 |
|
|
Clock interrupt took 18.10 microseconds (149 raw clock ticks)
|
| 2554 |
|
|
|
| 2555 |
|
|
Testing parameters:
|
| 2556 |
|
|
Clock samples: 32
|
| 2557 |
|
|
Threads: 64
|
| 2558 |
|
|
Thread switches: 128
|
| 2559 |
|
|
Mutexes: 32
|
| 2560 |
|
|
Mailboxes: 32
|
| 2561 |
|
|
Semaphores: 32
|
| 2562 |
|
|
Scheduler operations: 128
|
| 2563 |
|
|
Counters: 32
|
| 2564 |
|
|
Alarms: 32
|
| 2565 |
|
|
|
| 2566 |
|
|
|
| 2567 |
|
|
Confidence
|
| 2568 |
|
|
Ave Min Max Var Ave Min Function
|
| 2569 |
|
|
====== ====== ====== ====== ========== ========
|
| 2570 |
|
|
18.33 15.52 28.24 1.47 53% 28% Create thread
|
| 2571 |
|
|
3.08 2.91 6.79 0.13 78% 89% Yield thread [all suspended]
|
| 2572 |
|
|
3.23 3.03 6.18 0.16 59% 70% Suspend [suspended] thread
|
| 2573 |
|
|
2.70 2.55 6.18 0.15 54% 82% Resume thread
|
| 2574 |
|
|
4.12 4.00 7.52 0.16 96% 81% Set priority
|
| 2575 |
|
|
0.61 0.48 1.33 0.07 57% 28% Get priority
|
| 2576 |
|
|
9.14 8.61 18.91 0.42 85% 57% Kill [suspended] thread
|
| 2577 |
|
|
3.04 2.91 4.48 0.07 68% 20% Yield [no other] thread
|
| 2578 |
|
|
5.12 4.73 7.88 0.29 60% 53% Resume [suspended low prio] thread
|
| 2579 |
|
|
2.54 2.42 3.03 0.09 39% 40% Resume [runnable low prio] thread
|
| 2580 |
|
|
5.00 4.36 9.45 0.21 75% 1% Suspend [runnable] thread
|
| 2581 |
|
|
3.04 2.91 4.61 0.07 65% 21% Yield [only low prio] thread
|
| 2582 |
|
|
2.91 2.79 3.27 0.08 43% 31% Suspend [runnable->not runnable]
|
| 2583 |
|
|
8.82 8.12 15.39 0.36 68% 29% Kill [runnable] thread
|
| 2584 |
|
|
5.07 4.48 12.73 0.37 76% 50% Destroy [dead] thread
|
| 2585 |
|
|
11.17 10.55 22.91 0.52 78% 67% Destroy [runnable] thread
|
| 2586 |
|
|
22.43 21.45 32.73 0.61 81% 50% Resume [high priority] thread
|
| 2587 |
|
|
7.99 7.88 13.58 0.14 98% 86% Thread switch
|
| 2588 |
|
|
|
| 2589 |
|
|
0.37 0.36 1.33 0.02 97% 97% Scheduler lock
|
| 2590 |
|
|
1.74 1.70 2.06 0.06 70% 70% Scheduler unlock [0 threads]
|
| 2591 |
|
|
1.75 1.70 2.06 0.07 92% 64% Scheduler unlock [1 suspended]
|
| 2592 |
|
|
1.71 1.70 2.42 0.03 89% 89% Scheduler unlock [many suspended]
|
| 2593 |
|
|
1.76 1.70 3.64 0.08 96% 64% Scheduler unlock [many low prio]
|
| 2594 |
|
|
|
| 2595 |
|
|
4.23 3.88 10.67 0.41 96% 93% Unlock [locked] mutex
|
| 2596 |
|
|
3.12 2.91 6.91 0.29 96% 87% Trylock [unlocked] mutex
|
| 2597 |
|
|
2.54 2.42 2.91 0.11 18% 46% Trylock [locked] mutex
|
| 2598 |
|
|
0.88 0.73 3.15 0.14 65% 96% Destroy mutex
|
| 2599 |
|
|
22.33 22.06 25.94 0.23 81% 62% Unlock/Lock mutex
|
| 2600 |
|
|
|
| 2601 |
|
|
1.92 1.82 4.73 0.19 96% 93% Create mbox
|
| 2602 |
|
|
0.61 0.48 1.70 0.15 84% 75% Peek [empty] mbox
|
| 2603 |
|
|
4.00 3.64 9.45 0.36 96% 87% Put [first] mbox
|
| 2604 |
|
|
0.30 0.24 0.73 0.09 84% 75% Peek [1 msg] mbox
|
| 2605 |
|
|
3.82 3.64 6.67 0.22 90% 84% Put [second] mbox
|
| 2606 |
|
|
0.32 0.24 1.33 0.12 81% 81% Peek [2 msgs] mbox
|
| 2607 |
|
|
4.19 3.76 9.21 0.34 84% 50% Get [first] mbox
|
| 2608 |
|
|
3.91 3.76 5.21 0.16 84% 75% Get [second] mbox
|
| 2609 |
|
|
3.51 3.27 8.12 0.34 93% 87% Tryput [first] mbox
|
| 2610 |
|
|
3.25 2.91 7.15 0.30 62% 56% Peek item [non-empty] mbox
|
| 2611 |
|
|
3.86 3.52 8.73 0.37 93% 84% Tryget [non-empty] mbox
|
| 2612 |
|
|
2.87 2.79 3.76 0.12 84% 71% Peek item [empty] mbox
|
| 2613 |
|
|
3.15 3.03 4.24 0.10 46% 40% Tryget [empty] mbox
|
| 2614 |
|
|
0.34 0.24 1.33 0.10 43% 46% Waiting to get mbox
|
| 2615 |
|
|
0.36 0.24 1.45 0.09 53% 37% Waiting to put mbox
|
| 2616 |
|
|
4.49 4.24 10.91 0.41 96% 96% Delete mbox
|
| 2617 |
|
|
12.67 12.36 19.52 0.43 96% 96% Put/Get mbox
|
| 2618 |
|
|
|
| 2619 |
|
|
0.87 0.85 1.45 0.05 93% 93% Init semaphore
|
| 2620 |
|
|
2.74 2.55 4.48 0.18 50% 50% Post [0] semaphore
|
| 2621 |
|
|
3.39 3.15 4.24 0.14 78% 50% Wait [1] semaphore
|
| 2622 |
|
|
2.62 2.42 5.33 0.21 96% 65% Trywait [0] semaphore
|
| 2623 |
|
|
2.76 2.67 3.27 0.08 46% 43% Trywait [1] semaphore
|
| 2624 |
|
|
1.09 0.85 2.91 0.19 68% 56% Peek semaphore
|
| 2625 |
|
|
0.97 0.73 3.39 0.17 90% 65% Destroy semaphore
|
| 2626 |
|
|
13.09 12.85 16.12 0.19 84% 65% Post/Wait semaphore
|
| 2627 |
|
|
|
| 2628 |
|
|
1.57 1.45 3.88 0.15 96% 93% Create counter
|
| 2629 |
|
|
0.91 0.73 2.18 0.16 46% 68% Get counter value
|
| 2630 |
|
|
0.55 0.48 0.97 0.09 90% 62% Set counter value
|
| 2631 |
|
|
4.19 4.00 5.82 0.13 84% 75% Tick counter
|
| 2632 |
|
|
0.87 0.73 3.15 0.16 93% 93% Delete counter
|
| 2633 |
|
|
|
| 2634 |
|
|
2.50 2.30 5.21 0.18 81% 90% Create alarm
|
| 2635 |
|
|
6.16 5.70 12.97 0.47 96% 71% Initialize alarm
|
| 2636 |
|
|
0.50 0.36 1.70 0.11 62% 34% Disable alarm
|
| 2637 |
|
|
5.16 4.85 8.73 0.29 78% 78% Enable alarm
|
| 2638 |
|
|
1.18 1.09 2.30 0.12 84% 65% Delete alarm
|
| 2639 |
|
|
5.22 5.09 7.39 0.14 96% 93% Tick counter [1 alarm]
|
| 2640 |
|
|
52.37 52.12 52.73 0.20 37% 56% Tick counter [many alarms]
|
| 2641 |
|
|
6.73 6.55 8.24 0.13 78% 68% Tick & fire counter [1 alarm]
|
| 2642 |
|
|
108.65 108.61 109.21 0.07 87% 87% Tick & fire counters [>1 together]
|
| 2643 |
|
|
54.25 54.06 54.79 0.11 65% 18% Tick & fire counters [>1 separately]
|
| 2644 |
|
|
17.36 17.09 29.82 0.23 82% 57% Alarm latency [0 threads]
|
| 2645 |
|
|
19.75 17.09 28.00 1.65 46% 40% Alarm latency [2 threads]
|
| 2646 |
|
|
39.02 34.06 50.67 2.00 53% 15% Alarm latency [many threads]
|
| 2647 |
|
|
29.31 28.36 105.09 1.27 98% 97% Alarm -> thread resume latency
|
| 2648 |
|
|
|
| 2649 |
|
|
5.08 3.88 11.15 0.00 Clock/interrupt latency
|
| 2650 |
|
|
|
| 2651 |
|
|
7.32 5.09 16.73 0.00 Clock DSR latency
|
| 2652 |
|
|
|
| 2653 |
|
|
6 0 380 (main stack: 820) Thread stack used (992 total)
|
| 2654 |
|
|
All done, main stack : stack used 820 size 4112
|
| 2655 |
|
|
All done : Interrupt stack used 196 size 4096
|
| 2656 |
|
|
All done : Idlethread stack used 360 size 2048
|
| 2657 |
|
|
|
| 2658 |
|
|
Timing complete - 29960 ms total
|
| 2659 |
|
|
PASS:<Basic timing OK>
|
| 2660 |
|
|
EXIT:<done>
|
| 2661 |
|
|
|
| 2662 |
|
|
|
| 2663 |
|
|
|
| 2664 |
|
|
|
| 2665 |
|
|
|
| 2666 |
|
|
Board: Hitachi Solution Engine 7751 SH4 (se7751)
|
| 2667 |
|
|
Board: Hitachi Solution Engine 7751 SH4 (se7751)
|
| 2668 |
|
|
|
| 2669 |
|
|
CPU: Hitachi SH4/7751 162MHz
|
| 2670 |
|
|
|
| 2671 |
|
|
|
| 2672 |
|
|
Startup, main stack : stack used 464 size 4112
|
| 2673 |
|
|
Startup : Interrupt stack used 92 size 4096
|
| 2674 |
|
|
Startup : Idlethread stack used 94 size 2048
|
| 2675 |
|
|
|
| 2676 |
|
|
|
| 2677 |
|
|
eCos Kernel Timings
|
| 2678 |
|
|
Notes: all times are in microseconds (.000001) unless otherwise stated
|
| 2679 |
|
|
|
| 2680 |
|
|
|
| 2681 |
|
|
Reading the hardware clock takes 1 `ticks' overhead
|
| 2682 |
|
|
... this value will be factored out of all other measurements
|
| 2683 |
|
|
Clock interrupt took 14.27 microseconds (96 raw clock ticks)
|
| 2684 |
|
|
|
| 2685 |
|
|
|
| 2686 |
|
|
Testing parameters:
|
| 2687 |
|
|
Clock samples: 32
|
| 2688 |
|
|
Threads: 64
|
| 2689 |
|
|
Thread switches: 128
|
| 2690 |
|
|
Mutexes: 32
|
| 2691 |
|
|
Mailboxes: 32
|
| 2692 |
|
|
Semaphores: 32
|
| 2693 |
|
|
Scheduler operations: 128
|
| 2694 |
|
|
Counters: 32
|
| 2695 |
|
|
Alarms: 32
|
| 2696 |
|
|
|
| 2697 |
|
|
Confidence
|
| 2698 |
|
|
Ave Min Max Var Ave Min Function
|
| 2699 |
|
|
====== ====== ====== ====== ========== ========
|
| 2700 |
|
|
8.06 5.63 12.15 1.37 46% 29% Create thread
|
| 2701 |
|
|
1.15 1.04 5.19 0.15 98% 98% Yield thread [all suspended]
|
| 2702 |
|
|
1.13 0.89 5.04 0.27 89% 62% Suspend [suspended] thread
|
| 2703 |
|
|
1.11 0.89 5.19 0.26 89% 71% Resume thread
|
| 2704 |
|
|
1.45 1.19 3.56 0.23 53% 53% Set priority
|
| 2705 |
|
|
0.21 0.15 1.19 0.10 90% 79% Get priority
|
| 2706 |
|
|
4.15 3.56 13.04 0.53 68% 64% Kill [suspended] thread
|
| 2707 |
|
|
1.12 1.04 3.70 0.12 98% 70% Yield [no other] thread
|
| 2708 |
|
|
1.75 1.33 8.00 0.38 59% 65% Resume [suspended low prio] thread
|
| 2709 |
|
|
1.10 0.89 4.59 0.25 87% 73% Resume [runnable low prio] thread
|
| 2710 |
|
|
1.59 1.33 5.93 0.33 81% 79% Suspend [runnable] thread
|
| 2711 |
|
|
1.13 1.04 4.30 0.13 98% 71% Yield [only low prio] thread
|
| 2712 |
|
|
1.09 0.89 3.56 0.21 89% 70% Suspend [runnable->not runnable]
|
| 2713 |
|
|
4.96 4.30 11.70 0.44 68% 39% Kill [runnable] thread
|
| 2714 |
|
|
1.95 1.48 8.00 0.34 75% 57% Destroy [dead] thread
|
| 2715 |
|
|
4.41 3.85 10.37 0.47 53% 57% Destroy [runnable] thread
|
| 2716 |
|
|
13.15 11.41 23.85 1.11 73% 39% Resume [high priority] thread
|
| 2717 |
|
|
3.10 2.96 6.22 0.11 41% 39% Thread switch
|
| 2718 |
|
|
|
| 2719 |
|
|
0.13 0.00 1.33 0.06 74% 21% Scheduler lock
|
| 2720 |
|
|
0.76 0.74 1.78 0.03 96% 96% Scheduler unlock [0 threads]
|
| 2721 |
|
|
0.76 0.74 1.78 0.03 96% 96% Scheduler unlock [1 suspended]
|
| 2722 |
|
|
0.77 0.74 2.67 0.05 95% 95% Scheduler unlock [many suspended]
|
| 2723 |
|
|
0.76 0.74 2.37 0.04 95% 95% Scheduler unlock [many low prio]
|
| 2724 |
|
|
|
| 2725 |
|
|
0.52 0.15 2.67 0.26 65% 34% Init mutex
|
| 2726 |
|
|
1.23 1.04 5.63 0.32 93% 93% Lock [unlocked] mutex
|
| 2727 |
|
|
1.45 1.19 5.33 0.31 90% 87% Unlock [locked] mutex
|
| 2728 |
|
|
1.13 0.89 4.15 0.28 90% 84% Trylock [unlocked] mutex
|
| 2729 |
|
|
1.00 0.89 2.96 0.17 87% 87% Trylock [locked] mutex
|
| 2730 |
|
|
0.37 0.30 1.78 0.13 90% 84% Destroy mutex
|
| 2731 |
|
|
9.09 8.59 12.59 0.43 71% 71% Unlock/Lock mutex
|
| 2732 |
|
|
0.93 0.59 4.30 0.40 84% 71% Create mbox
|
| 2733 |
|
|
0.26 0.00 1.19 0.17 71% 59% Peek [empty] mbox
|
| 2734 |
|
|
3.03 2.52 6.37 0.47 50% 59% Put [first] mbox
|
| 2735 |
|
|
0.23 0.00 0.74 0.14 68% 15% Peek [1 msg] mbox
|
| 2736 |
|
|
2.93 2.52 4.74 0.46 71% 59% Put [second] mbox
|
| 2737 |
|
|
0.22 0.00 0.59 0.13 68% 15% Peek [2 msgs] mbox
|
| 2738 |
|
|
2.07 1.63 5.93 0.37 84% 59% Get [first] mbox
|
| 2739 |
|
|
2.06 1.63 4.74 0.34 78% 59% Get [second] mbox
|
| 2740 |
|
|
1.48 1.04 5.48 0.37 62% 53% Tryput [first] mbox
|
| 2741 |
|
|
1.31 1.04 4.89 0.32 96% 75% Peek item [non-empty] mbox
|
| 2742 |
|
|
1.47 1.04 5.78 0.38 84% 65% Tryget [non-empty] mbox
|
| 2743 |
|
|
1.15 0.89 3.11 0.18 71% 56% Peek item [empty] mbox
|
| 2744 |
|
|
1.20 1.04 3.85 0.21 93% 84% Tryget [empty] mbox
|
| 2745 |
|
|
0.21 0.00 0.74 0.14 68% 18% Waiting to get mbox
|
| 2746 |
|
|
0.19 0.00 0.44 0.10 43% 15% Waiting to put mbox
|
| 2747 |
|
|
2.19 1.93 5.78 0.27 93% 71% Delete mbox
|
| 2748 |
|
|
10.23 9.93 11.56 0.15 53% 37% Put/Get mbox
|
| 2749 |
|
|
|
| 2750 |
|
|
0.37 0.15 1.33 0.26 71% 71% Init semaphore
|
| 2751 |
|
|
0.98 0.89 2.52 0.13 96% 68% Post [0] semaphore
|
| 2752 |
|
|
1.08 0.89 3.26 0.15 68% 93% Wait [1] semaphore
|
| 2753 |
|
|
0.98 0.89 3.41 0.16 93% 93% Trywait [0] semaphore
|
| 2754 |
|
|
0.73 0.59 1.63 0.07 71% 25% Trywait [1] semaphore
|
| 2755 |
|
|
0.33 0.30 1.33 0.07 93% 93% Peek semaphore
|
| 2756 |
|
|
0.34 0.30 1.78 0.09 96% 96% Destroy semaphore
|
| 2757 |
|
|
9.36 8.74 10.37 0.33 56% 31% Post/Wait semaphore
|
| 2758 |
|
|
|
| 2759 |
|
|
0.54 0.15 3.26 0.23 59% 37% Create counter
|
| 2760 |
|
|
0.13 0.00 0.59 0.07 68% 25% Get counter value
|
| 2761 |
|
|
0.14 0.00 0.59 0.07 68% 25% Set counter value
|
| 2762 |
|
|
3.74 3.56 5.33 0.17 53% 75% Tick counter
|
| 2763 |
|
|
0.32 0.15 2.07 0.12 71% 21% Delete counter
|
| 2764 |
|
|
|
| 2765 |
|
|
1.59 1.19 3.11 0.29 71% 43% Create alarm
|
| 2766 |
|
|
1.89 1.48 6.37 0.44 87% 78% Initialize alarm
|
| 2767 |
|
|
0.20 0.15 0.74 0.09 87% 84% Disable alarm
|
| 2768 |
|
|
1.62 1.33 5.63 0.41 87% 84% Enable alarm
|
| 2769 |
|
|
0.40 0.30 1.33 0.13 87% 62% Delete alarm
|
| 2770 |
|
|
|
| 2771 |
|
|
4.03 3.70 5.78 0.27 68% 56% Tick counter [1 alarm]
|
| 2772 |
|
|
14.18 13.93 15.70 0.27 81% 75% Tick counter [many alarms]
|
| 2773 |
|
|
4.81 4.59 5.93 0.13 81% 15% Tick & fire counter [1 alarm]
|
| 2774 |
|
|
30.77 30.52 33.63 0.20 75% 65% Tick & fire counters [>1 together]
|
| 2775 |
|
|
15.10 14.52 17.04 0.23 71% 3% Tick & fire counters [>1 separately]
|
| 2776 |
|
|
8.78 8.59 18.22 0.20 97% 89% Alarm latency [0 threads]
|
| 2777 |
|
|
11.29 9.33 17.48 1.02 56% 22% Alarm latency [2 threads]
|
| 2778 |
|
|
18.70 15.70 26.37 1.45 54% 22% Alarm latency [many threads]
|
| 2779 |
|
|
19.40 18.81 57.48 0.65 97% 97% Alarm -> thread resume latency
|
| 2780 |
|
|
|
| 2781 |
|
|
4.18 2.81 8.89 0.00 Clock/interrupt latency
|
| 2782 |
|
|
|
| 2783 |
|
|
3.98 2.52 11.56 0.00 Clock DSR latency
|
| 2784 |
|
|
|
| 2785 |
|
|
6 0 380 (main stack: 728) Thread stack used (992 total)
|
| 2786 |
|
|
All done, main stack : stack used 728 size 4112
|
| 2787 |
|
|
All done : Interrupt stack used 196 size 4096
|
| 2788 |
|
|
All done : Idlethread stack used 360 size 2048
|
| 2789 |
|
|
|
| 2790 |
|
|
Timing complete - 29790 ms total
|
| 2791 |
|
|
|
| 2792 |
|
|
PASS:<Basic timing OK>
|
| 2793 |
|
|
EXIT:<done>
|
| 2794 |
|
|
|
| 2795 |
|
|
|
| 2796 |
|
|
Board: PC
|
| 2797 |
|
|
Board: PC
|
| 2798 |
|
|
|
| 2799 |
|
|
CPU: 433MHz Celeron
|
| 2800 |
|
|
|
| 2801 |
|
|
Startup, main stack : stack used 124 size 2912
|
| 2802 |
|
|
Startup : Interrupt stack used 280 size 4108
|
| 2803 |
|
|
Startup : Idlethread stack used 62 size 2048
|
| 2804 |
|
|
|
| 2805 |
|
|
eCos Kernel Timings
|
| 2806 |
|
|
Notes: all times are in microseconds (.000001) unless otherwise stated
|
| 2807 |
|
|
|
| 2808 |
|
|
Reading the hardware clock takes 8 'ticks' overhead
|
| 2809 |
|
|
... this value will be factored out of all other measurements
|
| 2810 |
|
|
Clock interrupt took 6.75 microseconds (8 raw clock ticks)
|
| 2811 |
|
|
|
| 2812 |
|
|
Testing parameters:
|
| 2813 |
|
|
Clock samples: 32
|
| 2814 |
|
|
Threads: 64
|
| 2815 |
|
|
Thread switches: 128
|
| 2816 |
|
|
Mutexes: 32
|
| 2817 |
|
|
Mailboxes: 32
|
| 2818 |
|
|
Semaphores: 32
|
| 2819 |
|
|
Scheduler operations: 128
|
| 2820 |
|
|
Counters: 32
|
| 2821 |
|
|
Alarms: 32
|
| 2822 |
|
|
|
| 2823 |
|
|
|
| 2824 |
|
|
Confidence
|
| 2825 |
|
|
Ave Min Max Var Ave Min Function
|
| 2826 |
|
|
====== ====== ====== ====== ========== ========
|
| 2827 |
|
|
3.93 1.68 8.38 0.93 68% 3% Create thread
|
| 2828 |
|
|
0.71 0.00 3.35 0.84 59% 59% Yield thread [all suspended]
|
| 2829 |
|
|
0.65 0.00 5.03 0.84 64% 64% Suspend [suspended] thread
|
| 2830 |
|
|
0.63 0.00 1.68 0.79 62% 62% Resume thread
|
| 2831 |
|
|
0.76 0.00 1.68 0.83 54% 54% Set priority
|
| 2832 |
|
|
0.39 0.00 1.68 0.60 76% 76% Get priority
|
| 2833 |
|
|
1.34 0.00 6.70 0.67 73% 25% Kill [suspended] thread
|
| 2834 |
|
|
0.68 0.00 1.68 0.81 59% 59% Yield [no other] thread
|
| 2835 |
|
|
0.92 0.00 1.68 0.83 54% 45% Resume [suspended low prio] thread
|
| 2836 |
|
|
0.63 0.00 1.68 0.79 62% 62% Resume [runnable low prio] thread
|
| 2837 |
|
|
0.84 0.00 1.68 0.84 100% 50% Suspend [runnable] thread
|
| 2838 |
|
|
0.73 0.00 1.68 0.82 56% 56% Yield [only low prio] thread
|
| 2839 |
|
|
0.58 0.00 1.68 0.76 65% 65% Suspend [runnable->not runnable]
|
| 2840 |
|
|
1.26 0.00 3.35 0.67 71% 26% Kill [runnable] thread
|
| 2841 |
|
|
0.86 0.00 3.35 0.86 98% 50% Destroy [dead] thread
|
| 2842 |
|
|
1.44 0.00 1.68 0.40 85% 14% Destroy [runnable] thread
|
| 2843 |
|
|
4.45 3.35 6.70 0.89 53% 40% Resume [high priority] thread
|
| 2844 |
|
|
1.62 0.00 1.68 0.10 96% 3% Thread switch
|
| 2845 |
|
|
|
| 2846 |
|
|
0.41 0.00 1.68 0.61 75% 75% Scheduler lock
|
| 2847 |
|
|
0.48 0.00 1.68 0.69 71% 71% Scheduler unlock [0 threads]
|
| 2848 |
|
|
0.59 0.00 1.68 0.76 64% 64% Scheduler unlock [1 suspended]
|
| 2849 |
|
|
0.45 0.00 1.68 0.65 73% 73% Scheduler unlock [many suspended]
|
| 2850 |
|
|
0.45 0.00 1.68 0.65 73% 73% Scheduler unlock [many low prio]
|
| 2851 |
|
|
|
| 2852 |
|
|
0.52 0.00 1.68 0.72 68% 68% Init mutex
|
| 2853 |
|
|
0.79 0.00 5.03 0.93 96% 59% Lock [unlocked] mutex
|
| 2854 |
|
|
0.84 0.00 5.03 0.94 96% 56% Unlock [locked] mutex
|
| 2855 |
|
|
0.63 0.00 1.68 0.79 62% 62% Trylock [unlocked] mutex
|
| 2856 |
|
|
0.52 0.00 1.68 0.72 68% 68% Trylock [locked] mutex
|
| 2857 |
|
|
0.58 0.00 1.68 0.76 65% 65% Destroy mutex
|
| 2858 |
|
|
3.40 3.35 5.03 0.10 96% 96% Unlock/Lock mutex
|
| 2859 |
|
|
|
| 2860 |
|
|
0.99 0.00 1.68 0.81 59% 40% Create mbox
|
| 2861 |
|
|
0.47 0.00 1.68 0.68 71% 71% Peek [empty] mbox
|
| 2862 |
|
|
0.79 0.00 5.03 0.93 96% 59% Put [first] mbox
|
| 2863 |
|
|
0.42 0.00 1.68 0.63 75% 75% Peek [1 msg] mbox
|
| 2864 |
|
|
0.79 0.00 1.68 0.83 53% 53% Put [second] mbox
|
| 2865 |
|
|
0.37 0.00 1.68 0.57 78% 78% Peek [2 msgs] mbox
|
| 2866 |
|
|
0.73 0.00 3.35 0.87 59% 59% Get [first] mbox
|
| 2867 |
|
|
0.73 0.00 1.68 0.82 56% 56% Get [second] mbox
|
| 2868 |
|
|
0.79 0.00 3.35 0.88 56% 56% Tryput [first] mbox
|
| 2869 |
|
|
0.68 0.00 3.35 0.85 62% 62% Peek item [non-empty] mbox
|
| 2870 |
|
|
0.73 0.00 3.35 0.87 59% 59% Tryget [non-empty] mbox
|
| 2871 |
|
|
0.63 0.00 1.68 0.79 62% 62% Peek item [empty] mbox
|
| 2872 |
|
|
0.68 0.00 1.68 0.81 59% 59% Tryget [empty] mbox
|
| 2873 |
|
|
0.26 0.00 1.68 0.44 84% 84% Waiting to get mbox
|
| 2874 |
|
|
0.63 0.00 1.68 0.79 62% 62% Waiting to put mbox
|
| 2875 |
|
|
0.73 0.00 3.35 0.87 59% 59% Delete mbox
|
| 2876 |
|
|
3.25 1.68 3.35 0.20 93% 6% Put/Get mbox
|
| 2877 |
|
|
|
| 2878 |
|
|
0.63 0.00 1.68 0.79 62% 62% Init semaphore
|
| 2879 |
|
|
0.63 0.00 1.68 0.79 62% 62% Post [0] semaphore
|
| 2880 |
|
|
0.63 0.00 1.68 0.79 62% 62% Wait [1] semaphore
|
| 2881 |
|
|
0.52 0.00 1.68 0.72 68% 68% Trywait [0] semaphore
|
| 2882 |
|
|
0.52 0.00 1.68 0.72 68% 68% Trywait [1] semaphore
|
| 2883 |
|
|
0.52 0.00 1.68 0.72 68% 68% Peek semaphore
|
| 2884 |
|
|
0.21 0.00 1.68 0.37 87% 87% Destroy semaphore
|
| 2885 |
|
|
3.30 1.68 3.35 0.10 96% 3% Post/Wait semaphore
|
| 2886 |
|
|
|
| 2887 |
|
|
0.79 0.00 3.35 0.88 56% 56% Create counter
|
| 2888 |
|
|
0.42 0.00 1.68 0.63 75% 75% Get counter value
|
| 2889 |
|
|
0.37 0.00 1.68 0.57 78% 78% Set counter value
|
| 2890 |
|
|
0.73 0.00 1.68 0.82 56% 56% Tick counter
|
| 2891 |
|
|
0.63 0.00 1.68 0.79 62% 62% Delete counter
|
| 2892 |
|
|
|
| 2893 |
|
|
0.89 0.00 3.35 0.89 96% 50% Create alarm
|
| 2894 |
|
|
0.84 0.00 1.68 0.84 100% 50% Initialize alarm
|
| 2895 |
|
|
0.52 0.00 1.68 0.72 68% 68% Disable alarm
|
| 2896 |
|
|
0.89 0.00 3.35 0.89 96% 50% Enable alarm
|
| 2897 |
|
|
0.58 0.00 1.68 0.76 65% 65% Delete alarm
|
| 2898 |
|
|
0.63 0.00 1.68 0.79 62% 62% Tick counter [1 alarm]
|
| 2899 |
|
|
5.03 3.35 6.70 0.10 93% 3% Tick counter [many alarms]
|
| 2900 |
|
|
0.94 0.00 1.68 0.82 56% 43% Tick & fire counter [1 alarm]
|
| 2901 |
|
|
11.16 10.06 11.73 0.76 65% 34% Tick & fire counters [>1 together]
|
| 2902 |
|
|
5.19 5.03 6.70 0.28 90% 90% Tick & fire counters [>1 separately]
|
| 2903 |
|
|
0.01 0.00 1.68 0.03 99% 99% Alarm latency [0 threads]
|
| 2904 |
|
|
0.13 0.00 1.68 0.24 92% 92% Alarm latency [2 threads]
|
| 2905 |
|
|
0.94 0.00 3.35 0.85 53% 45% Alarm latency [many threads]
|
| 2906 |
|
|
1.75 1.68 6.70 0.15 96% 96% Alarm -> thread resume latency
|
| 2907 |
|
|
|
| 2908 |
|
|
41 0 368 (main stack: 1036) Thread stack used (1712 total)
|
| 2909 |
|
|
All done, main stack : stack used 1036 size 2912
|
| 2910 |
|
|
All done : Interrupt stack used 368 size 4108
|
| 2911 |
|
|
All done : Idlethread stack used 288 size 2048
|
| 2912 |
|
|
|
| 2913 |
|
|
Timing complete - 28520 ms total
|
| 2914 |
|
|
|
| 2915 |
|
|
PASS:<Basic timing OK>
|
| 2916 |
|
|
EXIT:<done>
|
| 2917 |
|
|
|
| 2918 |
|
|
|
| 2919 |
|
|
|
| 2920 |
|
|
|
| 2921 |
|
|
Board: NEC V850 Cosmo Evaluation Board
|
| 2922 |
|
|
Board: NEC V850 Cosmo Evaluation Board
|
| 2923 |
|
|
|
| 2924 |
|
|
CPU: NEC CEB-V850/SA1 17MHz
|
| 2925 |
|
|
|
| 2926 |
|
|
Startup, main stack : stack used 552 size 2936
|
| 2927 |
|
|
Startup : Interrupt stack used 120 size 4096
|
| 2928 |
|
|
Startup : Idlethread stack used 206 size 2048
|
| 2929 |
|
|
|
| 2930 |
|
|
eCos Kernel Timings
|
| 2931 |
|
|
Notes: all times are in microseconds (.000001) unless otherwise stated
|
| 2932 |
|
|
|
| 2933 |
|
|
Reading the hardware clock takes 27 `ticks' overhead
|
| 2934 |
|
|
... this value will be factored out of all other measurements
|
| 2935 |
|
|
Clock interrupt took 280.04 microseconds (1190 raw clock ticks)
|
| 2936 |
|
|
|
| 2937 |
|
|
Testing parameters:
|
| 2938 |
|
|
Clock samples: 32
|
| 2939 |
|
|
Threads: 7
|
| 2940 |
|
|
Thread switches: 128
|
| 2941 |
|
|
Mutexes: 32
|
| 2942 |
|
|
Mailboxes: 32
|
| 2943 |
|
|
Semaphores: 32
|
| 2944 |
|
|
Scheduler operations: 128
|
| 2945 |
|
|
Counters: 32
|
| 2946 |
|
|
Alarms: 32
|
| 2947 |
|
|
|
| 2948 |
|
|
|
| 2949 |
|
|
Confidence
|
| 2950 |
|
|
Ave Min Max Var Ave Min Function
|
| 2951 |
|
|
====== ====== ====== ====== ========== ========
|
| 2952 |
|
|
288.71 280.24 297.18 4.84 42% 28% Create thread
|
| 2953 |
|
|
70.76 70.59 70.82 0.10 71% 28% Yield thread [all suspended]
|
| 2954 |
|
|
59.06 59.06 59.06 0.00 100% 100% Suspend [suspended] thread
|
| 2955 |
|
|
60.00 60.00 60.00 0.00 100% 100% Resume thread
|
| 2956 |
|
|
77.38 77.18 77.41 0.06 85% 14% Set priority
|
| 2957 |
|
|
3.13 3.06 3.29 0.10 71% 71% Get priority
|
| 2958 |
|
|
187.46 187.29 187.53 0.10 71% 28% Kill [suspended] thread
|
| 2959 |
|
|
70.76 70.59 70.82 0.10 71% 28% Yield [no other] thread
|
| 2960 |
|
|
104.40 103.29 104.71 0.32 85% 14% Resume [suspended low prio] thread
|
| 2961 |
|
|
59.06 59.06 59.06 0.00 100% 100% Resume [runnable low prio] thread
|
| 2962 |
|
|
97.11 91.06 98.12 1.73 85% 14% Suspend [runnable] thread
|
| 2963 |
|
|
70.76 70.59 70.82 0.10 71% 28% Yield [only low prio] thread
|
| 2964 |
|
|
59.06 59.06 59.06 0.00 100% 100% Suspend [runnable->not runnable]
|
| 2965 |
|
|
187.46 187.29 187.53 0.10 71% 28% Kill [runnable] thread
|
| 2966 |
|
|
95.63 95.29 97.18 0.44 85% 85% Destroy [dead] thread
|
| 2967 |
|
|
241.28 236.94 242.12 1.24 85% 14% Destroy [runnable] thread
|
| 2968 |
|
|
378.55 370.35 427.06 13.86 85% 85% Resume [high priority] thread
|
| 2969 |
|
|
198.77 183.76 452.94 18.77 96% 96% Thread switch
|
| 2970 |
|
|
|
| 2971 |
|
|
2.59 2.59 2.59 0.00 100% 100% Scheduler lock
|
| 2972 |
|
|
41.29 41.18 41.41 0.12 100% 50% Scheduler unlock [0 threads]
|
| 2973 |
|
|
40.82 40.71 40.94 0.12 100% 50% Scheduler unlock [1 suspended]
|
| 2974 |
|
|
41.29 41.18 41.41 0.12 100% 50% Scheduler unlock [many suspended]
|
| 2975 |
|
|
41.29 41.18 41.41 0.12 100% 50% Scheduler unlock [many low prio]
|
| 2976 |
|
|
|
| 2977 |
|
|
17.94 17.88 18.12 0.09 75% 75% Init mutex
|
| 2978 |
|
|
68.71 68.71 68.71 0.00 100% 100% Lock [unlocked] mutex
|
| 2979 |
|
|
72.10 72.00 73.41 0.15 96% 71% Unlock [locked] mutex
|
| 2980 |
|
|
57.88 57.88 57.88 0.00 100% 100% Trylock [unlocked] mutex
|
| 2981 |
|
|
52.24 52.24 52.24 0.00 100% 100% Trylock [locked] mutex
|
| 2982 |
|
|
12.41 12.24 12.47 0.09 75% 25% Destroy mutex
|
| 2983 |
|
|
427.06 427.06 427.06 0.00 100% 100% Unlock/Lock mutex
|
| 2984 |
|
|
|
| 2985 |
|
|
|
| 2986 |
|
|
34.94 34.82 35.06 0.12 100% 50% Create mbox
|
| 2987 |
|
|
0.76 0.71 0.94 0.09 75% 75% Peek [empty] mbox
|
| 2988 |
|
|
75.29 75.29 75.29 0.00 100% 100% Put [first] mbox
|
| 2989 |
|
|
1.24 1.18 1.41 0.09 75% 75% Peek [1 msg] mbox
|
| 2990 |
|
|
75.76 75.76 75.76 0.00 100% 100% Put [second] mbox
|
| 2991 |
|
|
0.76 0.71 0.94 0.09 75% 75% Peek [2 msgs] mbox
|
| 2992 |
|
|
80.12 80.00 80.24 0.12 100% 50% Get [first] mbox
|
| 2993 |
|
|
79.65 79.53 79.76 0.12 100% 50% Get [second] mbox
|
| 2994 |
|
|
70.12 70.12 70.12 0.00 100% 100% Tryput [first] mbox
|
| 2995 |
|
|
65.76 65.65 65.88 0.12 100% 50% Peek item [non-empty] mbox
|
| 2996 |
|
|
78.00 77.88 78.12 0.12 100% 50% Tryget [non-empty] mbox
|
| 2997 |
|
|
63.12 63.06 63.29 0.09 75% 75% Peek item [empty] mbox
|
| 2998 |
|
|
67.82 67.76 68.00 0.09 75% 75% Tryget [empty] mbox
|
| 2999 |
|
|
1.94 1.88 2.12 0.09 75% 75% Waiting to get mbox
|
| 3000 |
|
|
1.47 1.41 1.65 0.09 75% 75% Waiting to put mbox
|
| 3001 |
|
|
75.59 75.53 75.76 0.09 75% 75% Delete mbox
|
| 3002 |
|
|
252.76 252.71 252.94 0.09 75% 75% Put/Get mbox
|
| 3003 |
|
|
|
| 3004 |
|
|
20.24 20.24 20.24 0.00 100% 100% Init semaphore
|
| 3005 |
|
|
54.35 54.35 54.35 0.00 100% 100% Post [0] semaphore
|
| 3006 |
|
|
66.59 66.59 66.59 0.00 100% 100% Wait [1] semaphore
|
| 3007 |
|
|
52.24 52.24 52.24 0.00 100% 100% Trywait [0] semaphore
|
| 3008 |
|
|
53.41 53.41 53.41 0.00 100% 100% Trywait [1] semaphore
|
| 3009 |
|
|
10.65 10.59 10.82 0.09 75% 75% Peek semaphore
|
| 3010 |
|
|
12.65 12.47 12.71 0.09 75% 25% Destroy semaphore
|
| 3011 |
|
|
276.94 276.94 276.94 0.00 100% 100% Post/Wait semaphore
|
| 3012 |
|
|
|
| 3013 |
|
|
14.94 14.82 15.06 0.12 100% 50% Create counter
|
| 3014 |
|
|
2.18 2.12 2.35 0.09 75% 75% Get counter value
|
| 3015 |
|
|
3.06 3.06 3.06 0.00 100% 100% Set counter value
|
| 3016 |
|
|
78.12 78.12 78.12 0.00 100% 100% Tick counter
|
| 3017 |
|
|
13.82 13.65 13.88 0.09 75% 25% Delete counter
|
| 3018 |
|
|
|
| 3019 |
|
|
26.94 26.82 27.06 0.12 100% 50% Create alarm
|
| 3020 |
|
|
104.18 104.00 104.24 0.09 75% 25% Initialize alarm
|
| 3021 |
|
|
7.65 7.53 7.76 0.12 100% 50% Disable alarm
|
| 3022 |
|
|
104.94 104.94 104.94 0.00 100% 100% Enable alarm
|
| 3023 |
|
|
19.47 19.29 19.53 0.09 75% 25% Delete alarm
|
| 3024 |
|
|
88.53 88.47 88.71 0.09 75% 75% Tick counter [1 alarm]
|
| 3025 |
|
|
418.61 411.29 645.41 14.17 96% 96% Tick counter [many alarms]
|
| 3026 |
|
|
139.59 139.53 139.76 0.09 75% 75% Tick & fire counter [1 alarm]
|
| 3027 |
|
|
2150.21 2096.71 2367.53 83.59 78% 78% Tick & fire counters [>1 together]
|
| 3028 |
|
|
478.15 462.35 733.41 29.61 93% 93% Tick & fire counters [>1 separately]
|
| 3029 |
|
|
219.89 218.59 369.88 2.34 99% 99% Alarm latency [0 threads]
|
| 3030 |
|
|
292.11 218.59 371.53 37.85 50% 25% Alarm latency [2 threads]
|
| 3031 |
|
|
292.96 218.59 370.59 38.12 49% 25% Alarm latency [many threads]
|
| 3032 |
|
|
540.90 495.76 1677.41 17.76 98% 0% Alarm -> thread resume latency
|
| 3033 |
|
|
|
| 3034 |
|
|
79.01 78.59 104.71 0.00 Clock/interrupt latency
|
| 3035 |
|
|
|
| 3036 |
|
|
123.41 85.88 1982.82 0.00 Clock DSR latency
|
| 3037 |
|
|
|
| 3038 |
|
|
522 516 536 (main stack: 1124) Thread stack used (1912 total)
|
| 3039 |
|
|
All done, main stack : stack used 1124 size 2936
|
| 3040 |
|
|
All done : Interrupt stack used 288 size 4096
|
| 3041 |
|
|
All done : Idlethread stack used 488 size 2048
|
| 3042 |
|
|
|
| 3043 |
|
|
Timing complete - 32540 ms total
|
| 3044 |
|
|
|
| 3045 |
|
|
|
| 3046 |
|
|
|
| 3047 |
|
|
|
| 3048 |
|
|
Board: NEC V850 Cosmo Evaluation Board
|
| 3049 |
|
|
Board: NEC V850 Cosmo Evaluation Board
|
| 3050 |
|
|
|
| 3051 |
|
|
CPU: NEC CEB-V850/SB1 16MHz (in internal Flash)
|
| 3052 |
|
|
|
| 3053 |
|
|
|
| 3054 |
|
|
Startup, main stack : stack used 572 size 2936
|
| 3055 |
|
|
Startup : Interrupt stack used 132 size 4096
|
| 3056 |
|
|
Startup : Idlethread stack used 210 size 2048
|
| 3057 |
|
|
|
| 3058 |
|
|
eCos Kernel Timings
|
| 3059 |
|
|
Notes: all times are in microseconds (.000001) unless otherwise stated
|
| 3060 |
|
|
|
| 3061 |
|
|
Reading the hardware clock takes 8 'ticks' overhead
|
| 3062 |
|
|
... this value will be factored out of all other measurements
|
| 3063 |
|
|
Clock interrupt took 118.15 microseconds (472 raw clock ticks)
|
| 3064 |
|
|
|
| 3065 |
|
|
Testing parameters:
|
| 3066 |
|
|
Clock samples: 32
|
| 3067 |
|
|
Threads: 7
|
| 3068 |
|
|
Thread switches: 128
|
| 3069 |
|
|
Mutexes: 32
|
| 3070 |
|
|
Mailboxes: 32
|
| 3071 |
|
|
Semaphores: 32
|
| 3072 |
|
|
Scheduler operations: 128
|
| 3073 |
|
|
Counters: 32
|
| 3074 |
|
|
Alarms: 32
|
| 3075 |
|
|
|
| 3076 |
|
|
|
| 3077 |
|
|
Confidence
|
| 3078 |
|
|
Ave Min Max Var Ave Min Function
|
| 3079 |
|
|
====== ====== ====== ====== ========== ========
|
| 3080 |
|
|
113.68 111.00 116.50 1.63 42% 28% Create thread
|
| 3081 |
|
|
30.00 30.00 30.00 0.00 100% 100% Yield thread [all suspended]
|
| 3082 |
|
|
29.57 29.50 29.75 0.10 71% 71% Suspend [suspended] thread
|
| 3083 |
|
|
27.43 27.25 27.50 0.10 71% 28% Resume thread
|
| 3084 |
|
|
34.11 34.00 34.25 0.12 57% 57% Set priority
|
| 3085 |
|
|
1.57 1.50 1.75 0.10 71% 71% Get priority
|
| 3086 |
|
|
72.96 72.75 73.00 0.06 85% 14% Kill [suspended] thread
|
| 3087 |
|
|
30.00 30.00 30.00 0.00 100% 100% Yield [no other] thread
|
| 3088 |
|
|
42.75 42.75 42.75 0.00 100% 100% Resume [suspended low prio] thread
|
| 3089 |
|
|
27.00 27.00 27.00 0.00 100% 100% Resume [runnable low prio] thread
|
| 3090 |
|
|
43.64 41.25 44.25 0.68 85% 14% Suspend [runnable] thread
|
| 3091 |
|
|
30.00 30.00 30.00 0.00 100% 100% Yield [only low prio] thread
|
| 3092 |
|
|
29.57 29.50 29.75 0.10 71% 71% Suspend [runnable->not runnable]
|
| 3093 |
|
|
72.93 72.75 73.00 0.10 71% 28% Kill [runnable] thread
|
| 3094 |
|
|
44.89 44.75 45.75 0.24 85% 85% Destroy [dead] thread
|
| 3095 |
|
|
103.00 101.50 103.25 0.43 85% 14% Destroy [runnable] thread
|
| 3096 |
|
|
175.21 171.50 197.50 6.37 85% 85% Resume [high priority] thread
|
| 3097 |
|
|
84.11 79.50 197.25 1.77 98% 0% Thread switch
|
| 3098 |
|
|
|
| 3099 |
|
|
1.00 1.00 1.00 0.00 100% 100% Scheduler lock
|
| 3100 |
|
|
20.06 20.00 20.25 0.09 75% 75% Scheduler unlock [0 threads]
|
| 3101 |
|
|
20.00 20.00 20.00 0.00 100% 100% Scheduler unlock [1 suspended]
|
| 3102 |
|
|
20.06 20.00 20.25 0.09 75% 75% Scheduler unlock [many suspended]
|
| 3103 |
|
|
20.06 20.00 20.25 0.09 75% 75% Scheduler unlock [many low prio]
|
| 3104 |
|
|
|
| 3105 |
|
|
4.00 4.00 4.00 0.00 100% 100% Init mutex
|
| 3106 |
|
|
33.00 33.00 33.00 0.00 100% 100% Lock [unlocked] mutex
|
| 3107 |
|
|
36.77 36.75 37.25 0.03 96% 96% Unlock [locked] mutex
|
| 3108 |
|
|
28.13 28.00 28.25 0.13 100% 50% Trylock [unlocked] mutex
|
| 3109 |
|
|
25.13 25.00 25.25 0.13 100% 50% Trylock [locked] mutex
|
| 3110 |
|
|
4.88 4.75 5.00 0.13 100% 50% Destroy mutex
|
| 3111 |
|
|
187.00 187.00 187.00 0.00 100% 100% Unlock/Lock mutex
|
| 3112 |
|
|
|
| 3113 |
|
|
10.00 10.00 10.00 0.00 100% 100% Create mbox
|
| 3114 |
|
|
0.69 0.50 0.75 0.09 75% 25% Peek [empty] mbox
|
| 3115 |
|
|
34.75 34.75 34.75 0.00 100% 100% Put [first] mbox
|
| 3116 |
|
|
0.69 0.50 0.75 0.09 75% 25% Peek [1 msg] mbox
|
| 3117 |
|
|
35.00 35.00 35.00 0.00 100% 100% Put [second] mbox
|
| 3118 |
|
|
0.69 0.50 0.75 0.09 75% 25% Peek [2 msgs] mbox
|
| 3119 |
|
|
36.00 36.00 36.00 0.00 100% 100% Get [first] mbox
|
| 3120 |
|
|
36.00 36.00 36.00 0.00 100% 100% Get [second] mbox
|
| 3121 |
|
|
31.00 31.00 31.00 0.00 100% 100% Tryput [first] mbox
|
| 3122 |
|
|
29.50 29.50 29.50 0.00 100% 100% Peek item [non-empty] mbox
|
| 3123 |
|
|
35.25 35.25 35.25 0.00 100% 100% Tryget [non-empty] mbox
|
| 3124 |
|
|
27.69 27.50 27.75 0.09 75% 25% Peek item [empty] mbox
|
| 3125 |
|
|
31.06 31.00 31.25 0.09 75% 75% Tryget [empty] mbox
|
| 3126 |
|
|
0.94 0.75 1.00 0.09 75% 25% Waiting to get mbox
|
| 3127 |
|
|
0.94 0.75 1.00 0.09 75% 25% Waiting to put mbox
|
| 3128 |
|
|
37.81 37.75 38.00 0.09 75% 75% Delete mbox
|
| 3129 |
|
|
112.00 112.00 112.00 0.00 100% 100% Put/Get mbox
|
| 3130 |
|
|
|
| 3131 |
|
|
3.19 3.00 3.25 0.09 75% 25% Init semaphore
|
| 3132 |
|
|
25.38 25.25 25.50 0.13 100% 50% Post [0] semaphore
|
| 3133 |
|
|
32.63 32.50 32.75 0.13 100% 50% Wait [1] semaphore
|
| 3134 |
|
|
24.25 24.25 24.25 0.00 100% 100% Trywait [0] semaphore
|
| 3135 |
|
|
25.00 25.00 25.00 0.00 100% 100% Trywait [1] semaphore
|
| 3136 |
|
|
4.00 4.00 4.00 0.00 100% 100% Peek semaphore
|
| 3137 |
|
|
4.88 4.75 5.00 0.13 100% 50% Destroy semaphore
|
| 3138 |
|
|
124.50 124.50 124.50 0.00 100% 100% Post/Wait semaphore
|
| 3139 |
|
|
|
| 3140 |
|
|
6.50 6.50 6.50 0.00 100% 100% Create counter
|
| 3141 |
|
|
1.25 1.25 1.25 0.00 100% 100% Get counter value
|
| 3142 |
|
|
1.44 1.25 1.50 0.09 75% 25% Set counter value
|
| 3143 |
|
|
36.25 36.25 36.25 0.00 100% 100% Tick counter
|
| 3144 |
|
|
5.25 5.25 5.25 0.00 100% 100% Delete counter
|
| 3145 |
|
|
|
| 3146 |
|
|
12.25 12.25 12.25 0.00 100% 100% Create alarm
|
| 3147 |
|
|
49.13 49.00 49.25 0.13 100% 50% Initialize alarm
|
| 3148 |
|
|
2.81 2.75 3.00 0.09 75% 75% Disable alarm
|
| 3149 |
|
|
48.50 48.50 48.50 0.00 100% 100% Enable alarm
|
| 3150 |
|
|
8.25 8.25 8.25 0.00 100% 100% Delete alarm
|
| 3151 |
|
|
46.50 46.50 46.50 0.00 100% 100% Tick counter [1 alarm]
|
| 3152 |
|
|
485.42 482.25 580.00 5.91 96% 96% Tick counter [many alarms]
|
| 3153 |
|
|
64.00 64.00 64.00 0.00 100% 100% Tick & fire counter [1 alarm]
|
| 3154 |
|
|
1109.76 1100.50 1198.00 16.53 90% 90% Tick & fire counters [>1 together]
|
| 3155 |
|
|
505.85 502.00 621.00 7.20 96% 96% Tick & fire counters [>1 separately]
|
| 3156 |
|
|
96.26 95.75 161.25 1.02 99% 99% Alarm latency [0 threads]
|
| 3157 |
|
|
159.20 95.75 160.75 2.52 97% 0% Alarm latency [2 threads]
|
| 3158 |
|
|
159.73 110.50 161.75 1.53 97% 0% Alarm latency [many threads]
|
| 3159 |
|
|
218.45 211.25 445.75 3.55 97% 1% Alarm -> thread resume latency
|
| 3160 |
|
|
|
| 3161 |
|
|
28.24 25.25 43.25 0.00 Clock/interrupt latency
|
| 3162 |
|
|
|
| 3163 |
|
|
60.15 40.50 221.50 0.00 Clock DSR latency
|
| 3164 |
|
|
|
| 3165 |
|
|
472 424 572 (main stack: 1052) Thread stack used (1912 total)
|
| 3166 |
|
|
All done, main stack : stack used 1052 size 2936
|
| 3167 |
|
|
All done : Interrupt stack used 280 size 4096
|
| 3168 |
|
|
All done : Idlethread stack used 516 size 2048
|
| 3169 |
|
|
|
| 3170 |
|
|
Timing complete - 30590 ms total
|
| 3171 |
|
|
|
| 3172 |
|
|
PASS:<Basic timing OK>
|
| 3173 |
|
|
EXIT:<done>
|
| 3174 |
|
|
|
| 3175 |
|
|
|
| 3176 |
|
|
|
| 3177 |
|
|
|