OS/2 a Win NT i sesje DOS

Autor: Sławomir Stachniewicz (stachnie_at_alf.ifj.edu.pl)
Data: Mon 19 Jan 1998 - 10:04:24 MET


                        Czolem !

        Ostatnio postanowilem porownac wydajnosc Turbo Pascala 7
z Virtual Pascalem 1.1 (chodzilo glownie o wydajnosc w
obliczeniach). Wobec tego napisalem sobie programik, ktory liczyl
10000 razy pozycje wszystkich planet, Slonca i Ksiezyca
(geocentryczne) + nutacja, aberracja itp. Algorytmy - wedlug
ksiazki Meeusa "Astronomical Formulae for Calculators" a, scislej
rzecz biorac, wg kodu zrodlowego jednego z programow Public
Domain napisanego na jej podstawie.

        Oczywiscie, VP 1.1 pod OS/2 okazal sie duzo szybszy,
niz TP 7.0 pod PC DOS 7. Dla hecy "zapuscilem" program DOS-owy
w sesji DOS pod OS/2 - i tu pierwszy szok: chodzil SZYBCIEJ,
niz pod DOS !!! A to prawie wylacznie kod na koprocesor !!!
Skompilowalem tez program z innymi opcjami (powinien chodzic
wolniej) - pod DOS-em wszystko szlo wedlug przewidywan, pod
OS/2 - hmm... "Zapuscilem" je rowniez pod NT 4 Workstation -
rowniez byly szybsze, niz pod DOS, ale nieco wolniejsze, niz
pod OS/2. A oto opis testow:

Program liczyl pozycje planet 10000 razy (co 1 dzien roznicy)
i porownywal czas na poczatku i na koncu. Program testowalem
pod PC-DOS 7.0 (Revision 0), OS/2 Warp 4 UK FP 05, OS/2 Warp
Server Trial 3 UK FP 32 w sesjach DOS w oknie i pelnoekranowych,
Windows NT Workstation 4 US (?) Build 1381, w sesjach DOS VMB
pod Warpem 3 dla MS-DOS 5.0 (1991-11-11) oraz PC-DOS 3.30 i
7.0 (nie testowalem pod Merlinem, bo tam sesje VMB zle dzialaja
:-( - cos z obsluga klawiatury) a takze w oknie i sesji
pelnoekranowej OS/2 pod Warpem 3 i 4 - skompilowane w VP 1.1
z uzyciem biblioteki MATH (387, optymalizacje pod Pentium).

        Wersje DOS kompilowalem dla trzech zestawow dyrektyw
kompilatora: N+ E- G+, N+ E+ G+, N+ E+ G- (N+ : obsluga
koprocesora, E+ : jesli nie ma koprocesora to go emuluje,
G+ : instrukcje 286 [G- => tylko 8086/88]). Powinno byc
(jesli chodzi o szybkosc) N+E-G+ > N+E+G+ > N+E+G- . Wyniki
sa podane w 0.01s (czas wykonania - im krotszy, tym lepiej :-) ).
Staralem sie wybrac moment, gdy obciazenie systemu bylo
minimalne (np. nie bylo zapisow na dysk, co w widoczny sposob
- choc bez przesady - spowalnialo obliczenia) => w razie
watpliwosci powtarzalem pare razy i bralem najszybszy wynik
(jesli nie bylo zapisow na dysk, to roznice byly w granicach
0.01 - 0.02 s). Obliczenia byly prowadzone na komputerze
Pentium MMX 166 MHz, 64 MB RAM (DIMM - SDRAM), plyta glowna
PC Chips VX Pro (UDMA33) z 512 kB cache.

Sesja N+E-G+ N+E+G+ N+E+G- Uwagi

czysty PC-DOS 7.0 8321 8332 8338 Zgodnie z przewid.

OS/2 v4, okno DOS 6259 6049 6246 N+E+G+ !!!
         DOS Full 6243 6034 6231

OS/2 v3, okno DOS 6082 6240 6047 jw. ale na odwrot,
         DOS Full 6068 6226 6032 G- szybsze od G+

OS/2 v3, VMB MS 5.0 6255 6242 6243
         VMB PC 3.3 6251 6241 6243
         VMB PC 7.0 6253 6047 6243 N+E+G+ !!!

Win NT4, okno DOS 6997 6761 6762
         DOS Full 6981 6751 6750

OS/2 v4, okno 3498
OS/2 v4, pelnoekranowy 3489

OS/2 v3, okno 3493
OS/2 v3, pelnoekranowy 3487

        Wnioski:

1. VP 1.1 bije na glowe TP 7.0 (c.b.d.p. - Co Bylo Do
   Przewidzenia).

2. Sesje DOS pod OS/2 i NT4 dzialaja szybciej, niz czysty DOS
   (przynajmniej wtedy, gdy system nie jest obciazony).

3. Jesli cos jest szybsze pod DOS, to niekoniecznie tak jest
   pod OS/2 i NT (N+E+G- ZAWSZE szybsze od N+E-G+).

4. Sesje pelnoekranowe sa odrobine szybsze, niz sesje w oknie
   (tu: zwykle o 0.14-0.16 sek.).

5. OS/2 v3 wypadl nieznacznie lepiej. niz v4.

6. OS/2 wypadl zdecydowanie lepiej, niz NT4 (moze to wina niezbyt
   umiejetnego skonfigurowania NT, ale raczej watpie).

7. Roznice miedzy poszczegolnymi sesjami VMB byly minimalne
   (wiekszosc w granicach bledu z wyjatkiem N+E+G+ dla
   PC DOS 7.0).

        Na razie tyle mi przychodzi do glowy. Jak ktos ma
jeszcze jakies komentarz, to prosze bardzo.

        Slawomir Stachniewicz.

+-------------------------------------+
| Slawomir Stachniewicz |
| mailto:stachnie_at_alf.ifj.edu.pl |
| http://solaris.ifj.edu.pl/~stachnie |
+-------------------------------------+



To archiwum zostało wygenerowane przez hypermail 2.1.7 : Tue 18 May 2004 - 15:16:00 MET DST