Changes between Version 11 and Version 12 of PythonAppDev


Ignore:
Timestamp:
Jul 25, 2008, 2:44:05 PM (16 years ago)
Author:
davea
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • PythonAppDev

    v11 v12  
    125125}}}
    126126
    127 = PyMW - Master Worker Computing in Python =
    128127
    129 PyMW (Master Worker Computing in Python) PyMW is a Python module for parallel master-worker computing in a variety of environments, including BOINC. With the PyMW module, users can write a single program that scales from multi-core machines to global computing platforms.
    130 
    131 == Download ==
    132 
    133 PyMW can be downloaded from [http://pymw.sourceforge.net/ here].
    134 
    135 == Installation ==
    136 
    137 A BOINC project has to be prepared to accept applications written in Python. BOINC comes with an install script for PyMW. The setup script - pymw_setup.py - can be found in the bin directory of the BOINC project. An absolute path to the PyMW working directory has to be provided with the -p or --pymw switch to the setup script. The assimilator program for PyMW will copy the results to this directory. Example to run the setup script:
    138 {{{
    139 cd /home/kadam/projects/sandbox/bin
    140 pymw_setup -p /home/kadam/pymw/examples/tasks
    141 }}}
    142 
    143 The PyMW setup script executes the followings, respectively:
    144  * Insert pymw_assimilator in the daemons section of config.xml
    145  * Insert pymw application in project.xml
    146  * Create pymw directory in the app directory of the project
    147  * Create client application executables for Linux platform
    148  * Create client application executables for Windows platform
    149  * Call xadd
    150  * Call update_versions
    151 
    152 == Platforms ==
    153 
    154 By default PyMW assumes that the python interpreter is installed on the client computers. The Python interpreter is more likely to be installed on linux clients. On Windows PyMW assumes that Python is installed and the path environment variable contains the path to the interpreter. If python is installed on a windows box, but it's not in the path, than PyMW will look in the default installation directory, which is C:\Python25 with the current version of Python.
    155 
    156 OS X client is coming soon.
    157 
    158 If python is not installed on the client computer, PyMW jobs will fail. The [http://www.python.org/psf/license/ license of Python] makes it possible to deploy the interpreter as part of the client application, however the current version of the interpreter is about 35 MB, which is not very network friendly.
    159 A later version of PyMW will come up with a solution that transfers the interpreter compressed over the network to reduce network load, but make PyMW widely available.
    160 
    161 == Usage ==
    162 
    163 Once successfully executed, the project is ready to handle PyMW jobs. The setup script can be called multiple times. However, if the pymw client application is already registered with the project, the setup script will only alter the working directory of the pymw_assimilator in the config.xml file.
    164 
    165 To use PyMW with the BOINC interface PyMW has to be configured with the -i or --interface switch. Also the home directory of the BOINC project needs to be passed to PyMW with the -p or --project_home switch.
    166 Example to run PyMW with the BOINC interface:
    167 {{{
    168 cd /home/kadam/pymw/examples
    169 python monte_pi.py -i boinc -p /home/kadam/projects/sandbox/
    170 }}}
    171 For further information on using PyMW, please refer to the documentation of PyMW.