Divan Benchmark Overview

Bars show Divan median times converted to ns/op. Lower is better. The final benchmark path segment is treated as the comparison legend.

construct

Median table
caselegendmedian ns/oprelativesamplesiters
adjacent_chain_64range_set_blaze193.0000001.000x100800
adjacent_chain_64int_interval_set300.6000001.558x100100
mixed_unsorted_64range_set_blaze750.6000001.000x100100
mixed_unsorted_64int_interval_set981.6000001.308x100100
reversed_disjoint_64int_interval_set500.6000001.000x100200
reversed_disjoint_64range_set_blaze1842.0000003.680x100100
sorted_disjoint_64int_interval_set470.6000001.000x100200
sorted_disjoint_64range_set_blaze1757.0000003.734x100100

contains_interval

Median table
caselegendmedian ns/oprelativesamplesiters
contained_firstint_interval_set8.8840001.000x10025600
contained_firstrange_collections35.9600004.048x1006400
contained_firstrange_set_blaze1050.000000118.190x100400
contained_lastint_interval_set11.4000001.000x10025600
contained_lastrange_collections55.4300004.862x1006400
contained_lastrange_set_blaze1294.000000113.509x100200
contained_middleint_interval_set11.4600001.000x10025600
contained_middlerange_collections55.7500004.865x1006400
contained_middlerange_set_blaze1125.00000098.168x100400
crosses_gapint_interval_set11.5000001.000x10025600
crosses_gaprange_collections51.1300004.446x1006400
crosses_gaprange_set_blaze788.40000068.557x100400
inside_gapint_interval_set11.3800001.000x10025600
inside_gaprange_collections28.8200002.533x10012800
inside_gaprange_set_blaze795.90000069.938x100400
outside_rightint_interval_set11.5000001.000x10025600
outside_rightrange_collections30.0000002.609x10012800
outside_rightrange_set_blaze1311.000000114.000x100200

contains_point

Median table
caselegendmedian ns/oprelativesamplesiters
after_allint_interval_set7.7470001.000x10025600
after_allrange_collections8.6890001.122x10025600
after_allrange_set_blaze12.9500001.672x10012800
before_allrange_set_blaze6.3410001.000x10025600
before_allint_interval_set6.8490001.080x10025600
before_allrange_collections8.6500001.364x10025600
gap_firstrange_set_blaze7.3570001.000x10025600
gap_firstint_interval_set7.8270001.064x10025600
gap_firstrange_collections8.7670001.192x10025600
gap_lastint_interval_set7.7470001.000x10025600
gap_lastrange_collections8.7240001.126x10025600
gap_lastrange_set_blaze12.8700001.661x10012800
gap_middleint_interval_set7.7900001.000x10025600
gap_middlerange_collections8.7280001.120x10025600
gap_middlerange_set_blaze16.0700002.063x10012800
hit_firstrange_set_blaze7.3170001.000x10025600
hit_firstint_interval_set7.7470001.059x10025600
hit_firstrange_collections8.6460001.182x10025600
hit_lastint_interval_set7.7470001.000x10025600
hit_lastrange_collections8.6890001.122x10025600
hit_lastrange_set_blaze13.4900001.741x10012800
hit_middleint_interval_set7.7080001.000x10025600
hit_middlerange_collections8.6850001.127x10025600
hit_middlerange_set_blaze16.0700002.085x10012800

coverage_ratio_f32_of

Median table
caselegendmedian ns/oprelativesamplesiters
covers_all_spanint_interval_set345.8000001.000x100800
covers_middle_16int_interval_set153.3000001.000x1001600
crosses_gap_middleint_interval_set61.3000001.000x1006400
fully_covered_middleint_interval_set58.6500001.000x1006400
mostly_outsideint_interval_set346.4000001.000x100800
uncovered_gapint_interval_set31.1000001.000x1006400

covered_len_of

Median table
caselegendmedian ns/oprelativesamplesiters
adjacent_before_firstint_interval_set30.7900001.000x1006400
contained_singleint_interval_set60.3600001.000x1003200
cover_allint_interval_set342.6000001.000x100400
disjoint_beforeint_interval_set31.2500001.000x1006400
span_many_middleint_interval_set276.4000001.000x100400
span_single_and_gapint_interval_set63.1800001.000x1003200

difference_with_interval

Median table
caselegendmedian ns/oprelativesamplesiters
clip_middle_spanint_interval_set82.2700001.000x1003200
clip_middle_spanrange_collections663.1000008.060x100200
clip_middle_spanrange_set_blaze1321.00000016.057x100100
disjoint_beforeint_interval_set19.9100001.000x10012800
disjoint_beforerange_collections157.2000007.896x100800
disjoint_beforerange_set_blaze1522.00000076.444x100100
disjoint_gap_middleint_interval_set17.6400001.000x10012800
disjoint_gap_middlerange_collections590.10000033.452x100200
disjoint_gap_middlerange_set_blaze1802.000000102.154x100100
remove_first_exactint_interval_set87.5800001.000x1003200
remove_first_exactrange_collections153.6000001.754x100800
remove_first_exactrange_set_blaze1512.00000017.264x100100
remove_middle_spanint_interval_set80.0800001.000x1003200
remove_middle_spanrange_collections625.6000007.812x100200
remove_middle_spanrange_set_blaze1236.00000015.435x100200
split_middleint_interval_set83.5200001.000x1003200
split_middlerange_collections665.6000007.969x100200
split_middlerange_set_blaze1882.00000022.534x100100
trim_middle_leftint_interval_set81.6500001.000x1003200
trim_middle_leftrange_collections610.6000007.478x100200
trim_middle_leftrange_set_blaze1822.00000022.315x100100

difference_with_set

Median table
caselegendmedian ns/oprelativesamplesiters
equal_64int_interval_set164.9000001.000x1001600
equal_64range_collections530.4000003.216x100400
equal_64range_set_blaze1922.00000011.656x100100
interleaved_disjoint_64int_interval_set213.7000001.000x100800
interleaved_disjoint_64range_collections1281.0000005.994x100100
interleaved_disjoint_64range_set_blaze3034.00000014.197x100100
punch_middle_64int_interval_set340.1000001.000x100400
punch_middle_64range_collections1601.0000004.707x100100
punch_middle_64range_set_blaze3985.00000011.717x100100
trim_right_64int_interval_set220.0000001.000x100800
trim_right_64range_collections1351.0000006.141x100100
trim_right_64range_set_blaze3024.00000013.745x100100

intersection_with_interval

Median table
caselegendmedian ns/oprelativesamplesiters
contained_middleint_interval_set51.4400001.000x1006400
contained_middlerange_collections251.2000004.883x100800
contained_middlerange_set_blaze1371.00000026.652x100100
covers_allint_interval_set532.9000001.000x100400
covers_allrange_collections1484.0000002.785x100200
covers_allrange_set_blaze2803.0000005.260x100100
covers_middle_16int_interval_set243.1000001.000x1001600
covers_middle_16range_collections808.4000003.325x100400
covers_middle_16range_set_blaze1811.0000007.450x100100
crosses_gap_middleint_interval_set99.1500001.000x1001600
crosses_gap_middlerange_collections439.0000004.428x100800
crosses_gap_middlerange_set_blaze1050.00000010.590x100400
disjoint_leftrange_collections22.6100001.000x10012800
disjoint_leftint_interval_set30.8200001.363x10012800
disjoint_leftrange_set_blaze1057.00000046.749x100400
inside_gap_middleint_interval_set44.4000001.000x1006400
inside_gap_middlerange_collections243.1000005.475x1001600
inside_gap_middlerange_set_blaze1271.00000028.626x100200

intersection_with_set

Median table
caselegendmedian ns/oprelativesamplesiters
alternating_64x32int_interval_set156.1000001.000x1001600
alternating_64x32range_collections1392.0000008.917x100100
alternating_64x32range_set_blaze2874.00000018.411x100100
broad_middle_64x1int_interval_set466.5000001.000x100800
broad_middle_64x1range_collections1036.0000002.221x100400
broad_middle_64x1range_set_blaze2228.0000004.776x100100
disjoint_64x64int_interval_set229.4000001.000x1001600
disjoint_64x64range_collections864.7000003.769x100400
disjoint_64x64range_set_blaze2789.00000012.158x100100
equal_64x64int_interval_set194.5000001.000x1001600
equal_64x64range_collections1729.0000008.889x100200
equal_64x64range_set_blaze4086.00000021.008x100100
partial_overlap_64x64int_interval_set501.0000001.000x100800
partial_overlap_64x64range_collections2272.0000004.535x100200
partial_overlap_64x64range_set_blaze3995.0000007.974x100100

intersects_interval

Median table
caselegendmedian ns/oprelativesamplesiters
adjacent_left_middleint_interval_set8.8800001.000x10025600
adjacent_left_middlerange_collections39.7100004.472x1006400
adjacent_left_middlerange_set_blaze810.60000091.284x100200
adjacent_right_lastint_interval_set7.0250001.000x10051200
adjacent_right_lastrange_collections46.9000006.676x1003200
adjacent_right_lastrange_set_blaze951.100000135.388x100400
after_allint_interval_set6.9660001.000x10051200
after_allrange_collections47.5200006.822x1006400
after_allrange_set_blaze951.100000136.535x100400
before_allint_interval_set8.9190001.000x10025600
before_allrange_collections67.5800007.577x1003200
before_allrange_set_blaze623.10000069.862x100400
gap_middleint_interval_set8.9620001.000x10025600
gap_middlerange_collections49.4000005.512x1003200
gap_middlerange_set_blaze828.40000092.435x100400
hit_firstint_interval_set8.8840001.000x10025600
hit_firstrange_collections45.9600005.173x1003200
hit_firstrange_set_blaze630.60000070.982x100400
hit_middleint_interval_set8.9190001.000x10025600
hit_middlerange_collections37.5200004.207x1006400
hit_middlerange_set_blaze810.90000090.918x100400
span_middle_gapint_interval_set8.9230001.000x10025600
span_middle_gaprange_collections35.6300003.993x1006400
span_middle_gaprange_set_blaze540.40000060.563x100400

interval_containing_point

Median table
caselegendmedian ns/oprelativesamplesiters
after_allint_interval_set8.3720001.000x10025600
before_allint_interval_set6.8880001.000x10051200
gap_firstint_interval_set8.3330001.000x10025600
gap_lastint_interval_set8.2940001.000x10025600
gap_middleint_interval_set8.2980001.000x10025600
hit_firstint_interval_set8.6500001.000x10025600
hit_lastint_interval_set8.6500001.000x10025600
hit_middleint_interval_set8.6870001.000x10025600

intervals_intersecting

Median table
caselegendmedian ns/oprelativesamplesiters
contained_middleint_interval_set11.4200001.000x10025600
contained_middlerangemap22.8100001.997x1006400
covers_allint_interval_set64.1100001.000x1003200
covers_allrangemap245.0000003.822x100800
covers_middle_16int_interval_set33.1300001.000x1006400
covers_middle_16rangemap74.1500002.238x1001600
crosses_gap_middleint_interval_set13.1000001.000x10025600
crosses_gap_middlerangemap25.0000001.908x1006400
disjoint_leftint_interval_set10.2100001.000x10025600
disjoint_leftrangemap11.3100001.108x10012800

iter_intervals

Median table
caselegendmedian ns/oprelativesamplesiters
merged_64_to_1int_interval_set0.9450001.000x100204800
merged_64_to_1range_collections1.4100001.492x100102400
merged_64_to_1range_set_blaze3.5230003.728x10051200
sparse_1024int_interval_set723.4000001.000x100400
sparse_1024range_collections725.9000001.003x100400
sparse_1024range_set_blaze1221.0000001.688x100200
sparse_64int_interval_set45.6500001.000x1006400
sparse_64range_collections46.9300001.028x1003200
sparse_64range_set_blaze76.9600001.686x1003200

symmetric_difference_with_interval

Median table
caselegendmedian ns/oprelativesamplesiters
contained_middleint_interval_set80.6900001.000x1006400
contained_middlerange_collections338.9000004.200x100800
contained_middlerange_set_blaze2053.00000025.443x100100
covers_allint_interval_set188.7000001.000x1001600
covers_allrange_collections455.1000002.412x100400
covers_allrange_set_blaze2343.00000012.417x100100
covers_middle_16int_interval_set118.5000001.000x1003200
covers_middle_16range_collections315.7000002.664x1001600
covers_middle_16range_set_blaze2162.00000018.245x100200
crosses_gap_middleint_interval_set80.0800001.000x1003200
crosses_gap_middlerange_collections289.4000003.614x1001600
crosses_gap_middlerange_set_blaze2122.00000026.499x100100
disjoint_leftint_interval_set90.4100001.000x1006400
disjoint_leftrange_collections780.7000008.635x100400
disjoint_leftrange_set_blaze2769.00000030.627x100100
equal_middleint_interval_set85.7100001.000x1003200
equal_middlerange_collections460.4000005.372x100800
equal_middlerange_set_blaze3054.00000035.632x100100

symmetric_difference_with_set

Median table
caselegendmedian ns/oprelativesamplesiters
alternating_64x32int_interval_set570.6000001.000x100400
alternating_64x32range_collections1501.0000002.631x100100
alternating_64x32range_set_blaze2763.0000004.842x100100
broad_middle_64x1range_collections423.4000001.000x100800
broad_middle_64x1int_interval_set971.1000002.294x100200
broad_middle_64x1range_set_blaze3405.0000008.042x100100
disjoint_64x64int_interval_set1141.0000001.000x100200
disjoint_64x64range_collections1236.0000001.083x100200
disjoint_64x64range_set_blaze3159.0000002.769x100100
equal_64x64int_interval_set1101.0000001.000x100200
equal_64x64range_collections1181.0000001.073x100200
equal_64x64range_set_blaze3079.0000002.797x100100
partial_overlap_64x64int_interval_set1912.0000001.000x100100
partial_overlap_64x64range_collections3374.0000001.765x100100
partial_overlap_64x64range_set_blaze6659.0000003.483x100100

uncovered_len_of

Median table
caselegendmedian ns/oprelativesamplesiters
contained_in_hitint_interval_set58.6500001.000x1006400
disjoint_beforeint_interval_set30.9400001.000x1006400
full_spanint_interval_set323.8000001.000x100800
outer_padded_spanint_interval_set511.7000001.000x100800
partial_singleint_interval_set58.8000001.000x1003200
single_gapint_interval_set30.7900001.000x10012800
span_middle_32int_interval_set386.4000001.000x100800
span_two_hitsint_interval_set103.2000001.000x1003200

union_with_interval

Median table
caselegendmedian ns/oprelativesamplesiters
adjacent_before_firstint_interval_set88.5400001.000x1003200
adjacent_before_firstrange_collections736.1000008.314x100100
adjacent_before_firstrange_set_blaze2348.00000026.519x100100
bridge_many_middleint_interval_set87.2900001.000x1003200
bridge_many_middlerange_collections504.7000005.782x100800
bridge_many_middlerange_set_blaze2563.00000029.362x100100
bridge_middle_gapint_interval_set85.7100001.000x1003200
bridge_middle_gaprange_collections466.0000005.437x100800
bridge_middle_gaprange_set_blaze2553.00000029.786x100100
contained_middleint_interval_set83.8300001.000x1003200
contained_middlerange_collections416.5000004.968x100800
contained_middlerange_set_blaze2598.00000030.991x100100
disjoint_beforeint_interval_set116.9000001.000x1001600
disjoint_beforerange_collections700.7000005.994x100400
disjoint_beforerange_set_blaze2368.00000020.257x100100

union_with_set

Median table
caselegendmedian ns/oprelativesamplesiters
adjacent_bridge_64int_interval_set406.5000001.000x100800
adjacent_bridge_64range_collections1432.0000003.523x100100
adjacent_bridge_64range_set_blaze2533.0000006.231x100100
contained_64int_interval_set573.1000001.000x100400
contained_64range_collections2833.0000004.943x100100
contained_64range_set_blaze4081.0000007.121x100100
equal_64int_interval_set609.2000001.000x100400
equal_64range_collections2939.0000004.824x100100
equal_64range_set_blaze3960.0000006.500x100100
interleaved_disjoint_64int_interval_set738.4000001.000x100400
interleaved_disjoint_64range_collections3164.0000004.285x100100
interleaved_disjoint_64range_set_blaze5016.0000006.793x100100
overlapping_64int_interval_set973.6000001.000x100400
overlapping_64range_collections3134.0000003.219x100100
overlapping_64range_set_blaze3965.0000004.073x100100

Raw Divan output

divan.txt