forked from andremussche/scalemm
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathFastcodeMMChallenge_D2010.dpr
137 lines (126 loc) · 4.02 KB
/
FastcodeMMChallenge_D2010.dpr
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
program FastcodeMMChallenge_D2010;
{$I FASTCODE_MM.INC}
uses
// FastMM4,
{Must be first to measure the initial VM Usage}
BenchmarkUtilities in 'BenchmarkUtilities.pas',
{$IFDEF MM_BUCKETMM}
{Robert Houdart's BucketMM}
BucketMem,
{$ENDIF}
{$IFDEF MM_BUCKETMM_ASM}
{Robert Houdart's BucketBASMMM}
BucketMem_ASM,
{$ENDIF}
{$IFDEF MM_DKCIA32MM}
{Dennis Christensen slowcode entry version 0.16}
DKC_IA32_MM_Unit,
{$ENDIF}
{$IFDEF MM_EWCMM}
{Eric Carman's EWCMM}
EWCMM,
{$ENDIF}
{$IFDEF MM_FASTMM2}
{Pierre le Riche's FastMM v2.xx}
FastMM,
{$ENDIF}
{$IFDEF MM_FASTMM3}
{Pierre le Riche's FastMM v3.xx}
FastMM3,
{$ENDIF}
{$IFDEF MM_FASTMM4}
{Pierre le Riche's FastMM v4.27}
FastMM4,
{$ENDIF}
{$IFDEF MM_FASTMM4_16}
{Pierre le Riche's FastMM v4.27 with 16 byte alignment}
FastMM4_16,
{$ENDIF}
{$IFDEF MM_MULTIMM}
{Robert Lee's HPMM}
MultiMM,
{$ENDIF}
{$IFDEF MM_NEXUSMM}
{NexusDB Memory Manager}
nxReplacementMemoryManager,
{$ENDIF}
{$IFDEF MM_PSDMM}
{Pierre le Riche's PSDMemoryManager v1.xx}
PSDMemoryManager,
{$ENDIF}
{$IFDEF MM_QMEMORY}
{Andrew Driazgov's QMemory}
QMemory,
{$ENDIF}
{$IFDEF MM_RECYCLERMM}
{Eric Grange's RecyclerMM}
RecyclerMM,
{$ENDIF}
{$IFDEF MM_RTLMM}
{Borland Delphi RTL Memory Manager}
{$ENDIF}
{$IFDEF MM_TOPMM}
{Ivo Top's TopMM}
TopMemory,
{$ENDIF}
{$IFDEF MM_WINMEM}
{Mike Lischke's WinMem (Uses the windows heap)}
WinMem,
{$ENDIF}
{$IFDEF MM_LOCALHEAP}
{Carsten Zeumer's LocalHeapMM (Uses the windows heap)}
LocalHeapMM,
{$ENDIF}
{$IFDEF MM_HEAPMM}
{Vladimir Kladov's HeapMM}
HeapMM,
{$ENDIF}
{$IFDEF MM_SCALEMM}
ScaleMM in '..\..\ScaleMM.pas',
{$ENDIF}
// FastMove, // uncomment if you want to benchmark with FastMove
{Other units}
Forms,
BenchmarkForm in 'BenchmarkForm.pas' {fBenchmark},
RenameMMForm in 'RenameMMForm.pas' {fRenameMM},
FragmentationTestUnit in 'FragmentationTestUnit.pas',
NexusDBBenchmarkUnit in 'NexusDBBenchmarkUnit.pas',
ReallocMemBenchmark in 'ReallocMemBenchmark.pas',
DownsizeTestUnit in 'DownsizeTestUnit.pas',
ReplayBenchmarkUnit in 'ReplayBenchmarkUnit.pas',
WildThreadsBenchmarkUnit in 'WildThreadsBenchmarkUnit.pas',
BlockSizeSpreadBenchmark in 'BlockSizeSpreadBenchmark.pas',
SmallUpsizeBenchmark in 'SmallUpsizeBenchmark.pas',
SmallDownsizeBenchmark in 'SmallDownsizeBenchmark.pas',
RawPerformanceSingleThread in 'RawPerformanceSingleThread.pas',
RawPerformanceMultiThread in 'RawPerformanceMultiThread.pas',
GraphsForm in 'GraphsForm.pas' {fGraphs},
AddressSpaceCreepBenchmark in 'AddressSpaceCreepBenchmark.pas',
LargeBlockSpreadBenchmark in 'LargeBlockSpreadBenchmark.pas',
StringThread in 'StringThread.pas',
StringThreadTestUnit in 'StringThreadTestUnit.pas',
ArrayUpsizeSingleThread in 'ArrayUpsizeSingleThread.pas',
SingleFPBenchmark1Unit in 'SingleFPBenchmark1Unit.pas',
DoubleFPBenchmark1Unit in 'DoubleFPBenchmark1Unit.pas',
DoubleFPBenchmark2Unit in 'DoubleFPBenchmark2Unit.pas',
DoubleFPBenchmark3Unit in 'DoubleFPBenchmark3Unit.pas',
MoveBenchmark1Unit in 'MoveBenchmark1Unit.pas',
MoveBenchmark2Unit in 'MoveBenchmark2Unit.pas',
AddressSpaceCreepBenchmarkLarge in 'AddressSpaceCreepBenchmarkLarge.pas',
LinkedListBenchmark in 'LinkedListBenchmark.pas',
BenchmarkClassUnit in 'BenchmarkClassUnit.pas',
MultiThreadedAllocAndFree in 'MultiThreadedAllocAndFree.pas',
MultiThreadedReallocate in 'MultiThreadedReallocate.pas',
SingleThreadedAllocAndFree in 'SingleThreadedAllocAndFree.pas',
SingleThreadedReallocate in 'SingleThreadedReallocate.pas',
SortIntArrayBenchmark2Unit in 'SortIntArrayBenchmark2Unit.pas',
SortExtendedArrayBenchmark2Unit in 'SortExtendedArrayBenchmark2Unit.pas',
SingleThreadedAllocMem in 'SingleThreadedAllocMem.pas',
MMvalidation in 'MMvalidation.pas',
GeneralFunctions in 'GeneralFunctions.pas';
{$R *.res}
begin
Application.Initialize;
Application.CreateForm(TfBenchmark, fBenchmark);
Application.Run;
end.