Algorithmic skeletons is a powerful concept to describe patterns of concurrency in programming, abstracting from implementation. Haskell/sub #/ is a coordination based distributed extension of Haskell. In this paper, ...
详细信息
Algorithmic skeletons is a powerful concept to describe patterns of concurrency in programming, abstracting from implementation. Haskell/sub #/ is a coordination based distributed extension of Haskell. In this paper, it is shown how skeletons can be introduced into Haskell/sub #/ at configuration level, by extending its notion of hierarchical composition of programs with process templates. The approach described is general enough to be applied to any configuration language. Its expressiveness, simplicity and elegance are demonstrated by examples, which also show its impact in Haskell/sub #/ programming practice and performance.
The paper presents the design and implementation of the Generic Message Passing framework (GMP). The design of the GMP is guided by two goals: programmer productivity and run-time performance, particularly for paralle...
详细信息
The paper presents the design and implementation of the Generic Message Passing framework (GMP). The design of the GMP is guided by two goals: programmer productivity and run-time performance, particularly for parallel systems having both shared and distributed memory (e.g., clusters of SMPs). To achieve these goals simultaneously, the GMP uses a generic programming paradigm, allowing it to integrate seamlessly with modern generic libraries such as the C++ Standard Library. In addition the GMP presents a single parallel programming model, namely message passing. The implementation of the GMP fully exploits the architectural characteristics of its execution target for maximum run-time performance. Performance results are presented that demonstrate the effectiveness of the Generic Message Passing framework.
This paper presents design and implementation of a remote Procedure call (RPC) API for programming applications on Peer-to-Peer environments. The P2P-RPC API is designed to address one of neglected aspect of Peer-to-P...
详细信息
ISBN:
(纸本)9780769519197
This paper presents design and implementation of a remote Procedure call (RPC) API for programming applications on Peer-to-Peer environments. The P2P-RPC API is designed to address one of neglected aspect of Peer-to-Peer the lack of a simple programming interface. In this paper we examine one concrete implementation of the P2P-RPC-API derived from OmniRPC (an existing RPC API for the Grid based on Ninf system). This new API is implemented on top of low-level functionalities of the XtremWeb Peer-to-Peer Computing System. The minimal API defined in this paper provides a basic mechanism to make migrate a wide variety of applications using RPC mechanism to the Peer-to-Peer systems. We evaluate P2P-RPC for a numerical application (NAS EP Benchmark) and demonstrate its performance and fault tolerance properties.
A novel resistance ratio read (R/sup 3/) architecture for a magnetoresistive random access memory (MRAM), which realizes a burst read operation and higher fluctuation immunity of MTJ resistance, is proposed. In this a...
详细信息
A novel resistance ratio read (R/sup 3/) architecture for a magnetoresistive random access memory (MRAM), which realizes a burst read operation and higher fluctuation immunity of MTJ resistance, is proposed. In this architecture, a memory cell consists of 2 transistors and 2 MTJs, which store the complementary data, and the intermediate node between these MTJs is connected to a sense amplifier. The readout signal is proportional to the ratio of 2 MTJ resistances. The proposed R/sup 3/ architecture provides a simple read system which enables the introduction of a burst read mode. This architecture has a higher fluctuation immunity of MTJ resistance compared with the conventional current signal read scheme. Moreover, the proposed architecture can easily modify the macro specification to satisfy the demands of the customer, because the burst length and random access time are adjustable by the dimensions of the memory cell array.
In this paper, we argue that the address space of memory regions that participate in inter task communication is over-specified by the traditional communication models used in behavioral modeling, resulting in sub-opt...
详细信息
In this paper, we argue that the address space of memory regions that participate in inter task communication is over-specified by the traditional communication models used in behavioral modeling, resulting in sub-optimal implementations. We propose shared messaging communication model and the associated channels for efficient inter task communication of high bandwidth data streams in behavioral models of signal processing applications. In shared messaging model, tasks communicate data through special memory regions whose address space is unspecified by the model without introducing non determinism. Address space to these regions can be assigned during mapping of application to specific architecture, by exploring feasible alternatives. We present experimental results to show that this flexibility reduces the complexity (e.g., communication latency, memory usage) of implementations significantly (up to an order of magnitude).
Collective operations are an important aspect of the currently most important message-passing programming model MPI (message passing interface). Many MPI applications make heavy use of collective operations. Collectiv...
详细信息
Collective operations are an important aspect of the currently most important message-passing programming model MPI (message passing interface). Many MPI applications make heavy use of collective operations. Collective operations involve the active participation of a known group of processes and are usually implemented on top of MPI point-to-point message passing. Many optimizations of the used communication algorithms have been developed, but the vast majority of those optimizations is still based on plain MPI point-to-point message passing. While this has the advantage of portability, it often does not allow for full exploitation of the underlying interconnection network. In this paper, we present a low-level, pipeline-based optimization of one-to-many and many-to-one collective operations for the SCI (scalable coherent interface) interconnection network. The optimizations increase the performance of some operations by a factor of four if compared with the generic, tree-based algorithms.
We are currently studying the implementation of a C++-based parallel programming library to simplify parallel programming and efficiently execute parallel programs on a locally distributed computers with nonuniform pe...
详细信息
We present a new parallel programming tool environment that is (1) accessible and executable "anytime, anywhere," through standard Web browsers and (2) integrated in that it provides tools that adhere to a c...
详细信息
Final group projects are an integral part of the graduate mechatronics course, "Introduction to Mechatronics", in the Woodruff School of Mechanical Engineering at Georgia Tech. Students are able to develop b...
详细信息
Final group projects are an integral part of the graduate mechatronics course, "Introduction to Mechatronics", in the Woodruff School of Mechanical Engineering at Georgia Tech. Students are able to develop both practical and theoretical understanding of mechatronics while working on their final group projects. They also develop interpersonal and communication skills necessary to work in a multi-disciplinary field. To assist students, a framework has been developed to help them realize goals they propose for their final group project. It helps them to work effectively within a team environment and present their projects utilizing different media outlets, such as writing technical reports, developing web pages for their final group projects, and making oral presentations. This framework includes lecture topics covered in class, project requirements, grading methods, material resources, and support from graduate teaching assistants, electronic, and machine shop. In this paper, the framework and example projects demonstrating its effectiveness will be presented.
Commodities-built clusters, a low cost alternative for distributed parallel processing, brought high-performance computing to a wide range of users. However, the existing widespread tools for distributed parallel prog...
详细信息
Commodities-built clusters, a low cost alternative for distributed parallel processing, brought high-performance computing to a wide range of users. However, the existing widespread tools for distributed parallel programming, such as messaging passing libraries, does not attend new software engineering requirements that have emerged due to increase in complexity of applications. Haskell/sub #/ is a parallel programming language intending to reconcile higher abstraction and modularity with scalable performance. It is demonstrated the use of Haskell/sub #/ in the programming of three SPMD benchmark programs, which have lower-level MPI implementations available.
暂无评论