I did some tests with HPROF, and I noticed different results using cpu=times 
and cpu=samples. In the former case 17.81% is  java.lang.Object.wait, in the 
latter 24.14% is java.net.PlainSocketImpl.socketAccept.
Hope those results can help (I found them little confusing...)

Danilo Levantesi


------------------------------------------
Configuration
------------------------------------------
1 Dedicated controller, 2 PostgreSQL backends
100Mb dedicated LAN

Controller:
Slackware 12, 2.6.21.5-smp, 2Gb RAM, JVM 1.5.0_15

JDBCBench (read-only queries):
Clients: 10
Transactions per client: 250

------------------------------------------
HPROF options:
heap=all
cpu=times
monitor=y
format=a
depth=5
interval=10
cutoff=0.0001
lineno=y
thread=n
doe=y
msa=n
force=y
verbose=y 

CPU TIME (ms) BEGIN (total = 42353256) Mon Apr 28 10:49:33 2008
rank   self  accum   count trace method
   1 17.81% 17.81%      17 355483 java.lang.Object.wait
   2  4.91% 22.72%       9 325458 java.net.PlainSocketImpl.accept
   3  4.77% 27.49%     467 350536 java.net.PlainDatagramSocketImpl.receive
   4  4.61% 32.10%       2 360904 java.lang.Object.wait
   5  4.45% 36.56%       4 355482 java.lang.Object.wait
   6  4.44% 41.00%       2 366671 
org.continuent.sequoia.common.locks.DeadlockDetectionThread.run
   7  4.41% 45.41%       2 366670 
org.continuent.sequoia.controller.connection.VariablePoolConnectionManager$RemoveIdleConnectionsThread.run
   8  2.47% 47.88%       1 387344 java.lang.ref.ReferenceQueue.remove
   9  2.42% 50.30%    8501 305696 java.lang.ref.ReferenceQueue.remove
  10  2.39% 52.68%     202 352582 java.net.PlainSocketImpl.accept
  11  2.38% 55.06%     188 305685 java.lang.Object.wait
  12  2.35% 57.41%      12 358500 java.net.PlainSocketImpl.accept
  13  2.31% 59.72%       1 367902 java.lang.Object.wait
  14  2.31% 62.03%       1 367904 java.lang.Object.wait
  15  2.30% 64.33%      16 351203 java.lang.Object.wait
  16  2.30% 66.62%    1476 348085 
org.continuent.appia.core.TimerManager.goToSleep
  17  2.29% 68.91%       1 365236 java.lang.Object.wait
  18  2.25% 71.17%      21 354809 java.lang.Object.wait
  19  2.11% 73.27%     817 358521 java.net.PlainDatagramSocketImpl.receive
  20  2.05% 75.32%    7520 359053 java.net.SocketInputStream.read
  21  2.03% 77.35%       6 330056 java.lang.ref.ReferenceQueue.remove
  22  1.62% 78.98% 1733522 359723 java.util.regex.Pattern$Bound.check
  23  1.25% 80.22%      11 366896 
org.continuent.sequoia.controller.virtualdatabase.VirtualDatabaseWorkerThread.run
  24  1.03% 81.25% 3384549 359720 java.lang.CharacterDataLatin1.getType
  25  1.00% 82.25% 1733522 359718 java.lang.Character.codePointAt
[cut below 1%]

------------------------------------------
Clients: 10
Transactions per client: 250

HPROF options:
heap=all
cpu=samples
monitor=y
format=a
depth=5
interval=10
cutoff=0.0001
lineno=y
thread=n
doe=y
msa=n
force=y
verbose=y 

CPU SAMPLES BEGIN (total = 188764) Mon Apr 28 11:03:58 2008
rank   self  accum   count trace method
   1 24.14% 24.14%   45561 305806 java.net.PlainSocketImpl.socketAccept
   2 23.63% 47.76%   44599 312013 java.net.PlainDatagramSocketImpl.receive0
   3 11.81% 59.58%   22301 311638 java.net.PlainSocketImpl.socketAccept
   4 11.67% 71.25%   22030 313674 java.net.PlainSocketImpl.socketAccept
   5 11.67% 82.92%   22029 313675 java.net.PlainDatagramSocketImpl.receive0
   6  2.54% 85.46%    4798 306656 java.net.SocketInputStream.socketRead0
   7  2.51% 87.97%    4735 313799 java.net.SocketInputStream.socketRead0
   8  0.65% 88.62%    1232 312093 java.net.SocketInputStream.socketRead0
   9  0.57% 89.19%    1079 309857 
org.postgresql.core.v3.QueryExecutorImpl.receiveFields
  10  0.53% 89.72%     999 313806 java.lang.Object.<init>
  11  0.30% 90.02%     569 302519 java.lang.Object.<init>
  12  0.24% 90.26%     446 314038 java.lang.Object.<init>
  13  0.21% 90.47%     405 300213 java.lang.Object.<init>
  14  0.21% 90.68%     396 314041 java.nio.HeapByteBuffer.<init>
  15  0.18% 90.87%     342 314066 java.lang.Object.<init>
  16  0.15% 91.02%     287 309330 java.lang.StringCoding.trim
  17  0.14% 91.15%     255 314065 java.lang.Object.<init>
  18  0.11% 91.26%     205 309643 java.lang.StringCoding$CharsetSE.encode
  19  0.10% 91.36%     188 314087 java.lang.Object.<init>
  20  0.09% 91.45%     178 313038 java.lang.Thread.yield
  21  0.09% 91.55%     177 314052 java.lang.Object.<init>
  22  0.09% 91.64%     174 300185 java.lang.StringCoding.trim
  23  0.09% 91.73%     173 313747 java.lang.String.<init>
  24  0.09% 91.82%     172 313909 java.lang.Object.<init>
  25  0.09% 91.91%     171 314073 java.lang.Object.<init>
  26  0.09% 92.00%     169 314074 java.lang.Object.<init>
  27  0.09% 92.09%     166 313536 java.lang.Object.<init>
  28  0.09% 92.18%     163 312213 java.lang.Object.<init>
  29  0.09% 92.26%     163 314067 java.lang.Object.<init>
  30  0.08% 92.35%     159 314083 java.lang.Object.<init>
  31  0.08% 92.43%     158 314078 java.lang.Object.<init>
  32  0.08% 92.52%     157 314090 java.lang.Object.<init>
  33  0.08% 92.60%     156 314091 java.lang.Object.<init>
  34  0.08% 92.68%     155 313835 java.lang.Object.<init>
  35  0.08% 92.76%     152 309273 java.lang.Object.<init>
[cut]


Il Friday 25 April 2008 16:02:31 Emmanuel Cecchet ha scritto:
> Hi,
>
> > Your observation is completely true: this piece of configuration is
> > part of one of the many tests I did and I forgot it in the
> > configuration file. By the way, I've just thrown it away, but no
> > changes in results: high cpu utilization still exists...
> >
> > May it depend on some operating system settings? But in this case, I
> > have high load under Windows too, and it sounds strange.
> > Or some JVM setting? I tried to increase heap size (-Xmx1024m
> > -Xms1024m) without results.
> > Is there a "certified" platform/configuration to run Sequoia on?
>
> I have not been running performance tests on Windows for quite a long
> time so I can't tell.
> Most Linux distributions work fine. Continuent certifies its products on
> RedHat, I personally use Fedora on my workstation.
>
> It would be interesting to use hprof
> (http://java.sun.com/developer/technicalArticles/Programming/HPROF.html)
> to see where this cpu consumption comes from. This might help finding
> out something obviously wrong.
>
> Your feedback is much appreciated,
> Emmanuel
_______________________________________________
Sequoia mailing list
[email protected]
https://forge.continuent.org/mailman/listinfo/sequoia

Reply via email to