Tradeoffs in Designing a Parallel Architecture for the Apiary
The Apiary is an abstract computer architecture designed for performing computation based on the idea of message passing between dynamic computational objects called actors. An apiary connotes a community of worker bees busily working together; similarily, the Apiary architecture is made of many workers (processing elements) computing together. The Apiary architecture is designed to exploit the concurrency inherent in the actor model of computation by processing the messages to many different actors in parallel. This paper explores the nature of actor computations and how the Apiary performs computation with actors to give the render some background before looking at some of the tradeoffs which must be made to design special purpose hardware for the Apiary.