some new tests

This commit is contained in:
Бычков Анлрей
2022-05-25 18:52:19 +03:00
parent a18f461ce3
commit 831adf3fc9

View File

@@ -5,7 +5,7 @@ int main(int argc, char * argv[]) {
const int repeat = 1000; const int repeat = 1000;
const int no_repeat = 1; const int no_repeat = 1;
const int small_cnt = 1000; const int small_cnt = 1000;
const int big_cnt = 1000000; const int big_cnt = 100000;
PITimeMeasurer tm; PITimeMeasurer tm;
@@ -84,9 +84,9 @@ int main(int argc, char * argv[]) {
piCout << "bigmap<int, int> insert rnd []" << tm.elapsed_m(); piCout << "bigmap<int, int> insert rnd []" << tm.elapsed_m();
PIStringList small_sl; PIStringList small_sl;
for (int i=0; i<small_cnt; ++i) small_sl << PIString::fromNumber(randomd()); for (int i=0; i<small_cnt; ++i) small_sl << PIString::fromNumber(randomd())+PIString::fromNumber(i);
PIStringList big_sl; PIStringList big_sl;
for (int i=0; i<big_cnt; ++i) big_sl << PIString::fromNumber(randomd()); for (int i=0; i<big_cnt; ++i) big_sl << PIString::fromNumber(randomd())+PIString::fromNumber(i);
piCout << "map<PIString, int> insert..."; piCout << "map<PIString, int> insert...";
tm.reset(); tm.reset();
for (int c=0; c<repeat; ++c) { for (int c=0; c<repeat; ++c) {
@@ -151,5 +151,70 @@ int main(int argc, char * argv[]) {
while (it.next()) v << it.value(); while (it.next()) v << it.value();
} }
piCout << "map<PIString, int> interate" << tm.elapsed_m(); piCout << "map<PIString, int> interate" << tm.elapsed_m();
PIByteArray ba;
ba.resize(1024);
piCout << "map<int, PIByteArray> insert...";
tm.reset();
PIMap<int, PIByteArray> m3;
for (int i=0; i<big_cnt; ++i) m3.insert(i, ba);
piCout << "map<int, PIByteArray> insert" << tm.elapsed_m();
piCout << "map<int, PIByteArray> interate...";
tm.reset();
for (int c=0; c<repeat; ++c) {
PIVector<int> v;
v.reserve(m3.size());
auto it = m3.makeIterator();
while (it.next()) v << it.value().size();
}
piCout << "map<int, PIByteArray> interate" << tm.elapsed_m();
piCout << "map<PIString, PIByteArray> insert...";
tm.reset();
PIMap<PIString, PIByteArray> m4;
for (int i=0; i<big_cnt; ++i) {
m4.insert(big_sl[i], ba);
}
piCout << "map<PIString, PIByteArray> insert" << tm.elapsed_m();
piCout << "map<PIString, PIByteArray> interate...";
tm.reset();
for (int c=0; c<repeat; ++c) {
PIVector<int> v;
v.reserve(m4.size());
auto it = m4.makeIterator();
while (it.next()) v << it.value().size();
}
piCout << "map<PIString, PIByteArray> interate" << tm.elapsed_m();
piCout << "map<int, int> cointains...";
tm.reset();
for (int c=0; c<big_cnt; ++c) {
m1.contains(1023);
}
piCout << "map<int, int> contains" << tm.elapsed_m();
piCout << "map<int, int> cointains miss...";
tm.reset();
for (int c=0; c<big_cnt; ++c) {
m1.contains(-1);
}
piCout << "map<int, int> contains miss" << tm.elapsed_m();
piCout << "map<PIString, int> cointains...";
tm.reset();
for (int c=0; c<big_cnt; ++c) {
m2.contains(big_sl[1023]);
}
piCout << "map<PIString, int> contains" << tm.elapsed_m();
piCout << "map<PIString, int> cointains miss...";
PIString s = "dfcdsfas";
tm.reset();
for (int c=0; c<big_cnt; ++c) {
m2.contains(s);
}
piCout << "map<PIString, int> contains miss" << tm.elapsed_m();
return 0; return 0;
} }