Difference between revisions of "CTii"

From BiGGrid Wiki
Jump to navigation Jump to search
 
(16 intermediate revisions by the same user not shown)
Line 21: Line 21:
  
 
; 2- Functionalities
 
; 2- Functionalities
: '''CTii''' facilitates the tasks of scientists performing the omnimatch 3D template matching experiments, by providing the following functionalities
+
: '''CTii''' facilitates the tasks of scientists performing the Omnimatch 3D template matching experiments, by providing the following functionalities:
 
:* It hides the complexities related to the set-up and configuration of the cluster where the software runs,
 
:* It hides the complexities related to the set-up and configuration of the cluster where the software runs,
 
:* It includes a workflow experiment design, describing the execution steps of the experiments,
 
:* It includes a workflow experiment design, describing the execution steps of the experiments,
:* It facilitates the setting and adjustment of the different parameters within the graphical interface
+
:* It facilitates the setting and adjustment of the different parameters within the graphical interface,
 +
:* It allows the submission of several experiments from the same interface and provides means for monitoring the execution of jobs at run-time.
 +
:* It eventually, installs the the Omnimatch software on the (GPU) cluster
 +
:* It eventually, uploads the input data files from the local machine to the (GPU) cluster where the software runs,
 +
:* It eventually, downloads the output results and data files from the (GPU) cluster to the local machine,
  
; 2- Installation:  
+
; 3- Installation:  
 
:; a- Requirements:
 
:; a- Requirements:
  
: '''CTii''' is an interface to assist the scientist in setting the proper environment for running and monitoring 3D template matching experiments. It also helps in organizing and classifying the output results. In order to properly, use the '''CTii''' interface, the following pre-requirements are needed:
+
: '''CTii''' is an interface to assist the scientist in setting the proper environment for running and monitoring 3D template matching experiments. It also helps in organizing and classifying the output results. In order to properly use the '''CTii''' interface, the following pre-requirements are needed:
:* Omnimatch software must be properly installed and functional. From now on, we will refer to $omnimatch_home as the path to omnimatch software. (Omnimatch software can be downloaded from: ….).
+
:* Omnimatch software must be properly installed and functional. From now on, we will refer to $omnimatch_home as the path to Omnimatch software. Within the new version of CTii, the Omnimatch software is installed by CTii together with the configuration and setting files.
:* In order to use the workload management system (Torque), the user must provide a job submission script which, sets up the appropriate environment to run omnimatch and launches the jobs. '''CTii''' expects a script file named psb_script_header.sh located under $omnimatch_home. An example that script is given in Annex 1.  
+
:* In order to use the workload management system WMS (e.g. PBS, SGE, and LSF), the user must provide a job submission script which sets up the appropriate environment to run Omnimatch and launches the jobs. '''CTii''' provides appropriate scripts for most known WMSs. An example that script is given in Annex 1.  
  
 
:; b- Installation:
 
:; b- Installation:
 
: '''CTii''' installer is created using winzip/winrar and can be downloaded from: ….
 
: '''CTii''' installer is created using winzip/winrar and can be downloaded from: ….
: To install '''CTii''', you simply need to decompress the installation package 'CTII.rar'. After installation is complete, it will create a new '''CTii''' directory with the following structure and items:
+
: To install '''CTii''', you simply decompress the installation package 'CTII.rar'. After installation is complete, it will create a new '''CTii''' directory with the following structure and items:
 
:* dist: a subdirectory containing the '''CTii''' JAR file (CTii.jar)
 
:* dist: a subdirectory containing the '''CTii''' JAR file (CTii.jar)
 
:* dist/lib: a subdirectory containing the different third party libraries used by '''CTii''' (jgraph, etc.)
 
:* dist/lib: a subdirectory containing the different third party libraries used by '''CTii''' (jgraph, etc.)
 
:* ctii.bat/ctii.sh: a script to launch '''CTii''' Interface for Windows and Unix respectively
 
:* ctii.bat/ctii.sh: a script to launch '''CTii''' Interface for Windows and Unix respectively
 
:* config.xml: descriptions file containing the graphical representation and the description of the omnimatch workflow experiment. This file is only editable through the CTii graphical user interface.
 
:* config.xml: descriptions file containing the graphical representation and the description of the omnimatch workflow experiment. This file is only editable through the CTii graphical user interface.
:* settings.properties: a property file used to configure '''CTii'''. It specifies the remote location on which omnimatch will run and sets up the proper environment to use. This file is only editable through the CTii graphical user interface.  
+
:* defaultsettings.xml: Omnimatch default setting variables (e.g. input data files, values for psi, phi and theta, etc.),
 +
:* usersettings.xml: Omnimatch user setting variables; values declared in this settings file overwrites the default ones ,
 +
:* config/bin: contains the binaries of the Omnimatch software,
 +
:* config/scripts: contains the WMS submission scripts to run Omnimatch software,
 +
:* config/setting/settings.properties: a property file used to configure '''CTii'''. It specifies the remote location on which omnimatch will run and sets up the proper environment to use. This file is only editable through the CTii graphical user interface,
 +
 
 +
<center>[[File:figure1.png|thumb|'''Figure 1:''' '''CTii''' Main Interface]]</center>
  
 
:; c- Running CTii:
 
:; c- Running CTii:
Line 48: Line 58:
 
:* CTTI.bat on windows
 
:* CTTI.bat on windows
 
:* CTII.sh on UNIX  
 
:* CTII.sh on UNIX  
: Figure 1 illustrates the '''CTii''' main User Interface, which is composed of: 1) a top-toolbar, 2) a three-tab panel with a central/body area, and 3) a bottom-toolbar.
+
: Figure 1 illustrates the '''CTii''' main User Interface, which is composed of: 1) a Toolbar (on top), 2) a workbench/body area, and 3) a monitoring panel (to the right).
<center>[[File:figure01.jpg|thumb|'''Figure 1:''' '''CTii''' Main Interface]]</center>
 
  
; 3-Configuration
 
  
: Most of the '''CTii''' configuration is done in the property file 'settings.properties'. This file is read by '''CTii''' at startup. It presents the setting information in a graphical interface to be updated and confirmed by the user. This interface is shown in Figure 2. Essentially; the user needs to feed '''CTii''' with connection information and working environment on the remote host, where omnimatch software is installed (cluster or grid interface).
+
; 4-Configuration
 +
 
 +
<center>[[File:figure2.png|thumb|'''Figure 2:''' '''CTii''' Settings window]]</center>
 +
 
 +
: Most of the '''CTii''' configuration is done in the property file 'settings.properties'. This file is read by '''CTii''' at startup. It presents the setting information in a graphical interface to be updated and confirmed by the user. This interface is shown in Figure 2. Essentially; the user needs to feed '''CTii''' with connection information and working environment on the remote host, where omnimatch software will run (cluster or grid).
  
 
:* Host Name: specifies the host name of the machine where to launch omnimatch (e.g. lisa.sara.nl).
 
:* Host Name: specifies the host name of the machine where to launch omnimatch (e.g. lisa.sara.nl).
 
:* User Name: specifies an existing user on the host machine.
 
:* User Name: specifies an existing user on the host machine.
 
:* Password: specifies the user password on the host machine.
 
:* Password: specifies the user password on the host machine.
:* Input directory: specifies where omnimatch input files are located.
+
:* Workload Management System, deployed on the specified host (PBS, SGE, or LSF),
:* Output directory: specifies the base directory where to create output files along with a summary file for each run.
+
:* Omnimatch home directory on the host,
:* Job script: specifies the job submission script which, sets up the appropriate environment to run omnimatch and launches the jobs.
+
:* Binaries sub-directory on the host (omnimatch),
 +
:* Input sub-directory where input files are located/uploaded,
 +
:* Output sub-directory where to generate the output result files along with a summary file for each run,
  
; 4- Usage
+
:* Transfer Buffer: Specifies the local sub-directory for the input/output data files,
  
: As illustrated in figures 1&2, '''CTii''' GUI is composed of a top-toolbar, a three-tab panel with a central body, and a bottom-toolbar.
+
; 5- Usage
<center>[[File:figure02.jpg|thumb|'''Figure 2:''' '''CTii''' Settings window]]</center>
+
: As illustrated in figures 1, '''CTii''' GUI is composed of Toolbars, a central body, and a monitoring area.  
  
:; a- Top-Toolbar icons:
+
[[File:figure3.png|thumb|'''Figure 3:''' '''CTii''' Toolbar]]
 +
:; a- CTii Toolbar - top part (global):
  
: The left part of the top-toolbar is populated with five icons, each providing a specific functionality (see figure 3):
+
[[File:figure4.png|thumb|'''Figure 4:''' '''CTii''' Toolbar - global parameters]]
 +
: As illustrated in figure 4, the top part of the Toolbar is populated with icons, each providing a global functionality:
  
 
:* The certificate icon: allows the user to ask for a certificate granting him/her the right to use the GRID (this functionality is currently disabled),
 
:* The certificate icon: allows the user to ask for a certificate granting him/her the right to use the GRID (this functionality is currently disabled),
:* The Run icon: allows the user to launch the omnimatch the workflow execution,
+
:* The 'Plus' icon: allows the user to instantiate a new window and create a new experiment,
:* The Monitor icon: allows the user to monitor the workflow during execution,
+
:* The Monitor icon: allows the user to monitor the all the running workflows during execution,
:* The Stop icon: allows the user to stop the running execution of the workflow,
+
:* The left arrow: allows the user to navigate to the previous workflow run (experiment),
 +
:* The right arrow: allows the user to navigate to the next workflow run (experiment),
 
:* The Setting icon: provides the opportunity to update the settings of the remote host, where omnimatch software environment.  
 
:* The Setting icon: provides the opportunity to update the settings of the remote host, where omnimatch software environment.  
 
+
:* The wall time: input field to specify the maximum time allowed for the jobs to run (hh:mm:ss). If the user does not specify it, a default value of 10 minutes will be considered,
 
 
[[File:figure03.jpg|thumb|'''Figure 3:''' '''CTii''' Top-Toolbar: left part]]
 
 
 
: The right part of top-toolbar is populated with five icons, each providing a specific functionality (see figure 4):
 
 
 
:* The wall time: input field to specify the maximum time allowed for the jobs to run (hh:mm:ss). If the user does not specify it, a default value of 10 minutes will be considered.
 
 
:* Mode of execution: input radio button allowing the user to chose from three different execution modes:
 
:* Mode of execution: input radio button allowing the user to chose from three different execution modes:
:** Sequential mode
+
:** Sequential mode,
:** Parallel mode using mpi: the user needs to specify the number of nodes and the number of processes per node.
+
:** Parallel mode using mpi: the user needs to specify the number of nodes and the number of processes per node,
:** Parallel mode using GPU, for which you need to specify the number of nodes to be used and the number of CPUs per node (not implemented yet)
+
:** Parallel mode using GPU, for which you need to specify the number of nodes to be used and the number of CPUs per node.
 +
[[File:figure5.png|thumb|'''Figure 5:''' '''CTii''' Toolbar - Instance parameters]]
  
 +
:; b- CTii Toolbar - bottom part:
 +
: The bottom part of the toolbar is populated with five icons, related to the running instance, each providing a specific functionality (see figure 5):
  
[[File:figure04.jpg|thumb|'''Figure 4:''' '''CTii''' Top-Toolbar: right part]]
 
 
:; b- Bottom-Toolbar icons:
 
 
: The bottom-toolbar is populated with two icons, two buttons, and a text field, each providing a specific functionality (see figure 4):
 
 
:* The left/right arrows: allows the user to navigate among multiple and simultaneous workflow runs.
 
 
:* The text filed: illustrates the name of the selected (running) instance of the workflow.
 
:* The text filed: illustrates the name of the selected (running) instance of the workflow.
 +
:* The Run icon: allows the user to launch the omnimatch the workflow execution,
 +
:* The Stop icon: allows the user to stop the running execution of the workflow,
 
:* The two buttons: allows the user to browse and visualize the log files related to standard output and standard error for the selected instance, directly fetched from the remote host, where omnimatch software is launched.  
 
:* The two buttons: allows the user to browse and visualize the log files related to standard output and standard error for the selected instance, directly fetched from the remote host, where omnimatch software is launched.  
 +
:* The Close icon: allows the user to close the selected workflow window,
  
 
+
[[File:figure6.png|thumb|'''Figure 6:''' Omnimatch workflow experiment in '''CTii''']]
[[File:figure05.jpg|thumb|'''Figure 5:''' '''CTii''' Bottom-Toolbar]]
+
[[File:figure7.png|thumb|'''Figure 7:''' Changing parameter values]]
 
 
 
:; c- Panel Tabs:
 
:; c- Panel Tabs:
  
 
: '''CTii''' panel is populated with three functionality tabs, namely: pre-processing tab, omnimatch tab, and post-processing tab. The omnimatch tab is selected by default and it represents a graph reflecting the omnimatch 3D template matching workflow.
 
: '''CTii''' panel is populated with three functionality tabs, namely: pre-processing tab, omnimatch tab, and post-processing tab. The omnimatch tab is selected by default and it represents a graph reflecting the omnimatch 3D template matching workflow.
: The experiment workflow consists of the omnimatch module connected with a number of components, each representing an input/output argument along with its current value. Values of the input/output arguments can be changed by double-clicking on each component of the graph. Figure 5 represent a screenshot of changing the value for the 'PSI' argument.
+
: As depicted in figure 6, the experiment workflow consists of the omnimatch module connected with a number of components, each representing an input/output argument along with its current value. Values of the input/output arguments can be changed by double-clicking on each component of the graph. Figure 7 represent a screenshot of changing the values for PHI, PSI and THETA.
 
 
[[File:figure06.jpg|thumb|'''Figure 6:''' Changing parameter value]]
 
  
 
:; d- Running omnimatch experiment:
 
:; d- Running omnimatch experiment:
Line 113: Line 120:
 
: To launch the workflow execution, you need to click the 'Run' icon on the toolbar. As illustrated on figure 7, '''CTii''' will promote the user with an overview on the job be executed and the parameter arguments. The user is therefore, given the opportunity to check the argument values and confirm the job submission.
 
: To launch the workflow execution, you need to click the 'Run' icon on the toolbar. As illustrated on figure 7, '''CTii''' will promote the user with an overview on the job be executed and the parameter arguments. The user is therefore, given the opportunity to check the argument values and confirm the job submission.
  
[[File:figure07.jpg|thumb|'''Figure 7:''' Launching workflow execution]]
+
[[File:figure8.png|thumb|'''Figure 8:''' Launching workflow execution]]
  
 
: After a successful launch, the user is presented with a dialog confirming that "WORKFLOW IS STARTED". 'Stop' and 'Monitor' functionalities are then enabled, giving the user the possibility to monitor or stop the workflow during execution.
 
: After a successful launch, the user is presented with a dialog confirming that "WORKFLOW IS STARTED". 'Stop' and 'Monitor' functionalities are then enabled, giving the user the possibility to monitor or stop the workflow during execution.
  
[[File:figure08.jpg|thumb|'''Figure 8:''' Monitoring workflow execution]]
+
[[File:figure9.png|thumb|'''Figure 9:''' Monitoring workflow execution]]
  
 
:; e- Output results:
 
:; e- Output results:
  
 
: After a successful completion of the workflow execution, a new subdirectory will be created and three files are generated under that subdirectory.
 
: After a successful completion of the workflow execution, a new subdirectory will be created and three files are generated under that subdirectory.
: Each workflow execution (run) results in a new subdirectory named as __. For example, subdirectory 20100219_output01_150211 means that workflow is being executed on the 19th of February 2010 at 15:02:11.
+
: Each workflow execution (run) results in a new subdirectory named as '''''yyyymmdd_output_hh:mm:ss'''''. For example, sub-directory 20100219_output01_150211 means that workflow is being executed on the 19th of February 2010 at 15:02:11.
: In addition to the two files generated by the template matching process (.ang and .ccf), CTII generates an XML file describing the workflow process and the used argument values per run. An example of the experiment description is given in annex 2.
+
: In addition to the two files generated by the template matching process (.ang and .ccf), CTII generates an XML file describing the workflow process and the used argument values per run.

Latest revision as of 09:58, 3 August 2011


Biggrid.png   CTii: Cell Tomography Intuitive Interface   

A Java GUI application facilitating the tasks of scientists performing
the Omnimatch 3D template matching experimentations.

(A.Benabdelkader and Souley Madougou)

CellTom.jpg


Acknowledgment
This work was carried out in the context of the BiG Grid project, with financial support from the Netherlands Organization for Scientific Research (NWO). The work, described in this document, is developed in collaboration with 3DEM groups at the university of Utrecht (UU) and Leiden University Medical Center (LUMC).
1- Introduction
Cell Tomography Intuitive Interface (CTii) is a Java GUI application which aims at facilitating the tasks of scientists performing the omnimatch 3D template matching experimentations [lebbink 2007 ]. In addition to the main processing component, CTII also provide two other components for pre/post processing of the input/output electro microscopy files. Within the current version of the document, we only focus on the main processing component (3D template matching).
From the usage point of view, CTii is very sensitive, since it involves the set-up of a number of parameters whose adjustments require appropriate expertise and skill in the application domain.
2- Functionalities
CTii facilitates the tasks of scientists performing the Omnimatch 3D template matching experiments, by providing the following functionalities:
  • It hides the complexities related to the set-up and configuration of the cluster where the software runs,
  • It includes a workflow experiment design, describing the execution steps of the experiments,
  • It facilitates the setting and adjustment of the different parameters within the graphical interface,
  • It allows the submission of several experiments from the same interface and provides means for monitoring the execution of jobs at run-time.
  • It eventually, installs the the Omnimatch software on the (GPU) cluster
  • It eventually, uploads the input data files from the local machine to the (GPU) cluster where the software runs,
  • It eventually, downloads the output results and data files from the (GPU) cluster to the local machine,
3- Installation
a- Requirements
CTii is an interface to assist the scientist in setting the proper environment for running and monitoring 3D template matching experiments. It also helps in organizing and classifying the output results. In order to properly use the CTii interface, the following pre-requirements are needed:
  • Omnimatch software must be properly installed and functional. From now on, we will refer to $omnimatch_home as the path to Omnimatch software. Within the new version of CTii, the Omnimatch software is installed by CTii together with the configuration and setting files.
  • In order to use the workload management system WMS (e.g. PBS, SGE, and LSF), the user must provide a job submission script which sets up the appropriate environment to run Omnimatch and launches the jobs. CTii provides appropriate scripts for most known WMSs. An example that script is given in Annex 1.
b- Installation
CTii installer is created using winzip/winrar and can be downloaded from: ….
To install CTii, you simply decompress the installation package 'CTII.rar'. After installation is complete, it will create a new CTii directory with the following structure and items:
  • dist: a subdirectory containing the CTii JAR file (CTii.jar)
  • dist/lib: a subdirectory containing the different third party libraries used by CTii (jgraph, etc.)
  • ctii.bat/ctii.sh: a script to launch CTii Interface for Windows and Unix respectively
  • config.xml: descriptions file containing the graphical representation and the description of the omnimatch workflow experiment. This file is only editable through the CTii graphical user interface.
  • defaultsettings.xml: Omnimatch default setting variables (e.g. input data files, values for psi, phi and theta, etc.),
  • usersettings.xml: Omnimatch user setting variables; values declared in this settings file overwrites the default ones ,
  • config/bin: contains the binaries of the Omnimatch software,
  • config/scripts: contains the WMS submission scripts to run Omnimatch software,
  • config/setting/settings.properties: a property file used to configure CTii. It specifies the remote location on which omnimatch will run and sets up the proper environment to use. This file is only editable through the CTii graphical user interface,
Figure 1: CTii Main Interface
c- Running CTii
You can run CTii by issuing the following command:
  • Java -jar CTii.jar Or
  • CTTI.bat on windows
  • CTII.sh on UNIX
Figure 1 illustrates the CTii main User Interface, which is composed of: 1) a Toolbar (on top), 2) a workbench/body area, and 3) a monitoring panel (to the right).


4-Configuration
Figure 2: CTii Settings window
Most of the CTii configuration is done in the property file 'settings.properties'. This file is read by CTii at startup. It presents the setting information in a graphical interface to be updated and confirmed by the user. This interface is shown in Figure 2. Essentially; the user needs to feed CTii with connection information and working environment on the remote host, where omnimatch software will run (cluster or grid).
  • Host Name: specifies the host name of the machine where to launch omnimatch (e.g. lisa.sara.nl).
  • User Name: specifies an existing user on the host machine.
  • Password: specifies the user password on the host machine.
  • Workload Management System, deployed on the specified host (PBS, SGE, or LSF),
  • Omnimatch home directory on the host,
  • Binaries sub-directory on the host (omnimatch),
  • Input sub-directory where input files are located/uploaded,
  • Output sub-directory where to generate the output result files along with a summary file for each run,
  • Transfer Buffer: Specifies the local sub-directory for the input/output data files,
5- Usage
As illustrated in figures 1, CTii GUI is composed of Toolbars, a central body, and a monitoring area.
Figure 3: CTii Toolbar
a- CTii Toolbar - top part (global)
Figure 4: CTii Toolbar - global parameters
As illustrated in figure 4, the top part of the Toolbar is populated with icons, each providing a global functionality:
  • The certificate icon: allows the user to ask for a certificate granting him/her the right to use the GRID (this functionality is currently disabled),
  • The 'Plus' icon: allows the user to instantiate a new window and create a new experiment,
  • The Monitor icon: allows the user to monitor the all the running workflows during execution,
  • The left arrow: allows the user to navigate to the previous workflow run (experiment),
  • The right arrow: allows the user to navigate to the next workflow run (experiment),
  • The Setting icon: provides the opportunity to update the settings of the remote host, where omnimatch software environment.
  • The wall time: input field to specify the maximum time allowed for the jobs to run (hh:mm:ss). If the user does not specify it, a default value of 10 minutes will be considered,
  • Mode of execution: input radio button allowing the user to chose from three different execution modes:
    • Sequential mode,
    • Parallel mode using mpi: the user needs to specify the number of nodes and the number of processes per node,
    • Parallel mode using GPU, for which you need to specify the number of nodes to be used and the number of CPUs per node.
Figure 5: CTii Toolbar - Instance parameters
b- CTii Toolbar - bottom part
The bottom part of the toolbar is populated with five icons, related to the running instance, each providing a specific functionality (see figure 5):
  • The text filed: illustrates the name of the selected (running) instance of the workflow.
  • The Run icon: allows the user to launch the omnimatch the workflow execution,
  • The Stop icon: allows the user to stop the running execution of the workflow,
  • The two buttons: allows the user to browse and visualize the log files related to standard output and standard error for the selected instance, directly fetched from the remote host, where omnimatch software is launched.
  • The Close icon: allows the user to close the selected workflow window,
Figure 6: Omnimatch workflow experiment in CTii
Figure 7: Changing parameter values
c- Panel Tabs
CTii panel is populated with three functionality tabs, namely: pre-processing tab, omnimatch tab, and post-processing tab. The omnimatch tab is selected by default and it represents a graph reflecting the omnimatch 3D template matching workflow.
As depicted in figure 6, the experiment workflow consists of the omnimatch module connected with a number of components, each representing an input/output argument along with its current value. Values of the input/output arguments can be changed by double-clicking on each component of the graph. Figure 7 represent a screenshot of changing the values for PHI, PSI and THETA.
d- Running omnimatch experiment
To launch the workflow execution, you need to click the 'Run' icon on the toolbar. As illustrated on figure 7, CTii will promote the user with an overview on the job be executed and the parameter arguments. The user is therefore, given the opportunity to check the argument values and confirm the job submission.
Figure 8: Launching workflow execution
After a successful launch, the user is presented with a dialog confirming that "WORKFLOW IS STARTED". 'Stop' and 'Monitor' functionalities are then enabled, giving the user the possibility to monitor or stop the workflow during execution.
Figure 9: Monitoring workflow execution
e- Output results
After a successful completion of the workflow execution, a new subdirectory will be created and three files are generated under that subdirectory.
Each workflow execution (run) results in a new subdirectory named as yyyymmdd_output_hh:mm:ss. For example, sub-directory 20100219_output01_150211 means that workflow is being executed on the 19th of February 2010 at 15:02:11.
In addition to the two files generated by the template matching process (.ang and .ccf), CTII generates an XML file describing the workflow process and the used argument values per run.