1

I am looking for a list of ArcPy tools that will actually utilize 64 bit structure.

I know some of the tools will just run a 32 bit version inside a 64 bit program.

I could have sworn I have seen the list before but I can't find it anywhere.

No matter what 64 bit is the way to go.

I am not looking to build a list of tools here as answers.

2
  • I actually did some benchmarking that indicated that 32-bit applications were often faster that 64-bit apps for many tasks, so your blanket assertion about 64-bit superiority is incorrect. There are certainly some tasks where 64-bit execution has advantages, but in general those tasks are few and far between.
    – Vince
    Dec 30, 2015 at 12:49
  • Thank you for your comments Vince. I am not necessarily interested in speed benefits other than it being a secondary benefit. We have been seeing crashes with processing our large datasets. I know that 64 bit should be able to handle larger datasets. I was under the impression that only certain processes could handle the "bigger pipe". KHibma's explanation is what I was looking for.
    – Tom
    Dec 30, 2015 at 15:34

2 Answers 2

4

The tools that do not run as 64bit appear to be listed on the help page entitled Background Geoprocessing (64-bit):

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
  • Tools which create packages
  • 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

...

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.2\python.exe c:\gisData\scripts\intersect.py.

I encourage you to visit the help page for more information.

1

Utilize could be a subjective term. All tools, unless otherwise noted here will run/execute in the 64bit world. This means ArcGIS Server, Background Processing for both Desktop and Engine (64bit install) as well as ArcGIS Pro.

Your statement about

32bit version inside a 64bit program

Doesn't really make sense. Either a process is running 32bit or 64bit. One process could call another, such the case with ArcMap possibly calling 64bit Background, but in this example, the tool executing is executing in a 64bit process.

Are you thinking of ’parallel processing’? Where a tool can spawn multiple processes, basically splitting a job up? That has nothing to do with 32 vs. 64bit

However, to take a stab at the "what tools take advantage of 64bit"..... Well the answer could be all of them or none of them. What really matters is the data you're throwing at the tool. If you're asking Buffer to work against 10 points, less than 100kb on disk, 32-64.... It doesn't matter, processing will basically be the same. If you're throwing 25 featureclasses of 1million polygons each, with a disk size of hundreds of MBs, then yes, 64bit is great as the tool can utilize more RAM and not page to disk. Otherwise the only other differences is the precision that 64bit offers, where floats and what not can hold more decimals.

5
  • 32- and 64-bit ArcGIS applications will always use 64-bit IEEE floating-point representation for coordinate values, so that last sentence is misleading.
    – Vince
    Dec 30, 2015 at 12:54
  • Use FeatureCompare in 32bit and 64bit. There are instances you'll see "differences" because the number of available digits
    – KHibma
    Dec 30, 2015 at 13:52
  • Application word size has no bearing on data element bit depth.
    – Vince
    Dec 30, 2015 at 15:03
  • Thanks KHibma. I wasn't stepping back and thinking of it as a whole. I was concerned with whether or not each process was operating in 64 bit. But as you pointed out the benefit for what we are doing is similar to your second example and 64 bit would be best for big data.
    – Tom
    Dec 30, 2015 at 15:43
  • @Tom right, the data really dictates when 64bit will be benefical
    – KHibma
    Dec 30, 2015 at 15:46

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.