本文整理了Java中com.graphhopper.util.Helper.getMemInfo()
方法的一些代码示例,展示了Helper.getMemInfo()
的具体用法。这些代码示例主要来源于Github
/Stackoverflow
/Maven
等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。Helper.getMemInfo()
方法的具体详情如下:
包路径:com.graphhopper.util.Helper
类名称:Helper
方法名:getMemInfo
暂无
代码示例来源:origin: graphhopper/graphhopper
protected void flush() {
logger.info("flushing graph " + ghStorage.toString() + ", details:" + ghStorage.toDetailsString() + ", "
+ getMemInfo() + ")");
ghStorage.flush();
logger.info("flushed graph " + getMemInfo() + ")");
fullyLoaded = true;
}
代码示例来源:origin: graphhopper/graphhopper
@Override
public void run() {
if (plm.loadExisting())
return;
LOGGER.info(tmpCounter + "/" + getPreparations().size() + " calling LM prepare.doWork for " + plm.getWeighting() + " ... (" + getMemInfo() + ")");
prepared.set(true);
Thread.currentThread().setName(name);
plm.doWork();
properties.put(Landmark.PREPARE + "date." + name, createFormatter().format(new Date()));
}
}, name);
代码示例来源:origin: graphhopper/graphhopper
public void doWork() {
if (minNetworkSize <= 0 && minOneWayNetworkSize <= 0)
return;
logger.info("start finding subnetworks (min:" + minNetworkSize + ", min one way:" + minOneWayNetworkSize + ") " + Helper.getMemInfo());
int unvisitedDeadEnds = 0;
for (FlagEncoder encoder : encoders) {
// mark edges for one vehicle as inaccessible
PrepEdgeFilter filter = new PrepEdgeFilter(encoder);
if (minOneWayNetworkSize > 0)
unvisitedDeadEnds += removeDeadEndUnvisitedNetworks(filter);
List<IntArrayList> components = findSubnetworks(filter);
keepLargeNetworks(filter, components);
subnetworks = Math.max(components.size(), subnetworks);
logger.info(components.size() + " subnetworks found for " + encoder + ", " + Helper.getMemInfo());
}
markNodesRemovedIfUnreachable();
logger.info("optimize to remove subnetworks (" + subnetworks + "), "
+ "unvisited-dead-end-nodes (" + unvisitedDeadEnds + "), "
+ "maxEdges/node (" + maxEdgesPerNode.get() + ")");
ghStorage.optimize();
}
代码示例来源:origin: graphhopper/graphhopper
protected DataReader importData() throws IOException {
ensureWriteAccess();
if (ghStorage == null)
throw new IllegalStateException("Load graph before importing OSM data");
if (dataReaderFile == null)
throw new IllegalStateException("Couldn't load from existing folder: " + ghLocation
+ " but also cannot use file for DataReader as it wasn't specified!");
encodingManager.setEnableInstructions(enableInstructions);
encodingManager.setPreferredLanguage(preferredLanguage);
DataReader reader = createReader(ghStorage);
logger.info("using " + ghStorage.toString() + ", memory:" + getMemInfo());
reader.readGraph();
return reader;
}
代码示例来源:origin: graphhopper/graphhopper
public void prepare(final StorableProperties properties) {
ExecutorCompletionService completionService = new ExecutorCompletionService<>(threadPool);
int counter = 0;
for (final PrepareContractionHierarchies prepare : getPreparations()) {
LOGGER.info((++counter) + "/" + getPreparations().size() + " calling CH prepare.doWork for " + prepare.getWeighting() + " ... (" + getMemInfo() + ")");
final String name = AbstractWeighting.weightingToFileName(prepare.getWeighting());
completionService.submit(new Runnable() {
@Override
public void run() {
// toString is not taken into account so we need to cheat, see http://stackoverflow.com/q/6113746/194609 for other options
Thread.currentThread().setName(name);
prepare.doWork();
properties.put(CH.PREPARE + "date." + name, createFormatter().format(new Date()));
}
}, name);
}
threadPool.shutdown();
try {
for (int i = 0; i < getPreparations().size(); i++) {
completionService.take().get();
}
} catch (Exception e) {
threadPool.shutdownNow();
throw new RuntimeException(e);
}
}
代码示例来源:origin: graphhopper/graphhopper
private void logStats(int updateCounter) {
logger.info(String.format(Locale.ROOT,
"nodes: %10s, shortcuts: %10s, updates: %2d, checked-nodes: %10s, %s, %s, %s",
nf(sortedNodes.getSize()),
nf(nodeContractor.getAddedShortcutsCount()),
updateCounter,
nf(checkCounter),
getTimesAsString(),
nodeContractor.getStatisticsString(),
Helper.getMemInfo()));
}
代码示例来源:origin: graphhopper/graphhopper
@Override
public void doSpecificWork() {
StopWatch sw = new StopWatch().start();
LOGGER.info("Start calculating " + lms.getLandmarkCount() + " landmarks, default active lms:"
+ defaultActiveLandmarks + ", weighting:" + lms.getLmSelectionWeighting() + ", " + Helper.getMemInfo());
lms.createLandmarks();
lms.flush();
LOGGER.info("Calculated landmarks for " + (lms.getSubnetworksWithLandmarks() - 1) + " subnetworks, took:" + sw.stop().getSeconds() + " => "
+ lms.getLandmarksAsGeoJSON() + ", stored weights:" + lms.getLandmarkCount()
+ ", nodes:" + graph.getNodes() + ", " + Helper.getMemInfo());
}
代码示例来源:origin: graphhopper/graphhopper
private void printInfo(String str) {
LOGGER.info("finished " + str + " processing." + " nodes: " + graph.getNodes()
+ ", osmIdMap.size:" + getNodeMap().getSize() + ", osmIdMap:" + getNodeMap().getMemoryUsage() + "MB"
+ ", nodeFlagsMap.size:" + getNodeFlagsMap().size() + ", relFlagsMap.size:" + getRelFlagsMap().size()
+ ", zeroCounter:" + zeroCounter
+ " " + Helper.getMemInfo());
}
代码示例来源:origin: graphhopper/graphhopper
@Override
public LocationIndex prepareIndex() {
if (initialized)
throw new IllegalStateException("Call prepareIndex only once");
StopWatch sw = new StopWatch().start();
prepareAlgo();
// in-memory preparation
InMemConstructionIndex inMem = getPrepareInMemIndex();
// compact & store to dataAccess
dataAccess.create(64 * 1024);
try {
inMem.store(inMem.root, START_POINTER);
flush();
} catch (Exception ex) {
throw new IllegalStateException("Problem while storing location index. " + Helper.getMemInfo(), ex);
}
float entriesPerLeaf = (float) inMem.size / inMem.leafs;
initialized = true;
logger.info("location index created in " + sw.stop().getSeconds()
+ "s, size:" + Helper.nf(inMem.size)
+ ", leafs:" + Helper.nf(inMem.leafs)
+ ", precision:" + minResolutionInMeter
+ ", depth:" + entries.length
+ ", checksum:" + calcChecksum()
+ ", entries:" + Arrays.toString(entries)
+ ", entriesPerLeaf:" + entriesPerLeaf);
return this;
}
代码示例来源:origin: graphhopper/graphhopper
if (logDetails && lmIdx % logOffset == 0)
LOGGER.info("Finding landmarks [" + weighting + "] in network [" + explorer.getVisitedNodes() + "]. "
+ "Progress " + (int) (100.0 * lmIdx / tmpLandmarkNodeIds.length) + "%, " + Helper.getMemInfo());
代码示例来源:origin: graphhopper/graphhopper
/**
* Does the preparation and creates the location index
*/
public void postProcessing() {
// Later: move this into the GraphStorage.optimize method
// Or: Doing it after preparation to optimize shortcuts too. But not possible yet #12
if (sortGraph) {
if (ghStorage.isCHPossible() && isCHPrepared())
throw new IllegalArgumentException("Sorting a prepared CHGraph is not possible yet. See #12");
GraphHopperStorage newGraph = GHUtility.newStorage(ghStorage);
GHUtility.sortDFS(ghStorage, newGraph);
logger.info("graph sorted (" + getMemInfo() + ")");
ghStorage = newGraph;
}
if (hasElevation()) {
interpolateBridgesAndOrTunnels();
}
initLocationIndex();
if (chFactoryDecorator.isEnabled())
chFactoryDecorator.createPreparations(ghStorage, traversalMode);
if (!isCHPrepared())
prepareCH();
if (lmFactoryDecorator.isEnabled())
lmFactoryDecorator.createPreparations(ghStorage, locationIndex);
loadOrPrepareLM();
}
代码示例来源:origin: graphhopper/graphhopper
@Override
public void doSpecificWork() {
allSW.start();
initFromGraph();
runGraphContraction();
logger.info("took:" + (int) allSW.stop().getSeconds() + "s "
+ ", new shortcuts: " + nf(nodeContractor.getAddedShortcutsCount())
+ ", initSize:" + nf(initSize)
+ ", " + prepareWeighting
+ ", periodic:" + params.getPeriodicUpdatesPercentage()
+ ", lazy:" + params.getLastNodesLazyUpdatePercentage()
+ ", neighbor:" + params.getNeighborUpdatePercentage()
+ ", " + getTimesAsString()
+ ", lazy-overhead: " + (int) (100 * ((checkCounter / (double) initSize) - 1)) + "%"
+ ", " + Helper.getMemInfo());
int edgeCount = prepareGraph.getOriginalEdges();
logger.info("graph now - num edges: {}, num nodes: {}, num shortcuts: {}",
nf(edgeCount), nf(prepareGraph.getNodes()), nf(prepareGraph.getEdges() - edgeCount));
}
代码示例来源:origin: com.graphhopper/graphhopper
protected void flush()
{
logger.info("flushing graph " + ghStorage.toString() + ", details:" + ghStorage.toDetailsString() + ", "
+ Helper.getMemInfo() + ")");
ghStorage.flush();
logger.info("flushed graph " + Helper.getMemInfo() + ")");
fullyLoaded = true;
}
代码示例来源:origin: com.graphhopper/graphhopper-core
protected void flush() {
logger.info("flushing graph " + ghStorage.toString() + ", details:" + ghStorage.toDetailsString() + ", "
+ getMemInfo() + ")");
ghStorage.flush();
logger.info("flushed graph " + getMemInfo() + ")");
fullyLoaded = true;
}
代码示例来源:origin: com.rgi-corp/graphhopper
protected void flush() {
logger.info("flushing graph " + ghStorage.toString() + ", details:" + ghStorage.toDetailsString() + ", "
+ Helper.getMemInfo() + ")");
ghStorage.flush();
logger.info("flushed graph " + Helper.getMemInfo() + ")");
fullyLoaded = true;
}
代码示例来源:origin: com.graphhopper/graphhopper-core
@Override
public void run() {
if (plm.loadExisting())
return;
LOGGER.info(tmpCounter + "/" + getPreparations().size() + " calling LM prepare.doWork for " + plm.getWeighting() + " ... (" + getMemInfo() + ")");
prepared.set(true);
Thread.currentThread().setName(name);
plm.doWork();
properties.put(Landmark.PREPARE + "date." + name, createFormatter().format(new Date()));
}
}, name);
代码示例来源:origin: com.graphhopper/graphhopper-core
@Override
public void doSpecificWork() {
StopWatch sw = new StopWatch().start();
LOGGER.info("Start calculating " + lms.getLandmarkCount() + " landmarks, default active lms:"
+ defaultActiveLandmarks + ", weighting:" + lms.getLmSelectionWeighting() + ", " + Helper.getMemInfo());
lms.createLandmarks();
lms.flush();
LOGGER.info("Calculated landmarks for " + (lms.getSubnetworksWithLandmarks() - 1) + " subnetworks, took:" + sw.stop().getSeconds() + " => "
+ lms.getLandmarksAsGeoJSON() + ", stored weights:" + lms.getLandmarkCount()
+ ", nodes:" + graph.getNodes() + ", " + Helper.getMemInfo());
}
代码示例来源:origin: com.graphhopper/graphhopper
private void printInfo( String str )
{
LOGGER.info("finished " + str + " processing." + " nodes: " + graph.getNodes()
+ ", osmIdMap.size:" + getNodeMap().getSize() + ", osmIdMap:" + getNodeMap().getMemoryUsage() + "MB"
+ ", nodeFlagsMap.size:" + getNodeFlagsMap().size() + ", relFlagsMap.size:" + getRelFlagsMap().size()
+ ", zeroCounter:" + zeroCounter
+ " " + Helper.getMemInfo());
}
代码示例来源:origin: com.rgi-corp/graphhopper-reader-osm
private void printInfo(String str) {
LOGGER.info("finished " + str + " processing." + " nodes: " + graph.getNodes()
+ ", osmIdMap.size:" + getNodeMap().getSize() + ", osmIdMap:" + getNodeMap().getMemoryUsage() + "MB"
+ ", nodeFlagsMap.size:" + getNodeFlagsMap().size() + ", relFlagsMap.size:" + getRelFlagsMap().size()
+ ", zeroCounter:" + zeroCounter
+ " " + Helper.getMemInfo());
}
代码示例来源:origin: com.rgi-corp/graphhopper-reader-osm
private void printInfo(String str) {
LOGGER.info("finished " + str + " processing." + " nodes: " + graph.getNodes()
+ ", osmIdMap.size:" + getNodeMap().getSize() + ", osmIdMap:" + getNodeMap().getMemoryUsage() + "MB"
+ ", nodeFlagsMap.size:" + getNodeFlagsMap().size() + ", relFlagsMap.size:" + getRelFlagsMap().size()
+ ", zeroCounter:" + zeroCounter
+ " " + Helper.getMemInfo());
}
内容来源于网络,如有侵权,请联系作者删除!