2016-04-01 3 views
0

Ich versuche, die maximale Anzahl von Threads zu berechnen, die für eine bestimmte Anwendung basierend auf meiner Systemkonfiguration erstellt werden können.So finden Sie das Verhältnis von Wartezeit zu Servicezeit in Multithreading in Java

Ich habe durch eine Formel für diese gegangen:

N_threads = N_cpu * U_cpu * (1 + W/C) 

where, 
    N_threads is the optimal number of threads 
    N_cpu is the number of prcessors 
    U_cpu is the target CPU utilization 
    W/C is the ratio of wait time to compute time (0 for CPU-bound task, maybe 10 or 100 for slow I/O tasks) 

Basierend auf welcher W/c für I/O-gebundene Aufgaben berechnet.

Kann mir jemand bitte helfen dieses Problem in Bezug auf aus ...

Antwort

0

das Verhältnis „W/C“ hängt von verschiedenen Parametern ab und kann unterschiedlich zwischen Entwicklungsumgebung und realen Service-Umgebung. IMHO, die beste Praxis ist, # thread zu Parameter umzuwandeln, und es mit verschiedenen Werten zu prüfen und dann den Wert zu wählen, der deinem System die beste Leistung gibt.

Verwandte Themen