Ok Matt Palmer got it. I've installed dstat just now and ran it during
my app is running and then after. Notice the paging column. The question
is why? I have all 9GB memory to myself. No other processes running. CPU
utilisation is *very* low. Physical RAM usage is also low.
Carlo
WHILE RUNNING:
----total-cpu-usage---- -dsk/total- -net/total- ---paging-- ---system--
usr sys idl wai hiq siq|_read _writ|_recv _send|__in_ _out_|_int_ _csw_
0 0 87 12 0 0|1040k 324k| 128B 1192B|1040k 324k| 423 600
0 0 88 12 0 0|1040k 412k| 128B 1576B|1040k 412k| 435 597
0 3 86 11 0 0| 968k 348k| 128B 1192B| 968k 348k| 414 556
0 0 87 13 0 0|1072k 424k| 128B 1192B|1072k 424k| 439 604
0 1 86 13 0 0|1012k 1024k| 128B 1192B|1016k 508k| 454 650
0 0 87 12 0 0|1104k 264k| 128B 1192B|1100k 264k| 429 618
0 0 87 13 0 0|1044k 396k| 128B 1192B|1044k 396k| 442 592
0 0 88 13 0 0|1052k 720k| 340B 1320B|1052k 720k| 443 867
0 0 88 12 0 0| 932k 264k| 128B 1192B| 932k 264k| 426 784
0 0 85 15 0 0| 932k 600k| 128B 1192B| 932k 184k| 427 774
0 0 85 15 0 0| 896k 252k| 128B 1192B| 896k 224k| 431 799
0 0 88 12 0 0|1104k 416k| 128B 1192B|1104k 416k| 453 871
AFTER RUNNING:
----total-cpu-usage---- -dsk/total- -net/total- ---paging-- ---system--
usr sys idl wai hiq siq|_read _writ|_recv _send|__in_ _out_|_int_ _csw_
0 0 99 1 0 0| 11k 184k| 0 0 | 11k 122k| 158 128
0 0 100 0 0 0| 0 0 | 936B 3160B| 0 0 | 125 70
0 0 100 0 0 0| 0 0 | 128B 1192B| 0 0 | 125 128
0 0 100 0 0 0| 0 0 | 128B 1192B| 0 0 | 125 72
0 0 100 0 0 0| 0 0 | 128B 1192B| 0 0 | 139 82
0 0 100 0 0 0| 0 188k| 128B 1192B| 0 0 | 131 86
0 0 100 0 0 0| 0 0 | 128B 1192B| 0 0 | 125 52
0 0 100 0 0 0| 0 0 | 128B 1192B| 0 0 | 125 68
0 0 100 0 0 0| 0 0 | 128B 1192B| 0 0 | 125 54
0 0 100 0 0 0| 0 0 | 128B 1192B| 0 0 | 125 66
0 0 100 0 0 0| 0 20k| 128B 1192B| 0 0 | 128 81
0 0 100 0 0 0| 0 0 | 128B 1192B| 0 0 | 126 86
Matt Moor wrote:
Erik de Castro Lopo wrote:
- Is there any chance your machine is NUMA (Non Uniform Memory
Architecture)? This basically means that all CPU can access
all the memory in the machine, but that for each processor
some memory is local and fast while other memory is further
away (ie on another card on the other side of some shared bus)
and hence slower? If so, you may find that the point
where you get your slowdown coincides with filling up local
memory and starting on more remote memory.
Multiprocessor Opteron systems do implement NUMA (each CPU has a memory
controller with banks attached), but I don't think this is the source of
the slow down - the HyperTransport links between CPUs and memory are
very, very fast (and specifically designed to avoid these sorts of issues).
I think Matt might be on the right track with swap, but I'm at a loss to
figure out how to get around it / pin down the bug.
- Matt
_______________________________________________
coders mailing list
[email protected]
http://lists.slug.org.au/listinfo/coders
_______________________________________________
coders mailing list
[email protected]
http://lists.slug.org.au/listinfo/coders