Slicer3:Grid Interface
From NAMIC Wiki
Home < Slicer3:Grid Interface
Project: Integration of NAMIC Kit and the 'Grid'
Goals:
- Provide a tool for the NA-MIC kit to enable distributed execution of programs
- Supply interfaces to these tools via Slicer3:Execution_Model
- Identify constraints and requirements for Slicer3 for cluster-based execution
Current Status:
- Tool (GridWizard) currently under development
- CLRegistration is considered a key use case for Grid computation for the NA-MIC kit
- Exact changes to Slicer3:Execution_Model are under consideration
- Shown below is one proposal
- Another proposal is to use the <channel> element (in, out, inout)
- Lists and file globs may cause some problems in the Slicer3 display
Example of Grid Interface XML Awareness: >./gi-init -xml
<?xml version="1.0" encoding="utf-8"?>
<executable>
<category>execution environment</category>
<title>Slicer3 Grid Interface</title>
<description>Launches executables in a grid environment</description>
<version>1.0</version>
<documentationurl></documentationurl>
<license></license>
<contributor>Brendan Faherty</contributor>
<parameters>
<label>Grid Interface Parameters</label>
<description></description>
<flag>
<flag>-i</flag>
<description>Use to pass XML instructions through STDIN</description>
<label>XML STDIN</label>
</flag>
<file>
<flag>-f</flag>
<descriptions>use to pass XML instructuions through a file</description>
<label>XML File</label>
</file>
</executable>
The XML file that might be referenced via "gi-init -f JOB.xml" >cat CLRegistration.xml
<?xml version="1.0" encoding="utf-8"?>
<executable>
<executable>CLRegistration</executable>
<path>/path/to/CLRegistration</path>
<parameters>
<integer>
<flag>b</flag>
<value>30</value>
</integer>
<integer>
<flag>s</flag>
<value>10000</value>
</integer>
<string>
<flag>i</flag>
<longflag>iterations</longflag>
<value>200,100</value>
</string>
<string>
<flag>l</flag>
<value>0.05,0.005</value>
</string>
<double>
<flag>t</flag>
<value>100.0</value>
</double>
<file>
{! -- will be passed as "-Fixed Image1" --}
<flag>-Fixed</flag>
<name>Image1</name>
<protocol>srb</protocol>
<path>/home/Projects/NAMIC_0003/Files/Havard/active_morph/HUV109121/images/</path>
<transfer>singleton</transfer>
</file>
<file>
{! -- will be passed as "-Moving Image2" --}
<flag>-Moving</flag>
<name>Image2</name>
<protocol>srb</protocol>
<path>/home/Projects/NAMIC_0003/Files/Havard/active_morph/HUV109121/images/</path>
<transfer>directory_non_recursive</transfer>
</file>
<file>
{! -- will be passed as "-Output Data" --}
<flag>-Output</flag>
<name>Data</name>
<path>/home/Projects/NAMIC__0003/Files/Harvard/archive_morph/HUVA0123123/</path>
<protocol>srb</protocol>
<transfer>directory_recursive</transfer>
</file>
</parameters>
</executable>
Team Members:
- Jeff Grethe- UCSD
- Neil Jones - UCSD
- Steve Pieper - BWH
- Daniel Blezek - GE