incubator-cassandra-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Baskar Duraikannu <baskar.duraikannu...@gmail.com>
Subject Re: Thrift CPU Usage
Date Mon, 26 Sep 2011 21:04:46 GMT
Aaron
From the CPU samples report. Here is the parts of the CPU samples report (-Xrunhprof:cpu=samples,
depth=4).  

TRACE 300668:
	java.net.SocketInputStream.socketRead0(SocketInputStream.java:Unknown line)
	java.net.SocketInputStream.read(SocketInputStream.java:129)
	org.apache.thrift.transport.TIOStreamTransport.read(TIOStreamTransport.java:127)
	org.apache.thrift.transport.TTransport.readAll(TTransport.java:84)
TRACE 300310:
	java.net.PlainSocketImpl.socketAccept(PlainSocketImpl.java:Unknown line)
	java.net.PlainSocketImpl.accept(PlainSocketImpl.java:408)
	java.net.ServerSocket.implAccept(ServerSocket.java:462)
	java.net.ServerSocket.accept(ServerSocket.java:430)
TRACE 300639:
	sun.nio.ch.ServerSocketChannelImpl.accept0(ServerSocketChannelImpl.java:Unknown line)
	sun.nio.ch.ServerSocketChannelImpl.accept(ServerSocketChannelImpl.java:152)
	sun.nio.ch.ServerSocketAdaptor.accept(ServerSocketAdaptor.java:84)
	org.apache.cassandra.net.MessagingService$SocketThread.run(MessagingService.java:617)
TRACE 300670:
	java.net.SocketOutputStream.socketWrite0(SocketOutputStream.java:Unknown line)
	java.net.SocketOutputStream.socketWrite(SocketOutputStream.java:92)
	java.net.SocketOutputStream.write(SocketOutputStream.java:136)
	org.apache.thrift.transport.TIOStreamTransport.write(TIOStreamTransport.java:145)
TRACE 301122:
	java.lang.Object.notify(Object.java:Unknown line)
	org.apache.cassandra.utils.SimpleCondition.signal(SimpleCondition.java:62)
	org.apache.cassandra.service.ReadCallback.response(ReadCallback.java:169)
	org.apache.cassandra.service.StorageProxy$LocalReadRunnable.runMayThrow(StorageProxy.java


rank   self  accum   count trace method
   1 74.00% 74.00%  160934 300668 java.net.SocketInputStream.socketRead0
   2 14.85% 88.85%   32302 300310 java.net.PlainSocketImpl.socketAccept
   3  3.67% 92.52%    7990 300639 sun.nio.ch.ServerSocketChannelImpl.accept0
   4  1.90% 94.43%    4142 300670 java.net.SocketOutputStream.socketWrite0
   5  0.79% 95.22%    1716 301122 java.lang.Object.notify

--
Thanks
Baskar Duraikannu

On Sep 26, 2011, at 4:55 PM, aaron morton wrote:

> How are you deciding what is thrift ? Thrift is used to handle connections and serialize
 / de-serialize off the wire.
> 
> Cheers
> 
> 
> 
> -----------------
> Aaron Morton
> Freelance Cassandra Developer
> @aaronmorton
> http://www.thelastpickle.com
> 
> On 27/09/2011, at 2:32 AM, Baskar Duraikannu wrote:
> 
>> Hello - 
>> 
>> I have been running read tests on Cassandra using "stress" tool.  I have been noticing
that thrift seems to be taking lot of CPU over 70% when I look at the "CPU samples" report.
Is this normal?  
>> 
>> CPU usage seems to go down by 5 to 10% when I change the RPC from "sync" to "async".
 Is this normal? 
>> 
>> I am running Cassandra 0.8.4 on Cent OS 5.6 ( Kernel 2.6.18.238) and Oracle JVM.

>> 
>> - 
>> Thanks
>> Baskar Duraikannu
> 


Mime
View raw message