📄 tmp.pas
字号:
unit tmp;
interface
implementation
(2006.10.12 DGL Profiler)
CPU: AMD Athlon(tm)64 3000+(1.81G)
Delphi7 Compile
DGL lib=========================================================================
Container: PushBack Next Visite Random Visite Insert At Middle PushFront
TVector 0.010 us 0.008 us 0.102 us 34400.000 us 78000.000 us
TDeque 0.009 us 0.055 us 0.155 us 143800.000 us 0.010 us
TList 0.067 us 0.022 us 15310.000 us 0.073 us 0.053 us
IVector 0.014 us 0.018 us 0.156 us 34400.000 us 78200.000 us
IDeque 0.013 us 0.070 us 0.235 us 153000.000 us 0.016 us
IList 0.073 us 0.022 us 15160.000 us 0.078 us 0.056 us
Container: Insert Find Next Visite
IMap 0.274 us 0.797 us 0.048 us
IMultiMap 0.298 us 0.899 us 0.067 us
ISet 0.272 us 0.805 us 0.044 us
IMultiSet 0.253 us 0.805 us 0.043 us
================================================================================
Delphi7=========================================================================
Container: PushBack Next Visite Random Visite Insert At Middle PushFront
array 0.168 us 0.006 us 0.086 us 40600.000 us 121800.000 us
TList 0.023 us 0.013 us 0.164 us 28000.000 us 65600.000 us
================================================================================
STL : VC6 Compile===============================================================
Container: PushBack Next Visite Random Visite Insert At Middle PushFront
vector 0.049 us 0.005 us 0.032 us 34400 us 68800 us
deque 0.013 us 0.016 us 0.055 us 212400 us 0.013 us
list 0.142 us 0.022 us 18800 us 0.161 us 0.159 us
Container: Insert Find Next Visite
map 0.408 us 0.277 us 0.054 us
set 0.405 us 0.278 us 0.048 us
multimap 0.430 us 0.277 us 0.055 us
multiset 0.405 us 0.278 us 0.048 us
(SGI)STL : DEV-C++4.98 (GCC max optimize) Compile===============================
Container: PushBack Next Visite Random Visite Insert At Middle PushFront
vector 0.016 us 0.005 us 0.032 us 34400 us 56200 us
deque 0.012 us 0.008 us 0.133 us 875000 us 0.013 us
list 0.044 us 0.016 us 12400 us 0.052 us 0.036 us
Container: Insert Find Next Visite
map 0.539 us 0.503 us 0.039 us
set 0.520 us 0.497 us 0.034 us
multimap 0.502 us 0.495 us 0.044 us
multiset 0.508 us 0.491 us 0.039 us
hash_map 0.149 us 0.056 us 0.046 us
hash_set 0.142 us 0.050 us 0.043 us
hash_multimap 0.142 us 0.058 us 0.046 us
hash_multiset 0.138 us 0.050 us 0.043 us
================================================================================
DCL lib=========================================================================
Container: PushBack Next Visite Random Visite Insert At Middle PushFront
TArrayList 0.019 us 0.029 us 0.164 us 25000.000 us 65600.000 us
TVector 0.014 us 0.025 us 0.164 us 25000.000 us 62400.000 us
TLinkedList 0.050 us 0.023 us 5780.000 us 0.056 us 0.086 us
Container: Insert Find Next Visite
TBinaryTree 0.470 us 1.047 us 0.086 us
THashMap 0.422 us 0.788 us 0.084 us(copy Values to TArrayList,it is not ture test!)
THashSet 0.485 us 0.588 us "Container.First" is O(N*N), is bad,can not test!
ps: THashXXX.Create()
for I := 0 to FCapacity - 1 do
SetLength(FBuckets[I].Entries, 64);) //is bad design, slow and waste memory!
ps: THashXXX //is bad design for dynamic size
ps: TLinkedList.Clear() ERROR !!!
procedure TLinkedList.Clear;
.....
//ERROR , must add line: FStart:=nil;
end;
================================================================================
DeCal lab=======================================================================
Container: PushBack Next Visite Random Visite Insert At Middle PushFront
DArray 0.206 us 0.184 us 0.305 us 53200.000 us 128000.000 us
DList 0.147 us 0.127 us 13109.000 us 0.167 us 0.141 us
Container: Insert Find Next Visite
DSet 2.117 us 6.594 us 0.117 us
DMultiSet 2.000 us 5.532 us 0.117 us
DMap 1.961 us 4.969 us 0.115 us
DMultiMap 1.875 us 5.234 us 0.149 us
DHashSet 22.500 us 58.740 us 0.833 us
DMultiHashSet 0.372 us 5465.000 us 0.788 us
DHashMap 29.680 us 62.820 us 0.727 us
DMultiHashMap 0.681 us 2970.000 us 0.786 us
================================================================================
EZDSL lab=======================================================================
Container: PushBack Next Visite Random Visite Insert At Middle PushFront
TEZCollection is maxsize is N=10922*92 for test! it is very small for test;
TEZCollection 0.078 us 0.077 us 6.233 us 0.388 us 0.588 us
TDList 0.175 us 0.028 us 7050.000 us 0.170 us 0.150 us
TLinkList 0.155 us 0.033 us 15650.000 us 0.167 us 0.147 us
Container: Push Pop
TQueue 0.139 us 0.150 us
TStack 0.142 us 0.145 us
Container: Insert Find Next Visite
THashTable 7.580 us 1.720 us (not find way to test!)
================================================================================
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -