Re: EIDE - wyniki testow

Autor: Gregorio Kus (Grego_at_RMnet.IT)
Data: Sat 08 Jun 1996 - 23:12:53 MET DST


ostrzegam - DLUGIE!
(i nie zawiera uuencodowanych GIFow z golymi babami)
:-)
On Sat, 8 Jun 1996 12:52:32 +0200 Raphael Posmyk wrote:

>Grego_at_RMnet.IT (Gregorio Kus) wrote:
>
>>Sformuuje wiec moje pytanie dokladniej: w jednokanalowym IDE, nie da sie
>>"zrownoleglic operacji" na zasadzie: system operacyjny rozkazuje
[...]
>Grego, jak cwanie zainstalujesz systemy (1 system = 1 dysk),
>to i tak pracujac w danym systemie bedziesz uzywal jednego
>(glownego) dysku (pomijam tu takie rzeczy jak np. podmontowane
>pod Linuxem partycje DOS'a, bo chodzi tu raczej o wygode
>niz szybkosc). Inny dysk na tym samym kanale, jako ze nie bedzie
>(nad)uzywany, nie bedzie opoznial operacji na dysku glownym.

bedzie, bedzie, Rafaele!
przeciez ja wciaz jeszcze nie mam 32MB (a i to nie wiem czy by mi
wystarczylo) wiec oczywiscie swap jest w ruchu. A swap'a rzecz jasna
lepiej umiescic na dysku innym niz ten glowny.

>>W sumie: czy istnieja w takiej konfiguracji pewne namiastki korzysci
>>jakie sie otrzymuje uzywajac SCSI?
>
>Czyzbys mial troche kasy do wydania ? :-)
>
>Niektore:
[...]
w tym miejscu wycinam opis korzysci jakie mam z zastosowania SCSI.
A poniewaz tej wolnej kasy do wydania wlasnie nie mam, wiec stad moje
pytanie czy uzywajac obu kanalow IDE mam pewne NAMIASTKI SCSI,
a glownie chodzi mi wlasnie o "zrownoleglenie", bo inne zalet
SCSI na razie mnie nie interesuja - nie mam potrzeby podlaczania
innych urzadzen zewnetrznych (scaner, cd-recorder), w lepsze
performances dyskow SCSI nie wierze (tzn. istnieja~ rownie szybkie
EIDE w konfiguracjach jednodyskowych, szybkosc SCSI mozna docenic
dopiero uzywajac kilku dyskow w systemie multitasking), nie interesuje
mnie (nie mam takich potrzeb) rowniez przenaszalnosc.

>>(bo tam tez daleko nie wylacznie
>>chodzi o mozliwosc podpiecia 7miu urzadzen)
>
>?!? A to, to musisz najpierw przetlumaczyc z wloskiego :-)

cholera, tego sie wlasnie obawialem, i tak nigdy sie wloskim nie bede
poslugiwal jak rodowity wloch, a zyjac wsrod wlochow - z moim polskim
bedzie coraz gorzej. W sumie - w zadnym jezyku nie bede sie umial
w pelni (i poprawnie) wyrazic.

zas co do tego zdania, chcialem w nim tylko podkreslic, ze pisze
o NAMIASTCE SCSI, wiedzac doskonale, ze SCSI ma wiele innych zalet,
a nie tylko mozliwosc podlaczenia 7miu urzadzen (lub 14 itd).

--------------------------------------------------------------------------

Poniewaz jednak nikt nie odpowiedzial mi na moje pytanie - stracilem
dzien na przeprowadzanie testow. Znane sa trudnosci z realistyczna
ocena performances jakiegos komponentu (zarowno soft- jak i hardware'owego)
w systemach multitaskig, wiec moje testy nie maja wiekszego znaczenia
"ilosciowego", aczkolwiek na zadane pytanie (o "jakosciowym" charakterze)
mysle ze odpowiedzi udzielic moga. Zaden z typowych sharewareow sie rzecz
jasna do tego nie nadawal, musialem sobie wiec napisac odpowiednie testy
sam. Utworzylem na dwu partycjach HPFS o tej samej wielkosci (kazda na
innym dysku) stumegabajtowe pliki. Napisalem dwa malutkie programiki -
jeden wykonywal operacje sekwencyjnie (czyli czas przebiegu zalezal
glownie od transferu) a drugi skakal po pliku za kazdym razem o megabajt
(plik mial 102400 rekordow po 1024 byte'y, program czytal rekordy
1, 1025, 2048 itd, a kiedy doszedl do konca - zaczynal od 2, potem 1026 itd)
[Nie chcialem stosowac skokow generowanych losowo, bo zalezalo mi na
powtarzalnosci wynikow] Tak wiec ten drugi programik tracil czas glownie
na skoki glowic, zas transfer byl maloistotny. Potem pomierzylem czasy
wykonywania tych programikow na kazdym dysku z osobna, a potem rownoczesnie
(w dwu osobnych sesjach OS/2). Pierwszy program w parze ze swoja kopia
ale na innym dysku, oraz w parze z tym drugim (tez na roznych dyskach).
Troche to skomplikowanie brzmi, prosciej byloby wprowadzic oznaczenia
typu dysk 1/dysk 2, program A/program B, i powiedziec od razu,
ze wyprobowalem kombinacje A1A2, A1B2, A2B1. Dlaczego nie wykonalem B1B2?
O tym pozniej. Kazdy z tych testow powtorzylem w konfiguracji Master/Slawe
jak i w konfiguracji z dwoma masterami (primary i secondary).
Czyli MMA1A2, MSA1A2, MMB1B2 ............
:-)
Nie chce sie rozpisywac za bardzo na temat metodologii, musze jednak
dodac ze w czasie testow A1, A2, B1, B2, czyli testow w czasie ktorych
pracowal tylko jeden program "zestroilem je" w taki sposob, by kazdy z nich
wykonywal sie ta sama ilosc czasu (dla ulatwienia testow "rownoleglych").
Nie zapomnialem tez o defragmentacji dyskow, oraz o uprzednim poprzerzucaniu
zawarosci miedzy nimi tak aby i ilosc pustego miejsca byla mniej wiecej taka
sama. (w HPFS, NTFS a mysle ze i w ext2fs osiagi systemu zaleza rowniez
od stonia zapelnienia dyskow). Poczekalem tez az sie system uspokoi
(przestanie sobie porzadkowac swap i inne takie, co kazdy s.o. multitasking
robi kiedy nie ma zadan od uzytkownika). Kazdy test byl wykonany 5 razy
dla usrednienia, przypadki mocniej "odstajace" byly odrzucane (uznawalem
ze w takim przypadku "wtracil sie" system) i test byl powtarzany dodatkowy.

Do rzeczy:
  1. Pewne zrownoleglenie wykonywania operacji wystepuje nawet
     i w konfiguracji Master/Slave. Slabe przy transferach (rownoczesne
     uruchomienie dwu programow "sekwencyjnych" na dwu roznych dyskach
     daje circa 6% krotszy czas wykonania niz wykonanie ich po kolei)
     silniejsze w sytuacji gdy jeden "skacze" a drugi "ciagnie
     sekwencyjnie" (14% lepszy czas). Nie wiem ile w tym zaslugi
     multitaskingu a ile EIDE.
  2. Podlaczenie dwu dyskow do roznych kanalow __DAJE__ polepszenie
     osiagow. 9% przy "prawie czystym transferze", 27% przy mixie
     tzn. jeden "ciagnie" z jednego dysku, drugi "skacze" po drugim.

i to by chyab robilo za odpowiedz na moje pytanie

tak czesto odpwiadam innym, ale jak ja o cos pytam, to nikt mi
nie ma ochoty pomoc :-(((

:-)

Przy okazji wykrylem nastepujace nieprzyjemne i/lub niezrozumiale
zjawiska:

1. Majac 2 mastery - bylem zmuszony wylaczyc opcje "dostep 32bitowy do
   dysku" w BIOS'ie, gdyz w przeciwnym przypadku proba zapisu (czytac sie da)
   na secondary konczyla sie zawieszeniem DOSa. Mimo, iz mam zainstalowany
   driver do EIDE jaki przyszedl wraz z MB. A twierdzili ze po jego odpaleniu
   BIOS z HD nie ma juz nic do czynienia. Co ciekawe - w master/slawe
   chodzi i z wylaczonym i z wlaczonym, bez wykrywalnej roznicy szybkosci.
2. Pod OS/2 - chodzi niezaleznie od wlaczenia/wylaczenia dostepu 32bitowego,
   ale pod jednym warunkiem: nie mozna swap'a ustawic na secondary. Jesli
   system sie zaladuje - wszystko gra, mozna czytac/pisac na obydwa dyski,
   jednak ze swap'em na secondary -system sie po prostu zawiesza,
   bez zadnych komunikatow, w trakcie odpalania WPS. (system wlasciwy,
   tzn. kernel, drivery etc, jak i PM - laduje sie bez problemow)
   Co mam podejrzewac? Wielokrotnie tu krytykowana~ HOT 433 (z ktorej do
   tej pory bylem zadowolony tak pod OS/2 jak i Linuxem czy DOSem) czy tez
   kiepski driver do EIDE UMC? A driver jest kiepski bez watpienia, gdyz
   zglasza sie systemowi jako "non resources avare", co uniemozliwia OSowi
   stwierdzenie konfliktow juz w czasie ladowania
3. Wobec powyzszego - jestem zmuszony zostac w konfiguracji master/slave
   gdyz tylko w ten sposob moge miec SWAPa na secondary (naprawde nie chce
   mi sie przestawiac OSa na inny dysk) a mam zdecydowane wrazenie
   "organoleptyczne" (ktore przy pewnym doswiadczeniu jest wiecej warte
   niz wszystkie testy) ze wiecej zyskuje na SWAPie na drugim dysku niz
   na tym calym "zrownolegleniu" dzieki uzyciu osobnych kanalow IDE.
4. Najwiecej to zyskalem po prostu na zrobieniu miejsca na glownym dysku.
   Oczywiscie wiedzialem ze kazdy "sophisticated" system dyskowy mocno
   sie "kiepsci" na przepelnionym dysku, ale jak to jest powolny proces
   to jakos to uchodzi uwadze. Natomiast oproznienie za jednym zamachem
   100MB + 2*chkdsk - dalo mojemy systemowi naprawde pieknego kopa.
   Wniosek praktyczny: przy dysku zapelnionym w 75% nalezy juz sie
   zaczac rozgladac za nowym dyskiem. 90% to tragedia. (nie dotyczy
   to FAT - tam to zawsze jest tragedia :-)
5. Programik do testowania (ten "skokowy") napisalem w Virtual Pascalu.
   (nie mam czasu sie nim powazniej zajac, a poniewaz ochota jest, wiec
   wykorzystalem okazje na eksperymencik, zamiast zrobic to w REXXie).
   I to byl wlasnie powod dla ktorego nie moglem zrobic testu B1B2 - otoz,
   okazalo sie, ze w momencie uruchomienia drugiej kopii tego samego
   programu dostaje sie piekny GPF (no, nie tak piekny jak w windoze,
   bo nie pada caly system lecz wylacznie dana sesja). System.DLL
   virtual-pascala nie toleruje dostepu z dwu sesji rownoczesnie.

Grego

P.S. Ogolnie rzecz biorac zapewne stracilem na te testy wiecej czasu niz
  skorzystam sumarycznie na tych wszystkich przyspieszeniach przez
  najblizszy rok. Stad wlasnie moj mail - jezeli skorzysta z tych
  doswiadzcen kilka innych osob, moze jest szansa ze suma wszystkich
  oszczednosci czasu (te milisekundy mniej czekania bezczynnie przy
  klawiaturze na odpowiedz systemu) przekroczy czas stracony przezemnie.
  Tym samym przestanie on byc stracony. Stanie sie "wykorzystany".

Czego sobie i Wam zycze
Amen

--
/------------------------------------------------------------------
Gregorio Kus    Grego_at_RMnet.it                 Grego_at_cyberspace.org
ROMA, Italy     http://www.RMnet.it/~grego     Grego_at_FreeNet.hut.fi


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