Sciweavers

ICFP
2009
ACM

Partial memoization of concurrency and communication

14 years 11 months ago
Partial memoization of concurrency and communication
Memoization is a well-known optimization technique used to eliminate redundant calls for pure functions. If a call to a function f with argument v yields result r, a subsequent call to f with v can be immediately reduced to r without the need to re-evaluate f's body. Understanding memoization in the presence of concurrency and communication is significantly more challenging. For example, if f communicates with other threads, it is not sufficient to simply record its input/output behavior; we must also track inter-thread dependencies induced by these communication actions. Subsequent calls to f can be elided only if we can identify an interleaving of actions from these call-sites that lead to states in which these dependencies are satisfied. Similar issues arise if f spawns additional threads. In this paper, we consider the memoization problem for a higher-order concurrent language whose threads may communicate through synchronous message-based communication. To avoid the need to ...
Lukasz Ziarek, K. C. Sivaramakrishnan, Suresh Jaga
Added 22 Nov 2009
Updated 22 Nov 2009
Type Conference
Year 2009
Where ICFP
Authors Lukasz Ziarek, K. C. Sivaramakrishnan, Suresh Jagannathan
Comments (0)