linux-l: multithreading mit linux

Thomas Mueller tmuelli at cs.tu-berlin.de
Mo Mai 11 07:53:33 CEST 1998


On Sun, 10 May 1998, Gregor Kopij wrote:

> At 10:13 09.05.98 +0200, you wrote:
> >das war mir bewusst, dass jeder thread einen eintrag in der prozessabelle 
> >bekommt. der speicher wird aber auch kopiert -- jedenfalls sehe ich in 
> >top 3 mal main prog mit je 10MB :-/
> Der Speicher wird nicht kopiert. Die Speicherstellen werden nur als shared
> markiert. Auch beim Fork/Clone wird nur dann speicher für den neuen Prozess
> angefordert und belegt, falls eine Änderung ansteht (beim beschreiben der
> gegebenen Speicherstelle). Wenn die Prozesse den Speicher (bzw. die
> betreffende Speicherstelle) nicht ändern, wird auch kein neuer Speicher
> angefordert. Also, es "sieht nur so aus" als ob Du viel Speicher
> verbrauchst,  ....
Ja, Ja, ich muss mich wohl entschuldigen. Also es wird KEIN 
zusaetzlicher Speicher fuer die Thread erzeugt. Der Kernelfunction 
clone kann man angeben wie das laufen soll a) immmer speicher kopieren
b) speicher kopieren, wenn schreibender weise darauf zugegriffen wird 
(das wird bei fork verwendet) c) speicher nicht kopieren 
(threads).
> Mußt Du Threads benutzen? Mit
> "direkter" Programmierung kann man es besser kontrollieren. Das ist aber
> Geschmackssache.
Nein MUSS natuerlich nicht! Aber: Mein programm lauft auf drei 
unterschiedlichen Systemen a) PC Linux (ein Prozessor) b) Sparc 20 (zwei 
Prozessoren) c) Silicon Graphics Octane (zwei Prozessoren).
Fuer die zwei-Prozessoren Hardware erreiche ich duch Multithreading einen 
Geschwindigkeitszuwachs (bei zwei Threads) von c.a. 80% 
UND DAFUER LOHNT ES SICH !!! ;-))
 
> Hoffe geholfen zu haben 
>  Gruß
>  Gregor
KLAR - und danke.
Gruss Thomas
                               \|/              	
                              (@ @)               
----------------------------oOO(_)OOo----------------------------------------
Thomas Mueller              ```   '''                   fon: +49-30-314-73458
FB13 Informatik, FG Konnektionismus                          +49-30-314-73115
tmuelli at cs.tu-berlin.de                                 fax: +49-30-314-73121
post: FR2-1, FB13 Technische Universitaet  Franklinstr. 28/29  D-10587 Berlin
-----------------------------------------------------------------------------






Mehr Informationen über die Mailingliste linux-l