Simulation of Emission Tomography with NetSolve

SimSET is Monte Carlo simulation software for emission tomography. SimSET can use NetSolve, a client-server system for distributed computation, as a simple but effective scheme for parallel execution. NetSolve is “grid middleware” which enables a user (the client) to run specific computations remotely and simultaneously on a grid of networked computers (the servers). Since the servers do not have to be identical machines, computation may take place in a hetergeneous environment.

SimSET is a public domain package of routines written in C. SimSET is summarized as follows:

  • The SimSET package uses Monte Carlo techniques to simulate the physical processes and in-strumentation in emission imaging.

  • The Photon History Generator, performs Monte Carlo simulations of photon creation and transport through heterogeneous attenuators for both SPECT and PET, i.e., it generates photons and transports them through the “object” to the face of the collimator or detector.

  • The Collimator Module, receives and tracks photons through the collimator being modelled.

  • The Detector Module, tracks photons through the specified detector, recording the interactions within the detector for each photon. The interactions are used to compute a detected location and total energy deposited.

  • The Binning Module, is used to process photon and detection records. Histograms and images, together with photon history files, make up the final output from a simulation.

  • A realistic simulation may require millions of emission decay events. This may result in an extremely long execution time when a simulation is run as conventional sequential computation on a single processor. But the individual decay events are stochastically independent; therefore, if multiple processors are available, the heavy computational load can be partitioned into subcomputations that run in parallel on different processors, the outputs of which are combined upon completion.

    One way to access multiple processors is to use a parallel computer. Another way is to implement distributed computation on a network of computers, a mode of computation in which the individual machines do not have to be identical. We implemented distributed computation of SimSET by using NetSolve, a public domain package of routines in C (plus some environment-specific interfaces) which enables a user to run application-specific code remotely on networked computers.

NetSolve client requesting multiple instances of SimSET on diverse servers

NetSolve client requesting multiple instances of SimSET on diverse servers

Researcher: Michael G. Thomason ( )
Institution: University of Tennessee - Computer Science

Related Work


Additional Applications


  Innovative Computing Laboratory
Contact NetSolve: Computer Science Department
  University of Tennessee