Hen1ng commented on PR #1722:
URL: https://github.com/apache/fury/pull/1722#issuecomment-2340216556
Benchmark (size) (tracking) Mode Cnt Score
Error Units
HnBenchmark.testGeneralChunkWrite 64 true avgt 15 986.457
± 64.592 ns/op
HnBenchmark.testGeneralChunkWrite 64 false avgt 15 924.420
± 201.541 ns/op
HnBenchmark.testGeneralChunkWrite 128 true avgt 15 2029.786
± 95.281 ns/op
HnBenchmark.testGeneralChunkWrite 128 false avgt 15 1992.186
± 173.750 ns/op
HnBenchmark.testGeneralChunkWrite 256 true avgt 15 4305.362
± 326.161 ns/op
HnBenchmark.testGeneralChunkWrite 256 false avgt 15 3808.830
± 120.738 ns/op
HnBenchmark.testGeneralChunkWrite 512 true avgt 15 10309.996
± 264.954 ns/op
HnBenchmark.testGeneralChunkWrite 512 false avgt 15 9160.058
± 1075.136 ns/op
HnBenchmark.testGeneralWrite 64 true avgt 15 1384.715
± 388.240 ns/op
HnBenchmark.testGeneralWrite 64 false avgt 15 1522.562
± 617.019 ns/op
HnBenchmark.testGeneralWrite 128 true avgt 15 2718.254
± 666.551 ns/op
HnBenchmark.testGeneralWrite 128 false avgt 15 2916.637
± 838.792 ns/op
HnBenchmark.testGeneralWrite 256 true avgt 15 6086.414
± 349.734 ns/op
HnBenchmark.testGeneralWrite 256 false avgt 15 5871.677
± 672.658 ns/op
HnBenchmark.testGeneralWrite 512 true avgt 15 11769.064
± 995.204 ns/op
HnBenchmark.testGeneralWrite 512 false avgt 15 12268.517
± 1140.401 ns/op
generalWrite benchmark compare, benchmark code
`
@State(Scope.Benchmark)
@BenchmarkMode({Mode.AverageTime})
@OutputTimeUnit(TimeUnit.NANOSECONDS)
@Warmup(iterations = 3, time = 3)
@Measurement(iterations = 3, time = 5)
@Threads(1)
@Fork(5)
public class HnBenchmark {
private Fury furyMapChunk;
private Fury fury;
Map<Integer, Integer> map;
MapBean mapBean = new MapBean();
Map<BeanB, BeanB> beanBBeanBMap = new HashMap<>();
Bean bean;
@Param({"64", "128", "256", "512"})
int size;
@Param({"true", "false"})
boolean tracking = false;
@Setup(Level.Trial)
public void init() {
furyMapChunk =
Fury.builder()
.withLanguage(Language.JAVA)
.withRefTracking(tracking)
.withCodegen(false)
.withChunkSerializeMapEnable(true)
.requireClassRegistration(false)
.build();
fury =
Fury.builder()
.withLanguage(Language.JAVA)
.withRefTracking(tracking)
.withCodegen(false)
.withChunkSerializeMapEnable(false)
.requireClassRegistration(false)
.build();
furyCompatible =
Fury.builder()
.withLanguage(Language.JAVA)
.withRefTracking(true)
.withCodegen(false)
.withCompatibleMode(CompatibleMode.COMPATIBLE)
.withChunkSerializeMapEnable(false)
.requireClassRegistration(false)
.build();
map = new HashMap<>(size);
for (int i = 0; i < size; i++) {
map.put(i, i);
beanBBeanBMap.put(new BeanB(), new BeanB());
}
bean = new Bean();
bean.setMap(map);
mapBean.setMap(beanBBeanBMap);
}
@Benchmark
public void testGeneralChunkWrite() {
final byte[] serialize = furyMapChunk.serialize(map);
}
@Benchmark
public void testGeneralWrite() {
final byte[] serialize = fury.serialize(map);
}
`
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]