multithreads

Kernelopts(multithreaded) returns true for both my P4 hyper thread processor (which is fine) and also my P3 tecra 8100 laptop. huh?

Isn't multithread only supposed to return true if there is hyperthread technology on the chip or the processor was dual core or dual processor.  Why is it returning true on my laptop P3 single processor? 

Also the command kernelopts(numcpus=5) will return the previous number of numcpus and not the 5 you set it to however it is set to 5.  You just have to run the kernelopts(numcpus) command to see what number of CPUs maple is set to. 

I realize the multithread option in maple is still in it's infancy, there's hardly any documentation on it.  Can someone lay out a few good examples where multithreads would be useful?  or point to a good tutorial page on it?

Re: multithreaded

In Maple 12, the kernelopts( multithreaded ) command indicates that the kernel is capable of running multiple threads, not that it is using multiple threads. This is a bit of a backwards compatibility thing from Maple 11 where there were two separate kernels, one that was capable of running multiple threads and one that was not. In Maple 12 forward we have one kernel and it is always capable of running multiple threads.

The kernelopts commands in general, and numcpus in particular, return the previous value, not the value that is being set. That is the expected behaviour.

As you mentioned, the multi-threaded package is still quite new. There are some significant performance issues in Maple 12 that reduce the usefulness of multiple threads for general computation. The best available documentation is probably the Threads help pages. For the next release of Maple we are planning improvements to both the performance and usability of multi-threaded programming in Maple.

Darin

--
Kernel Developer
Maplesoft

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.
}