string str;
uchar* data;
int i = 0 ,j = 0;
- int heap_base = HeapProfiler::GetHeapConsumption ();
+ int heap_base = HeapProfiler::GetHeapConsumption (5); // Avoid small samplerates ;)
std::cerr << "Initial heap usage : " << heap_base << "\n";
- TextCollection *csa = TextCollection::InitTextCollection(5);
+ TextCollection *csa = TextCollection::InitTextCollection();
heap_base = HeapProfiler::GetHeapConsumption ();
std::cerr << "Heap usage after InitTextCollection : " << heap_base << "\n";
while (not(cin.eof())){
- getline(cin,str);
+ getline(cin,str); // Read line by line.
+// cin >> str; // Read word by word.
data = (uchar *) str.c_str();
csa->InsertText(data);
i++;
};
- };
+ };
+
+/* the whole file as one string:
+ uchar *temp = Tools::GetFileContents("data.txt", 0);
+ csa->InsertText(temp);
+ delete [] temp;*/
std::cerr << "Creating new text collection with " << i << " strings (total " << j/1024 << " kb)\n";
std::cerr << "Before MakeStatic() [press enter]\n";
std::cin >> kbd;
- std::cerr << "heap usage: " << HeapProfiler::GetHeapConsumption()/(1024*1024) << " Mbytes" << std::endl;
+ // This will print the maximum mem usage during construction time:
+ std::cerr << "max heap usage: " << HeapProfiler::GetMaxHeapConsumption()/(1024*1024) << " Mbytes" << std::endl;
csa->MakeStatic();
std::cerr << "After MakeStatic() [press enter]\n";
+ // This will print the maximum mem usage during MakeStatic():
+ std::cerr << "max heap usage: " << HeapProfiler::GetMaxHeapConsumption()/(1024*1024) << " Mbytes" << std::endl;
std::cin >> kbd;
std::cerr << "heap usage: " << HeapProfiler::GetHeapConsumption()/(1024*1024) << " Mbytes" << std::endl;
delete csa;