[ https://issues.apache.org/jira/browse/HBASE-22532?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16855281#comment-16855281 ]
Zheng Hu commented on HBASE-22532: ---------------------------------- Enabled the TRACE log level for package: org.apache.hadoop.hbase.io.hfile, I saw the following: {code} 2019-06-04,11:37:07,708 INFO org.apache.hadoop.hbase.io.hfile.ChecksumUtil: dataLength=262144, sizeWithHeader=131105, checksumType=CRC32C, file=hdfs://c302tst-offheap-reading/hbase/c302tst-offheap-reading/data/default/ycsb-test/7553c3f3fb00bb32d42a71f8a21d37ff/C/123a8968c0d641038c678117c3948bd6, offset=416071913, headerSize=33, bytesPerChecksum=16384 2019-06-04,11:37:07,708 INFO org.apache.hadoop.hbase.io.hfile.ChecksumUtil: dataLength=262144, sizeWithHeader=131105, checksumType=CRC32C, file=hdfs://c302tst-offheap-reading/hbase/c302tst-offheap-reading/data/default/ycsb-test/7553c3f3fb00bb32d42a71f8a21d37ff/C/123a8968c0d641038c678117c3948bd6, offset=49792391, headerSize=33, bytesPerChecksum=16384 2019-06-04,11:37:07,708 INFO org.apache.hadoop.hbase.io.hfile.ChecksumUtil: dataLength=262144, sizeWithHeader=131105, checksumType=CRC32C, file=hdfs://c302tst-offheap-reading/hbase/c302tst-offheap-reading/data/default/ycsb-test/7553c3f3fb00bb32d42a71f8a21d37ff/C/123a8968c0d641038c678117c3948bd6, offset=4161901960, headerSize=33, bytesPerChecksum=16384 2019-06-04,11:37:07,709 INFO org.apache.hadoop.hbase.io.hfile.ChecksumUtil: dataLength=262144, sizeWithHeader=131124, checksumType=CRC32C, file=hdfs://c302tst-offheap-reading/hbase/c302tst-offheap-reading/data/default/ycsb-test/f9c051dc047d4b6eaf6abe2dc4b91341/C/0499a0f39a38484eaf3a5272a8f3f58b, offset=5988442057, headerSize=33, bytesPerChecksum=16384 2019-06-04,11:37:07,709 INFO org.apache.hadoop.hbase.io.hfile.ChecksumUtil: dataLength=262144, sizeWithHeader=131125, checksumType=CRC32C, file=hdfs://c302tst-offheap-reading/hbase/c302tst-offheap-reading/data/default/ycsb-test/9dcc6c7b0e1eba716b0319ed62ee817c/C/dc2a502a15b047abb5454abbe38fb1d2, offset=2064659256, headerSize=33, bytesPerChecksum=16384 2019-06-04,11:37:07,709 INFO org.apache.hadoop.hbase.io.hfile.ChecksumUtil: dataLength=262144, sizeWithHeader=131135, checksumType=CRC32C, file=hdfs://c302tst-offheap-reading/hbase/c302tst-offheap-reading/data/default/ycsb-test/7553c3f3fb00bb32d42a71f8a21d37ff/C/123a8968c0d641038c678117c3948bd6, offset=412656269, headerSize=33, bytesPerChecksum=16384 2019-06-04,11:37:07,709 INFO org.apache.hadoop.hbase.io.hfile.ChecksumUtil: dataLength=262144, sizeWithHeader=131131, checksumType=CRC32C, file=hdfs://c302tst-offheap-reading/hbase/c302tst-offheap-reading/data/default/ycsb-test/7553c3f3fb00bb32d42a71f8a21d37ff/C/123a8968c0d641038c678117c3948bd6, offset=206262863, headerSize=33, bytesPerChecksum=16384 2019-06-04,11:37:07,709 INFO org.apache.hadoop.hbase.io.hfile.ChecksumUtil: dataLength=262144, sizeWithHeader=131137, checksumType=CRC32C, file=hdfs://c302tst-offheap-reading/hbase/c302tst-offheap-reading/data/default/ycsb-test/7553c3f3fb00bb32d42a71f8a21d37ff/C/123a8968c0d641038c678117c3948bd6, offset=4336370991, headerSize=33, bytesPerChecksum=16384 2019-06-04,11:37:07,709 INFO org.apache.hadoop.hbase.io.hfile.ChecksumUtil: dataLength=131072, sizeWithHeader=65670, checksumType=CRC32C, file=hdfs://c302tst-offheap-reading/hbase/c302tst-offheap-reading/data/default/ycsb-test/f9c051dc047d4b6eaf6abe2dc4b91341/C/0499a0f39a38484eaf3a5272a8f3f58b, offset=5892798979, headerSize=33, bytesPerChecksum=16384 2019-06-04,11:37:07,709 INFO org.apache.hadoop.hbase.io.hfile.ChecksumUtil: dataLength=131072, sizeWithHeader=65670, checksumType=CRC32C, file=hdfs://c302tst-offheap-reading/hbase/c302tst-offheap-reading/data/default/ycsb-test/85934f83f9ffa51342ea0201b58303fd/C/ce3f52695c2b43b1898fc9a266a67344, offset=1179439193, headerSize=33, bytesPerChecksum=16384 2019-06-04,11:37:07,709 INFO org.apache.hadoop.hbase.io.hfile.ChecksumUtil: dataLength=262144, sizeWithHeader=131105, checksumType=CRC32C, file=hdfs://c302tst-offheap-reading/hbase/c302tst-offheap-reading/data/default/ycsb-test/a24da982a9f2734994efac0e7c7b838d/C/6eda621c9ee847c281a6e944d86ffe38, offset=2896672688, headerSize=33, bytesPerChecksum=16384 2019-06-04,11:37:07,709 INFO org.apache.hadoop.hbase.io.hfile.ChecksumUtil: dataLength=131072, sizeWithHeader=65671, checksumType=CRC32C, file=hdfs://c302tst-offheap-reading/hbase/c302tst-offheap-reading/data/default/ycsb-test/9dcc6c7b0e1eba716b0319ed62ee817c/C/dc2a502a15b047abb5454abbe38fb1d2, offset=1947799767, headerSize=33, bytesPerChecksum=16384 {code} Seems many block have a diskSize>128KB. FYI [~anoop.hbase], [~ram_krish]. > There's still too much cpu wasting on validating checksum even if > buffer.size=65KB > ---------------------------------------------------------------------------------- > > Key: HBASE-22532 > URL: https://issues.apache.org/jira/browse/HBASE-22532 > Project: HBase > Issue Type: Sub-task > Reporter: Zheng Hu > Assignee: Zheng Hu > Priority: Major > Attachments: async-prof-pid-27827-cpu-3.svg > > > After disabled the block cache, and with the following config: > {code} > # Disable the block cache > hfile.block.cache.size=0 > hbase.ipc.server.allocator.buffer.size=66560 > hbase.ipc.server.reservoir.minimal.allocating.size=0 > {code} > The ByteBuff for block should be expected to be a SingleByteBuff, which will > use the hadoop native lib to validate the checksum, while in the cpu flame > graph > [async-prof-pid-27827-cpu-3.svg|https://issues.apache.org/jira/secure/attachment/12970683/async-prof-pid-27827-cpu-3.svg], > we can still see that about 32% CPU wasted on PureJavaCrc32#update, which > means it's not using the faster hadoop native lib. -- This message was sent by Atlassian JIRA (v7.6.3#76005)