Minor updates for flushing Contractor

This commit is contained in:
DennisOSRM 2012-04-04 11:11:54 +02:00
parent 964c0425bf
commit 9ffcec2fcb
2 changed files with 10 additions and 8 deletions

View File

@ -237,7 +237,7 @@ public:
bool flushedContractor = false;
while ( numberOfContractedNodes < numberOfNodes ) {
if(!flushedContractor && (numberOfContractedNodes > (numberOfNodes*0.5) ) ){
if(!flushedContractor && (numberOfContractedNodes > (numberOfNodes*0.75) ) ){
INFO("Flushing memory after " << numberOfContractedNodes << " nodes");
//Delete old heap data to free memory that we need for the coming operations
@ -302,7 +302,7 @@ public:
temporaryEdgeStorage.seekp(initialFilePosition);
temporaryEdgeStorage.write((char*)&numberOfTemporaryEdges, sizeof(unsigned));
temporaryEdgeStorage.close();
INFO("Flushed " << numberOfTemporaryEdges << " to disk");
INFO("Flushed " << numberOfTemporaryEdges << " edges to disk");
//Delete map from old NodeIDs to new ones.
std::vector<NodeID>().swap(newNodeIDFromOldNodeIDMap);

View File

@ -77,13 +77,15 @@ EdgeBasedGraphFactory::EdgeBasedGraphFactory(int nodes, std::vector<NodeBasedEdg
// INFO("traffic signal penalty: " << trafficSignalPenalty << ", U-Turn penalty: " << uturnPenalty << ", takeMinimumOfSpeeds=" << (takeMinimumOfSpeeds ? "yes" : "no"));
BOOST_FOREACH(NodeID id, bn)
_barrierNodes[id] = true;
BOOST_FOREACH(NodeID id, tl)
_trafficLights[id] = true;
BOOST_FOREACH(NodeID id, bn) {
_barrierNodes[id] = true;
}
BOOST_FOREACH(NodeID id, tl) {
_trafficLights[id] = true;
}
std::vector< _NodeBasedEdge > edges;
edges.reserve( 2 * inputEdges.size() );
// edges.reserve( 2 * inputEdges.size() );
for ( std::vector< NodeBasedEdge >::const_iterator i = inputEdges.begin(); i != inputEdges.end(); ++i ) {
_NodeBasedEdge edge;
@ -191,7 +193,7 @@ void EdgeBasedGraphFactory::InsertEdgeBasedNode(
void EdgeBasedGraphFactory::Run() {
INFO("Generating edge based representation of input data");
edgeBasedNodes.reserve(_nodeBasedGraph->GetNumberOfEdges());
// edgeBasedNodes.reserve(_nodeBasedGraph->GetNumberOfEdges());
Percent p(_nodeBasedGraph->GetNumberOfNodes());
int numberOfSkippedTurns(0);
int nodeBasedEdgeCounter(0);