Einzelnen Beitrag anzeigen

treepwood

Registriert seit: 26. Mai 2008
5 Beiträge
 
#7

Re: Problem mit 2 Threads und CPU-Auslastung

  Alt 28. Mai 2008, 13:15
Zitat von shmia:
Versuch mal den Memory-Manager FastMM.
Das habe ich bereits probiert.
Das Ergebnis sieht wie folgt aus:

Code:
MemoryManager | eine CPU | 2 CPUs |Kontextswitching/Interwall (auf 2 CPUs)
--------------|----------|--------|---------------------------------------
Standard-MM: | ~4.3*    | ~0.4*  | ~70000**
FastMM4:     | ~6*      | ~5.4*  | ~700**
BrainMM:     | ~2.6*    | ~3.2*  | ~700** 
[*in Millionen Durchläufen auf P4 HT] [** geschätzt mit processexplorer]
Das Programm kann nur von einem Thread pro Kern profitieren,
wenn der Rest des Programms keine Speicheroperationen durchführt.
Wenn noch mehr Speicheroperationen dazu kommen, kann die Methode mit 2 Thread anscheinend nicht schneller werden.
Alternativ müßte man einen Tread in einem eigenen Codesegment starten
(also wohl ein eigenes Programm).

Leider kann ich momentan nicht auf einem echten Core2 Testen.
Das Ergebnis sollte aber trotzdem interessant sein...

Gibt es keine Möglichkeit, einen speicherunabhängigen Thread zu starten ?
  Mit Zitat antworten Zitat