jjzjj

MyBenchmark

全部标签

java - 为什么使用 for 循环的倒数总和比流快 400 倍?

此代码对计算double[]元素的倒数和的3种不同方法进行了基准测试。一个for循环Java8流colt数学库使用简单for循环的计算比使用流的计算快约400倍的原因是什么?(或者基准测试代码有什么需要改进的地方吗?或者使用流来更快地计算它的方法?)代码:importjava.util.Arrays;importjava.util.List;importjava.util.Map;importjava.util.concurrent.TimeUnit;importjava.util.stream.Collectors;importjava.util.stream.IntStream;i

java - 比较 Collectors.summingLong 和 Collectors.counting 的性能

基准测试在intelcorei5,Ubuntu下运行javaversion"1.8.0_144"Java(TM)SERuntimeEnvironment(build1.8.0_144-b01)JavaHotSpot(TM)64-BitServerVM(build25.144-b01,mixedmode)我正在比较Collectors.counting和Collectors.summingLong(x->1L)的性能。这是基准:publicListints=newArrayList();Collectorcounting=Collectors.counting();Collectorsu

java - 从 jdk1.7.0_25 迁移到 jdk1.7.0_40 时的性能回归

我正在将Spring3.1.2批处理应用程序从jdk1.7.0_25迁移到jdk1.7.0_40x64和Oracle。使用Sun的OperatingSystemMXBean.getProcessCpuTime()作为性能指标,结果显示性能降低了2.5倍(即,我在u25上运行的应用程序要快得多)。据我所知,这不是由于java.util.HashMap和java.util.ArrayListchanges因为在使用u25的HashMap和ArrayList类引导u40时结果是相同的,而且这些变化对于这种差异来说太小了。这也与HashMap并发性无关regression因为应用程序是单线程的