Fine Grain Concurrent Computations
<p>This thesis develops a computational model, a programming notation, and a set of programming principles to further and to demonstrate the practicality of programming fine grain concurrent computers.</p> <p>Programs are expressed in the computational model as a collection of &...
Main Author: | |
---|---|
Format: | Others |
Language: | en |
Published: |
1987
|
Online Access: | https://thesis.library.caltech.edu/809/1/Athas_wc_1987.pdf Athas, William C., Jr. (1987) Fine Grain Concurrent Computations. Dissertation (Ph.D.), California Institute of Technology. doi:10.7907/63xc-r308. https://resolver.caltech.edu/CaltechETD:etd-02282008-091326 <https://resolver.caltech.edu/CaltechETD:etd-02282008-091326> |
id |
ndltd-CALTECH-oai-thesis.library.caltech.edu-809 |
---|---|
record_format |
oai_dc |
spelling |
ndltd-CALTECH-oai-thesis.library.caltech.edu-8092021-04-17T05:01:33Z https://thesis.library.caltech.edu/809/ Fine Grain Concurrent Computations Athas, William C., Jr. <p>This thesis develops a computational model, a programming notation, and a set of programming principles to further and to demonstrate the practicality of programming fine grain concurrent computers.</p> <p>Programs are expressed in the computational model as a collection of <i>definitions</i> of autonomous computing agents called <i>objects</i>. In the execution of a program, the objects communicate data and synchronize their actions exclusively by message-passing. An object executes its definition only in response to receiving a message, and its actions may include sending messages, creating new objects, and modifying its own internal state. The number of actions that occur in response to a message is finite; Turing computability is achieved not within a single object, but through the interaction of objects.</p> <p>A new concurrent programming notation <i>Cantor</i> is used to demonstrate the cognitive process of writing programs using the object model. Programs for numerical sieves, sorting, the eight queens problem, and Gaussian elimination are fully described. Each of these programs involve up to thousands of objects in their exectuion. The general programming strategy is to first partition objects by their overall behavior and then to program the behaviors to be self-organizing.</p> <p>The semantics of Cantor are made precise through the definition of a formal semantics for Cantor and the object model. Objects are modelled as finite automata. The formal semantics is useful for proving program properties and for building frameworks to capture specific properties of object programs. The mathematical frameworks are constructed for building object graphs independently of program execution and for systematically removing objects that are irrelevant to program execution (garbage collection).</p> <p>The formal semantics are complemented by experiments that allow one to study the dynamics of the execution of Cantor programs on fine grain concurrent computers. The clean semantics of Cantor suggests simple metrics for evaluating the execution of concurrent programs for an ideal, abstract implementation. Program performance is also evaluated for environments where computing resources are limited. From the results of these experiments, hardware and software architectures for organizing fine grain message- passing computations is proposed, including support for fault tolerance and for garbage collection.</p> 1987 Thesis NonPeerReviewed application/pdf en other https://thesis.library.caltech.edu/809/1/Athas_wc_1987.pdf Athas, William C., Jr. (1987) Fine Grain Concurrent Computations. Dissertation (Ph.D.), California Institute of Technology. doi:10.7907/63xc-r308. https://resolver.caltech.edu/CaltechETD:etd-02282008-091326 <https://resolver.caltech.edu/CaltechETD:etd-02282008-091326> https://resolver.caltech.edu/CaltechETD:etd-02282008-091326 CaltechETD:etd-02282008-091326 10.7907/63xc-r308 |
collection |
NDLTD |
language |
en |
format |
Others
|
sources |
NDLTD |
description |
<p>This thesis develops a computational model, a programming notation, and a set of programming principles to further and to demonstrate the practicality of programming fine grain concurrent computers.</p>
<p>Programs are expressed in the computational model as a collection of <i>definitions</i> of autonomous computing agents called <i>objects</i>. In the execution of a program, the objects communicate data and synchronize their actions exclusively by message-passing. An object executes its definition only in response to receiving a message, and its actions may include sending messages, creating new objects, and modifying its own internal state. The number of actions that occur in response to a message is finite; Turing computability is achieved not within a single object, but through the interaction of objects.</p>
<p>A new concurrent programming notation <i>Cantor</i> is used to demonstrate the cognitive process of writing programs using the object model. Programs for numerical sieves, sorting, the eight queens problem, and Gaussian elimination are fully described. Each of these programs involve up to thousands of objects in their exectuion. The general programming strategy is to first partition objects by their overall behavior and then to program the behaviors to be self-organizing.</p>
<p>The semantics of Cantor are made precise through the definition of a formal semantics for Cantor and the object model. Objects are modelled as finite automata. The formal semantics is useful for proving program properties and for building frameworks to capture specific properties of object programs. The mathematical frameworks are constructed for building object graphs independently of program execution and for systematically removing objects that are irrelevant to program execution (garbage collection).</p>
<p>The formal semantics are complemented by experiments that allow one to study the dynamics of the execution of Cantor programs on fine grain concurrent computers. The clean semantics of Cantor suggests simple metrics for evaluating the execution of concurrent programs for an ideal, abstract implementation. Program performance is also evaluated for environments where computing resources are limited. From the results of these experiments, hardware and software architectures for organizing fine grain message- passing computations is proposed, including support for fault tolerance and for garbage collection.</p> |
author |
Athas, William C., Jr. |
spellingShingle |
Athas, William C., Jr. Fine Grain Concurrent Computations |
author_facet |
Athas, William C., Jr. |
author_sort |
Athas, William C., Jr. |
title |
Fine Grain Concurrent Computations |
title_short |
Fine Grain Concurrent Computations |
title_full |
Fine Grain Concurrent Computations |
title_fullStr |
Fine Grain Concurrent Computations |
title_full_unstemmed |
Fine Grain Concurrent Computations |
title_sort |
fine grain concurrent computations |
publishDate |
1987 |
url |
https://thesis.library.caltech.edu/809/1/Athas_wc_1987.pdf Athas, William C., Jr. (1987) Fine Grain Concurrent Computations. Dissertation (Ph.D.), California Institute of Technology. doi:10.7907/63xc-r308. https://resolver.caltech.edu/CaltechETD:etd-02282008-091326 <https://resolver.caltech.edu/CaltechETD:etd-02282008-091326> |
work_keys_str_mv |
AT athaswilliamcjr finegrainconcurrentcomputations |
_version_ |
1719396520066809856 |