scispace - formally typeset
Search or ask a question
Topic

Software portability

About: Software portability is a research topic. Over the lifetime, 8987 publications have been published within this topic receiving 164922 citations. The topic is also known as: portability.


Papers
More filters
Proceedings ArticleDOI
13 Jun 2007
TL;DR: This paper describes how callable bodies help the Yeti interpreter to efficiently identify and run traces, and how the closely coupled dynamic compiler can fall back on the interpreter in various ways, permitting an incremental approach.
Abstract: The design of new programming languages benefits from interpretation, which can provide a simple initial implementation, flexibility to explore new language features, and portability to many platforms. The only downside is speed of execution, as there remains a large performance gap between even efficient interpreters and mixed-mode systems that include a just-in-time compiler (or JIT for short). Augmenting an interpreter with a JIT, however, is not a small task. Today, JITs used for Java™ are loosely-coupled with the interpreter, with callsites of methods being the only transition point between interpreted and native code. To compile whole methods, the JIT must duplicate a sizable amount of functionality already provided by the interpreter, leading to a "big bang" development effort before the JIT can be deployed. Instead, adding a JIT to an interpreter would be easier if it were possible to leverage the existing functionality.In earlier work we showed that packaging virtual instructions as lightweight callable routines is an efficient way to build an interpreter. In this paper we describe how callable bodies help our interpreter to efficiently identify and run traces. Our closely coupled dynamic compiler can fall back on the interpreter in various ways, permitting an incremental approach in which additional performance gains can be realized as it is extended in two dimensions: (i) generating code for more types of virtual instructions, and (ii) identifying larger compilation units. Currently, Yeti identifies straight line regions of code and traces, and generates non-optimized code for roughly 50 Java integer and object bytecodes. Yeti runs roughly twice as fast as a direct-threaded interpreter on SPECjvm98 benchmarks.

42 citations

Proceedings ArticleDOI
02 Aug 1995
TL;DR: This work presents a distributed parallel implementation of a multipole-based algorithm that is portable to a wide variety of applications and parallel platforms and demonstrates the portability and scalability of the application to large number of processors.
Abstract: Several variants of parallel multipole-based algorithms have been implemented to further research in fields such as computational chemistry and astro-physics. We present a distributed parallel implementation of a multipole-based algorithm that is portable to a wide variety of applications and parallel platforms. Performance data are presented for loosely coupled networks of workstations as well as for more tightly coupled distributed multiprocessors, demonstrating the portability and scalability of the application to large number of processors.

42 citations

Patent
23 Dec 2004
TL;DR: In this article, a method and apparatus for generating a standard software communication architecture (SCA) compliant waveform application for a software defined radio is described, where an application shell generator is used to separate implementation of software radio software resources from implementation of radio waveform functionality.
Abstract: A method and apparatus is described for generating a standard software communication architecture (SCA) compliant waveform application for a software defined radio. An application shell generator is used to separate implementation of software radio software resources from implementation of software radio waveform functionality. In this manner, an additional layer of abstraction (402) is defined and enforced between software resource objects (408) that control access to a set of physical abstraction layer SCA core framework API's (422) and waveform functionality. This additional abstraction layer assures that the physical abstraction layer API's only interact with architecture compliant source code (424). The source code, derived from software resource templates (406), also assures portability of the generated software radio waveform application to other SCA compliant platforms.

42 citations

Proceedings ArticleDOI
17 Sep 2007
TL;DR: A novel design of a kernel extension, called LiMIC2, is proposed for high-performance MPI intra-node communication over multi-core systems and can minimize the communication overheads by implementing lightweight primitives and provide portability across different interconnects and flexibility for performance optimization.
Abstract: Modern processors have multiple cores on a chip to overcome power consumption and heat dissipation issues. As more and more compute cores become available on a single node, it is expected that node-local communication will play an increasingly greater role in overall performance of parallel applications such as MPI applications. It is therefore crucial to optimize intra-node communication paths utilized by MPI libraries. In this paper, we propose a novel design of a kernel extension, called LiMIC2, for high-performance MPI intra-node communication over multi-core systems. LiMIC2 can minimize the communication overheads by implementing lightweight primitives and provide portability across different interconnects and flexibility for performance optimization. Our performance evaluation indicates that LiMIC2 can attain 80% lower latency and more than three times improvement in bandwidth. Also the experimental results show that LiMIC2 can deliver bidirectional bandwidth greater than 11GB/s.

42 citations

Proceedings ArticleDOI
07 Sep 2010
TL;DR: A development framework, two prototypes, and a comparative study in the area of multi-tag Near-Field Communication (NFC) interaction indicate that all participants preferred the dynamic display, although the static display has advantages, e.g. with respect to privacy and portability.
Abstract: This paper reports on a development framework, two prototypes, and a comparative study in the area of multi-tag Near-Field Communication (NFC) interaction. By combining NFC with static and dynamic displays, such as posters and projections, services are made more visible and allow users to interact with them easily by interacting directly with the display with their phone. In this paper, we explore such interactions, in particular, the combination of the phone display and large NFC displays. We also compare static displays and dynamic displays, and present a list of deciding factors for a particular deployment situation. We discuss one prototype for each display type and developed a corresponding framework which can be used to accelerate the development of such prototypes whilst supporting a high level of versatility. The findings of a controlled comparative study indicate, among other things, that all participants preferred the dynamic display, although the static display has advantages, e.g. with respect to privacy and portability.

42 citations


Network Information
Related Topics (5)
Software
130.5K papers, 2M citations
90% related
Cloud computing
156.4K papers, 1.9M citations
83% related
The Internet
213.2K papers, 3.8M citations
83% related
Wireless sensor network
142K papers, 2.4M citations
82% related
Artificial neural network
207K papers, 4.5M citations
82% related
Performance
Metrics
No. of papers in the topic in previous years
YearPapers
20241
2023580
20221,257
2021290
2020308
2019381