summaryrefslogtreecommitdiffstats
path: root/c/src/lib/libbsp/m68k/mvme136/times
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