Memory system bottlenecks limit performance for many applications, and computations with strided access patterns are among the hardest hit. The streams used in such applications h...
In this paper, we present techniques and algorithms to improve the performance of various communication patterns on message-passing platforms where, for reasons of safety, user-le...
All but the most briefly used systems must evolve as their mission and roles change over time. Evolution in the context of large distributed systems is extraordinarily complex bec...
Software development in general and groupware applications in particular can greatly benefit from the reusability and interoperability aspects associated with software components....
Distributed systems are inherently complex, and therefore difficult to design and develop. Experience shows that new technologies—such as components, aspects, and application f...