From: markus@techfak.uni-bielefeld.de (Markus Illenseer)
Subject: Virtueller Speicher, kleiner Testbericht.
Date: Tue, 28 Jul 92 07:44:42 GMT
Organization: Universitaet Bielefeld, Technische Fakultaet.

	Hallo Net-Land !

*Irgendwie scheint INews den original Artikel nicht geschluckt zu haben
 deswegen ein Re-Post, sorry wenns zweimal ankommt*

Wie versprochen ein erster Testbericht von VMEM, bzw. besser bekannt
unter dem Namen GigaMem. GigaMem wurde von von der Relog AG aus der Schweiz
geschrieben, darunter Christian A. Schneider, Friedeman Buergel und andere.
Vertrieben wird GigaMem von BSC aus Muenchen (denke das sollte reichen als
'Werbung', will nur vermeiden, das man unnoetige Mails schickt).

Ja klar, auch ich habe mich gefragt, wozu ich wirklich VMEM (abk. fuer
virtual Memory, sei ab hier fuer 'GigaMem' verwendet) brauche.
Ein Stichwort: A26x0. Diese Turbokarten, und andere koennen nur bedingt
mit Speicher aufgeruestet werden. Da ich persoenlich viel mit grossen
Dateien (Bilder fuer Image Processing) hantiere, und auch sonst ab und
wann gerne mehr als 9 MB Speicher brauche hielt ich VMEM fuer eine
brauchbare Alternative.

Fuer VMEM braucht man einen Amiga mit einer MMU , wie sie bei den meisten
Turbokarten mit einem 68030 oder 68020 dabei ist, eine 68040 MMU wird z.Z.
nicht unterstuetzt. Ausserdem braucht man eine Festplatte, auf die man sein
RAM swappen (auslagern) kann. Je schneller desto besser, je DMA desto swap.

Getestet wurde VMEM nun auf meinem A2000 mit A2630/25/4 , A2091 (SCSI),
Microbotics 8Up! (4 MB); einem A3000/25 mit 10 MB RAM und diversen
SCSI-Platten, darunter eine Syquest SQ550, Quantum LPS105, Q80S, und eine
DEC DSP5200S. Letztere wurde freundlicherweise vom Max Planck Institut fuer
Radioastronomie/Bonn zur Verfuegung gestellt, immerhin eine 1.9 GB Platte.
(Gruss an Michael und Petra :)

Als OS kam fuer mich nur OS 2.04 in Frage (Sowohl mein A2000, als auch
der A3000 haben 2.0 ROMs :-) ), laut Handbuch soll VMEM aber auch unter 1.3
laufen.

Das Handbuch ist zweisprachig. Der englische Teil ist von den Autoren
selber geschrieben, der deutsche Teil wurde von BSC uebersetzt, z.T. mit
kuriosen Ausdruecken wie 'Teilung' fuer Partitionen von Festplatten.
Wenn die 'eindeutschung' konsquent bis zum Ende geblieben waere, wuerde das
ja nicht so komisch aussehen, aber direkt daneben sind dann Begriffe wie
'Cache' und 'RAM' benutzt worden. Ansonsten ist das Handbuch mit seinen 50
Seiten knapp aber eingehend ausfuehrlich gehalten. Die Installation und der
erste Gebrauch wird in aller Ausfuehrlichkeit beschrieben, ist aber leicht
merkwuerdig in einigen Details.
Was mir fehlte waren Hinweise auf den (realen) Speicherverbrauch. In der
Praxis erwies sich VMEM als sehr (real) Speicher-hungrig. Dies habe ich mir
dadurch erklaert, als das eine MMU-Tabelle, die 1.9 GB RAM verwalten soll
natuerlich Speicher kostet. Leider wird dies nirgends erwaehnt. Nun gut,
nicht jeder hat (auch ich nicht) 1.9 GB.. Im Normalfall hat der Anwender
sagen wir 20 bis 100 MB Plattenplatz fuer VMEM frei. Dies hat natuerlich
eine erheblich kleinere MMU Tabelle zur Folge. Uebrigens gibt das Handbuch
selber als Maximum 1 GB an, wohl hatten die Tester/Autoren keine groessere
Platte zur Verfuegung.
Ausserdem fehlten Hinweise auf moegliche Fehlerquellen und Gefahren, so
z.B. das VMEM nicht mit "CPU FASTROM" laeuft.

Die Installation erfolgte mit dem 'neuen' Installer von Commodore, der die
Software in die richigen Directories verteilt. Dazu gehoert eine Library,
ein Setup-Programm und ein Hauptprogramm.

Unter OS 2.04 wird das Hauptprogramm im WBStartup-Ordner gestartet.
Das Preference Programm ist recht uebersichtlich gestaltet. Es bietet die
Moeglichkeit, einem speziellem Programm VMEM zuzuweisen. Defaultmaessig
sind Programme wie ImageMaster, ADPro und viele mehr bereits eingetragen,
diese brauchen nur angeklickt zu werden zwecks initiierung. Das VMEM selber
kann nun auf 2 Arten auf die Platte gebracht werden. Einmal knallhart auf
eine Partition, dies ist der wohl beste und schnellste Weg. Die Partition
ist dadurch natuerlich dauerhaft belegt. Die andere Loesung ist eine Datei
in der Groesse des benoetigten VMEM.
Andere Programme koennen einfach hinzugefuegt werden. Ein 'globales' VMEM,
so wie es Unix oder das VMEM vom Evolution-Adapter tun ist nicht
vorgesehen, hierrueber laesst sich streiten, beides hat erheblich Vor- und
Nachteile.
Eingestellt wird die gewuenschte Groesse des VMEM fuer ein Programm, die
Datei doer Partition auf die ausgelagert werden soll, die Groesse des
Caches zwischen Platte und RAM und die Prioritaet des VMEM.

Wir haben natuerlich alles Erdenkbare ersonnen VMEM zum dampfen zu bringen,
ich muss sagen, es ist uns schwer gefallen es wirklich zum katastropahlen
Absturz zu bringen, will sagen, es ist nicht gelungen. Natuerlich koennte
man das provozieren, aber wir wollen ja keinen Absturz, sondern VMEM.

Nicht jedes Programm ist geeignet mit VMEM zu arbeiten. Multitasking ist
ein Muss, saubere Programmierung eine andere. Viele Programme brauchen auch
kein VMEM, andere hingegen schreien foermlich danach.

Als erstes kam der altbekannte MemEater ADpro dran. Die Firma ASDG hat mir
selber in Koeln letzten Jahres noch gesagt, das ein echter Power-User nur
mit realem RAM arbeitet, nun gut, aber ich denke man braucht auch als ein
solcher wohl z.Z. nicht mehr als 64 MB reales RAM, aber ab und dann mal
VMEM schadet doch nicht, oder ? ADpro jedenfalls weigerte sich absolut mit
mehr als 512 MB VMEM zu arbeiten. Jedenfalls mit meiner geliehenen Version.
Ein paar Bilder wurden ins riesenhafte vergroessert (12800 * 9600),
dargestellt und mit diversen Filtern gearbeitet. Dabei wurden wir z.T. auf
eine Geduldsprobe gestellt, der A3000 hatte viel zu tun mit dem swappen.
Immerhin, es funktionierte tadellos.

Der direkte Konkurent ImageMaster mochte gerne mit 1.9 GB arbeiten, aus
zeitlichen Gruenden wurde darauf verzichtet hier mehr als ein Bild zu
vergroessern und umzurechenen. Auch hier keine Probleme, nur Zeit war
gefragt.

Die PBMPlus-Library, ebenfalls als MemEater bekannt, funktionierte
tadellos, nur war hier ein Wehrmutstropfen, die Pipe oder die Redirection
auf die Ram-Disk ist natuerlich langsam.

DPaint mochte sich ebenfalls mit 1.9 GB zufriedenstellen lassen.
Lustigerweise lassen sich die Probleme des knappen Chip-Rams aber nicht
umgehen. VMEM kann nur FastRam managen.

Der gute alte ED hatte keine Probleme in einem 30 MB grossen File (random
made) 'e' durch 'a' zu ersetzen.

Da ich kein grosser Musik-Freak bin, habe ich kein Soundtracker o.ae.
gestestet, aber ich sehe auch hier keine Probleme.

Natuerlich funktioniert VMEM auch mit kleineren Platten, meine Syquest ist
zwar fuerchterlich lahm und laut, aber sie swappte anstandslos.

Alles in allem erwies sich VMEM als sehr stabil und einfach zu bedienen.
Wir hatten nur ein Problem mit den eigenartigen 'Mask' Parametern, die bei
Mountlist-Eintraegen nicht fehlen duerfen. Hier war unser einziger Absturz
zu verzeichnen.
Grosse VMEM Bereiche ziehen eine grosse MMU Tabelle nach sich, verringern
dadurch das aktive reale RAM. Nun haben wir uns am Rande des Machbaren
bewegt, im Normalfall spielt dies kaum eine Rolle.

Aus der Natur des VMEM ergibt sich, das man manchmal Geduld haben muss,
aber ich denke das ist wirklich zu verkraften.

Es sei erwaehnt, das das Swap-File (wenn ein File verwendet wird) von
Anfang an die volle Groesse hat, bei einem moeglichen Crash ist die Chance
einen Plattencrash mit zu provozieren recht gering.

Fazit: Ich mochte es nicht mehr missen. Da ich am Hardware-Limit bin, eine
von diesen teuren RAM-Karten fuer die A2630 kommt vorerst nicht in Frage,
ist VMEM eine absolut brauchbare Alternative. Zumal wenn man den Speicher
nicht immer braucht. Ausserdem laesst sich im Gegensatz zu realen Ram die
Groesse einstellen.

Viel Spass, Markus.

-- 
Markus Illenseer       EMail: markus@TechFak.Uni-Bielefeld.de
Universitaet Bielefeld Fax: (+49 521) 106-2992
Technische Fakultaet   Phone: (+49 521) 106-2926(internal only); -5329
Angewandte Informatik  SnailMail: Postfach 100131, D-4800 BIELEFELD 1