[linux-l] Speichernutzung Sun JVM 64Bit

Volker Grabsch vog at notjusthosting.com
Do Nov 27 16:30:52 CET 2008


Peter Ross <Peter.Ross at bogen.in-berlin.de> schrieb:
> Naja, so siehts halt aus, wenn das Speichermanagement innerhalb der JVM 
> geschachtelt nochmal erfunden wird..

Wer sich dafür interessiert, sollte sich mal mit dem Garbage-Collector
von Objective Caml beschäftigen. Die zeigen, wie man's richtig[tm]
macht.

(Auch in vielerlei anderer Hinsicht ist OCaml genau das, was
 Java vorgibt zu sein, aber irgendwie nicht richtig schafft.)

> > Alles was irgendwie unnötig zeit braucht (Daten auf Platte schreiben 
> > etc) soll möglichst wegfallen oder minimiert werden.
> 
> Du könntest stattdessen eine RAM-Disk anlegen, auf der Du schreibst. Das 
> umgeht eine Virtualisierungs-Ebene und Du kannst mit gewöhnlichen 
> Fileoperationen drauf zugreifen.

Oder auf die RAM-Disk verzichten und einfach auf die Platte
schreiben. Dann _messen_, wieviel Zeit das _wirklich_ frisst.

RAM, der nicht von der JVM belegt wird, kann nämlich vom Betriebssystem
als Cache verwendet werden, der Dateizugriff findet dann ebenfalls nur
noch im RAM statt.

Das hat außerdem den Vorteil, dass die Datei bei Gelegenheit auf
die Platte geschrieben wird, d.h. nach einem Absturz des Programmes
noch vorhanden ist. Kommt natürlich drauf an, ob ihr die Daten im
Nachhinein noch braucht oder nicht.

> Ich bin nicht über die aktuellen Größen von RAID-Array-Caches informiert, 
> habe länger schon keine Angebotssuche in der Richtung betrieben, aber die 
> Caches sind so klein oft auch nicht, so daß oft das Schreiben tatsächlich 
> in diesem stattfindet, so daß man nicht auf die Platten warten muß

Das ist auch gut, aber das gute alte Caching im RAM sollte man ebenfalls
nicht unterschätzen!


Gruß,

    Volker

-- 
Volker Grabsch
---<<(())>>---
Administrator
NotJustHosting GbR



Mehr Informationen über die Mailingliste linux-l