103 research outputs found

    A Persistent Storage Model for Extreme Computing

    Get PDF
    The continuing technological progress resulted in a dramatic growth in aggregate computational performance of the largest supercomputing systems. Unfortunately, these advances did not translate to the required extent into accompanying I/O systems and little more in terms of architecture or effective access latency. New classes of algorithms developed for massively parallel applications, that gracefully handle the challenges of asynchrony, heavily multi-threaded distributed codes, and message-driven computation, must be matched by similar advances in I/O methods and algorithms to produce a well performing and balanced supercomputing system. This dissertation proposes PXFS, a storage model for persistent objects inspired by the ParalleX model of execution that addresses many of these challenges. The PXFS model is designed to be asynchronous in nature to comply with ParalleX model and proposes an active TupleSpace concept to hold all kinds of metadata/meta-object for either storage objects or runtime objects. The new active TupleSpace can also register ParalleX actions to be triggered under certain tuple operations. An first implementation of PXFS utilizing a well-known Orange parallel file system as its back-end via asynchronous I/O layer and the implementation of TupleSpace component in HPX, the implementation of ParalleX. These details are also described along with the preliminary performance data. A house-made micro benchmark is developed to measure the disk I/O throughput of the PXFS asynchronous interface. The results show perfect scalability and 3x to 20x times speedup of I/O throughput performance comparing to OrangeFS synchronous user interface. Use cases of TupleSpace components are discussed for real-world applications including micro check-pointing. By utilizing TupleSpace in HPX applications for I/O, global barrier can be replaced with fine-grained parallelism to overlap more computation with communication and greatly boost the performance and efficiency. Also the dissertation showcases the distributed directory service in Orange file system which process directory entries in parallel and effectively improves the directory metada operations

    LIME: A Coordination Middleware Supporting Mobility of Agents and Hosts

    Get PDF
    LIME (Linda in a Mobile Environment) is a middleware supporting the development of applications that exhibit physical mobility of hosts, logical mobility of agents, or both. LIME adopts a coordination perspective inspired by work on the Linda model. The context for computation, represented in Linda by a globally accessible, persistent tuple space, is refined in LIME to transient sharing of identically-named tuple spaces carried by individual mobile units. Tuple spaces are also extended with a notion of location and programs are given the ability to react to specified states. The resulting model provides a minimalist set of abstractions that promise to facilitate rapid and dependable development of mobile applications. In this paper, we illustrate the model underlying LIME, provide a formal semantic characterization for the operations it makes available to the application developer, present its current design and implementation, and discuss lessons learned in developing applications that involve physical mobility

    Linda in the fog

    Get PDF

    ENABLING COLLABORATIVE E-HEALTH THROUGH TRIPLESPACE COMPUTING

    Get PDF
    Abstract The design and promotion of electronic patient summaries as an instrument to facilitate the pervasive delivery of healthcare is emerging as a key technology in eHealth solutions. From the technical point of view this requires powerful middleware systems supporting interoperability, multi-lingualism, security and patient privacy. In this paper we present a semantic coordination model and describe how it can be used to support pervasive access to electronic patient summaries

    Muddleware for Prototyping Mixed Reality Multiuser Games

    Full text link

    Game engines and MAS: tuplespace-based interaction in Unity3D

    Get PDF
    I Game Engines stanno acquisendo sempre più importanza sia in ambito industriale, dove permettono lo sviluppo di applicazioni moderne e videogiochi, sia in ambito di ricerca, in particolare nel contesto dei sistemi multi-agente (MAS). La loro capacità espressiva, unita al supporto di tecnologie e funzionalità innovative, permette la creazione di sistemi moderni e complessi in maniera più efficiente: il loro continuo avanzamento tecnologico li ha portati ad essere una realtà su cui fare affidamento nella produzione di vari applicativi diversi, come applicazioni di realtà aumentata/virtuale/mista, simulazioni immersive, costruzione di mondi virtuali e 3D, ecc. Ciononostante, soffrono la mancanza di proprie astrazioni e meccanismi che possano essere affidabili e utilizzati per aggredire la complessità durante il design di sistemi complessi. Il tentativo di sfruttare le caratteristiche della teoria dei MAS all'interno degli ambienti di sviluppo dei Game Engines procede secondo questa direzione: integrando le astrazioni costituenti i MAS all'interno dei Game Engines, con particolare riferimento ai modelli di coordinazione tra agenti, può portare a nuove soluzioni, riuscendo a risolvere problemi tecnologici grazie all'aiuto degli engine grafici. Questa tesi utilizza il Game Engine Unity3D proponendo due librerie C#, le quali sfruttano una precedente integrazione dello stesso framework con il Prolog per l'abilitazione di un modello di interazione e coordinazione basato su spazi di tuple, utilizzabile tramite l'implementazione di primitive LINDA. Le librerie offrono interfacce di programmazione (API) sfruttabili dai programmatori C# Unity3D per integrare nelle loro creazioni il supporto a tale modello, con una nuova modalità per la gestione della coordinazione tra oggetti in Unity3D e fornisce importanti proprietà, essendo fondamentale nel contesto dei MAS dal punto di vista dell'ingegnerizzazione di sistemi complessi e della gestione delle interazioni tra agenti
    corecore