ByteBufCopyBenchmark Class — netty Architecture
Architecture documentation for the ByteBufCopyBenchmark class in ByteBufCopyBenchmark.java from the netty codebase.
Entity Profile
Dependency Diagram
graph TD edbe5e35_ac81_4255_26e1_00e424fcd354["ByteBufCopyBenchmark"] dbd247ce_fd16_cc8f_bb2b_c369467a4180["ByteBufCopyBenchmark.java"] edbe5e35_ac81_4255_26e1_00e424fcd354 -->|defined in| dbd247ce_fd16_cc8f_bb2b_c369467a4180 a804320a_3738_3f3d_8da4_cf92f814660f["setup()"] edbe5e35_ac81_4255_26e1_00e424fcd354 -->|method| a804320a_3738_3f3d_8da4_cf92f814660f e852bfb8_0d26_d838_d270_0154b8751609["ByteBuf()"] edbe5e35_ac81_4255_26e1_00e424fcd354 -->|method| e852bfb8_0d26_d838_d270_0154b8751609 69f210be_888b_ce63_7108_5e543522d2a0["tearDown()"] edbe5e35_ac81_4255_26e1_00e424fcd354 -->|method| 69f210be_888b_ce63_7108_5e543522d2a0
Relationship Graph
Source Code
microbench/src/main/java/io/netty/microbench/buffer/ByteBufCopyBenchmark.java lines 30–135
public class ByteBufCopyBenchmark extends AbstractMicrobenchmark {
static {
System.setProperty("io.netty.buffer.bytebuf.checkAccessible", "false");
}
@Param({
"7",
"36",
"128",
"512",
})
private int size;
@Param({
"true",
"false",
})
private boolean directByteBuf;
@Param({
"true",
"false",
})
private boolean directByteBuffer;
@Param({
"false",
"true"
})
private boolean readonlyByteBuffer;
@Param({
"true",
"false",
})
private boolean pooledByteBuf;
@Param({
"true",
"false",
})
private boolean alignedCopyByteBuffer;
@Param({
"true",
"false",
})
private boolean alignedCopyByteBuf;
@Param({
"true",
"false",
})
private boolean nativeOrderByteBuffer;
private ByteBuffer byteBuffer;
private ByteBuf buffer;
private int index;
@Setup
public void setup() {
final int requiredByteBufSize = alignedCopyByteBuf ? size : size + 1;
final int requiredByteBufferSize = alignedCopyByteBuffer ? size : size + 1;
byteBuffer = directByteBuffer ?
ByteBuffer.allocateDirect(requiredByteBufferSize) :
ByteBuffer.allocate(requiredByteBufferSize);
if (pooledByteBuf) {
buffer = directByteBuf ?
ByteBufAllocator.DEFAULT.directBuffer(requiredByteBufSize, requiredByteBufSize) :
ByteBufAllocator.DEFAULT.heapBuffer(requiredByteBufSize, requiredByteBufSize);
} else {
buffer = directByteBuf ?
Unpooled.directBuffer(requiredByteBufSize, requiredByteBufSize) :
Unpooled.buffer(requiredByteBufSize, requiredByteBufSize);
}
if (!alignedCopyByteBuffer) {
byteBuffer.position(1);
byteBuffer = byteBuffer.slice();
}
if (readonlyByteBuffer) {
byteBuffer = byteBuffer.asReadOnlyBuffer();
Source
Frequently Asked Questions
What is the ByteBufCopyBenchmark class?
ByteBufCopyBenchmark is a class in the netty codebase, defined in microbench/src/main/java/io/netty/microbench/buffer/ByteBufCopyBenchmark.java.
Where is ByteBufCopyBenchmark defined?
ByteBufCopyBenchmark is defined in microbench/src/main/java/io/netty/microbench/buffer/ByteBufCopyBenchmark.java at line 30.
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free