A message consists of the target to whom the communication is addressed, and the content of the message. In Erlang, processes (i.e., actors) are created using which gives them a unique process spawn, identifier: Messages are sent by passing tuples to a PID with the syntax. ! Messages are retrieved from the mailbox using the function with pattern matching. receive Example: Partitioned Global Address Space (PGAS) Model and X10 Each processor has its own local memory, but the address space is unified. This allows processes on other processors to access remote data via simple assignment or dereference operations. X10 is an object-oriented language on the PGAS model. New threads can be spawned asynchronously; asynchronous PGAS model A memory partition and the threads operating on it are called a place. X10 operations async S Asynchronously spawns a new child thread executing and returns S immediately. finish S Executes and waits until all asynchronously spawned child threads have S terminated. atomic S Execute atomically. must be non-blocking, sequential and only access local S S data. when (E) S Conditional critical section: suspends the thread until is true, then executes E S atomically. must be non-blocking, sequential, only access local data, and be E side-effect free. at (p) S Execute at place This blocks the current thread until completion of S p. S.
A message consists of the target to whom the communication is addressed, and the content of the message. In Erlang, processes (i.e., actors) are created using spawn, which gives them a unique process identifier: Messages are sent by passing tuples to a PID with the ! syntax. Messages are retrieved from the mailbox using the receive function with pattern matching. Example: Partitioned Global Address Space (PGAS) Model and X10 Each processor has its own local memory, but the address space is unified. This allows processes on other processors to access remote data via simple assignment or dereference operations. X10 is an object-oriented language on the PGAS model. New threads can be spawned asynchronously; asynchronous PGAS model A memory partition and the threads operating on it are called a place. X10 operations async S Asynchronously spawns a new child thread executing S and returns immediately. finish S Executes S and waits until all asynchronously spawned child threads have terminated. atomic S Execute S atomically. S must be non-blocking, sequential and only access local data. when (E) S Conditional critical section: suspends the thread until E is true, then executes S atomically. E must be non-blocking, sequential, only access local data, and be side-effect free. at (p) S Execute S at place p. This blocks the current thread until completion of S.
ccc-src.docx