[Insight-developers] how can I verify that my code runs on several processors ?

Gaetan Lehmann gaetan.lehmann at jouy.inra.fr
Tue Nov 29 09:30:20 EST 2005


I'm thinking to something which could explain the result I get: I use  
TimeProbe to measure the execution time. TimeProbe give the CPU time which  
is better than the real time, but what is its behavior with several  
processors ? Does is add the time spent on all the processors used ?

On Tue, 29 Nov 2005 15:26:41 +0100, Gaetan Lehmann  
<gaetan.lehmann at jouy.inra.fr> wrote:

>
> The server contains 4 xeons with hyperthreading activated.
> The hyperthreading is a part of my problem: I don't know how I can be  
> sure that 2 threads are not running on the same processor. I see 8  
> processors, and I don't know how the CPU numbers are given, so I can't  
> be sure my thread are not running on the same real CPU.
>
> But I'm not sure that the lone problem: I get worst and worst  
> performance when I increase the number of threads (up to 4) - it seems  
> very similar to what I get on a single processor system. I think I  
> should get a (small) increase of performance when the number of thread  
> increase
>
> On Mon, 28 Nov 2005 16:24:52 +0100, Kent Williams  
> <norman-k-williams at uiowa.edu> wrote:
>
>> I don't know what processors your server contains, but it's not always  
>> the case that multithreading increases performance.  Intel HT  
>> processors in particular have problems with too many shared resources  
>> between the computation units.  The following article indicates that  
>> SQL Server and Citrix Terminal Server both perform better with  
>> hyperthreading disabled.
>>
>> http://news.zdnet.co.uk/0,39020330,39237341,00.htm
>>
>> I don't know how you can verify that your threads are being spread  
>> across different processors on your server -- perhaps someone else here  
>> does.   ITK's threading model generally works very well, but there may  
>> be cases where it does not.  For some cases -- particularly short,  
>> simple ITK pipelines -- threading has minimal positive, and possibly  
>> negative impact on performance.
>>
>> Gaetan Lehmann wrote:
>>
>>>
>>> Hi,
>>>
>>> I'm trying to measure the performances of the filter I'm writing on a   
>>> server with 4 processors. I'm quite surprise to see that using  
>>> several  threads seem to decrease the performances, as it do on a host  
>>> with a  single processor.
>>> How can I verify that the different threads are running on several   
>>> processors ? It's not fully related to ITK, but I hope someone will  
>>> be  able to answer that question on this list :-)
>>>
>>> I'm running my tests on linux.
>>>
>>> Thanks,
>>>
>>> Gaetan
>>>
>>>
>>
>
>
>



-- 
Gaëtan Lehmann
Biologie du Développement et de la Reproduction
INRA de Jouy-en-Josas (France)
tel: +33 1 34 65 29 66    fax: 01 34 65 29 09
http://voxel.jouy.inra.fr


More information about the Insight-developers mailing list