1# Caliper global config file 2# Users' ~/.caliper/config settings may override these 3 4###################### 5# VM CONFIGURATION 6###################### 7 8# This directory can be automatically prepended to non-absolute VM paths 9vm.baseDirectory=/usr/local/buildtools/java 10 11# Standard vm parameter options. 12vm.args= 13 14# Common configurations 15 16vm.jdk-32-client.home=jdk-32 17vm.jdk-32-client.args=-d32 -client 18 19vm.jdk-32-server.home=jdk-32 20vm.jdk-32-server.args=-d32 -server 21 22vm.jdk-64-compressed.home=jdk-64 23vm.jdk-64-compressed.args=-d64 -XX:+UseCompressedOops 24 25vm.jdk-64-uncompressed.home=jdk-64 26vm.jdk-64-uncompressed.args=-d64 -XX:-UseCompressedOops 27 28 29###################### 30# INSTRUMENT CONFIG 31###################### 32 33# To define new instrument configurations, provide an "instrument.<name>.class" property 34# pointing to a concrete class that extends com.google.caliper.runner.Instrument, and add 35# whichever other options it supports using "instrument.<name>.<optionName>=<value>". 36 37# Instrument "runtime" 38instrument.runtime.class=com.google.caliper.runner.RuntimeInstrument 39 40# Do not report any measurements from before this minimum time has elapsed 41instrument.runtime.options.warmup=10s 42# Interrupt warmup when it has been running for this much wall-clock time, 43# even if the measured warmup time (above) hasn't been reached. This prevents fast benchmarks 44# with high per-measurement overhead (e.g. long @BeforeRep and @AfterRep methods) 45# from taking too long to warm up. 46instrument.runtime.options.maxWarmupWallTime=10m 47 48# Caliper chooses rep counts such that the total timing interval comes out near this value. 49# Higher values take longer, but are more precise (less vulnerable to fixed costs) 50instrument.runtime.options.timingInterval=500ms 51 52# Caliper ultimately records only the final N measurements, where N is this value. 53instrument.runtime.options.measurements=9 54 55# Run GC before every measurement? 56instrument.runtime.options.gcBeforeEach=true 57 58# Whether or not to make suggestions about whether a benchmark should be a pico/micro/macro 59# benchmark. Note that this will not effect errors that result from benchmarks that are unable to 60# take proper measurements due to granularity issues. 61instrument.runtime.options.suggestGranularity=true 62 63# Instrument "arbitrary" 64instrument.arbitrary.class=com.google.caliper.runner.ArbitraryMeasurementInstrument 65 66# Run GC before every measurement? 67instrument.arbitrary.options.gcBeforeEach=false 68 69# Instrument "allocation" 70instrument.allocation.class=com.google.caliper.runner.AllocationInstrument 71 72# Track and log a summary of every individual allocation. This enables better error messages for 73# buggy benchmarks and prints detailed reports of allocation behavior in verbose mode. N.B. This 74# can increase the memory usage of the allocation worker significantly, so it is not recommended 75# for benchmarks that do a lot of allocation. 76instrument.allocation.options.trackAllocations=false 77 78 79# Sets the maximum number of trials that can run in parallel. 80runner.maxParallelism=2 81 82###################### 83# RESULTS PROCESSORS 84###################### 85 86results.file.class=com.google.caliper.runner.OutputFileDumper 87 88results.upload.class=com.google.caliper.runner.HttpUploader 89 90results.upload.options.url=https://microbenchmarks.appspot.com/ 91