blob: b5b2109554dccf2d46f5874368c059a07d0554eb (
plain) (
blame)
1
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
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
|
#
# Timing Test Suite Results for the Motorola MVME136 BSP
#
# $Id$
#
Board: Motorola MVME136
CPU: Motorola MC68020 + MC68881 FPU
Clock Speed: 20 Mhz
Memory Configuration: DRAM w/no cache
Wait States: 1 wait state
Times Reported in: microseconds
Timer Source: Zilog Z8036
Column A: 3.5.1 pre-release
Column B: 3.5.17 pre-release
# DESCRIPTION A B
== ================================================================= ==== ====
1 rtems_semaphore_create 67 60
rtems_semaphore_delete 64 58
rtems_semaphore_obtain: available 46 38
rtems_semaphore_obtain: not available -- NO_WAIT 45 38
rtems_semaphore_release: no waiting tasks 51 44
2 rtems_semaphore_obtain: not available -- caller blocks 113 109
3 rtems_semaphore_release: task readied -- preempts caller 94 87
4 rtems_task_restart: blocked task -- preempts caller 152 149
rtems_task_restart: ready task -- preempts caller 145 142
rtems_semaphore_release: task readied -- returns to caller 71 66
rtems_task_create 154 148
rtems_task_start 82 76
rtems_task_restart: suspended task -- returns to caller 94 89
rtems_task_delete: suspended task 145 138
rtems_task_restart: ready task -- returns to caller 97 92
rtems_task_restart: blocked task -- returns to caller 128 124
rtems_task_delete: blocked task 149 143
5 rtems_task_suspend: calling task 77 71
rtems_task_resume: task readied -- preempts caller 74 67
6 rtems_task_restart: calling task 101 95
rtems_task_suspend: returns to caller 50 43
rtems_task_resume: task readied -- returns to caller 50 45
rtems_task_delete: ready task 151 144
7 rtems_task_restart: suspended task -- preempts caller 130 125
8 rtems_task_set_priority: obtain current priority 38 31
rtems_task_set_priority: returns to caller 71 64
rtems_task_mode: obtain current mode 16 14
rtems_task_mode: no reschedule 18 16
rtems_task_mode: reschedule -- returns to caller 24 23
rtems_task_mode: reschedule -- preempts caller 68 60
rtems_task_set_note 39 33
rtems_task_get_note 40 33
rtems_clock_set 93 86
rtems_clock_get 1 1
9 rtems_message_queue_create 207 200
rtems_message_queue_send: no waiting tasks 103 97
rtems_message_queue_urgent: no waiting tasks 103 96
rtems_message_queue_receive: available 87 79
rtems_message_queue_flush: no messages flushed 36 29
rtems_message_queue_flush: messages flushed 46 39
rtems_message_queue_delete 85 80
10 rtems_message_queue_receive: not available -- NO_WAIT 51 43
rtems_message_queue_receive: not available -- caller blocks 115 114
11 rtems_message_queue_send: task readied -- preempts caller 129 123
12 rtems_message_queue_send: task readied -- returns to caller 107 101
13 rtems_message_queue_urgent: task readied -- preempts caller 130 123
14 rtems_message_queue_urgent: task readied -- returns to caller 107 101
15 rtems_event_receive: obtain current events 0 1
rtems_event_receive: not available -- NO_WAIT 33 23
rtems_event_receive: not available -- caller blocks 92 84
rtems_event_send: no task readied 34 24
rtems_event_receive: available 36 28
rtems_event_send: task readied -- returns to caller 67 60
16 rtems_event_send: task readied -- preempts caller 90 84
17 rtems_task_set_priority: preempts caller 110 106
18 rtems_task_delete: calling task 175 170
19 rtems_signal_catch 23 15
rtems_signal_send: returns to caller 43 37
rtems_signal_send: signal to self 52 55
exit ASR overhead: returns to calling task 37 37
exit ASR overhead: returns to preempting task 65 54
20 rtems_partition_create 77 70
rtems_region_create 70 63
rtems_partition_get_buffer: available 42 35
rtems_partition_get_buffer: not available 40 33
rtems_partition_return_buffer 50 43
rtems_partition_delete 47 42
rtems_region_get_segment: available 58 52
rtems_region_get_segment: not available -- NO_WAIT 55 49
rtems_region_return_segment: no waiting tasks 60 54
rtems_region_get_segment: not available -- caller blocks 126 123
rtems_region_return_segment: task readied -- preempts caller 143 136
rtems_region_return_segment: task readied -- returns to caller 120 114
rtems_region_delete 45 39
rtems_io_initialize 6 4
rtems_io_open 2 2
rtems_io_close 1 1
rtems_io_read 1 2
rtems_io_write 1 3
rtems_io_control 2 2
21 rtems_task_ident 353 350
rtems_message_queue_ident 344 341
rtems_semaphore_ident 369 367
rtems_partition_ident 344 341
rtems_region_ident 350 348
rtems_port_ident 343 340
rtems_timer_ident 345 343
rtems_rate_monotonic_ident 344 341
22 rtems_message_queue_broadcast: task readied -- returns to caller 115 111
rtems_message_queue_broadcast: no waiting tasks 60 53
rtems_message_queue_broadcast: task readied -- preempts caller 138 133
23 rtems_timer_create 37 28
rtems_timer_fire_after: inactive 66 58
rtems_timer_fire_after: active 70 61
rtems_timer_cancel: active 42 34
rtems_timer_cancel: inactive 39 31
rtems_timer_reset: inactive 60 54
rtems_timer_reset: active 65 58
rtems_timer_fire_when: inactive 96 88
rtems_timer_fire_when: active 96 88
rtems_timer_delete: active 55 47
rtems_timer_delete: inactive 51 47
rtems_task_wake_when 125 117
24 rtems_task_wake_after: yield -- returns to caller 26 16
rtems_task_wake_after: yields -- preempts caller 65 56
25 rtems_clock_tick 14 17
26 _ISR_Disable 0 0
_ISR_Flash 0 0
_ISR_Enable 0 0
_Thread_Disable_dispatch 0 0
_Thread_Enable_dispatch 19 11
_Thread_Set_state 24 24
_Thread_Disptach (NO FP) 50 43
context switch: no floating point contexts 41 35
context switch: self 9 9
context switch: to another task 9 10
context switch: restore 1st FP task 46 39
fp context switch: save idle, restore idle 75 68
fp context switch: save idle, restore initialized 66 66
fp context switch: save initialized, restore initialized 65 66
_Thread_Resume 18 19
_Thread_Unblock 18 19
_Thread_Ready 22 21
_Thread_Get 12 14
_Semaphore_Get 10 10
_Thread_Get: invalid id 2 2
27 interrupt entry overhead: returns to interrupted task 9 9
interrupt exit overhead: returns to interrupted task 8 8
interrupt entry overhead: returns to nested interrupt 14 12
interrupt exit overhead: returns to nested interrupt 0 0
interrupt entry overhead: returns to preempting task 8 9
interrupt exit overhead: returns to preempting task 62 54
28 rtems_port_create 44 35
rtems_port_external_to_internal 35 27
rtems_port_internal_to_external 34 26
rtems_port_delete 46 39
29 rtems_rate_monotonic_create 40 32
rtems_rate_monotonic_period: initiate period -- returns to caller 60 54
rtems_rate_monotonic_period: obtain status 38 31
rtems_rate_monotonic_cancel 46 39
rtems_rate_monotonic_delete: inactive 54 48
rtems_rate_monotonic_delete: active 57 51
rtems_rate_monotonic_period: conclude periods -- caller blocks 83 74
|