<---Timing in Cycles周期 ---> |
|
<-Timing in MicroSeconds时间-> |
vdsp5.0 |
vdsp4.5 |
vdsp3.5 |
|
vdsp5.0 |
vdsp4.5 |
vdsp3.5 |
|
Update 6 |
Base |
|
|
Update 6 |
Base |
|
|
BF533 |
BF535 |
2191 |
|
BF533 |
BF535 |
2191 |
API CALL API函数 |
600 mhz |
350 mhz |
160 mhz |
|
600 mhz |
350 mhz |
160 mhz |
|
emu |
emu-warm |
emu |
|
emu |
emu-warm |
emu |
|
73 |
Not Applicable |
Not Applicable |
|
0.12 |
Not Applicable |
Not Applicable |
AcquireMutex <no current owner> |
74 |
Not Applicable |
Not Applicable |
|
0.12 |
Not Applicable |
Not Applicable |
AcquireMutex <nested Acquire> |
252 |
Not Applicable |
Not Applicable |
|
0.42 |
Not Applicable |
Not Applicable |
AcquireMutex <mutex unavailable, context switch> |
97 |
107 |
82 |
|
0.16 |
0.31 |
0.51 |
AllocateThreadSlot |
96 |
109 |
88 |
|
0.16 |
0.31 |
0.55 |
AllocateThreadSlotEx |
390 |
459 |
261 |
|
0.65 |
1.31 |
1.63 |
ClearEventBit <no context switch, bit changes> |
138 |
183 |
97 |
|
0.23 |
0.52 |
0.61 |
ClearEventBit <no context switch, bit same> |
657 |
872 |
686 |
|
1.10 |
2.49 |
4.29 |
ClearEventBit <with context switch > |
52 |
98 |
45 |
|
0.09 |
0.28 |
0.28 |
ClearInterruptMaskBits |
Not Applicable |
Not Applicable |
Not Applicable |
|
Not Applicable |
Not Applicable |
Not Applicable |
ClearInterruptMaskBitsEx |
17 |
25 |
16 |
|
0.03 |
0.07 |
0.10 |
ClearThreadError |
Device dept. |
Device dept. |
Device dept. |
|
Device dept. |
Device dept. |
Device dept. |
CloseDevice |
515 |
615 |
332 |
|
0.86 |
1.76 |
2.08 |
CreateDeviceFlag |
173 |
253 |
169 |
|
0.29 |
0.72 |
1.06 |
CreateMessage |
448 |
Not Applicable |
Not Applicable |
|
0.75 |
Not Applicable |
Not Applicable |
CreateMutex |
1777 |
1839 |
1193 |
|
2.96 |
5.25 |
7.46 |
CreatePool <allocate memory now> |
1275 |
1149 |
709 |
|
2.13 |
3.28 |
4.43 |
CreatePool <allocate memory later> |
1746 |
1809 |
Not Applicable |
|
2.91 |
5.17 |
Not Applicable |
CreatePoolEx <allocate memory now> |
1264 |
1127 |
Not Applicable |
|
2.11 |
3.22 |
Not Applicable |
CreatePoolEx <allocate memory later> |
651 |
815 |
408 |
|
1.09 |
2.33 |
2.55 |
CreateSemaphore |
1779 |
2141 |
1626 |
|
2.97 |
6.12 |
10.16 |
CreateThread <lower priority> |
1836 |
2287 |
1906 |
|
3.06 |
6.53 |
11.91 |
CreateThread <higher priority - context switch> |
1778 |
2150 |
1508 |
|
2.96 |
6.14 |
9.43 |
CreateThread <same priority - no context switch> |
2949 |
3459 |
2673 |
|
4.92 |
9.88 |
16.71 |
CreateThreadEx <equal or lower priority> |
3018 |
3604 |
3267 |
|
5.03 |
10.30 |
20.42 |
CreateThreadEx <higher priority - context switch> |
394 |
495 |
232 |
|
0.66 |
1.41 |
1.45 |
DestroyDeviceFlag |
159 |
233 |
197 |
|
0.27 |
0.67 |
1.23 |
DestroyMessage |
168 |
260 |
445 |
|
0.28 |
0.74 |
2.78 |
DestroyMessageAndFreePayload |
387 |
Not Applicable |
Not Applicable |
|
0.65 |
|
|
DestroyMutex |
658 |
771 |
394 |
|
1.10 |
2.20 |
2.46 |
DestroyPool |
389 |
460 |
174 |
|
0.65 |
1.31 |
1.09 |
DestroySemaphore |
1285 |
1435 |
1240 |
|
2.14 |
4.10 |
7.75 |
DestroyThread <kReady> <delete space now> |
208 |
250 |
281 |
|
0.35 |
0.71 |
1.76 |
DestroyThread <kReady> < delete space later> |
199 |
283 |
272 |
|
0.33 |
0.81 |
1.70 |
DestroyThread <kSleeping> |
173 |
220 |
236 |
|
0.29 |
0.63 |
1.48 |
DestroyThread <kSemaphoreBlocked> |
215 |
305 |
295 |
|
0.36 |
0.87 |
1.84 |
DestroyThread <kSemaphoreBlockedWithTimeout> |
Device dept. |
Device dept. |
Device dept. |
|
Device dept. |
Device dept. |
Device dept. |
DeviceIOCtl |
69 |
110 |
52 |
|
0.12 |
0.31 |
0.33 |
DispatchThreadError (with context switch) |
334 |
422 |
334 |
|
0.56 |
1.21 |
2.09 |
ForwardMessage |
135 |
241 |
162 |
|
0.23 |
0.69 |
1.01 |
FreeBlock |
323 |
391 |
141 |
|
0.54 |
1.12 |
0.88 |
Free (from C library, for comparison) |
1306 |
1450 |
1076 |
|
2.18 |
4.14 |
6.73 |
FreeDestroyedThreads (one thread) |
29 |
55 |
276 |
|
0.05 |
0.16 |
1.73 |
FreeMessagePayload |
79 |
101 |
55 |
|
0.13 |
0.29 |
0.34 |
FreeThreadSlot |
292 |
13 |
14 |
|
0.49 |
0.04 |
0.09 |
GetClockFrequency |
21 |
11 |
16 |
|
0.04 |
0.03 |
0.10 |
GetEventBitValue |
35 |
57 |
66 |
|
0.06 |
0.16 |
0.41 |
GetEventData |
23 |
13 |
16 |
|
0.04 |
0.04 |
0.10 |
GetEventValue |
19 |
16 |
Not Applicable |
|
0.03 |
0.05 |
Not Applicable |
GetHeapIndex |
59 |
83 |
12 |
|
0.10 |
0.24 |
0.08 |
GetInterruptMask |
Not Applicable |
Not Applicable |
Not Applicable |
|
Not Applicable |
Not Applicable |
Not Applicable |
GetInterruptMaskEx |
17 |
18 |
12 |
|
0.03 |
0.05 |
0.08 |
GetLastThreadError |
17 |
18 |
63 |
|
0.03 |
0.05 |
0.39 |
GetLastThreadErrorValue |
43 |
63 |
33 |
|
0.07 |
0.18 |
0.21 |
GetMessageDetails |
29 |
39 |
32 |
|
0.05 |
0.11 |
0.20 |
GetMessagePayload |
27 |
33 |
46 |
|
0.05 |
0.09 |
0.29 |
GetMessageReceiveInfo |
46 |
66 |
44 |
|
0.08 |
0.19 |
0.28 |
GetNumAllocatedBlocks |
45 |
66 |
40 |
|
0.08 |
0.19 |
0.25 |
GetNumFreeBlocks |
38 |
74 |
44 |
|
0.06 |
0.21 |
0.28 |
GetPriority |
48 |
80 |
11 |
|
0.08 |
0.23 |
0.07 |
GetSemaphoreValue |
14 |
14 |
13 |
|
0.02 |
0.04 |
0.08 |
GetThreadHandle |
27 |
25 |
49 |
|
0.05 |
0.07 |
0.31 |
GetThreadID |
67 |
59 |
3875 |
|
0.11 |
0.17 |
24.22 |
GetThreadSlotValue |
1346 |
3226 |
40 |
|
2.24 |
9.22 |
0.25 |
GetThreadStackUsage |
Not Applicable |
Not Applicable |
Not Applicable |
|
Not Applicable |
Not Applicable |
Not Applicable |
GetThreadStack2Usage |
39 |
75 |
40 |
|
0.07 |
0.21 |
0.25 |
GetThreadStatus |
15 |
13 |
10 |
|
0.03 |
0.04 |
0.06 |
GetTickPeriod |
15 |
24 |
11 |
|
0.03 |
0.07 |
0.07 |
GetUptime |
30 |
33 |
42 |
|
0.05 |
0.09 |
0.26 |
GetVersion |
Not Applicable |
Not Applicable |
12 |
|
Not Applicable |
Not Applicable |
0.08 |
InstallMessageControlSemaphore |
371 |
4982 |
2099 |
|
0.62 |
14.23 |
13.12 |
InstrumentStack |
297 |
426 |
309 |
|
0.50 |
1.22 |
1.93 |
Load Event |
197 |
306 |
261 |
|
0.33 |
0.87 |
1.63 |
LocateAndFreeBlock |
16 |
12 |
15 |
|
0.03 |
0.03 |
0.09 |
LogHistoryEvent |
117 |
174 |
117 |
|
0.20 |
0.50 |
0.73 |
MakePeriodic <no other periodic> |
86 |
147 |
103 |
|
0.14 |
0.42 |
0.64 |
MallocBlock |
396 |
456 |
225 |
|
0.66 |
1.30 |
1.41 |
Malloc (from C library, for comparison) |
35 |
18 |
27 |
|
0.06 |
0.05 |
0.17 |
MessageAvailable |
Device dept. |
Device dept. |
Device dept. |
|
Device dept. |
Device dept. |
Device dept. |
OpenDevice |
Device dept. |
Device dept. |
Device dept. |
|
Device dept. |
Device dept. |
Device dept. |
PendDeviceFlag |
72 |
97 |
47 |
|
0.12 |
0.28 |
0.29 |
PendEvent <no context switch> |
210 |
292 |
350 |
|
0.35 |
0.83 |
2.19 |
PendEvent <with context switch> |
170 |
194 |
169 |
|
0.28 |
0.55 |
1.06 |
PendMessage <no context switch> |
277 |
406 |
411 |
|
0.46 |
1.16 |
2.57 |
PendMessage <with context switch> |
79 |
118 |
56 |
|
0.13 |
0.34 |
0.35 |
PendSemaphore <available> |
261 |
399 |
405 |
|
0.44 |
1.14 |
2.53 |
PendSemaphore <not available/no timeout> |
310 |
477 |
434 |
|
0.52 |
1.36 |
2.71 |
PendSemaphore <not available, with timeout, no threads> |
137 |
219 |
90 |
|
0.23 |
0.63 |
0.56 |
PopCriticalRegion <no reschedule> |
121 |
173 |
97 |
|
0.20 |
0.49 |
0.61 |
PopNestedCriticalRegions <no reschedule> |
114 |
166 |
86 |
|
0.19 |
0.47 |
0.54 |
PopNestedUnscheduledRegions <no reschedule> |
114 |
176 |
81 |
|
0.19 |
0.50 |
0.51 |
PopUnscheduledRegion <no reschedule> |
Device dept. |
Device dept. |
Device dept. |
|
Device dept. |
Device dept. |
Device dept. |
PostDeviceFlag |
471 |
606 |
612 |
|
0.79 |
1.73 |
3.83 |
PostMessage <with context switch> |
313 |
384 |
314 |
|
0.52 |
1.10 |
1.96 |
PostMessage <no context switch> |
90 |
130 |
80 |
|
0.15 |
0.37 |
0.50 |
PostSemaphore <no thread pending> |
176 |
222 |
193 |
|
0.29 |
0.63 |
1.21 |
PostSemaphore <low priority thread pending> |
227 |
312 |
372 |
|
0.38 |
0.89 |
2.33 |
PostSemaphore <high priority thread pending> |
57 |
111 |
22 |
|
0.10 |
0.32 |
0.14 |
PushCriticalRegion |
34 |
39 |
11 |
|
0.06 |
0.11 |
0.07 |
PushUnscheduledRegion |
66 |
Not Applicable |
Not Applicable |
|
0.11 |
Not Applicable |
Not Applicable |
ReleaseMutex <nested Release> |
85 |
Not Applicable |
Not Applicable |
|
0.14 |
Not Applicable |
Not Applicable |
ReleaseMutex <no new owner> |
215 |
Not Applicable |
Not Applicable |
|
0.36 |
Not Applicable |
Not Applicable |
ReleaseMutex <owner change, context switch> |
89 |
130 |
98 |
|
0.15 |
0.37 |
0.61 |
RemovePeriodic <one periodic> |
192 |
281 |
154 |
|
0.32 |
0.80 |
0.96 |
ResetPriority <no context switch> |
421 |
596 |
473 |
|
0.70 |
1.70 |
2.96 |
ResetPriority <with context switch> |
358 |
500 |
1383 |
|
0.60 |
1.43 |
8.64 |
SetClockFrequency |
135 |
183 |
97 |
|
0.23 |
0.52 |
0.61 |
SetEventBit <no context switch> |
657 |
895 |
684 |
|
1.10 |
2.56 |
4.28 |
SetEventBit <with context switch> |
51 |
104 |
41 |
|
0.09 |
0.30 |
0.26 |
SetInterruptMaskBits |
Not Applicable |
Not Applicable |
Not Applicable |
|
Not Applicable |
Not Applicable |
Not Applicable |
SetInterruptMaskBitsEx |
21 |
35 |
25 |
|
0.04 |
0.10 |
0.16 |
SetMessagePayload |
275 |
426 |
256 |
|
0.46 |
1.22 |
1.60 |
SetPriority <no context switch> |
302 |
476 |
434 |
|
0.50 |
1.36 |
2.71 |
SetPriority <with context switch> |
21 |
28 |
20 |
|
0.04 |
0.08 |
0.13 |
SetThreadError |
71 |
98 |
58 |
|
0.12 |
0.28 |
0.36 |
SetThreadSlotValue |
301 |
509 |
1397 |
|
0.50 |
1.45 |
8.73 |
SetTickPeriod |
240 |
371 |
372 |
|
0.40 |
1.06 |
2.33 |
Sleep <causing context switch> |
Device dept. |
Device dept. |
Device dept. |
|
Device dept. |
Device dept. |
Device dept. |
SyncRead |
Device dept. |
Device dept. |
Device dept. |
|
Device dept. |
Device dept. |
Device dept. |
SyncWrite |
94 |
97 |
85 |
|
0.16 |
0.28 |
0.53 |
Yield <no threads present> |
212 |
276 |
295 |
|
0.35 |
0.79 |
1.84 |
Yield <threads present> |
254 |
351 |
283 |
|
0.42 |
1.00 |
1.77 |
Yield <first entry to new thread> |