fpc/packages/hash/examples/md5performancetest.pas
Michaël Van Canneyt d661e7288b * PChar -> PAnsiChar
2023-07-15 18:22:41 +02:00

33 lines
686 B
ObjectPascal

program md5performancetest;
{$mode objfpc}{$H+}
uses
{$IFDEF UNIX}
cwstring,
{$IFDEF UseCThreads}
cthreads,
{$ENDIF}
{$ENDIF}
SysUtils,Classes,md5,dateutils;
var
StartTime: TDateTime;
EndTime: TDateTime;
i: integer;
s,ss: RawByteString;
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.