Advanced Search

Browse by Discipline

Scientific Societies

E-print Alerts

Add E-prints

E-print Network

  Advanced Search  

An Implementation of a Hopfield Network Kernel Jos'e N. Amaral, Guang Gao, Xinan Tang

Summary: An Implementation of a Hopfield Network Kernel
Jos'e N. Amaral, Guang Gao, Xinan Tang
EARTH is a multithreaded program execution and architecture model that hides communication and synchronization
latencies through fine­grain multithreading. EARTH provides a simple synchronization mechanism: a thread is spawned
when a pre­specified number of synchronization signals are received in its synchronization slot -- signaling the fact that
all dependences required for its execution are satisfied. This simple synchronization mechanism is an essential primitive
in Threaded­C -- a multithreaded language designed to program applications on EARTH. The EARTH synchronization
mechanism has been efficiently implemented on a number of computer platforms, and has played an essential role in the
support of a large number of parallel applications on EARTH.
An interesting open question has been: is such a simple mechanism sufficient to satisfy the synchronization needs
of the large set of applications that EARTH can implement? Or could the EARTH programming model benefit from
the implementation of more elaborate synchronization mechanism? In such case, what are the benefits and tradeoffs of
adding this mechanisms to EARTH?
This paper describes the implementation of I­structures under the EARTH execution and architecture model. An
I­structure is a data structure that allows for the implementation of a lenient computation model. A read operation
can be issued to an element of an I­structure before it is known that the corresponding write operation has produced
the value. We also introduce a new parallel kernel based on the Hopfield Network and demonstrate how the I­structure
support on EARTH can be utilized. We finish presenting a complete Threaded­C program to solve the Hopfield kernel


Source: Amaral, José Nelson - Department of Computing Science, University of Alberta
Gao, Guang R. - Department of Electrical and Computer Engineering, University of Delaware


Collections: Computer Technologies and Information Sciences