Page Tools


    Parallel Component Support

    Overview

    Parallel component extensions have many limitations:

    • only implemented for homeplacement
    • not supported for executableplacement (yet), hostcollocation or processcollocation
    • it is not possible to mix sequential and parallel implementations.

    Assembly file extensions

    CSD Extension

    There are 3 extensions of the CSD, to specify that a component implementation is parallel, its default parallelism degree, and the name of the file that will contain the list of machines.

    Declaring a Parallel Implementation

    This extension must be in the implementation tag of a softpkg xml document.

    • origin: fr.inria.padico
    • class: component
    • value: parallel

    Declaring a Default Parallel Degree for an Implementation

    This extension must be in the implementation tag of softpkg xml document.

    • origin: fr.inria.padico.parallel
    • class: size
    • value: a number

    Notes:

    1. this extension automatically marks the implementation as parallel

    Declaring a Machine File

    This extension must be in the implementation tag of softpkg xml document.

    • origin: fr.inria.padico.parallel
    • class: machine_file
    • value: the name of a file that will contain the list of machines.

    Notes:

    1. This extension is not yet fully implemented: only the default value (see below) is used.
    2. If this extension is not used, the machine file will be called machinefile
    3. The file is created in the current working directory of the component

    Example

    <softpkg>
      ...
      <implementation id="mpi_exe_id">
        < code type="Executable">
          <fileinarchive name="bin/mpirun"/>
        </ code>
        <extension class="component" origin="fr.inria.padico">parallel</extension>
        <extension class="size" origin="fr.inria.padico.parallel">4</extension>
        <extension class="machinefile" origin="fr.inria.padico.parallel">my_machine_file</extension>
    </softpkg>

    CAD Extension

    There is one extension of the CAD, to specify that the parallelism degree of a component instance.

    Declaring the Parallelism Degree of a component instance

    This extension must be in the componentinstantiation tag of a componentassembly xml document.

    • origin: fr.inria.padico.parallel
    • class: size
    • value: a number

    Notes:

    1. this extension automatically marks the implementation as parallel

    Example

    <componentassembly id="main">
      ...
      <partitionning>
        <homeplacement cardinality="1" id="hp_pw">
          <componentfileref idref="parallelWorker"/>
          <componentimplref idref="parallelWorker_omni_exe_id" /> 
          <componentinstantiation id="pw" >
            <extension class="size" origin="fr.inria.padico.parallel">2</extension>
          </componentinstantiation>
        </homeplacement>
      </partitionning>
      ...
    </componentassembly>

    Powered by Heliovista - Création site internet