Maximale Threadzahl

Status
Nicht offen für weitere Antworten.

PeFro

Mitglied
Hi,

kurze und vermutlich dumme Frage:

Gibt es nen Richtwert, nach dem man gehen kann, um zu entscheiden, wieviele "Programmteile" man als separate Threads laufen lassen kann, ohne dass das Ganze zu sehr auf die Performance geht (Overhead?)?

MfG
PeFro
 
Bei einer 1CPU Maschine reicht ein Thread

ansonsten muss man das experimentell lösen, hängt einfach von der Art der Aufgabenstellung ab
 
z.B. bei nem einfachen root Server
SingleCore oder DualCore 1000 MHz
512 MB RAM

Hat da noch keiner konkrete Erfahrungen oder irgendwas gelesen, a la 1000 threads pro xx Mhz und xx RAM ? Ich leider noch nirgends...
 
wie gesagt: es hängt von der Anwendung ab

Threads mit IO sind eben was ganz anderes als Threads die rechnen
 
ok bisschen konkreter:

es geht um die Realisierung eines Browserspiels, jeder Spieler stellt einen "Bandenanführer" dar, im Spielverlauf werden dann einzelne Bandenmitglieder angeworben....
je nach genauer inhaltlicher Umsetzung, könnte es sich anbieten, jedes Bandenmitglied als einzelnen Thread zu implementieren, die hätten dann auch nix mit IO zu tun, sondern lediglich n bisschen Gerechne und Gewarte... denke das würde vor Allem organisatorisch/logisch das Ganze erleichtern
 
wie gesagt, das hat sich inhaltlich noch nicht ganz entschieden, deswegen die Überlegung ob das überhaupt realisierbar ist mit 1000 Spielern, die jeweils z.B. 100 Mitglieder haben
 
Bin mir jetzt nicht mehr sicher, aber ich glaube, in einem Java-Online-Golf konnten bis zu 10 Spieler mitspielen, die aber eher seriell als parallel handeln.
1000 Spieler, die 100 weitere Spieler halten, halte ich eher für unrealistisch.
 
Hi,

probier es doch einfach mal aus. Mach ein Runnable, was zufällig ein bisschen rechnet und wartet, erzeuge mal eben 100000 Threads :shock: und schau, wie sich das System dabei verhält (Speicherverbrauch, CPU-Last)

Gruß
Mag1c
 
Status
Nicht offen für weitere Antworten.

Zurück
Oben