|
|
| Author |
Message |
Dave (from the UK) science forum addict
Joined: 12 Jan 2006
Posts: 76
|
Posted: Sat Apr 01, 2006 6:31 pm Post subject:
Another Mathematica CPU usage problem on Solaris 10!!
|
|
|
Unfortunately I may have been wrong in stating the Mathematica CPU usage problem
was solved on Solaris 10.
http://groups.google.co.uk/group/sci.math.symbolic/browse_frm/thread/3614dc0ccab52f29/4d2ac9cf438f5da2?lnk=st&q=solved+mathematica+cpu+solaris&rnum=1&hl=en#4d2ac9cf438f5da2
I can induce excessive CPU usage - it is just not so easy now with most tasks
not causing Mathematica any problem - but some do. It may in fact be a
*different* problem. The result is the same (lots of CPU usage), but it does not
seem to be a system call that is doing it. But the problem does not exist on
Solaris 9.
Here is one Mathematica command which will cause the problem - can Wes try this
on his Blade 1000 which was not affected by the Solaris 10 issue before? In case
it is not obvious, this creates a matrix of 750 x 750 random real numbers, then
computes the eigenvalues of the matrix.
Eigenvalues[Table[Random[], {750}, {750}]];
(That happens to form part of a Mathematica benchmark at
http://smc.vnet.net/mathbench.html which is why I discovered it).
I computed those eigenvalues, which only takes a few 10's of seconds, but looked
later and can see the CPU usage has climbed a lot.
sparrow /export/home/drkirkby % prstat
PID USERNAME SIZE RSS STATE PRI NICE TIME CPU PROCESS/NLWP
16815 drkirkby 78M 35M cpu1 50 0 0:03:30 72% MathKernel/6
6453 drkirkby 452M 334M sleep 59 0 6:26:58 1.1% Xsun/1
15248 drkirkby 171M 104M sleep 59 0 0:27:20 0.9% mozilla-bin/3
27802 drkirkby 95M 31M sleep 59 0 0:05:30 0.5% gnome-termi
Is that not thread 6, rather than the 3 before? I wonder if this is a different
problem.
sparrow /export/home/drkirkby % truss -p 16815/6
(this produces no output. Does this mean it is *not* system call(s) which is
using all the CPU time?)
Looking at the whole process, not just thread 6
sparrow /export/home/drkirkby % truss -p 16815
/1: lwp_park(0xFFFFFFFF7FFFDFF0, 0) Err#62 ETIME
/3: pollsys(0xFFFFFFFF79875360, 1, 0xFFFFFFFF798F5420, 0x00000000) = 0
/3: pollsys(0xFFFFFFFF79875360, 1, 0xFFFFFFFF798F5420, 0x00000000) = 0
/1: lwp_park(0xFFFFFFFF7FFFDFF0, 0) Err#62 ETIME
/3: pollsys(0xFFFFFFFF79875360, 1, 0xFFFFFFFF798F5420, 0x00000000) = 0
/3: pollsys(0xFFFFFFFF79875360, 1, 0xFFFFFFFF798F5420, 0x00000000) = 0
/3: pollsys(0xFFFFFFFF79875360, 1, 0xFFFFFFFF798F5420, 0x00000000) = 0
/1: lwp_park(0xFFFFFFFF7FFFDFF0, 0) Err#62 ETIME
/3: pollsys(0xFFFFFFFF79875360, 1, 0xFFFFFFFF798F5420, 0x00000000) = 0
/3: pollsys(0xFFFFFFFF79875360, 1, 0xFFFFFFFF798F5420, 0x00000000) = 0
/3: pollsys(0xFFFFFFFF79875360, 1, 0xFFFFFFFF798F5420, 0x00000000) = 0
/1: lwp_park(0xFFFFFFFF7FFFDFF0, 0) Err#62 ETIME
/3: pollsys(0xFFFFFFFF79875360, 1, 0xFFFFFFFF798F5420, 0x00000000) = 0
/3: pollsys(0xFFFFFFFF79875360, 1, 0xFFFFFFFF798F5420, 0x00000000) = 0
/3: pollsys(0xFFFFFFFF79875360, 1, 0xFFFFFFFF798F5420, 0x00000000) = 0
/1: lwp_park(0xFFFFFFFF7FFFDFF0, 0) Err#62 ETIME
/3: pollsys(0xFFFFFFFF79875360, 1, 0xFFFFFFFF798F5420, 0x00000000) = 0
/3: pollsys(0xFFFFFFFF79875360, 1, 0xFFFFFFFF798F5420, 0x00000000) = 0
/1: lwp_park(0xFFFFFFFF7FFFDFF0, 0) Err#62 ETIME
/3: pollsys(0xFFFFFFFF79875360, 1, 0xFFFFFFFF798F5420, 0x00000000) = 0
/3: pollsys(0xFFFFFFFF79875360, 1, 0xFFFFFFFF798F5420, 0x00000000) = 0
/3: pollsys(0xFFFFFFFF79875360, 1, 0xFFFFFFFF798F5420, 0x00000000) = 0
/1: lwp_park(0xFFFFFFFF7FFFDFF0, 0) Err#62 ETIME
/3: pollsys(0xFFFFFFFF79875360, 1, 0xFFFFFFFF798F5420, 0x00000000) = 0
Again checking pollsys in more detail
sparrow /export/home/drkirkby % truss -v pollsys -p 16815
/3: pollsys(0xFFFFFFFF79875360, 1, 0xFFFFFFFF798F5420, 0x00000000) = 0
/3: fd=23 ev=POLLRDNORM rev=0
/3: timeout: 0.001000000 sec
/1: lwp_park(0xFFFFFFFF7FFFDFF0, 0) Err#62 ETIME
/3: pollsys(0xFFFFFFFF79875360, 1, 0xFFFFFFFF798F5420, 0x00000000) = 0
/3: fd=23 ev=POLLRDNORM rev=0
/3: timeout: 0.001000000 sec
/3: pollsys(0xFFFFFFFF79875360, 1, 0xFFFFFFFF798F5420, 0x00000000) = 0
/3: fd=23 ev=POLLRDNORM rev=0
/3: timeout: 0.001000000 sec
/1: lwp_park(0xFFFFFFFF7FFFDFF0, 0) Err#62 ETIME
/3: pollsys(0xFFFFFFFF79875360, 1, 0xFFFFFFFF798F5420, 0x00000000) = 0
/3: fd=23 ev=POLLRDNORM rev=0
/3: timeout: 0.001000000 sec
/3: pollsys(0xFFFFFFFF79875360, 1, 0xFFFFFFFF798F5420, 0x00000000) = 0
/3: fd=23 ev=POLLRDNORM rev=0
/3: timeout: 0.001000000 sec
/3: pollsys(0xFFFFFFFF79875360, 1, 0xFFFFFFFF798F5420, 0x00000000) = 0
/3: fd=23 ev=POLLRDNORM rev=0
/3: timeout: 0.001000000 sec
Note the timeout is the 1 ms that Casper's library has set it too, so that bit
seems to have worked. This makes me think this is another issue.
If I compute something else in Mathematica, that does *NOT* induce the problem,
I still see a similar output from truss, but prstat shows less CPU usage of course.
sparrow /export/home/drkirkby % prstat
PID USERNAME SIZE RSS STATE PRI NICE TIME CPU PROCESS/NLWP
15248 drkirkby 171M 104M sleep 59 0 0:26:44 4.4% mozilla-bin/4
6453 drkirkby 452M 350M sleep 59 0 6:26:28 2.4% Xsun/1
6611 drkirkby 89M 24M sleep 59 0 0:58:30 0.8% metacity/1
27802 drkirkby 95M 31M sleep 59 0 0:05:21 0.5% gnome-terminal/2
6688 drkirkby 234M 62M sleep 49 0 1:11:14 0.3% java/21
16633 drkirkby 63M 19M sleep 59 0 0:00:09 0.3% MathKernel/3
6630 drkirkby 85M 16M sleep 49 0 0:24:09 0.2% wnck-applet/1
/3: pollsys(0xFFFFFFFF79875360, 1, 0xFFFFFFFF798F5420, 0x00000000) = 0
/1: lwp_park(0xFFFFFFFF7FFFDFF0, 0) Err#62 ETIME
/3: pollsys(0xFFFFFFFF79875360, 1, 0xFFFFFFFF798F5420, 0x00000000) = 0
/3: pollsys(0xFFFFFFFF79875360, 1, 0xFFFFFFFF798F5420, 0x00000000) = 0
/3: pollsys(0xFFFFFFFF79875360, 1, 0xFFFFFFFF798F5420, 0x00000000) = 0
/3: pollsys(0xFFFFFFFF79875360, 1, 0xFFFFFFFF798F5420, 0x00000000) = 0
/1: lwp_park(0xFFFFFFFF7FFFDFF0, 0) Err#62 ETIME
/3: pollsys(0xFFFFFFFF79875360, 1, 0xFFFFFFFF798F5420, 0x00000000) = 0
/3: pollsys(0xFFFFFFFF79875360, 1, 0xFFFFFFFF798F5420, 0x00000000) = 0
/3: pollsys(0xFFFFFFFF79875360, 1, 0xFFFFFFFF798F5420, 0x00000000) = 0
/1: lwp_park(0xFFFFFFFF7FFFDFF0, 0) Err#62 ETIME
/3: pollsys(0xFFFFFFFF79875360, 1, 0xFFFFFFFF798F5420, 0x00000000) = 0
/3: pollsys(0xFFFFFFFF79875360, 1, 0xFFFFFFFF798F5420, 0x00000000) = 0
/1: lwp_park(0xFFFFFFFF7FFFDFF0, 0) Err#62 ETIME
/3: pollsys(0xFFFFFFFF79875360, 1, 0xFFFFFFFF798F5420, 0x00000000) = 0
/3: pollsys(0xFFFFFFFF79875360, 1, 0xFFFFFFFF798F5420, 0x00000000) = 0
/3: pollsys(0xFFFFFFFF79875360, 1, 0xFFFFFFFF798F5420, 0x00000000) = 0
/3: pollsys(0xFFFFFFFF79875360, 1, 0xFFFFFFFF798F5420, 0x00000000) = 0
/1: lwp_park(0xFFFFFFFF7FFFDFF0, 0) Err#62 ETIME
/3: pollsys(0xFFFFFFFF79875360, 1, 0xFFFFFFFF798F5420, 0x00000000) = 0
/3: pollsys(0xFFFFFFFF79875360, 1, 0xFFFFFFFF798F5420, 0x00000000) = 0
/3: pollsys(0xFFFFFFFF79875360, 1, 0xFFFFFFFF798F5420, 0x00000000) = 0
/1: lwp_park(0xFFFFFFFF7FFFDFF0, 0) Err#62 ETIME
/3: pollsys(0xFFFFFFFF79875360, 1, 0xFFFFFFFF798F5420, 0x00000000) = 0
/3: pollsys(0xFFFFFFFF79875360, 1, 0xFFFFFFFF798F5420, 0x00000000) = 0
/3: pollsys(0xFFFFFFFF79875360, 1, 0xFFFFFFFF798F5420, 0x00000000) = 0
/1: lwp_park(0xFFFFFFFF7FFFDFF0, 0) Err#62 ETIME
/3: pollsys(0xFFFFFFFF79875360, 1, 0xFFFFFFFF798F5420, 0x00000000) = 0
/3: pollsys(0xFFFFFFFF79875360, 1, 0xFFFFFFFF798F5420, 0x00000000) = 0
/1: lwp_park(0xFFFFFFFF7FFFDFF0, 0) Err#62 ETIME
/3: pollsys(0xFFFFFFFF79875360, 1, 0xFFFFFFFF798F5420, 0x00000000) = 0
/3: pollsys(0xFFFFFFFF79875360, 1, 0xFFFFFFFF798F5420, 0x00000000) = 0
/3: pollsys(0xFFFFFFFF79875360, 1, 0xFFFFFFFF798F5420, 0x00000000) = 0
/3: pollsys(0xFFFFFFFF79875360, 1, 0xFFFFFFFF798F5420, 0x00000000) = 0
/1: lwp_park(0xFFFFFFFF7FFFDFF0, 0) Err#62 ETIME
/3: pollsys(0xFFFFFFFF79875360, 1, 0xFFFFFFFF798F5420, 0x00000000) = 0
^C/1: lwp_park(0xFFFFFFFF7FFFDFF0, 0) Err#62 ETIME
/3: pollsys(0xFFFFFFFF79875360, 1, 0xFFFFFFFF798F5420, 0x00000000) = 0
sparrow /export/home/drkirkby % truss -v pollsys -p 16633
/3: pollsys(0xFFFFFFFF79875360, 1, 0xFFFFFFFF798F5420, 0x00000000) = 0
/3: fd=23 ev=POLLRDNORM rev=0
/3: timeout: 0.001000000 sec
/3: pollsys(0xFFFFFFFF79875360, 1, 0xFFFFFFFF798F5420, 0x00000000) = 0
/3: fd=23 ev=POLLRDNORM rev=0
/3: timeout: 0.001000000 sec
/3: pollsys(0xFFFFFFFF79875360, 1, 0xFFFFFFFF798F5420, 0x00000000) = 0
/3: fd=23 ev=POLLRDNORM rev=0
/3: timeout: 0.001000000 sec
/1: lwp_park(0xFFFFFFFF7FFFDFF0, 0) Err#62 ETIME
/3: pollsys(0xFFFFFFFF79875360, 1, 0xFFFFFFFF798F5420, 0x00000000) = 0
/3: fd=23 ev=POLLRDNORM rev=0
/3: timeout: 0.001000000 sec
/3: pollsys(0xFFFFFFFF79875360, 1, 0xFFFFFFFF798F5420, 0x00000000) = 0
/3: fd=23 ev=POLLRDNORM rev=0
/3: timeout: 0.001000000 sec
/1: lwp_park(0xFFFFFFFF7FFFDFF0, 0) Err#62 ETIME
/3: pollsys(0xFFFFFFFF79875360, 1, 0xFFFFFFFF798F5420, 0x00000000) = 0
/3: fd=23 ev=POLLRDNORM rev=0
/3: timeout: 0.001000000 sec
/3: pollsys(0xFFFFFFFF79875360, 1, 0xFFFFFFFF798F5420, 0x00000000) = 0
/3: fd=23 ev=POLLRDNORM rev=0
/3: timeout: 0.001000000 sec
/3: pollsys(0xFFFFFFFF79875360, 1, 0xFFFFFFFF798F5420, 0x00000000) = 0
/3: fd=23 ev=POLLRDNORM rev=0
/3: timeout: 0.001000000 sec
/3: pollsys(0xFFFFFFFF79875360, 1, 0xFFFFFFFF798F5420, 0x00000000) = 0
/3: fd=23 ev=POLLRDNORM rev=0
/3: timeout: 0.001000000 sec
/1: lwp_park(0xFFFFFFFF7FFFDFF0, 0) Err#62 ETIME
/3: pollsys(0xFFFFFFFF79875360, 1, 0xFFFFFFFF798F5420, 0x00000000) = 0
/3: fd=23 ev=POLLRDNORM rev=0
/3: timeout: 0.001000000 sec
/3: pollsys(0xFFFFFFFF79875360, 1, 0xFFFFFFFF798F5420, 0x00000000) = 0
/3: fd=23 ev=POLLRDNORM rev=0
/3: timeout: 0.001000000 sec
/1: lwp_park(0xFFFFFFFF7FFFDFF0, 0) Err#62 ETIME
/3: pollsys(0xFFFFFFFF79875360, 1, 0xFFFFFFFF798F5420, 0x00000000) = 0
/3: fd=23 ev=POLLRDNORM rev=0
/3: timeout: 0.001000000 sec
/3: pollsys(0xFFFFFFFF79875360, 1, 0xFFFFFFFF798F5420, 0x00000000) = 0
/3: fd=23 ev=POLLRDNORM rev=0
/3: timeout: 0.001000000 sec
/3: pollsys(0xFFFFFFFF79875360, 1, 0xFFFFFFFF798F5420, 0x00000000) = 0
/3: fd=23 ev=POLLRDNORM rev=0
/3: timeout: 0.001000000 sec
/3: pollsys(0xFFFFFFFF79875360, 1, 0xFFFFFFFF798F5420, 0x00000000) = 0
/3: fd=23 ev=POLLRDNORM rev=0
/3: timeout: 0.001000000 sec
/1: lwp_park(0xFFFFFFFF7FFFDFF0, 0) Err#62 ETIME
/3: pollsys(0xFFFFFFFF79875360, 1, 0xFFFFFFFF798F5420, 0x00000000) = 0
/3: fd=23 ev=POLLRDNORM rev=0
/3: timeout: 0.001000000 sec
/3: pollsys(0xFFFFFFFF79875360, 1, 0xFFFFFFFF798F5420, 0x00000000) = 0
/3: fd=23 ev=POLLRDNORM rev=0
/3: timeout: 0.001000000 sec
/3: pollsys(0xFFFFFFFF79875360, 1, 0xFFFFFFFF798F5420, 0x00000000) = 0
/3: fd=23 ev=POLLRDNORM rev=0
/3: timeout: 0.001000000 sec
/1: lwp_park(0xFFFFFFFF7FFFDFF0, 0) Err#62 ETIME
/3: pollsys(0xFFFFFFFF79875360, 1, 0xFFFFFFFF798F5420, 0x00000000) = 0
/3: fd=23 ev=POLLRDNORM rev=0
/3: timeout: 0.001000000 sec
/3: pollsys(0xFFFFFFFF79875360, 1, 0xFFFFFFFF798F5420, 0x00000000) = 0
/3: fd=23 ev=POLLRDNORM rev=0
/3: timeout: 0.001000000 sec
/1: lwp_park(0xFFFFFFFF7FFFDFF0, 0) Err#62 ETIME
/3: pollsys(0xFFFFFFFF79875360, 1, 0xFFFFFFFF798F5420, 0x00000000) = 0
/3: fd=23 ev=POLLRDNORM rev=0
/3: timeout: 0.001000000 sec
/1: lwp_park(0xFFFFFFFF7FFFDFF0, 0) Err#62 ETIME
/3: pollsys(0xFFFFFFFF79875360, 1, 0xFFFFFFFF798F5420, 0x00000000) = 0
/3: fd=23 ev=POLLRDNORM rev=0
/3: timeout: 0.001000000 sec
/3: pollsys(0xFFFFFFFF79875360, 1, 0xFFFFFFFF798F5420, 0x00000000) = 0
/3: fd=23 ev=POLLRDNORM rev=0
/3: timeout: 0.001000000 sec
/3: pollsys(0xFFFFFFFF79875360, 1, 0xFFFFFFFF798F5420, 0x00000000) = 0
/3: fd=23 ev=POLLRDNORM rev=0
/3: timeout: 0.001000000 sec
/1: lwp_park(0xFFFFFFFF7FFFDFF0, 0) Err#62 ETIME
/3: pollsys(0xFFFFFFFF79875360, 1, 0xFFFFFFFF798F5420, 0x00000000) = 0
/3: fd=23 ev=POLLRDNORM rev=0
/3: timeout: 0.001000000 sec
/1: lwp_park(0xFFFFFFFF7FFFDFF0, 0) Err#62 ETIME
/3: pollsys(0xFFFFFFFF79875360, 1, 0xFFFFFFFF798F5420, 0x00000000) = 0
/3: fd=23 ev=POLLRDNORM rev=0
/3: timeout: 0.001000000 sec
/3: pollsys(0xFFFFFFFF79875360, 1, 0xFFFFFFFF798F5420, 0x00000000) = 0
/3: fd=23 ev=POLLRDNORM rev=0
/3: timeout: 0.001000000 sec
/3: pollsys(0xFFFFFFFF79875360, 1, 0xFFFFFFFF798F5420, 0x00000000) = 0
/3: fd=23 ev=POLLRDNORM rev=0
/3: timeout: 0.001000000 sec
/1: lwp_park(0xFFFFFFFF7FFFDFF0, 0) Err#62 ETIME
/3: pollsys(0xFFFFFFFF79875360, 1, 0xFFFFFFFF798F5420, 0x00000000) = 0
/3: fd=23 ev=POLLRDNORM rev=0
/3: timeout: 0.001000000 sec
/1: lwp_park(0xFFFFFFFF7FFFDFF0, 0) Err#62 ETIME
/3: pollsys(0xFFFFFFFF79875360, 1, 0xFFFFFFFF798F5420, 0x00000000) = 0
/3: fd=23 ev=POLLRDNORM rev=0
/3: timeout: 0.001000000 sec
/3: pollsys(0xFFFFFFFF79875360, 1, 0xFFFFFFFF798F5420, 0x00000000) = 0
/3: fd=23 ev=POLLRDNORM rev=0
/3: timeout: 0.001000000 sec
/3: pollsys(0xFFFFFFFF79875360, 1, 0xFFFFFFFF798F5420, 0x00000000) = 0
/3: fd=23 ev=POLLRDNORM rev=0
/3: timeout: 0.001000000 sec
/1: lwp_park(0xFFFFFFFF7FFFDFF0, 0) Err#62 ETIME
/3: pollsys(0xFFFFFFFF79875360, 1, 0xFFFFFFFF798F5420, 0x00000000) = 0
/3: fd=23 ev=POLLRDNORM rev=0
/3: timeout: 0.001000000 sec
/1: lwp_park(0xFFFFFFFF7FFFDFF0, 0) Err#62 ETIME
/3: pollsys(0xFFFFFFFF79875360, 1, 0xFFFFFFFF798F5420, 0x00000000) = 0
/3: fd=23 ev=POLLRDNORM rev=0
/3: timeout: 0.001000000 sec
/3: pollsys(0xFFFFFFFF79875360, 1, 0xFFFFFFFF798F5420, 0x00000000) = 0
/3: fd=23 ev=POLLRDNORM rev=0
/3: timeout: 0.001000000 sec
/3: pollsys(0xFFFFFFFF79875360, 1, 0xFFFFFFFF798F5420, 0x00000000) = 0
/3: fd=23 ev=POLLRDNORM rev=0
/3: timeout: 0.001000000 sec
^C/3: pollsys(0xFFFFFFFF79875360, 1, 0xFFFFFFFF798F5420, 0x00000000) = 0
/3: fd=23 ev=POLLRDNORM rev=0
/3: timeout: 0.001000000 sec
Any thoughts ???
--
Dave K MCSE.
MCSE = Minefield Consultant and Solitaire Expert.
Please note my email address changes periodically to avoid spam.
It is always of the form: month-year@domain. Hitting reply will work
for a couple of months only. Later set it manually. |
|
| Back to top |
|
 |
Bill Green science forum beginner
Joined: 02 Apr 2006
Posts: 1
|
Posted: Sun Apr 02, 2006 6:41 pm Post subject:
Re: Another Mathematica CPU usage problem on Solaris 10!!
|
|
|
On 2006-04-01, Dave (from the UK) <see-my-signature@southminster-branch-line.org.uk> wrote:
| Quote: | Unfortunately I may have been wrong in stating the Mathematica CPU usage problem
was solved on Solaris 10.
http://groups.google.co.uk/group/sci.math.symbolic/browse_frm/thread/3614dc0ccab52f29/4d2ac9cf438f5da2?lnk=st&q=solved+mathematica+cpu+solaris&rnum=1&hl=en#4d2ac9cf438f5da2
I can induce excessive CPU usage - it is just not so easy now with most tasks
not causing Mathematica any problem - but some do. It may in fact be a
*different* problem. The result is the same (lots of CPU usage), but it does not
seem to be a system call that is doing it. But the problem does not exist on
Solaris 9.
Here is one Mathematica command which will cause the problem - can Wes try this
on his Blade 1000 which was not affected by the Solaris 10 issue before? In case
it is not obvious, this creates a matrix of 750 x 750 random real numbers, then
computes the eigenvalues of the matrix.
Eigenvalues[Table[Random[], {750}, {750}]];
(That happens to form part of a Mathematica benchmark at
http://smc.vnet.net/mathbench.html which is why I discovered it).
I computed those eigenvalues, which only takes a few 10's of seconds, but looked
later and can see the CPU usage has climbed a lot.
sparrow /export/home/drkirkby % prstat
PID USERNAME SIZE RSS STATE PRI NICE TIME CPU PROCESS/NLWP
16815 drkirkby 78M 35M cpu1 50 0 0:03:30 72% MathKernel/6
6453 drkirkby 452M 334M sleep 59 0 6:26:58 1.1% Xsun/1
15248 drkirkby 171M 104M sleep 59 0 0:27:20 0.9% mozilla-bin/3
27802 drkirkby 95M 31M sleep 59 0 0:05:30 0.5% gnome-termi
Is that not thread 6, rather than the 3 before? I wonder if this is a different
problem.
snip
Any thoughts ???
|
I'm not seeing the problem on my single-processor U60. CPU usage by the
Mathkernel thread returns to normal after it finishes computing the matrix.
PID USERNAME SIZE RSS STATE PRI NICE TIME CPU PROCESS/NLWP
27788 bill 142M 58M run 49 0 0:36:15 2.3% firefox-bin/3
25905 bill 80M 37M run 59 0 0:00:57 1.9% MathKernel/3
27581 bill 185M 58M sleep 59 0 0:06:30 1.6% Xsun/1
14143 bill 3104K 296K run 49 0 0:00:43 0.4% rxvt/1
OS is 10 1/06. I'm getting a 2nd processor for the system this week and
will try it again once I've got that installed. If you want me to try any
other tests let me know, I was quite happy that the other thread produced
a workaround so quickly!
Bil |
|
| Back to top |
|
 |
Dave (from the UK) science forum addict
Joined: 12 Jan 2006
Posts: 76
|
Posted: Sun Apr 02, 2006 10:46 pm Post subject:
Re: Another Mathematica CPU usage problem on Solaris 10!!
|
|
|
Bill Green wrote:
| Quote: | I'm not seeing the problem on my single-processor U60. CPU usage by the
Mathkernel thread returns to normal after it finishes computing the matrix.
PID USERNAME SIZE RSS STATE PRI NICE TIME CPU PROCESS/NLWP
27788 bill 142M 58M run 49 0 0:36:15 2.3% firefox-bin/3
25905 bill 80M 37M run 59 0 0:00:57 1.9% MathKernel/3
27581 bill 185M 58M sleep 59 0 0:06:30 1.6% Xsun/1
14143 bill 3104K 296K run 49 0 0:00:43 0.4% rxvt/1
OS is 10 1/06. I'm getting a 2nd processor for the system this week and
will try it again once I've got that installed. If you want me to try any
other tests let me know, I was quite happy that the other thread produced
a workaround so quickly!
Bil
|
Em, that is interesting.
One obvious difference between our machines is that yours is fitted with one CPU
whereas the machine in front of me is fitted with four CPUs.
So I took 3 of the 4 CPUs off-line with psradm, run mathematica 5.2, then computed
Eigenvalues[Table[Random[], {750}, {750}]];
Looking with prstat, a minute or so after the result is returned, I see
MathKernel has used about 15 seconds of CPU time and this is *not* increasing.
It is only using 1.6% of the CPU time according to prstat and I suspect that is
time-averaged somewhat. So essentially the CPU usage is close to zero.
sparrow /export/home/drkirkby % prstat
PID USERNAME SIZE RSS STATE PRI NICE TIME CPU PROCESS/NLWP
20672 drkirkby 212M 144M sleep 59 0 0:42:06 8.0% mozilla-bin/4
19865 drkirkby 194M 78M sleep 59 0 0:20:24 3.5% Xsun/1
20226 drkirkby 80M 26M sleep 59 0 0:07:00 1.6% metacity/1
23118 drkirkby 76M 32M run 59 0 0:00:15 1.6% MathKernel/3
20569 drkirkby 85M 20M sleep 59 0 0:01:57 1.5% gnome-terminal/2
But as soon as multiple processors are enabled, the situation is different. In
all 3 examples below, I stopped mathematica, made changes to the number of CPUs
online with prsadm, then started mathematica.
With 2 CPUs online I see this (i.e. runaway CPU usage).
sparrow /export/home/drkirkby % prstat
PID USERNAME SIZE RSS STATE PRI NICE TIME CPU PROCESS/NLWP
22910 drkirkby 77M 33M cpu0 30 0 0:01:54 50% MathKernel/4
20672 drkirkby 212M 144M sleep 59 0 0:41:08 7.4% mozilla-bin/4
19865 drkirkby 194M 78M sleep 59 0 0:19:51 1.3% Xsun/1
With 3 CPUs online I see this (i.e. runaway CPU usage)
sparrow /export/home/drkirkby % prstat
PID USERNAME SIZE RSS STATE PRI NICE TIME CPU PROCESS/NLWP
23064 drkirkby 77M 33M cpu2 10 0 0:04:14 67% MathKernel/5
20824 drkirkby 205M 109M run 49 0 0:11:25 0.5% acroread/1
20292 drkirkby 233M 66M sleep 49 0 0:08:26 0.5% java/21
19865 drkirkby 194M 78M sleep 58 0 0:20:13 0.4% Xsun/1
With 4 CPUs online I see this (again runaway CPU usage)
sparrow /export/home/drkirkby % prstat
PID USERNAME SIZE RSS STATE PRI NICE TIME CPU PROCESS/NLWP
23007 drkirkby 78M 34M cpu2 30 0 0:04:16 73% MathKernel/6
20672 drkirkby 212M 144M sleep 59 0 0:41:31 4.0% mozilla-bin/4
19865 drkirkby 194M 78M sleep 59 0 0:20:02 1.7% Xsun/1
20226 drkirkby 80M 26M sleep 59 0 0:06:50 0.9% metacity/1
One observation I make above is that the thread that uses the CPU time is N+2,
where N is the number of processors online.
If I start mathematica with one CPU online, compute something to start the
kernel (1+1 will do), then bring other CPUs online, the problem does not show.
This suggests a workaround might as follows.
1) Take all except one CPU offline.
2) Start mathematica 5.2.
3) Compute something so the mathematica kernel 'MathKernel' starts.
4) Bring other CPUs online.
The problem with that is that it needs root access.
I wonder if Mathematica 5.2 tests for the number of CPUs online (perhaps using
sysconf, processor_info or similar) before deciding how many threads to create?
If so, it might be possible to preload a library that forces it to think there
is only one.
Mathematica 5.2 is the first version of the program to make use of multiple
processors (and it is only limited use)
http://www.wolfram.com/products/mathematica/newin52/multicore.html
I suspect they are used when computing the Eigenvalues, which expalins why the
kernals usage goes above 25% on my quad processor machine.
I don't have access to a Solaris 9 machine with multiple processors that has
Mathematica on it. I do not fancy removing one from the Ultra 80 to put in the
Ultra 60 for test purposes.
Since Mathematica 5.2 makes such limited use of multiple processors, it is
possible this problem exists under Solaris 9 too, but I have just never found it.
I did a test on Mathematica 5.1 on this machien with all 4 processors online.
That does not suffer the problem. But since support for multiple CPUs in new in
Mathematica 5.2, so this is not surprising.
Perhaps tommorow I'll run truss and see what is happening.
Mathmatica 5.2 for Solaris x64 works very well on Solaris on a dual processor
Sun Ultra 40, so I suspect this problem is a Solaris 10 issue rather than a
Mathematica one. It would be nice to try it on a multi processors Solaris 9
SPARC though. (Anyone got a spare X1195A they don't want !!)
Perhaps Casper has some comments.
--
Dave K MCSE.
MCSE = Minefield Consultant and Solitaire Expert.
Please note my email address changes periodically to avoid spam.
It is always of the form: month-year@domain. Hitting reply will work
for a couple of months only. Later set it manually. |
|
| Back to top |
|
 |
Darren Dunham science forum beginner
Joined: 03 Apr 2006
Posts: 2
|
Posted: Mon Apr 03, 2006 5:42 am Post subject:
Re: Another Mathematica CPU usage problem on Solaris 10!!
|
|
|
In comp.unix.solaris "Dave (from the UK)" <see-my-signature@southminster-branch-line.org.uk> wrote:
| Quote: | sparrow /export/home/drkirkby % prstat
PID USERNAME SIZE RSS STATE PRI NICE TIME CPU PROCESS/NLWP
16815 drkirkby 78M 35M cpu1 50 0 0:03:30 72% MathKernel/6
6453 drkirkby 452M 334M sleep 59 0 6:26:58 1.1% Xsun/1
15248 drkirkby 171M 104M sleep 59 0 0:27:20 0.9% mozilla-bin/3
27802 drkirkby 95M 31M sleep 59 0 0:05:30 0.5% gnome-termi
|
| Quote: | Is that not thread 6, rather than the 3 before? I wonder if this is a
different problem.
|
The bit after the end is the number of threads in the process (NLWP),
not an indication of a particular thread (LWPID). Use 'prstat -L' to
break it down by thread.
| Quote: | sparrow /export/home/drkirkby % truss -p 16815/6
(this produces no output. Does this mean it is *not* system call(s) which is
using all the CPU time?)
|
Again, thread #6 may not be doing much. Retry with prstat -L.
--
Darren Dunham ddunham@taos.com
Senior Technical Consultant TAOS http://www.taos.com/
Got some Dr Pepper? San Francisco, CA bay area
< This line left intentionally blank to confuse you. > |
|
| Back to top |
|
 |
Dave (from the UK) science forum addict
Joined: 12 Jan 2006
Posts: 76
|
Posted: Mon Apr 03, 2006 7:58 am Post subject:
Re: Another Mathematica CPU usage problem on Solaris 10!!
|
|
|
Darren Dunham wrote:
| Quote: | In comp.unix.solaris "Dave (from the UK)" <see-my-signature@southminster-branch-line.org.uk> wrote:
sparrow /export/home/drkirkby % prstat
PID USERNAME SIZE RSS STATE PRI NICE TIME CPU PROCESS/NLWP
16815 drkirkby 78M 35M cpu1 50 0 0:03:30 72% MathKernel/6
6453 drkirkby 452M 334M sleep 59 0 6:26:58 1.1% Xsun/1
15248 drkirkby 171M 104M sleep 59 0 0:27:20 0.9% mozilla-bin/3
27802 drkirkby 95M 31M sleep 59 0 0:05:30 0.5% gnome-termi
Is that not thread 6, rather than the 3 before? I wonder if this is a
different problem.
|
Thanks.
I thought there was something wrong with my understanding there, as I could not
understand how any thread could use more than the fraction 1/N of the CPU time,
where N is the number of processors.
I'll have to look up the difference between a thread (as I know from pthreads
and similar) and an LWP. But that has cleared up something. Cheers.
I looked at this again, but with a *larger* problem matrix of 1750 x 1750
Eigenvalues[Table[Random[], {1750}, {1750}]];
instead of
Eigenvalues[Table[Random[], {750}, {750}]];
so the Eigenvalues take longer to find.
It is clear that whilst the computation is actually being performed (before
Mathematica returns a result), there are 4 LWPs (numbers 1, 5, 4 and 6) using
significant amounts of CPU time. These are using from 18-21% each. Two are not
using much time at all.
sparrow /export/home/drkirkby % prstat -L
PID USERNAME SIZE RSS STATE PRI NICE TIME CPU PROCESS/LWPID
3321 drkirkby 114M 70M cpu2 10 0 0:01:18 21% MathKernel/6
3321 drkirkby 114M 70M cpu0 10 0 0:01:18 21% MathKernel/4
3321 drkirkby 114M 70M run 10 0 0:01:18 20% MathKernel/5
3321 drkirkby 114M 70M cpu1 10 0 0:01:15 18% MathKernel/1
680 drkirkby 195M 78M sleep 59 0 0:09:50 1.6% Xsun/1
Once the result is actually computed, numbers 4, 5 and 6 are using 25% of the
CPU time available each. Number 1, which was using a lot, no longer is.
sparrow /export/home/drkirkby % prstat -L
PID USERNAME SIZE RSS STATE PRI NICE TIME CPU PROCESS/LWPID
3321 drkirkby 114M 70M cpu1 30 0 0:04:34 25% MathKernel/4
3321 drkirkby 114M 70M cpu3 30 0 0:04:33 25% MathKernel/5
3321 drkirkby 114M 70M cpu0 20 0 0:04:35 25% MathKernel/6
976 drkirkby 192M 126M run 49 0 0:27:20 1.7% mozilla-bin/1
680 drkirkby 195M 78M sleep 59 0 0:10:00 1.6% Xsun/1
1909 drkirkby 221M 121M sleep 49 0 0:10:32 0.7% acroread/1
I edited the script that starts the kernel so it ends in
LD_PRELOAD_64=/usr/local/lib/select_preload.so
export LD_PRELOAD_64
/usr/bin/truss -d -o /tmp/math.log ${MathKernel} "$@"
so it logged the output of truss and added a timestamp.
It is clear that sysconf is being called a number of times, one of which is to
find the number of CPU online:
sparrow /tmp # grep sysconf math.log
0.1509 sysconfig(_CONFIG_PAGESIZE) = 8192
0.1513 sysconfig(_CONFIG_NPROC_ONLN) = 4
0.1517 sysconfig(_CONFIG_CPUID_MAX) = 31
0.1613 sysconfig(_CONFIG_SEM_VALUE_MAX) = 2147483647
0.2383 sysconfig(_CONFIG_CLK_TCK) = 100
0.3811 sysconfig(_CONFIG_STACK_PROT) = 3
The kernel clearly determmines the number of CPUs online with:
sysconf(_CONFIG_NPROC_ONLN);
I guess it uses the result to determine the number of worker threads to create
to solve the eigenvalues.
If nothing else, fooling sysconf() with a pre-loaded library might be a hack
that would trick Mathematica into thinking there was only one CPU online, so it
did not create multiple threads to compute the eigenvalues.
Clearly it would be nice to actually sort the problem more fully so Mathematica
actually uses the advantages of multiple processors, but just stopping it
running away with the CPU time would be a start.
Anyway, I have to go out today, so that will not be tacked until tonight at least.
--
Dave K MCSE.
MCSE = Minefield Consultant and Solitaire Expert.
Please note my email address changes periodically to avoid spam.
It is always of the form: month-year@domain. Hitting reply will work
for a couple of months only. Later set it manually. |
|
| Back to top |
|
 |
Dave (from the UK) science forum addict
Joined: 12 Jan 2006
Posts: 76
|
Posted: Mon Apr 03, 2006 7:58 am Post subject:
Re: Another Mathematica CPU usage problem on Solaris 10!!
|
|
|
Darren Dunham wrote:
| Quote: | In comp.unix.solaris "Dave (from the UK)" <see-my-signature@southminster-branch-line.org.uk> wrote:
sparrow /export/home/drkirkby % prstat
PID USERNAME SIZE RSS STATE PRI NICE TIME CPU PROCESS/NLWP
16815 drkirkby 78M 35M cpu1 50 0 0:03:30 72% MathKernel/6
6453 drkirkby 452M 334M sleep 59 0 6:26:58 1.1% Xsun/1
15248 drkirkby 171M 104M sleep 59 0 0:27:20 0.9% mozilla-bin/3
27802 drkirkby 95M 31M sleep 59 0 0:05:30 0.5% gnome-termi
Is that not thread 6, rather than the 3 before? I wonder if this is a
different problem.
|
Thanks.
I thought there was something wrong with my understanding there, as I could not
understand how any thread could use more than the fraction 1/N of the CPU time,
where N is the number of processors.
I'll have to look up the difference between a thread (as I know from pthreads
and similar) and an LWP. But that has cleared up something. Cheers.
I looked at this again, but with a *larger* problem matrix of 1750 x 1750
Eigenvalues[Table[Random[], {1750}, {1750}]];
instead of
Eigenvalues[Table[Random[], {750}, {750}]];
so the Eigenvalues take longer to find.
It is clear that whilst the computation is actually being performed (before
Mathematica returns a result), there are 4 LWPs (numbers 1, 5, 4 and 6) using
significant amounts of CPU time. These are using from 18-21% each. Two are not
using much time at all.
sparrow /export/home/drkirkby % prstat -L
PID USERNAME SIZE RSS STATE PRI NICE TIME CPU PROCESS/LWPID
3321 drkirkby 114M 70M cpu2 10 0 0:01:18 21% MathKernel/6
3321 drkirkby 114M 70M cpu0 10 0 0:01:18 21% MathKernel/4
3321 drkirkby 114M 70M run 10 0 0:01:18 20% MathKernel/5
3321 drkirkby 114M 70M cpu1 10 0 0:01:15 18% MathKernel/1
680 drkirkby 195M 78M sleep 59 0 0:09:50 1.6% Xsun/1
Once the result is actually computed, numbers 4, 5 and 6 are using 25% of the
CPU time available each. Number 1, which was using a lot, no longer is.
sparrow /export/home/drkirkby % prstat -L
PID USERNAME SIZE RSS STATE PRI NICE TIME CPU PROCESS/LWPID
3321 drkirkby 114M 70M cpu1 30 0 0:04:34 25% MathKernel/4
3321 drkirkby 114M 70M cpu3 30 0 0:04:33 25% MathKernel/5
3321 drkirkby 114M 70M cpu0 20 0 0:04:35 25% MathKernel/6
976 drkirkby 192M 126M run 49 0 0:27:20 1.7% mozilla-bin/1
680 drkirkby 195M 78M sleep 59 0 0:10:00 1.6% Xsun/1
1909 drkirkby 221M 121M sleep 49 0 0:10:32 0.7% acroread/1
I edited the script that starts the kernel so it ends in
LD_PRELOAD_64=/usr/local/lib/select_preload.so
export LD_PRELOAD_64
/usr/bin/truss -d -o /tmp/math.log ${MathKernel} "$@"
so it logged the output of truss and added a timestamp.
It is clear that sysconf is being called a number of times, one of which is to
find the number of CPU online:
sparrow /tmp # grep sysconf math.log
0.1509 sysconfig(_CONFIG_PAGESIZE) = 8192
0.1513 sysconfig(_CONFIG_NPROC_ONLN) = 4
0.1517 sysconfig(_CONFIG_CPUID_MAX) = 31
0.1613 sysconfig(_CONFIG_SEM_VALUE_MAX) = 2147483647
0.2383 sysconfig(_CONFIG_CLK_TCK) = 100
0.3811 sysconfig(_CONFIG_STACK_PROT) = 3
The kernel clearly determmines the number of CPUs online with:
sysconf(_CONFIG_NPROC_ONLN);
I guess it uses the result to determine the number of worker threads to create
to solve the eigenvalues.
If nothing else, fooling sysconf() with a pre-loaded library might be a hack
that would trick Mathematica into thinking there was only one CPU online, so it
did not create multiple threads to compute the eigenvalues.
Clearly it would be nice to actually sort the problem more fully so Mathematica
actually uses the advantages of multiple processors, but just stopping it
running away with the CPU time would be a start.
Anyway, I have to go out today, so that will not be tacked until tonight at least.
--
Dave K MCSE.
MCSE = Minefield Consultant and Solitaire Expert.
Please note my email address changes periodically to avoid spam.
It is always of the form: month-year@domain. Hitting reply will work
for a couple of months only. Later set it manually. |
|
| Back to top |
|
 |
Dave (from the UK) science forum addict
Joined: 12 Jan 2006
Posts: 76
|
Posted: Mon Apr 03, 2006 3:20 pm Post subject:
Re: Another Mathematica CPU usage problem on Solaris 10!!
|
|
|
Dave (from the UK) wrote:
| Quote: | sparrow /tmp # grep sysconf math.log
0.1509 sysconfig(_CONFIG_PAGESIZE) = 8192
0.1513 sysconfig(_CONFIG_NPROC_ONLN) = 4
0.1517 sysconfig(_CONFIG_CPUID_MAX) = 31
0.1613 sysconfig(_CONFIG_SEM_VALUE_MAX) = 2147483647
0.2383 sysconfig(_CONFIG_CLK_TCK) = 100
0.3811 sysconfig(_CONFIG_STACK_PROT) = 3
The kernel clearly determmines the number of CPUs online with:
sysconf(_CONFIG_NPROC_ONLN);
|
It seems I can't read, since /tmp/math.log shows
sysconfig(_CONFIG_NPROC_ONLN)
and I was thinking it uses
sysconf(_CONFIG_NPROC_ONLN).
In fact, the sysconfig() is not in any man pages or similar I can find, but
sysconf(_SC_NPROCESSORS_ONLN);
is documented in sysconf(3C)
I wrote a quick bit of code to preload sysconf(), in the hope sysconf then might
lie about the number of CPUs. But it has not helped, since mathematica is not
using sysconf().
% cat sysconf_preload.c
#include <unistd.h>
long sysconf(int name)
{
if (name == _SC_NPROCESSORS_ONLN)
return (1);
}
% cat cpus.c
#include <unistd.h>
#include <stdio.h>
int main(int argc, char **argv)
{
printf("The number of CPUs currently online is
%ld\n",sysconf(_SC_NPROCESSORS_ONLN));
}
Then cpus will lie about the number of CPUs online if compiled with:
% cc -xtarget=ultra -xarch=v9 cpus.c -o cpus
% cc -xtarget=ultra -xarch=v9 -G -Kpic sysconf_preload.c -o sysconf_preload.so
% setenv LD_PRELOAD_64 ./sysconf_preload.so
% ./cpus
The number of CPUs currently online is 1
that is not true, so it has been tricked.:
sparrow /export/home/drkirkby # psrinfo
0 on-line since 04/02/2006 23:05:10
1 on-line since 04/02/2006 23:05:11
2 on-line since 04/02/2006 23:05:11
3 on-line since 04/02/2006 23:05:11
sparrow /export/home/drkirkby # ./cpus
The number of CPUs currently online is 1
Well, if anyone knows what mathematica is doing with
sysconfig(_CONFIG_NPROC_ONLN) let me know.
Obviously a better solution will be to get mathematica to use all the cpus.
--
Dave K MCSE.
MCSE = Minefield Consultant and Solitaire Expert.
Please note my email address changes periodically to avoid spam.
It is always of the form: month-year@domain. Hitting reply will work
for a couple of months only. Later set it manually. |
|
| Back to top |
|
 |
Darren Dunham science forum beginner
Joined: 03 Apr 2006
Posts: 2
|
Posted: Mon Apr 03, 2006 8:19 pm Post subject:
Re: Another Mathematica CPU usage problem on Solaris 10!!
|
|
|
In comp.unix.solaris "Dave (from the UK)" <see-my-signature@southminster-branch-line.org.uk> wrote:
| Quote: | I thought there was something wrong with my understanding there, as I
could not understand how any thread could use more than the fraction
1/N of the CPU time, where N is the number of processors.
I'll have to look up the difference between a thread (as I know from
pthreads and similar) and an LWP. But that has cleared up
something. Cheers.
|
As far as almost anything is concerned in Solaris 9 and later, the two
are the same. Each thread is mapped onto a single LWP.
--
Darren Dunham ddunham@taos.com
Senior Technical Consultant TAOS http://www.taos.com/
Got some Dr Pepper? San Francisco, CA bay area
< This line left intentionally blank to confuse you. > |
|
| Back to top |
|
 |
Richard L. Hamilton science forum beginner
Joined: 03 Apr 2006
Posts: 2
|
Posted: Wed Apr 05, 2006 9:56 pm Post subject:
Re: Another Mathematica CPU usage problem on Solaris 10!!
|
|
|
In article <44313d3b@212.67.96.135>,
"Dave (from the UK)" <see-my-signature@southminster-branch-line.org.uk> writes:
| Quote: | Dave (from the UK) wrote:
sparrow /tmp # grep sysconf math.log
0.1509 sysconfig(_CONFIG_PAGESIZE) = 8192
0.1513 sysconfig(_CONFIG_NPROC_ONLN) = 4
0.1517 sysconfig(_CONFIG_CPUID_MAX) = 31
0.1613 sysconfig(_CONFIG_SEM_VALUE_MAX) = 2147483647
0.2383 sysconfig(_CONFIG_CLK_TCK) = 100
0.3811 sysconfig(_CONFIG_STACK_PROT) = 3
The kernel clearly determmines the number of CPUs online with:
sysconf(_CONFIG_NPROC_ONLN);
It seems I can't read, since /tmp/math.log shows
sysconfig(_CONFIG_NPROC_ONLN)
and I was thinking it uses
sysconf(_CONFIG_NPROC_ONLN).
In fact, the sysconfig() is not in any man pages or similar I can find, but
[...] |
sysconf() is a library wrapper around sysconfig() (the real system call),
which takes care of cases that don't require knowledge only the kernel
would have, etc. See
http://cvs.opensolaris.org/source/xref/on/usr/src/lib/libc/port/gen/sysconf.c
--
mailto:rlhamil@smart.net http://www.smart.net/~rlhamil
Lasik/PRK theme music:
"In the Hall of the Mountain King", from "Peer Gynt" |
|
| Back to top |
|
 |
Dave (from the UK) science forum addict
Joined: 12 Jan 2006
Posts: 76
|
Posted: Wed Apr 05, 2006 11:36 pm Post subject:
Re: Another Mathematica CPU usage problem on Solaris 10!!
|
|
|
Richard L. Hamilton wrote:
| Quote: | It seems I can't read, since /tmp/math.log shows
sysconfig(_CONFIG_NPROC_ONLN)
and I was thinking it uses
sysconf(_CONFIG_NPROC_ONLN).
In fact, the sysconfig() is not in any man pages or similar I can find, but
[...]
sysconf() is a library wrapper around sysconfig() (the real system call),
which takes care of cases that don't require knowledge only the kernel
would have, etc. See
http://cvs.opensolaris.org/source/xref/on/usr/src/lib/libc/port/gen/sysconf.c
|
Thank you.
After I spent some time on this, I remember there is an environment variable for
Mathematica that forces it to use one CPU. (Someone from Wolfram Research
emailed me it some time back when I had the other trouble. It did not cure that,
but it might this)
I'd like a solution ideally, but I should soon have my Opteron machine running,
so perhaps I won't loose too much sleep over it.
--
Dave K MCSE.
MCSE = Minefield Consultant and Solitaire Expert.
Please note my email address changes periodically to avoid spam.
It is always of the form: month-year@domain. Hitting reply will work
for a couple of months only. Later set it manually. |
|
| Back to top |
|
 |
Dave (from the UK) science forum addict
Joined: 12 Jan 2006
Posts: 76
|
Posted: Fri Apr 07, 2006 1:36 pm Post subject:
Re: Another Mathematica CPU usage problem on Solaris 10!!
|
|
|
Dave (from the UK) wrote:
| Quote: | Thank you.
After I spent some time on this, I remember there is an environment
variable for Mathematica that forces it to use one CPU. (Someone from
Wolfram Research emailed me it some time back when I had the other
trouble. It did not cure that, but it might this)
I'd like a solution ideally, but I should soon have my Opteron machine
running, so perhaps I won't loose too much sleep over it.
|
PS, I thought those using Mathematica might like to see this I received from
Wolfram Research about the original problem, which Casper Dik at Sun solved.
"Also, try setting the environment variable $OMP_NUM_THREADS to 1 and
re-starting Mathematica and evaluating something. Does this change anything? "
The $OMP_NUM_THREADS did not cure the original problem, which Casper's fix did,
but it might cure this one which only occurs on when multiple processors are
enabled on Solaris. (Disabling the other processors with psradm solves it, but
is a bit of a nuisance).
Someone else reported having different problems with Mathematica 5.2 on Debian
Linux which was cured with this environment variable
http://forums.wolfram.com/mathgroup/archive/2006/Jan/msg00515.html
But with Linux, Mathematica is only supported on Redhat and Suse
http://www.wolfram.com/products/mathematica/platforms/
and *not* Debian, so he was trying an unsupported platform. (As a point, given
Redhat in particular seem to be the new Microsoft, support for the free linuxs
would be nice - even though I personally don't run linux).
I once tried installing Mathematica on Debian and found myself unable to do so
(I can't recall why). But I was in a hurry and did not have time to mess about,
so installed it on Windows XP instead, as I had a Windows box on my desk too.
--
Dave K MCSE.
MCSE = Minefield Consultant and Solitaire Expert.
Please note my email address changes periodically to avoid spam.
It is always of the form: month-year@domain. Hitting reply will work
for a couple of months only. Later set it manually. |
|
| Back to top |
|
 |
Google
|
|
| Back to top |
|
 |
|
|
The time now is Wed Jan 07, 2009 11:51 pm | All times are GMT
|
|
Debt Consolidation | Mortgage | Personal Loans | Cingular Ringtones | MPAA
|
|
Copyright © 2004-2005 DeniX Solutions SRL
|
|
Other DeniX Solutions sites:
Electronics forum |
Medicine forum |
Unix/Linux blog |
Unix/Linux documentation |
Unix/Linux forums
|
Powered by phpBB © 2001, 2005 phpBB Group
|
|