29,920 research outputs found
PlinyCompute: A Platform for High-Performance, Distributed, Data-Intensive Tool Development
This paper describes PlinyCompute, a system for development of
high-performance, data-intensive, distributed computing tools and libraries. In
the large, PlinyCompute presents the programmer with a very high-level,
declarative interface, relying on automatic, relational-database style
optimization to figure out how to stage distributed computations. However, in
the small, PlinyCompute presents the capable systems programmer with a
persistent object data model and API (the "PC object model") and associated
memory management system that has been designed from the ground-up for high
performance, distributed, data-intensive computing. This contrasts with most
other Big Data systems, which are constructed on top of the Java Virtual
Machine (JVM), and hence must at least partially cede performance-critical
concerns such as memory management (including layout and de/allocation) and
virtual method/function dispatch to the JVM. This hybrid approach---declarative
in the large, trusting the programmer's ability to utilize PC object model
efficiently in the small---results in a system that is ideal for the
development of reusable, data-intensive tools and libraries. Through extensive
benchmarking, we show that implementing complex objects manipulation and
non-trivial, library-style computations on top of PlinyCompute can result in a
speedup of 2x to more than 50x or more compared to equivalent implementations
on Spark.Comment: 48 pages, including references and Appendi
Ada style guide (version 1.1)
Ada is a programming language of considerable expressive power. The Ada Language Reference Manual provides a thorough definition of the language. However, it does not offer sufficient guidance on the appropriate use of Ada's powerful features. For this reason, the Goddard Space Flight Center Ada User's Group has produced this style guide which addresses such program style issues. The guide covers three areas of Ada program style: the structural decomposition of a program; the coding and the use of specific Ada features; and the textural formatting of a program
Decentralized mobility models for data collection in wireless sensor networks
Controlled mobility in wireless sensor networks provides many benefits towards enhancing the network performance and prolonging its lifetime. Mobile elements, acting as mechanical data carriers, traverse the network collecting data using single-hop communication, instead of the more energy demanding multi-hop routing to the sink. Scaling up from single to multiple mobiles is based more on the mobility models and the coordination methodology rather than increasing the number of mobile elements in the network. This work addresses the problem of designing and coordinating decentralized mobile elements for scheduling data collection in wireless sensor networks, while preserving some performance measures, such as latency and amount of data collected. We propose two mobility models governing the behaviour of the mobile element, where the incoming data collection requests are scheduled to service according to bidding strategies to determine the winner element. Simulations are run to measure the performance of the proposed mobility models subject to the network size and the number of mobile elements.<br /
- …