MCPcopy Create free account
hub / github.com/apache/solr / main

Method main

solr/core/src/test/org/apache/solr/util/BitSetPerf.java:47–187  ·  view source on GitHub ↗
(String[] args)

Source from the content-addressed store, hash-verified

45 }
46
47 public static void main(String[] args) {
48 if (args.length < 5) {
49 System.out.println("BitSetTest <bitSetSize> <numSets> <numBitsSet> <testName> <iter> <impl>");
50 System.out.println(" impl => open for FixedBitSet");
51 }
52 int bitSetSize = Integer.parseInt(args[0]);
53 int numSets = Integer.parseInt(args[1]);
54 int numBitsSet = Integer.parseInt(args[2]);
55 String test = args[3];
56 int iter = Integer.parseInt(args[4]);
57 String impl = args.length > 5 ? args[5].intern() : "bit";
58
59 BitSet[] sets = new BitSet[numSets];
60 FixedBitSet[] osets = new FixedBitSet[numSets];
61
62 for (int i = 0; i < numSets; i++) {
63 sets[i] = new BitSet(bitSetSize);
64 osets[i] = new FixedBitSet(bitSetSize);
65 randomSets(bitSetSize, numBitsSet, sets[i], osets[i]);
66 }
67
68 BitSet bs = new BitSet(bitSetSize);
69 FixedBitSet obs = new FixedBitSet(bitSetSize);
70 randomSets(bitSetSize, numBitsSet, bs, obs);
71
72 long ret = 0;
73
74 final RTimer timer = new RTimer();
75
76 if ("union".equals(test)) {
77 for (int it = 0; it < iter; it++) {
78 for (int i = 0; i < numSets; i++) {
79 if (impl.equals("open")) {
80 FixedBitSet other = osets[i];
81 obs.or(other);
82 } else {
83 BitSet other = sets[i];
84 bs.or(other);
85 }
86 }
87 }
88 }
89
90 if ("cardinality".equals(test)) {
91 for (int it = 0; it < iter; it++) {
92 for (int i = 0; i < numSets; i++) {
93 if (impl.equals("open")) {
94 ret += osets[i].cardinality();
95 } else {
96 ret += sets[i].cardinality();
97 }
98 }
99 }
100 }
101
102 if ("get".equals(test)) {
103 for (int it = 0; it < iter; it++) {
104 for (int i = 0; i < numSets; i++) {

Callers

nothing calls this directly

Calls 9

randomSetsMethod · 0.95
getTimeMethod · 0.95
getMethod · 0.65
cloneMethod · 0.65
nextDocMethod · 0.65
printlnMethod · 0.45
parseIntMethod · 0.45
equalsMethod · 0.45
cardinalityMethod · 0.45

Tested by

no test coverage detected