THE POST BELOW IS MORE THAN 5 YEARS OLD. RELATED SUPPORT INFORMATION MIGHT BE OUTDATED OR DEPRECATED
On 22/10/2009 at 13:56, xxxxxxxx wrote:
User Information:
Cinema 4D Version: 10-11.5
Platform: Windows ; Mac ; Mac OSX ;
Language(s) : C++ ;
---------
Hi,
what is the most optimal way to take advantage of hyperthreading?
I use MPThreads for multicpu support (as documented) but some users report the CPU threads not to be fully used. It works on CPUs with multicore systems but hyperthreading doesn´t seem to be taken into account by MPThreads does it?
I tested this on my i7 system with 4 cores and 8 available threads. My task manager tells me that the MP code does only use 25% of available cpu power! (4 threads working with 50% to give more detail)
On my AMD dual core it has no problems using 100% and both cores and also on Mac Pro with 8 cores it fully uses all cores for 100%. Also other configurations work correctly, but whenever it comes down to hyperthreading thers this problem (at least I think it´s about Hyperthreading). I have a betatester who has the same i7 system with 4 cores and 8 threads and the same problem occurs for him.
So my question is how to support this type of threading? The MPThread code doesn´t seem to fully work for this, so what would be the code extension to support all threads, whether MP or HT. Should the user give the amount of "CPUs" (instead of automatically using GetCPUCount()) and then create MPThreads accordingly? Or has it a completely different reason that this happens?
HELP! *Holt mich hier raus...ich bin eine CPU* :)
Thanks in advance