Difference between revisions of "Slicer3:Grid Interface"

From NAMIC Wiki
Jump to: navigation, search
m (Update from Wiki)
 
Line 3: Line 3:
 
'''Goals'''<nowiki>: </nowiki>
 
'''Goals'''<nowiki>: </nowiki>
  
* Supply Grid execution components to [[Slicer3:Execution_Model|Slicer3:Execution_Model]]
+
* Provide a tool for the NA-MIC kit to enable distributed execution of programs
* Clearly define expectations and dependencies for grid execution
+
* Supply interfaces to these tools via [[Slicer3:Execution_Model|Slicer3:Execution_Model]]
 +
* Identify constraints and requirements for Slicer3 for cluster-based execution
  
 
'''Current Status'''<nowiki>: </nowiki>
 
'''Current Status'''<nowiki>: </nowiki>
  
* CLRegistration as primary use case for grid
+
* Tool (GridWizard) currently under development
 
+
* CLRegistration is considered a key use case for Grid computation for the NA-MIC kit
# Create XML-aware Grid component to interface with NAMIC executables
+
* Exact changes to [[Slicer3:Execution_Model|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'''<nowiki>: >./gi-init -xml </nowiki>
 
'''Example of Grid Interface XML Awareness'''<nowiki>: >./gi-init -xml </nowiki>
 
 
   
 
   
 
  <?xml version="1.0" encoding="utf-8"?>
 
  <?xml version="1.0" encoding="utf-8"?>
Line 110: Line 113:
  
 
* Jeff Grethe- UCSD
 
* Jeff Grethe- UCSD
* Brendan Faherty - UCSD
+
* Neil Jones - UCSD
 
* Steve Pieper - BWH
 
* Steve Pieper - BWH
 
* Daniel Blezek - GE
 
* Daniel Blezek - GE

Revision as of 20:09, 2 January 2007

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