Experiences with distributing graphic software between processors Page: 3 of 8
This article is part of the collection entitled: Office of Scientific & Technical Information Technical Reports and was provided to Digital Library by the UNT Libraries Government Documents Department.
The following text was automatically extracted from the image on this page using optical character recognition software:
symbol table information about each
module. No references to global variables
across the computer boundary are allowed.
Prior to the normal linking phase, the
object modules are scanned by a link edit
preprocessor written for the ICOPS system.
This pre-linker changes references to
remote subroutines into references to the
ICOPS run-time system. The link editor
includes the symboJ table information from
the object modules in its output. This
information can be used after execution
nas begun, thus allowing the user to
interrupt execution, specify a change in
the configuration, and resume execution.
Only modules originally declared to the
system as movable may be moved between
computers after execution has begun. This
ability is useful for reacting to changes
in the hest's workload. the actual
mechanism of movable modules utilizes a
copy of the module in each computer. The
ICOPS run-time system activates the
dormant copy and deactivates the other
Another implementation of the Remote
Procedure Call approach is the CAGES
system developed at the University ,f
North Carolina. The program modules,
written in PL/I, are declared by the
programmer to be either host- or
satellite-resident. There are no movabl'
modules as in ICOPS. In addition to
remote procedure calls, CAGES supports
remote global data references and remote
exception handling. l'rlor- to compilation,
the source modules are icanncd by a
preprtcessor writ ten for the CAGES syst em.
This preprocessor changes remote procedure
calls into calls to the CAGES run-time
syst em and generat es symbol t able
informat lon describing the pro eclures and
giobiil data ituis that arc not structures.
For structured data, stub procedures are
generited by h1e CAGES preprocessor; the-e
are cionp led and Iiked wit h t he usti-
wri t en modules, At run t ime , t he symbol
itli I e au-I s tll procedures are used by the
CAGES 1 n-t 'ime Nysn-i i o andl Ic iI
inter-computer tii n ant ld d ta ref eci trs.
Iet work in (coni urnbl program
includes 'he Emi Na'y iy t em at Carniigi e-
Mellon tliniveliSily. Although not yet
implemented, tiit I'mt salty iyst mcilq dl,!iin
I lows remote e proce'dtr' t lI s amoaln
S iveral dist ribut ed c ompit I s ai I nd remiot r
except I lon handle ilg btt b l o global iit a.
lthe dre ign itl Itides consider i I iat ins Ior
preser vl1n the NnnrMe se il e cn n local
i ocerdttr c il I , ervei ill t hr i er of
Cr!iashe of oI l Ii lr mo r 'f 1111" t('i11p t elir
irnvo l ved . I sy it rnta o inIll u Idisl pr I ,!; I e vil i on
ill lt rong t ype-check ing of t he pil sune t r"
of 1r11mo1 4 ploer durer ca!Ir,; ill b er.I of thl"
pruviou n iv( rvynm lddi'eoit'd I hroi I:;4uer,
'Ihc Iioul er 1anguaygc Ilpld i l Meru ita
strongly typed descendan
Emissary design used as
implementation system a
collection of computers
t of Pascal. T
connected by an
Ethernet communications link.5 Thus, it
sidestepped the problem of data
translation found in heterogeneous
Our Distributing Software
Our implementation of the Remote
Procedure Call approach is Fortran based,
with a preprocessor as in the CAGES
system. It supports inter-computer
SUBROUTINE calls and inter-computer
references to named COMMON data. To
distribute a program between two
computers, three steps are necessary.
First, given a Fortran application
program, the programmer must decide which
of the subroutines in the application
should execute on the satellite process-i
and which on the host. This will mean
that some subroutines contain CALLs to
other subroutines that are not on the same
computer. All such remotely called
subroutines must be specified to the
distributing software. This specification
consists of the subroutine name andt a
Jescript ion of its parameters and COMMON
areas, as described below.
Second, ttit- preprocessor is run, THII
Iesui It of this will be the production of
two fil es, call ed IlISTSHC and SATSHC.
These are Fortran source files t It must
be comt i l ed on t hei hos t and s.it c I I i e ,
restpectively, and Ii iikcd into the
appIl icdt ion,
'Thir'd, the ptrogramiuer links toge lit
the aiplitat ion main progrit and hst -
resident subrout ides, llSTSEC, and the
rit-t i Ime library that is provide d. Ihc
testlt io t hi s I inking wi l l produce t he
"xleculil blc pa r of I h4 apple Ica tionl I ha1
resides on the hIst Icimput 1 'r.
Oi (ihe sat I I I It- comiput t er t hi-
proce-Is i4.; 4 iii lili, The --t l r i;4. run-
t im(" library, the a11plicilt ion sublout Incs,.
and SATSIC are I i nkcd I ogc h1 I produ i n)
nn executuble mlodulI, (II 11h4 rult1,11 4.,
a x-r; t t Io i l pl t 1ii . 4. I c i t I I
ti Ilit d i ; I itut II ij n -Itt I aI t . Th i
ipre'1 i s 11 i on tall'. 1 1 f III h4.
In-i'tli" t b ill I t i IsI " . m( n11 ixi 1 I 1
lit iti tm iit al det- I i4iii he di i tt 1 } ypc ti -
dread i n t he rlnblilt i ne., ' lhrsc
d: I.1 an- i vt Ii I ;It ii nt li ha '- !w l lit n r .1 d
io a IIow h . progi t h1t1(it m 4 t t i n-) 1(' i I
v.ll ialI 11h.1 conl.I~n chalallr dII1,, ,11n1
illaiyt; whorsr .;I/4 it All Vxplr rrs on
Here’s what’s next.
This article can be searched. Note: Results may vary based on the legibility of text within the document.
Tools / Downloads
Get a copy of this page or view the extracted text.
Citing and Sharing
Basic information for referencing this web page. We also provide extended guidance on usage rights, references, copying or embedding.
Reference the current page of this Article.
Hamlin, G. & George, J.E. Experiences with distributing graphic software between processors, article, January 1, 1982; New Mexico. (https://digital.library.unt.edu/ark:/67531/metadc1061166/m1/3/: accessed March 23, 2019), University of North Texas Libraries, Digital Library, https://digital.library.unt.edu; crediting UNT Libraries Government Documents Department.