Overview

IceProd is broken up into two main parts, the core and server.

Core

The core of IceProd is what actually runs on compute nodes. It is capable of running in two different modes:

Single Task Mode

In this mode, IceProd is given a config file at startup. It will only run that task, then exit. This is the legacy mode.

Many Task Mode

In this mode, IceProd downloads task config files from the server. It will download a task, process it, then download another until the server tells it to stop. This is a good mode for groups of tasks that have the same large dependencies; the dependency can be downloaded once and used multiple times.

This mode can also be called “Pilot Mode” since it calls back to the server with the resources available, only matching those jobs that can likely run there.

Server

The server of IceProd has many responsibilities:

  • Queue tasks onto grids

  • Store all info in local DB

  • Host website for users

  • Communicate securely with running tasks

  • Communicate securely with other IceProd sites