summaryrefslogtreecommitdiffstats
path: root/c/src/lib/libbsp/i386/pc386/times_i486dx
blob: af6be9dfc4e4e5eae2509f336c18ae37b55ffd7c (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 pc386 BSP using an i486DX
#
#  $Id$
#

Board:                PC/AT clone
CPU:                  Intel i486DX
Clock Speed:          33 Mhz
Memory Configuration: DRAM w/256K cache
Wait States:          unknown

Times Reported in:    microseconds
Timer Source:         i8254

Column A:             3.5.1 pre-release
Column B:             3.5.17 pre-release

#                          DESCRIPTION                                 A    B
== =================================================================  ==== ====
 1 rtems_semaphore_create                                               57   66
   rtems_semaphore_delete                                               59   61
   rtems_semaphore_obtain: available                                     9    7
   rtems_semaphore_obtain: not available -- NO_WAIT                      8    7
   rtems_semaphore_release: no waiting tasks                             9    8

 2 rtems_semaphore_obtain: not available -- caller blocks               39   37

 3 rtems_semaphore_release: task readied -- preempts caller             25   24

 4 rtems_task_restart: blocked task -- preempts caller                 124  102
   rtems_task_restart: ready task -- preempts caller                    55  111
   rtems_semaphore_release: task readied -- returns to caller           16   15
   rtems_task_create                                                    31   30
   rtems_task_start                                                     19   18
   rtems_task_restart: suspended task -- returns to caller              20   19
   rtems_task_delete: suspended task                                    28   26
   rtems_task_restart: ready task -- returns to caller                  20   19
   rtems_task_restart: blocked task -- returns to caller                28   26
   rtems_task_delete: blocked task                                      34   28

 5 rtems_task_suspend: calling task                                     26   23
   rtems_task_resume: task readied -- preempts caller                   17   15

 6 rtems_task_restart: calling task                                     22   19
   rtems_task_suspend: returns to caller                                10    8
   rtems_task_resume: task readied -- returns to caller                 10    8
   rtems_task_delete: ready task                                        34   33

 7 rtems_task_restart: suspended task -- preempts caller                37   34

 8 rtems_task_set_priority: obtain current priority                      7    5
   rtems_task_set_priority: returns to caller                           13   12
   rtems_task_mode: obtain current mode                                  3    3
   rtems_task_mode: no reschedule                                        4    4
   rtems_task_mode: reschedule -- returns to caller                     20   17
   rtems_task_mode: reschedule -- preempts caller                       39   37
   rtems_task_set_note                                                   7    5
   rtems_task_get_note                                                   7    5
   rtems_clock_set                                                      17   16
   rtems_clock_get                                                       2    1

 9 rtems_message_queue_create                                          117  113
   rtems_message_queue_send: no waiting tasks                           22   19
   rtems_message_queue_urgent: no waiting tasks                         22   19
   rtems_message_queue_receive: available                               18   16
   rtems_message_queue_flush: no messages flushed                       15   14
   rtems_message_queue_flush: messages flushed                          17   17
   rtems_message_queue_delete                                           63   63

10 rtems_message_queue_receive: not available -- NO_WAIT                10    8
   rtems_message_queue_receive: not available -- caller blocks          42   40

11 rtems_message_queue_send: task readied -- preempts caller            38   37

12 rtems_message_queue_send: task readied -- returns to caller          27   24

13 rtems_message_queue_urgent: task readied -- preempts caller          38   36

14 rtems_message_queue_urgent: task readied -- returns to caller        26   24

15 rtems_event_receive: obtain current events                            0    0
   rtems_event_receive: not available -- NO_WAIT                         6    5
   rtems_event_receive: not available -- caller blocks                  34   33
   rtems_event_send: no task readied                                     6    5
   rtems_event_receive: available                                       21   19
   rtems_event_send: task readied -- returns to caller                  19   15

16 rtems_event_send: task readied -- preempts caller                    26   24

17 rtems_task_set_priority: preempts caller                             36   33

18 rtems_task_delete: calling task                                      51   52

19 rtems_signal_catch                                                   17   18
   rtems_signal_send: returns to caller                                 38   39
   rtems_signal_send: signal to self                                    46   62
   exit ASR overhead: returns to calling task                           20   25
   exit ASR overhead: returns to preempting task                        29   29

20 rtems_partition_create                                               65   67
   rtems_region_create                                                  59   54
   rtems_partition_get_buffer: available                                39   35
   rtems_partition_get_buffer: not available                            18   16
   rtems_partition_return_buffer                                        36   30
   rtems_partition_delete                                               32   30
   rtems_region_get_segment: available                                  22   21
   rtems_region_get_segment: not available -- NO_WAIT                   29   25
   rtems_region_return_segment: no waiting tasks                        24   22
   rtems_region_get_segment: not available -- caller blocks             83   81
   rtems_region_return_segment: task readied -- preempts caller         85   84
   rtems_region_return_segment: task readied -- returns to caller       39   41
   rtems_region_delete                                                  30   30
   rtems_io_initialize                                                   1    1
   rtems_io_open                                                         0    0
   rtems_io_close                                                        0    0
   rtems_io_read                                                         0    0
   rtems_io_write                                                        0    0
   rtems_io_control                                                      0    1

21 rtems_task_ident                                                    116  114
   rtems_message_queue_ident                                           113  111
   rtems_semaphore_ident                                               122  120
   rtems_partition_ident                                               113  110
   rtems_region_ident                                                  115  111
   rtems_port_ident                                                    113  109
   rtems_timer_ident                                                   113  109
   rtems_rate_monotonic_ident                                          113  111

22 rtems_message_queue_broadcast: task readied -- returns to caller     82   85
   rtems_message_queue_broadcast: no waiting tasks                      11    9
   rtems_message_queue_broadcast: task readied -- preempts caller       51   56

23 rtems_timer_create                                                    8    7
   rtems_timer_fire_after: inactive                                     14   12
   rtems_timer_fire_after: active                                       13   12
   rtems_timer_cancel: active                                            8    7
   rtems_timer_cancel: inactive                                          7    6
   rtems_timer_reset: inactive                                          11   10
   rtems_timer_reset: active                                            11   11
   rtems_timer_fire_when: inactive                                      17   16
   rtems_timer_fire_when: active                                        17   17
   rtems_timer_delete: active                                           10    9
   rtems_timer_delete: inactive                                          9    8
   rtems_task_wake_when                                                 36   34

24 rtems_task_wake_after: yield -- returns to caller                     5    3
   rtems_task_wake_after: yields -- preempts caller                     22   19

25 rtems_clock_tick                                                     31   31

26 _ISR_Disable                                                         11   12
   _ISR_Flash                                                            9    9
   _ISR_Enable                                                          31   67
   _Thread_Disable_dispatch                                             11   10
   _Thread_Enable_dispatch                                              18   18
   _Thread_Set_state                                                    20   22
   _Thread_Disptach (NO FP)                                             37   41
   context switch: no floating point contexts                           29   26
   context switch: self                                                 14   10
   context switch: to another task                                      12   12
   context switch: restore 1st FP task                                  54   54
   fp context switch: save idle, restore idle                           47   46
   fp context switch: save idle, restore initialized                    25   25
   fp context switch: save initialized, restore initialized             24   25
   _Thread_Resume                                                       23   24
   _Thread_Unblock                                                      14   14
   _Thread_Ready                                                        16   24
   _Thread_Get                                                           2    2
   _Semaphore_Get                                                        1    1
   _Thread_Get: invalid id                                               0    0

27 interrupt entry overhead: returns to interrupted task                25   23
   interrupt exit overhead: returns to interrupted task                 14   15
   interrupt entry overhead: returns to nested interrupt                12   12
   interrupt exit overhead: returns to nested interrupt                 14   14
   interrupt entry overhead: returns to preempting task                 14   16
   interrupt exit overhead: returns to preempting task                  42   38

28 rtems_port_create                                                    43   42
   rtems_port_external_to_internal                                       6    4
   rtems_port_internal_to_external                                       6    4
   rtems_port_delete                                                    39   33

29 rtems_rate_monotonic_create                                          48   42
   rtems_rate_monotonic_period: initiate period -- returns to caller    61   65
   rtems_rate_monotonic_period: obtain status                           23   21
   rtems_rate_monotonic_cancel                                          38   35
   rtems_rate_monotonic_delete: inactive                                32   32
   rtems_rate_monotonic_delete: active                                  22   22
   rtems_rate_monotonic_period: conclude periods -- caller blocks       24   19