md5performancetest.pas 661 B

1234567891011121314151617181920212223242526272829
  1. program md5performancetest;
  2. {$mode objfpc}{$H+}
  3. uses
  4. {$IFDEF UNIX}{$IFDEF UseCThreads}
  5. cthreads,
  6. {$ENDIF}{$ENDIF}
  7. SysUtils,Classes,md5,dateutils;
  8. var
  9. StartTime: TDateTime;
  10. EndTime: TDateTime;
  11. i: integer;
  12. s,ss: string;
  13. begin
  14. writeln('MD5 of a million "a" symbols');
  15. Writeln('x86 only: compile md5 unit with -dMD5SLOW to use unoptimized original version');
  16. SetLength(s, 1000000);
  17. for i := 1 to 1000000 do s[i] := 'a';
  18. StartTime:=now;
  19. for i := 0 to 1000 do
  20. ss := LowerCase(MDPrint(MDString(s, MD_VERSION_5)));
  21. EndTime:=now;
  22. writeln('Performance test finished. Elapsed time:');
  23. writeln(TimeToStr(EndTime-StartTime));
  24. end.