Knowledge Base - Technical Articles


Technical Article   Error:  "Out of Memory" error occurs during Solve on an OD Cost Matrix network analysis layer

Article ID: 30637
Software:  ArcGIS - ArcEditor 9.2, 9.3, 9.3.1 ArcGIS - ArcInfo 9.2, 9.3, 9.3.1 ArcGIS - ArcView 9.2, 9.3, 9.3.1 ArcGIS Engine Runtime 9.2, 9.3, 9.3.1
Platforms: N/A

Error Message

When solving for an OD Cost Matrix network analysis layer, the following error message occurs:

"Error: Out of Memory"

Cause

The analysis is unable to complete due to a lack of necessary memory resources on the client machine. This is often the case for large network analysis tasks being performed on large network datasets, such as over 1+ million edges.

For hierarchical analysis of OD problem sets, the solve algorithm must perform simultaneous backwards searches across the network dataset from each destination. With large numbers of destinations across a large network dataset, this can easily exhaust memory resources.

For non-hierarchical analysis of OD problem sets, memory exhaustion can also often result simply from having very large numbers of origins and/or destinations.

Solution or Workaround

The Network Analyst OD Cost Matrix solver can be made to 'chunk' up the processing behind the scenes, to complete very large analysis tasks using only standard memory configurations.

The 'chunking' sizes for processing can be adjusted for the OD Cost Matrix solver by setting keys within the registry to fit your machine configuration. The following steps outline how to adjust these registry keys for the OD Cost Matrix solver.

 These keys are not in the registry by default. They may need to be created and set to the appropriate value.


 WARNING: The instructions below include making changes to essential parts of your operating system. It is recommended that you backup your operating system and files, including the registry, before proceeding. Consult with a qualified computer systems professional, if necessary.

ESRI cannot guarantee results from incorrect modifications while following these instructions; therefore, use caution and proceed at your own risk.




  1. Open the Registry Editor by navigating to Start > Run, type regedit and click OK.
  2. Expand the HKEY_CURRENT_USER\Software\ESRI\ key folder.
  3. Click on the NetworkAnalyst folder. If the NetworkAnalyst folder doesn't exist, create it by right-clicking on the ESRI folder and selecting New > Key. Rename the new key folder to NetworkAnalyst.
  4. Click on the ODCostMatrix folder under the NetworkAnalyst folder. If the ODCostMatrix folder doesn't exist, create it by right-clicking the NetworkAnalyst folder and selecting New > Key. Rename the new key folder to ODCostMatrix.
  5. In the ODCostMatrix folder, click on the value key DestinationChunkSize. If the DestinationChunkSize value key doesn't exist, create it by right-clicking the ODCostMatrix folder and selecting New > DWORD Value. Rename the newly created value key to DestinationChunkSize. Double-click the DestinationChunkSize value key and modify it as appropriate.

     This registry DWORD is only utilized by the solver when solving using hierarchies (since backward searches are simultaneously performed from all destinations when using hierarchies). The value determines the maximum number of destinations to search for at each step of the solve. The default value of this key is 1000. By lowering the value of this registry key, this will reduce the overall memory usage per step, but may also increase solve time.

  6. In the ODCostMatrix folder, click on the value key OriginChunkSize. If the OriginChunkSize value key doesn't exist, create it by right-clicking the ODCostMatrix folder and selecting New > DWORD Value. Rename the newly created value key to OriginChunkSize. Double-click the OriginChunkSize value key and modify it as appropriate.

     This registry DWORD is only utilized by the solver when solving without hierarchies. This value determines the maximum number of origins to search from at each step of the solve. The default value of this key is 1000. By lowering the value of this registry key, this will reduce the overall memory usage per step, but may also increase solve time.


Related Information


Created: 4/18/2006
Last Modified: 11/29/2011

Article Rating: (2)

Comments

By Anonymous - 06/28/2010 5:16 PM

The article contains a dead link.

I followed the steps in this article, but it did not help. I have 20,000 origins and 20,000 destinations but could not get the OD cost matrix to run on anything larger than subsets of 2,000. I tried decreasing the values to 500 then 100 then 20, but nothing improved the ability to include more points. Will ArcGIS 10.0 have similar network analyst limitations?

Rating:

By Anonymous - 07/19/2009 11:44 AM

The article needs to be updated.

I'm using NA v9.3.1 and am trying to compute an OD matrix with about 1000 origins & 10 000 destinations and always get an 'out of memory error'. I've tried this solution multiple times without any success.

Rating: