Background Geoprocessing (64-bit)

NoteNote:

Background Geoprocessing (64-bit) is available as a separate installation on top of ArcGIS 10.1 for Desktop, Service Pack 1 and later. The following information only applies if you have the Background Geoprocessing (64-bit) product installed; otherwise, background processing is done in 32 bit.

What is 64-bit Background Geoprocessing?

The installation of the ArcGIS 10.1 for DesktopBackground Geoprocessing (64-bit) product replaces the regular 32-bit background processing which comes standard with ArcGIS 10.1 for Desktop. Using 64-bit processing to perform analysis on systems with large amounts of RAM may help when processing large data which may have otherwise failed in a 32-bit environment. Since all execution is done in the native 64-bit space, more system resources can be used.

Tools that execute in the background honor your current license. For example, if you are licensed for ArcGIS for Desktop Standard, then background execution will honor all tools that are licensed for Standard. Background processing does not consume a second license; only one license per machine is used.

ArcGIS 10.1 for DesktopBackground Geoprocessing (64-bit) is available to customers who have version 10.1 and can be downloaded on the Patches and Service Packs site. The product can only be installed on a 64-bit operating system.

NoteNote:

If you want to return to 32-bit background processing, you need to uninstall the 64-bit background processing software.

Using 64-bit background processing

Executing a tool in the background allows you to continue interacting with the application so you can continue working with maps and layers while geoprocessing tools execute. Evaluate the following sections against your current workflows. If any of them apply, using data from an enterprise geodatabase, for example, ensure you have taken the proper steps to use 64-bit background processing.

Desktop, Workgroup, and Enterprise geodatabases

ArcMap and ArcCatalog are 32-bit applications that communicate with database management systems (DBMS) through 32-bit client libraries regardless of whether the database is 32 or 64 bit. The 64-bit version of background processing requires 64-bit client libraries to make a connection. For example, if you're using tools with 64-bit background processing and enterprise geodatabase data, you'll need to make sure you have both the 32- and 64-bit client libraries installed on your machine. ArcGIS for Desktop will continue to use the 32-bit libraries, and background will use the 64-bit libraries.

See the database client topic for more information on downloading the appropriate libraries.

Unsupported data types

The following data types are unsupported in 64-bit processing:

If your workflow involves any of the above data types, you can execute the tool in the foreground by disabling background processing or convert your data to a supported type, then execute the tool in the background.

NoteNote:

Coverage data is supported as input to tools, but it is not a valid output type.

Unsupported tools

Tools that do not run in the background include the following:

  • Tools inside the Metadata conversion toolset
  • Tools inside the Geodatabase administration toolset
  • All Coverage tools
  • Graphing tools (64-bit geoprocessing only; these tools work in traditional 32-bit background processing)
  • Custom script, model, or function tools where the author has disabled background processing

You can check the General tab of the tool properties for the Always run in foreground check box to see if a tool is capable of running in the background.

CautionCaution:

When authoring a script tool that might be consumed in the 64-bit process, be sure that the tool does not call any unsupported tools. Your script tool can execute in the background but may fail when the process calls an unsupported tool.

Python scripting

Any script or script tools you run while inside Desktop honors the background processing setting. If background processing is turned on, the scripts will execute in the 64-bit space.

When you execute a stand-alone Python script outside the application, you need to ensure you're running against the 64-bit Python installation to make use of 64-bit geoprocessing. Double-clicking a Python file from Windows Explorer will launch the file using whatever association Windows has set for the .py file. Typically, this is the last version of Python installed, which should be 64 bit. If you want to be absolutely sure which version of Python you're running against (32 or 64), it is best to fully qualify the Python executable when running your script at command line. For example, the following command will ensure the script is run as 64 bit: c:\Python27\ArcGISx6410.1\python.exe c:\gisData\scripts\intersect.py.

Custom function tools (DLLs)

Custom tools can be used with 64-bit background processing if they have been registered and properly configured. For tool developers working with unmanaged code, C++, for example, you will need to build both 32-bit and 64-bit versions of your tool, then ship and register both for proper use. For tool developers working with managed code, C#, for example, you will need to create your DLL as Any CPU and register your tool with both 32 and 64 bit. For more information on registering your managed function tools (C# for example), see this knowledge base (kb) article.

Related Topics

4/16/2013