java类org.openjdk.jmh.annotations.OperationsPerInvocation的实例源码

ValidationBenchmarks.java 文件源码 项目:direwolves 阅读 39 收藏 0 点赞 0 评论 0
@Benchmark
@BenchmarkMode(Mode.Throughput)
@OutputTimeUnit(TimeUnit.MILLISECONDS)
@Fork(1)
@OperationsPerInvocation(10000)
public void testApi() {
  Map<String, Object> data = new HashMap<String, Object>();
  data.put("encryptKey", "0000000000000000");
  data.put("barcode", "LH10312ACCF23C4F3A5");

  Multimap<String, Rule> rules = ArrayListMultimap.create();

  rules.put("barcode", Rule.required());
  rules.put("barcode", Rule.regex("[0-9A-F]{16}"));
  rules.put("encryptKey", Rule.required());
  rules.put("encryptKey", Rule.regex("LH[0-7][0-9a-fA-F]{2}[0-5][0-4][0-9a-fA-F]{12}"));
  try {
    Validations.validate(data, rules);
  } catch (Exception e) {
  }

}
ValidationBenchmarks.java 文件源码 项目:direwolves 阅读 32 收藏 0 点赞 0 评论 0
@Benchmark
@BenchmarkMode(Mode.AverageTime)
@OutputTimeUnit(TimeUnit.NANOSECONDS)
@Fork(1)
@OperationsPerInvocation(10000)
public void testAverage() {
  Map<String, Object> data = new HashMap<String, Object>();
  data.put("encryptKey", "0000000000000000");
  data.put("barcode", "LH10312ACCF23C4F3A5");

  Multimap<String, Rule> rules = ArrayListMultimap.create();

  rules.put("barcode", Rule.required());
  rules.put("barcode", Rule.regex("[0-9A-F]{16}"));
  rules.put("encryptKey", Rule.required());
  rules.put("encryptKey", Rule.regex("LH[0-7][0-9a-fA-F]{2}[0-5][0-4][0-9a-fA-F]{12}"));
  try {
    Validations.validate(data, rules);
  } catch (Exception e) {
  }
}
BenchmarkGroupByHash.java 文件源码 项目:presto 阅读 31 收藏 0 点赞 0 评论 0
@Benchmark
@OperationsPerInvocation(POSITIONS)
public Object groupByHashPreCompute(BenchmarkData data)
{
    GroupByHash groupByHash = new MultiChannelGroupByHash(data.getTypes(), data.getChannels(), Optional.empty(), data.getHashChannel(), EXPECTED_SIZE, false);
    data.getPages().forEach(groupByHash::getGroupIds);

    ImmutableList.Builder<Page> pages = ImmutableList.builder();
    PageBuilder pageBuilder = new PageBuilder(groupByHash.getTypes());
    for (int groupId = 0; groupId < groupByHash.getGroupCount(); groupId++) {
        pageBuilder.declarePosition();
        groupByHash.appendValuesTo(groupId, pageBuilder, 0);
        if (pageBuilder.isFull()) {
            pages.add(pageBuilder.build());
            pageBuilder.reset();
        }
    }
    pages.add(pageBuilder.build());
    return pageBuilder.build();
}
BenchmarkGroupByHash.java 文件源码 项目:presto 阅读 26 收藏 0 点赞 0 评论 0
@Benchmark
@OperationsPerInvocation(POSITIONS)
public Object addPagePreCompute(BenchmarkData data)
{
    GroupByHash groupByHash = new MultiChannelGroupByHash(data.getTypes(), data.getChannels(), Optional.empty(), data.getHashChannel(), EXPECTED_SIZE, false);
    data.getPages().forEach(groupByHash::addPage);

    ImmutableList.Builder<Page> pages = ImmutableList.builder();
    PageBuilder pageBuilder = new PageBuilder(groupByHash.getTypes());
    for (int groupId = 0; groupId < groupByHash.getGroupCount(); groupId++) {
        pageBuilder.declarePosition();
        groupByHash.appendValuesTo(groupId, pageBuilder, 0);
        if (pageBuilder.isFull()) {
            pages.add(pageBuilder.build());
            pageBuilder.reset();
        }
    }
    pages.add(pageBuilder.build());
    return pageBuilder.build();
}
BenchmarkGroupByHash.java 文件源码 项目:presto 阅读 34 收藏 0 点赞 0 评论 0
@Benchmark
@OperationsPerInvocation(POSITIONS)
public Object bigintGroupByHash(SingleChannelBenchmarkData data)
{
    GroupByHash groupByHash = new BigintGroupByHash(0, Optional.empty(), data.getHashEnabled(), EXPECTED_SIZE);
    data.getPages().forEach(groupByHash::addPage);

    ImmutableList.Builder<Page> pages = ImmutableList.builder();
    PageBuilder pageBuilder = new PageBuilder(groupByHash.getTypes());
    for (int groupId = 0; groupId < groupByHash.getGroupCount(); groupId++) {
        pageBuilder.declarePosition();
        groupByHash.appendValuesTo(groupId, pageBuilder, 0);
        if (pageBuilder.isFull()) {
            pages.add(pageBuilder.build());
            pageBuilder.reset();
        }
    }
    pages.add(pageBuilder.build());
    return pageBuilder.build();
}
FasterByteComparisonBenchmark.java 文件源码 项目:faster 阅读 32 收藏 0 点赞 0 评论 0
@Benchmark
@OperationsPerInvocation(COMPARISONS_PER_INVOCATION)
public final void compareOneByte(final Blackhole blackhole) {
    int res = 0;
    for (int i = 0; i < COMPARISONS_PER_INVOCATION; ++i) {
        res += FasterByteComparison.compare(ONE_BYTE, MANY_BYTES);
    }
    blackhole.consume(res);
}
FasterByteComparisonBenchmark.java 文件源码 项目:faster 阅读 27 收藏 0 点赞 0 评论 0
@Benchmark
@OperationsPerInvocation(COMPARISONS_PER_INVOCATION)
public final void compareTwoBytes(final Blackhole blackhole) {
    int res = 0;
    for (int i = 0; i < COMPARISONS_PER_INVOCATION; ++i) {
        res += FasterByteComparison.compare(TWO_BYTES, MANY_BYTES);
    }
    blackhole.consume(res);
}
FasterByteComparisonBenchmark.java 文件源码 项目:faster 阅读 30 收藏 0 点赞 0 评论 0
@Benchmark
@OperationsPerInvocation(COMPARISONS_PER_INVOCATION)
public final void compareThreeBytes(final Blackhole blackhole) {
    int res = 0;
    for (int i = 0; i < COMPARISONS_PER_INVOCATION; ++i) {
        res += FasterByteComparison.compare(THREE_BYTES, MANY_BYTES);
    }
    blackhole.consume(res);
}
FasterByteComparisonBenchmark.java 文件源码 项目:faster 阅读 34 收藏 0 点赞 0 评论 0
@Benchmark
@OperationsPerInvocation(COMPARISONS_PER_INVOCATION)
public final void compareFourBytes(final Blackhole blackhole) {
    int res = 0;
    for (int i = 0; i < COMPARISONS_PER_INVOCATION; ++i) {
        res += FasterByteComparison.compare(FOUR_BYTES, MANY_BYTES);
    }
    blackhole.consume(res);
}
FasterByteComparisonBenchmark.java 文件源码 项目:faster 阅读 39 收藏 0 点赞 0 评论 0
@Benchmark
@OperationsPerInvocation(COMPARISONS_PER_INVOCATION)
public final void compareFiveBytes(final Blackhole blackhole) {
    int res = 0;
    for (int i = 0; i < COMPARISONS_PER_INVOCATION; ++i) {
        res += FasterByteComparison.compare(FIVE_BYTES, MANY_BYTES);
    }
    blackhole.consume(res);
}
FasterByteComparisonBenchmark.java 文件源码 项目:faster 阅读 36 收藏 0 点赞 0 评论 0
@Benchmark
@OperationsPerInvocation(COMPARISONS_PER_INVOCATION)
public final void compareSixBytes(final Blackhole blackhole) {
    int res = 0;
    for (int i = 0; i < COMPARISONS_PER_INVOCATION; ++i) {
        res += FasterByteComparison.compare(SIX_BYTES, MANY_BYTES);
    }
    blackhole.consume(res);
}
FasterByteComparisonBenchmark.java 文件源码 项目:faster 阅读 31 收藏 0 点赞 0 评论 0
@Benchmark
@OperationsPerInvocation(COMPARISONS_PER_INVOCATION)
public final void compareSevenBytes(final Blackhole blackhole) {
    int res = 0;
    for (int i = 0; i < COMPARISONS_PER_INVOCATION; ++i) {
        res += FasterByteComparison.compare(SEVEN_BYTES, MANY_BYTES);
    }
    blackhole.consume(res);
}
FasterByteComparisonBenchmark.java 文件源码 项目:faster 阅读 55 收藏 0 点赞 0 评论 0
@Benchmark
@OperationsPerInvocation(COMPARISONS_PER_INVOCATION)
public final void compareEightBytes(final Blackhole blackhole) {
    int res = 0;
    for (int i = 0; i < COMPARISONS_PER_INVOCATION; ++i) {
        res += FasterByteComparison.compare(EIGHT_BYTES, MANY_BYTES);
    }
    blackhole.consume(res);
}
FasterByteComparisonBenchmark.java 文件源码 项目:faster 阅读 28 收藏 0 点赞 0 评论 0
@Benchmark
@OperationsPerInvocation(COMPARISONS_PER_INVOCATION)
public final void compareNineBytes(final Blackhole blackhole) {
    int res = 0;
    for (int i = 0; i < COMPARISONS_PER_INVOCATION; ++i) {
        res += FasterByteComparison.compare(NINE_BYTES, MANY_BYTES);
    }
    blackhole.consume(res);
}
FasterByteComparisonBenchmark.java 文件源码 项目:faster 阅读 61 收藏 0 点赞 0 评论 0
@Benchmark
@OperationsPerInvocation(COMPARISONS_PER_INVOCATION)
public final void compareTenBytes(final Blackhole blackhole) {
    int res = 0;
    for (int i = 0; i < COMPARISONS_PER_INVOCATION; ++i) {
        res += FasterByteComparison.compare(TEN_BYTES, MANY_BYTES);
    }
    blackhole.consume(res);
}
FasterByteComparisonBenchmark.java 文件源码 项目:faster 阅读 30 收藏 0 点赞 0 评论 0
@Benchmark
@OperationsPerInvocation(COMPARISONS_PER_INVOCATION)
public final void compareThirtyTwoBytes(final Blackhole blackhole) {
    int res = 0;
    for (int i = 0; i < COMPARISONS_PER_INVOCATION; ++i) {
        res += FasterByteComparison.compare(THIRTY_TWO_BYTES, MANY_BYTES);
    }
    blackhole.consume(res);
}
RecordBatchIterationBenchmark.java 文件源码 项目:kafka-0.11.0.0-src-with-comment 阅读 30 收藏 0 点赞 0 评论 0
@OperationsPerInvocation(value = batchCount)
@Benchmark
public void measureStreamingIteratorForVariableBatchSize(Blackhole bh) throws IOException {
    for (int i = 0; i < batchCount; ++i) {
        for (RecordBatch batch : MemoryRecords.readableRecords(batchBuffers[i].duplicate()).batches()) {
            try (CloseableIterator<Record> iterator = batch.streamingIterator(bufferSupplier)) {
                while (iterator.hasNext())
                    bh.consume(iterator.next());
            }
        }
    }
}
ArrayDuplicationBenchmark.java 文件源码 项目:openjdk-jdk10 阅读 26 收藏 0 点赞 0 评论 0
@Benchmark
@OperationsPerInvocation(TESTSIZE)
public Object[] normalArraycopy() {
    int j = 0;
    for (int i = 0; i < TESTSIZE; i++) {
        dummy[j++] = normalArraycopy(testObjectArray[i]);
    }
    return dummy;
}
ArrayDuplicationBenchmark.java 文件源码 项目:openjdk-jdk10 阅读 26 收藏 0 点赞 0 评论 0
@Benchmark
@OperationsPerInvocation(TESTSIZE)
public Object[] arraysCopyOf() {
    int j = 0;
    for (int i = 0; i < TESTSIZE; i++) {
        dummy[j++] = arraysCopyOf(testObjectArray[i]);
    }
    return dummy;
}
ArrayDuplicationBenchmark.java 文件源码 项目:openjdk-jdk10 阅读 32 收藏 0 点赞 0 评论 0
@Benchmark
@OperationsPerInvocation(TESTSIZE)
public Object[] cloneObjectArray() {
    int j = 0;
    for (int i = 0; i < TESTSIZE; i++) {
        dummy[j++] = arraysClone(testObjectArray[i]);
    }
    return dummy;
}
ArrayDuplicationBenchmark.java 文件源码 项目:graal-core 阅读 31 收藏 0 点赞 0 评论 0
@Benchmark
@OperationsPerInvocation(TESTSIZE)
public Object[] normalArraycopy() {
    int j = 0;
    for (int i = 0; i < TESTSIZE; i++) {
        dummy[j++] = normalArraycopy(testObjectArray[i]);
    }
    return dummy;
}
ArrayDuplicationBenchmark.java 文件源码 项目:graal-core 阅读 36 收藏 0 点赞 0 评论 0
@Benchmark
@OperationsPerInvocation(TESTSIZE)
public Object[] arraysCopyOf() {
    int j = 0;
    for (int i = 0; i < TESTSIZE; i++) {
        dummy[j++] = arraysCopyOf(testObjectArray[i]);
    }
    return dummy;
}
ArrayDuplicationBenchmark.java 文件源码 项目:graal-core 阅读 31 收藏 0 点赞 0 评论 0
@Benchmark
@OperationsPerInvocation(TESTSIZE)
public Object[] cloneObjectArray() {
    int j = 0;
    for (int i = 0; i < TESTSIZE; i++) {
        dummy[j++] = arraysClone(testObjectArray[i]);
    }
    return dummy;
}
BenchmarkDoubleDiv.java 文件源码 项目:jvm-primitive-ops-benchmarks 阅读 28 收藏 0 点赞 0 评论 0
@Benchmark
@OperationsPerInvocation(10)
public double testDivWith10SummedFields() {
    double result = 0;
    for (int i = 0; i < 10; ++i) {
        result += c / d;
    }
    return result;
}
BenchmarkDoubleDiv.java 文件源码 项目:jvm-primitive-ops-benchmarks 阅读 31 收藏 0 点赞 0 评论 0
@Benchmark
@OperationsPerInvocation(100)
public double testDivWith100SummedFields() {
    double result = 0;
    for (int i = 0; i < 100; ++i) {
        result += c / d;
    }
    return result;
}
BenchmarkDoubleDiv.java 文件源码 项目:jvm-primitive-ops-benchmarks 阅读 25 收藏 0 点赞 0 评论 0
@Benchmark
@OperationsPerInvocation(10)
public long testDivWith10XoredFields() {
    long result = 0;
    for (int i = 0; i < 10; ++i) {
        result ^= Double.doubleToRawLongBits(c / d);
    }
    return result;
}
BenchmarkDoubleDiv.java 文件源码 项目:jvm-primitive-ops-benchmarks 阅读 31 收藏 0 点赞 0 评论 0
@Benchmark
@OperationsPerInvocation(100)
public double testDivWith100XoredFields() {
    long result = 0;
    for (int i = 0; i < 100; ++i) {
        result ^= Double.doubleToRawLongBits(c / d);
    }
    return result;
}
BenchmarkDoubleDiv.java 文件源码 项目:jvm-primitive-ops-benchmarks 阅读 26 收藏 0 点赞 0 评论 0
@Benchmark
@OperationsPerInvocation(10)
public double[] testDivWith10Fields() {
    double[] result = new double[10];
    for (int i = 0; i < 10; ++i) {
        result[i] = as[i] / bs[i];
    }
    return result;
}
BenchmarkDoubleDiv.java 文件源码 项目:jvm-primitive-ops-benchmarks 阅读 37 收藏 0 点赞 0 评论 0
@Benchmark
@OperationsPerInvocation(10)
public double[] testDivWith10FieldsNoAllocation() {
    for (int i = 0; i < 10; ++i) {
        cs[i] = as[i] / bs[i];
    }
    return cs;
}
SingleThreadedOffer.java 文件源码 项目:lin-check 阅读 27 收藏 0 点赞 0 评论 0
@GenerateMicroBenchmark
@OperationsPerInvocation(CAPACITY)
public void offer()
{
    final Queue<Integer> lq = q;
    for (int i = 0; i < CAPACITY; i++)
    {
        lq.offer(TOKEN);
    }
}


问题


面经


文章

微信
公众号

扫码关注公众号