fpc/packages/hash/examples/md5performancetest.pas
2014-07-31 12:12:54 +00:00

30 lines
661 B
ObjectPascal

program md5performancetest;
{$mode objfpc}{$H+}
uses
{$IFDEF UNIX}{$IFDEF UseCThreads}
cthreads,
{$ENDIF}{$ENDIF}
SysUtils,Classes,md5,dateutils;
var
StartTime: TDateTime;
EndTime: TDateTime;
i: integer;
s,ss: string;
begin
writeln('MD5 of a million "a" symbols');
Writeln('x86 only: compile md5 unit with -dMD5SLOW to use unoptimized original version');
SetLength(s, 1000000);
for i := 1 to 1000000 do s[i] := 'a';
StartTime:=now;
for i := 0 to 1000 do
ss := LowerCase(MDPrint(MDString(s, MD_VERSION_5)));
EndTime:=now;
writeln('Performance test finished. Elapsed time:');
writeln(TimeToStr(EndTime-StartTime));
end.