Einzelnen Beitrag anzeigen

HHick123

Registriert seit: 23. Jul 2007
73 Beiträge
 
#21

Re: File IO mit dem Windows-API?

  Alt 12. Jun 2008, 14:25
So, jetzt hab' ich 's ausprobiert: Habe die oben gepostete Klasse TSeqFileStream in die weiter oben gepostete Unit MyFastFile.pas eingebaut (MySeqFastFile.pas) und mit PerformanceCounter (MyDebugTiming.pas) Zeitmessungen bei verschiedenen Filegrößen gemacht (Projekt anbei).

Tja. Leider noch kein Durchbruch....:
  • (2ms) MyFastFile.pas (200 byte)- schreiben
    (2ms) MySeqFastFile.pas (200 byte)- schreiben
    (0ms) MyFastFile.pas (200 byte)- lesen
    (0ms) MySeqFastFile.pas (200 byte)- lesen
    (2ms) MyFastFile.pas (2000 byte)- schreiben
    (3ms) MySeqFastFile.pas (2000 byte)- schreiben
    (0ms) MyFastFile.pas (2000 byte)- lesen
    (0ms) MySeqFastFile.pas (2000 byte)- lesen
    (4ms) MyFastFile.pas (20000 byte)- schreiben
    (4ms) MySeqFastFile.pas (20000 byte)- schreiben
    (0ms) MyFastFile.pas (20000 byte)- lesen
    (1ms) MySeqFastFile.pas (20000 byte)- lesen
    (13ms) MyFastFile.pas (200000 byte)- schreiben
    (13ms) MySeqFastFile.pas (200000 byte)- schreiben
    (3ms) MyFastFile.pas (200000 byte)- lesen
    (6ms) MySeqFastFile.pas (200000 byte)- lesen
    (95ms) MyFastFile.pas (2000000 byte)- schreiben
    (99ms) MySeqFastFile.pas (2000000 byte)- schreiben
    (30ms) MyFastFile.pas (2000000 byte)- lesen
    (53ms) MySeqFastFile.pas (2000000 byte)- lesen
    (1245ms) MyFastFile.pas (20000000 byte)- schreiben
    (965ms) MySeqFastFile.pas (20000000 byte)- schreiben
    (305ms) MyFastFile.pas (20000000 byte)- lesen
    (536ms) MySeqFastFile.pas (20000000 byte)- lesen
    (10259ms) MyFastFile.pas (200000000 byte)- schreiben
    (9314ms) MySeqFastFile.pas (200000000 byte)- schreiben
    (12835ms) MyFastFile.pas (200000000 byte)- lesen
    (19656ms) MySeqFastFile.pas (200000000 byte)- lesen
Meist ist TSeqFileStream sogar etwas langsamer...
Hmm...

Viele Grüße,
Helmut
Angehängte Dateien
Dateityp: dpr speedtest_180.dpr (1,6 KB, 9x aufgerufen)
Dateityp: pas myseqfastfile_182.pas (5,6 KB, 12x aufgerufen)
Dateityp: pas myfastfile_208.pas (4,3 KB, 13x aufgerufen)
Dateityp: pas mydebugtiming_212.pas (1,9 KB, 9x aufgerufen)
  Mit Zitat antworten Zitat