Ways To Run DIGITS

You can run DIGITS in the following ways:
  1. Running DIGITS
  2. Running DIGITS from Developer Zone
  3. Docker®. For more information, see DIGITS on GitHub.

Running DIGITS

On your system, before running the application, use the docker pull command to ensure an up-to-date image is installed. Once the pull is complete, you can run the application. This is because nvidia-docker ensures that drivers that match the host are used and configured for the container. Without nvidia-docker, you are likely to get an error when trying to run the container.

  1. Issue the command for the applicable release of the container that you want. The following command assumes you want to pull the latest container.
    docker pull nvcr.io/nvidia/digits:19.07-caffe
    docker pull nvcr.io/nvidia/digits:19.07-tensorflow
  2. Open a command prompt and paste the pull command. The pulling of the container image begins. Ensure the pull completes successfully before proceeding to the next step.
  3. Run the application. A typical command to launch the application is:
    nvidia-docker run -it --rm –v local_dir:container_dir 

    • -it means interactive
    • --rm means delete the application when finished
    • –v means mount directory
    • local_dir is the directory or file from your host system (absolute path) that you want to access from inside your container. For example, the local_dir in the following path is /home/jsmith/data/mnist.
      -v /home/jsmith/data/mnist:/data/mnist

      If you are inside the container, for example, ls /data/mnist, you will see the same files as if you issued the ls /home/jsmith/data/mnist command from outside the container.

    • container_dir is the target directory when you are inside your container. For example, /data/mnist is the target directory in the example:
      -v /home/jsmith/data/mnist:/data/mnist
    • <xx.xx> is the container version. For example, 19.01.
    • <framework> is the framework that you want to pull. For example, caffe or tensorflow.
    1. To run the server as a daemon and expose port 5000 in the container to port 8888 on your host:
      nvidia-docker run --name digits -d -p 8888:5000 	
      Note:DIGITS 6.0 uses port 5000 by default.
    2. To mount one local directory containing your data (read-only), and another for writing your DIGITS jobs:
      nvidia-docker run --name digits -d -p 8888:5000 -v 	
      /home/username/data:/data -v /home/username/digits-	
      jobs:/workspace/jobs nvcr.io/nvidia/digits:<xx.xx>-<framework>
      Note: In order to share data between ranks, NVIDIA® Collective Communications Library ™ (NCCL) may require shared system memory for IPC and pinned (page-locked) system memory resources. The operating system’s limits on these resources may need to be increased accordingly. Refer to your system’s documentation for details.
      In particular, Docker containers default to limited shared and pinned memory resources. When using NCCL inside a container, it is recommended that you increase these resources by issuing:
      --shm-size=1g --ulimit memlock=-1
      in the command line to
      nvidia-docker run
  4. See /workspace/README.md inside the container for information on customizing your DIGITS application.
    For more information about DIGITS, see:

Running DIGITS from Developer Zone

For more information about downloading, running, and using DIGITS, see: NVIDIA DIGITS: Interactive Deep Learning GPU Training System.