Newsgroups: comp.parallel.pvm
From: packer@fermi.gsfc.nasa.gov (Charles Packer)
Subject: Emulate shared-memory model?
Organization: NASA Goddard Space Flight Center -- Greenbelt, Maryland USA
Date: 29 Nov 1995 22:27:53 GMT
Message-ID: <49imp9$kvq@post.gsfc.nasa.gov>


I've been asked to emulate the Cray T3D shared-memory model
using PVM so that existing T3D code can be ported to an array
of PCs running under Linux. In shared-memory programming,
if your application running on processor P wants to put
data into array A on another processor Q, it does a Put
call with A and Q as parameters. There is no corresponding
call to a receiver routine in the application code, meaning
that the transfer is accomplished not only asynchronously, but
also transparently to the application code.

I can imagine emulating this by having an interrupt-servicing
routine in the application. I've never done this kind of
programming in C or Fortran, but I'm told it can be done.
The problem here is: how to I send an interrupt signal
using PVM?

The alternative is to have the application run as a kind of
daemon that does all the PVM calls and in turn spawns the
actual computational work as a subprocess. This sounds messy.

