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