Robert E. Parrott wrote:
Maybe I'm missing something here but full load is NOT 4 processes with hyperthreading.

Hyperthreading is a mixed bag, and while great for Desktop use, for compute & memory bandwidth intensive jobs, can be a real drain, because both processes are computing for the same cache. Most science apps most tend to be memory bandwidth intensive, and gain from larger cache. Thus, despite the grandiose claims of Intel, hyperthreading is a problem here.


I agree completely. Which is why I assumed that by leaving HT on you decided it was the best option for your cluster and actually wanted jobs to use the virtual processors.

In fact, the actual throughput (i.e. in condor sense) of total Mops with & without hyperthreading is often lower with hyperthreading on ... the need to schedule to the processes on the same core often causes bottlenecks that slow down the processing. Thus we often have limited our system to running 1 process per CPU. However, there are times/applications where we would benefit from having hyperthreading enabled, and need to have that as an option, without rebooting the whole cluster.

I.e. "full load" in the load average reporting sense is in reality dependent on the application, not on whether the OS reports 1 or 2 processors. Thus it would be quite useful to make this configurable in just a small way.

Now I see. That is a tricky setup. In my case, we disabled HT in the entire cluster due to the reasons stated above, as well as the fact that there's only one fpu per physical processor.






So .... I take it that there is no such option (my original question), since the entire discussion has been about whether I really should want this or not, and not whether it is possible! :->

Unfortunately, I don't know of an option that'll do that.

I'm sorry if my question bothered you. I was just trying to figure out why you thought ganglia was doing the wrong thing, when I thought it was doing the right thing. I think I understand now.

Reply via email to