} HardwareRequirements
ITK-SNAP Logo

Latest News:
04/22/24: ITK-SNAP 4.2.0 has been released!

ITK-SNAP Hardware Requirements

People often ask: what kind of a computer do I need to run ITK-SNAP? Unfortunately, there is no single answer to this question, as it depends on your individual needs and the types of data that you are likely to process. Overall, SNAP has not become significantly more resource-intensive over the last several years, so to run it on routine MRI data, any computer should do. For larger datasets, hardware requirements become more demanding. Below we discuss the main parameters of a computer and how they affect ITK-SNAP performance.

Memory

Memory is the main resource to consider when selecting a computer. A 256x256x256 image has 16M voxels and can occupy up to 64M of memory, depending on the data type. A 512 cubed image is eight times larger, with 128M voxels. Memory usage in SNAP is as follows:

  • In manual segmentation mode, 6 bytes are used for every voxel to store the image and the segmentation (two bytes for the image, two for segmentation, and two for the undo/redo memory). So you need 96Mb for a 256x256x256 image and 768Mb for a 512 cubed image. If you load overlays, memory use will increase further.
  • In automatic segmentation mode, SNAP stores several image layers: the gray image, the segmentation image, the speed image, the initial segmentation and the current segmentation. Some of these images are represented as floating point, requiring 4 bytes per voxel. So altogether you may need 16 bytes per voxel in automatic segmentation mode. For a 256^3 image you would need 256Mb, for a 512^3 image, you need 2Gb. However, keep in mind that you can select a smaller region of interest or subsample your image when entering automatic segmentation, so you don't have to use all that memory.
  • If you want to use the multi-session features of SNAP, multiply the numbers above by the number of sessions you would run concurrently.
  • Overall 2Gb of memory should be enough for most users; 4Gb should suffice for users with large images.

Video Card

SNAP performs a lot of it's work using the graphics card through the OpenGL interface. A good video card will make image navigation smoother and 3D rendering faster. We recommend a standalone NVidia graphics card; however, for many casual users the benefit may not justify the cost. SNAP works fine on ATI cards as well, although there are some minor issues with transparency that have been reported. On board graphics cards may support SNAP, but some crashes have been reported in the past.

Processor Speed

If the memory requirements are satisfied, outside of the graphics-oriented operations, SNAP performance will scale more or less linearly with processor speed.

Display Size

A single SNAP window will easily fit into a display of 1280x1024 resolution, and you can even use SNAP at 1024x768. To run multiple sessions in parallel, choose a larger screen, perhaps 1600x1200.

Pointing Device

A good, ergonomic mouse is essential for using SNAP for manual segmentation. Some users may prefer to use a stylus on a tablet display, e.g., those made by Wacom.

Operating System

SNAP binaries are distributed for Windows (32 bit), MacOS Leopard (32 bit) and Linux (32 and 64 bit). Users of other operating systems would have to build SNAP on their own. All three operating systems appear to run SNAP equally well. On MacOS, multisession features can not be accessed by clicking the icon, but are available if you run the program from command line.

Whether to choose a 32 bit or 64 bit operating system depends on your memory requirements (see above). If you may require more than 4Gb for a single session of SNAP, a 64 bit version will be necessary.

Page last modified on November 10, 2009, at 05:21 PM

    SourceForge.net Logo   Valid XHTML 1.0 Transitional