Return-Path: X-Original-To: apmail-cassandra-commits-archive@www.apache.org Delivered-To: apmail-cassandra-commits-archive@www.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id D5FB37842 for ; Fri, 23 Dec 2011 22:42:56 +0000 (UTC) Received: (qmail 5551 invoked by uid 500); 23 Dec 2011 22:42:56 -0000 Delivered-To: apmail-cassandra-commits-archive@cassandra.apache.org Received: (qmail 5529 invoked by uid 500); 23 Dec 2011 22:42:56 -0000 Mailing-List: contact commits-help@cassandra.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@cassandra.apache.org Delivered-To: mailing list commits@cassandra.apache.org Received: (qmail 5521 invoked by uid 99); 23 Dec 2011 22:42:56 -0000 Received: from nike.apache.org (HELO nike.apache.org) (192.87.106.230) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 23 Dec 2011 22:42:56 +0000 X-ASF-Spam-Status: No, hits=-2002.5 required=5.0 tests=ALL_TRUSTED,RP_MATCHES_RCVD X-Spam-Check-By: apache.org Received: from [140.211.11.116] (HELO hel.zones.apache.org) (140.211.11.116) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 23 Dec 2011 22:42:54 +0000 Received: from hel.zones.apache.org (hel.zones.apache.org [140.211.11.116]) by hel.zones.apache.org (Postfix) with ESMTP id 4E796126DB2 for ; Fri, 23 Dec 2011 22:42:32 +0000 (UTC) Date: Fri, 23 Dec 2011 22:42:32 +0000 (UTC) From: "Vijay (Commented) (JIRA)" To: commits@cassandra.apache.org Message-ID: <1625819758.43358.1324680152322.JavaMail.tomcat@hel.zones.apache.org> In-Reply-To: <426110942.6413.1323797790909.JavaMail.tomcat@hel.zones.apache.org> Subject: [jira] [Commented] (CASSANDRA-3623) use MMapedBuffer in CompressedSegmentedFile.getSegment MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-JIRA-FingerPrint: 30527f35849b9dde25b450d4833f0394 X-Virus-Checked: Checked by ClamAV on apache.org [ https://issues.apache.org/jira/browse/CASSANDRA-3623?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13175606#comment-13175606 ] Vijay commented on CASSANDRA-3623: ---------------------------------- I did it Again, i confused everyone with my test data :) Hot methods shown above is the only data which is from the trunk rest are without CRC (hot methods without CRC and without this patch is as follows). Excl. User CPU Name sec. % 629.460 100.00 336.913 53.52 @0x54999 () 50.074 7.96 org.apache.cassandra.io.compress.CompressedRandomAccessReader.(java.lang.String, org.apache.cassandra.io.compress.CompressionMetadata, boolean) 43.057 6.84 org.apache.cassandra.io.util.RandomAccessReader.(java.io.File, int, boolean) 35.623 5.66 memcpy 33.555 5.33 @0xd8e9 () 30.673 4.87 Copy::pd_disjoint_words(HeapWord*, HeapWord*, unsigned long) 26.384 4.19 CompactibleFreeListSpace::block_size(const HeapWord*) const 15.199 2.41 SpinPause 11.966 1.90 BlockOffsetArrayNonContigSpace::block_start_unsafe(const void*) const 8.479 1.35 CardTableModRefBSForCTRS::card_will_be_scanned(signed char) 8.007 1.27 CardTableModRefBS::non_clean_card_iterate_work(MemRegion, MemRegionClosure*, bool) 5.169 0.82 madvise 5.059 0.80 ParallelTaskTerminator::offer_termination(TerminatorTerminator*) 4.146 0.66 CardTableModRefBS::process_chunk_boundaries(Space*, DirtyCardToOopClosure*, MemRegion, MemRegion, signed char**, unsigned long, unsigned long) 2.431 0.39 CardTableModRefBS::dirty_card_range_after_reset(MemRegion, bool, int) 1.375 0.22 SweepClosure::do_blk_careful(HeapWord*) 0.825 0.13 Par_PushOrMarkClosure::do_oop(oopDesc*) 0.616 0.10 GenericTaskQueue::pop_local(oopDesc*&) 0.561 0.09 instanceKlass::oop_oop_iterate_nv(oopDesc*, Par_PushOrMarkClosure*) 0.473 0.08 CardTableModRefBS::process_stride(Space*, MemRegion, int, int, DirtyCardToOopClosure*, MemRegionClosure*, bool, signed char**, unsigned long, unsigned long) 0.374 0.06 Par_MarkFromRootsClosure::scan_oops_in_oop(HeapWord*) 0.319 0.05 BitMap::par_at_put(unsigned long, bool) 0.308 0.05 MemRegion::intersection(MemRegion) const 0.275 0.04 munmap 0.220 0.03 CardTableModRefBS::dirty_card_iterate(MemRegion, MemRegionClosure*) Hope this makes sense. > use MMapedBuffer in CompressedSegmentedFile.getSegment > ------------------------------------------------------ > > Key: CASSANDRA-3623 > URL: https://issues.apache.org/jira/browse/CASSANDRA-3623 > Project: Cassandra > Issue Type: Improvement > Components: Core > Affects Versions: 1.1 > Reporter: Vijay > Assignee: Vijay > Labels: compression > Fix For: 1.1 > > Attachments: 0001-MMaped-Compression-segmented-file-v2.patch, 0001-MMaped-Compression-segmented-file.patch, 0002-tests-for-MMaped-Compression-segmented-file-v2.patch > > > CompressedSegmentedFile.getSegment seem to open a new file and doesnt seem to use the MMap and hence a higher CPU on the nodes and higher latencies on reads. > This ticket is to implement the TODO mentioned in CompressedRandomAccessReader > // TODO refactor this to separate concept of "buffer to avoid lots of read() syscalls" and "compression buffer" > but i think a separate class for the Buffer will be better. -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa For more information on JIRA, see: http://www.atlassian.com/software/jira