[Oberon] Oberon / Aos disk performance

Dan Parnete parnete at aladata.it
Wed Aug 13 19:43:58 CEST 2003


Hello,

I was interested in testing the Oberon disk access performance. I used a 
Pentium 4 1,8Ghz PC with 512Mb of RAM, and a 36 Mb File.Test. Allocated 
40Mb cache in Aos.
Challengers:
    Bluebottle ver. 04.06.2003
    Native Oberon ver. 05.01.2003
    Win Plugin ver. 14.05.2001 on Windows 2000
    WinAos ver. 30.06.2003 on Windows 2000
    Linux x86 ver 08.01.2003 on Mandrake 9.1

READ / WRITE test:

    t := Input.Time();
    fi := Files.Old( "File.Test" ); Files.Set( ri, fi, 0 );
    fo := Files.New( "File.Bak" ); Files.Set( ro, fo, 0 );
    REPEAT
        Files.ReadBytes( ri, buf, 1024 );
        Files.WriteBytes( ro, buf, 1024 );
    UNTIL ri.eof;
    Out.String( "Time: " ); Out.Int( Input.Time() - t , 9); Out.Ln;

and the equivalent in Activ Oberon. Results:

                         First run      Second run
Aos                  53309          17584
Native              27950          13112
Win Plugin          4672            4782
WinAos              4703            4578
Linux x86           1718            1764


RANDOM READ test:

    len := fi.Length();
    t := Input.Time(); pos := 0;
    FOR i:=1 TO 100000 DO
        pos := (pos + i * 5) MOD len;
        IF pos >= len - 1024 THEN pos := len - 1024 END;
        fi.Set( ri, pos );
        fi.ReadBytes( ri, buf, 0, 1024 );
    END;
    AosOut.String( "Rand time: " ); AosOut.Int( Input.Time() - t , 9);

and the equivalent in Oberon. The results:

                         First run      Second run
Aos                     42757            896
Native                 22681            585
Win Plugin          16156             828
WinAos              16625             938
Linux x86              2095             777


SEQUENTIAL READ test:

                         First run      Second run
Aos                     32170          100
Native                 13672            70
Win Plugin            1281             78
WinAos                1250             94
Linux x86              1354            77


Conclusions:
AosFS it's great on cache. Congratulations.
But writing and the first time reading it's a pain. Am I missing 
something ? Is it anything else to adjust for better performance ?

Thank you,
Dan Parnete




More information about the Oberon mailing list