[C-MPI-commits] SF.net SVN: c-mpi:[115] docs/manual/manual.xml
Status: Pre-Alpha
Brought to you by:
jmwozniak
|
From: <jmw...@us...> - 2010-05-14 18:42:44
|
Revision: 115
http://c-mpi.svn.sourceforge.net/c-mpi/?rev=115&view=rev
Author: jmwozniak
Date: 2010-05-14 18:42:38 +0000 (Fri, 14 May 2010)
Log Message:
-----------
Manual improvements.
Modified Paths:
--------------
docs/manual/manual.xml
Modified: docs/manual/manual.xml
===================================================================
--- docs/manual/manual.xml 2010-05-14 17:18:19 UTC (rev 114)
+++ docs/manual/manual.xml 2010-05-14 18:42:38 UTC (rev 115)
@@ -45,7 +45,15 @@
<title>MPI Library
</title>
<para>
- C-MPI can be used as an MPI library:
+ C-MPI can be used as an MPI library.
+ In this mode, the user allocates some number of DHT nodes
+ and DHT clients.
+ The nodes start up and begin listening for requests.
+ The clients call into <literal>cmpi_client_code()</literal>,
+ do work, and make C-MPI calls.
+ (User programs can link to <filename>libcmpi.a</filename>
+ directly as well by imitating
+ <filename>cmpi/client.c</filename>.)
</para>
<programlisting>
@@ -58,6 +66,12 @@
<title>Cluster database
</title>
<para>
+ In this mode, the DHT runs as a distributed background process
+ (<literal>cmpi-db</literal>) and the user connects to it
+ via a <literal>cp</literal>-like tool
+ (<literal>cmpi-cp</literal>).
+ </para>
+ <para>
Commands executed on submit host:
<programlisting><xi:include
href="login_shell.sh" parse="text"
@@ -68,6 +82,46 @@
xmlns:xi="http://www.w3.org/2001/XInclude" /></programlisting>
</para>
</section>
+
+ <section>
+ <title>MPI-IO implementation
+ </title>
+ <para>
+ The CMPI-IO module is really only an sketch.
+ Here's the idea:
+ <orderedlist><listitem><para>
+ C-MPI provides a patch for MPICH.
+ The user applies the patch and recompiles MPICH.
+ </para></listitem></orderedlist>
+ <orderedlist><listitem><para>
+ The user writes a normal MPI/MPI-IO program but provides
+ <literal>cmpi:/</literal> pathnames to trigger the
+ CMPI-IO implementation.
+ </para></listitem></orderedlist>
+ <orderedlist><listitem><para>
+ The user launches the program with
+ <literal>mpiexec</literal>,
+ allocating extra processes for the DHT.
+ </para></listitem></orderedlist>
+ <orderedlist><listitem><para>
+ Calls like <literal>MPI_FILE_WRITE_AT()</literal>
+ are translated by ROMIO and implemented ultimately by calls
+ like <literal>ADIOI_CMPI_WriteContig()</literal>.
+ (The full list of what CMPI-IO needs to implement is in
+ <filename>ad_cmpi.h</filename>; it's actually not that bad.)
+ This method would be implemented via calls to
+ <literal>cmpi_put()</literal>/<literal>cmpi_get()</literal>.
+ </para></listitem></orderedlist>
+ </para>
+ </section>
+ <section>
+ <title>FUSE module
+ </title>
+ <para>
+ A FUSE adapter could be built using functionality similar
+ to the MPI-IO functionality.
+ </para>
+ </section>
</section>
<section id="mpirpc">
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|