6360856
Lookahead revisited in wireless network simulations
Rapid growth in wireless communication systems motivates the development of technology supporting the simulation of large-scale wireless systems. However, it is widely recognized that wireless communications do not have substantial "lookahead" needed by conservative synchronization protocols. This paper focuses on identifying and exploiting lookahead for such models. We find lookahead in three ways, exploiting characteristics of low power networks, the transceiver logic, and the way in which protocol stacks are typically constructed. We show how these observations allow a variety of conservative synchronization protocols to take advantage of lookahead, describe a synchronization method we use, and empirically examine the performance this method offers on a large-scale simulation of a sensor network intended for homeland defense scenarios
14667493
Safe timestamps and large-scale modeling
The paper examines issues that recur in consideration of simulation time-stamps, in the context of building very large simulation models from components developed by different groups at different times. A key problem here is "safety", loosely defined to mean that unintended model behavior does not occur due to unpredictable behavior of timestamp generation and comparisons. We revisit the problems of timestamp format and simultaneity, and then turn to the new problem of timestamp interoperability. We describe how a C++ simulation kernel can support the concurrent evaluation of submodels that internally use heterogeneous timestamps, and evaluate the execution time costs of doing so. We find that use of a safe timestamp format that explicitly allows different time scales costs less than 10% over a stock 64-bit integer format, whereas support for completely heterogeneous timestamps can cost as much as 50% in execution speed.
2599117
Composite Synchronization in Parallel Discrete-Event Simulation
This paper considers a technique for composing global (barrier-style) and local (channel scanning) synchronization protocols within a single parallel discrete-event simulation. Composition is attractive because it allows one to tailor the synchronization mechanism to the model being simulated. We first motivate the problem by showing the large performance gap that can be introduced by a mismatch of model and synchronization method. Our solution calls for each channel between submodels to be classified as synchronous or asynchronous. We mathematically formulate the problem of optimally classifying channels and show that, in principle, the optimal classification can be obtained in time proportional to max{C/spl times/log C, V/spl times/N}, where C is the number of channels, V the number of unique minimal delays on those channels, and N is the number of submodels. We then demonstrate an implementation which finds an optimal solution at runtime and consider its performance on network topologies, including one of the global Internet at the autonomous system level. We find that the automated method effectively determines channel assignments that maximize performance.
44819319
Parallelizable execution-driven simulation of threaded distributed memory parallel computations
Discrete-event simulation is an important tool used for the performance evaluation of parallel systems. The space of tradeoffs is large however, when attempting to balance model fidelity and simulation execution tame. The paper describes a simulator-TAPS (Threaded Application Parallel System Simulator)-that, in the context of threaded parallel computations, provides a spectrum of possibilities in this tradeoff space. TAPS is specifically designed to be parallelized; we discuss some crucial considerations regarding its parallelization.
15698160
Performance prediction of a parallel simulator
There are at least three major obstacles thwarting widespread adoption of parallel discrete-event simulation: lack of need; lack of tools; and lack of predictability in behavior and performance. The plain truth is that most simulation studies can be adequately done on ordinary serial computers. Parallel simulation tools are products of research efforts, and simply do not stand up to the demands of modern software engineering. The results of 20 years of research in parallel simulation reveal it to be a highly complex endeavour, with performance results very much dependent on implementation details and model characteristics. The Scalable Simulation Framework (SSF) is an effort to address some these concerns. It addresses lack of need in two ways; it provides a modeling API that is attractive both for serial and parallel simulation, with parallel execution requiring no change to the model, and it targets large-scale telecommunication system modeling, an application area that requires the computational capabilities of parallelism. We address the concern over unpredictable behavior. We show how we measured the internal overheads of the Dartmouth implementation of the SSF API (DaSSF), and how those measurements can be used to predict the performance of a given model, using given features of the simulator, without having to run, or even build, the model.
1787760
Greedy is Good: On Service Tree Placement for In-Network Stream Processing
This paper is concerned with reducing communication costs when executing distributed user tasks in a sensor network. We take a service-oriented abstraction of sensor networks, where a user task is composed of a set of data processing modules (called services) with dependencies. Communications in sensor networks consume significant energy and introduce uncertainty in data fidelity due to high bit error rate. These constraints are abstracted as costs on the communication graph. The goal is to place the services within the sensor network so that the communication cost in performing the task is minimized. In addition, since the lifetime of a node, the quality of network links, and the composition of the service graph may change over time, the quality of the placement must be maintained in the face of these dynamics. In this paper, we take a fresh look at what is generally considered a simple but poor performance approach for service placement, namely the greedy algorithm. We prove that a modified greedy algorithm is guaranteed to have cost at most 8 times the optimum placement. In fact, the guarantee is even stronger if there is a high degree of data reduction in the service graph. The advantage of the greedy placement strategy is that when there are local changes in the service graph or when a hosting node fails, the repair only affects the placement of services that depend on the changes. Simulations suggest that in practice the greedy algorithm finds a low cost placement. Furthermore, the cost of repairing a greedy placement decreases rapidly as a function of the proximity of the services to be aggregated.
13352152
Software architecture for mobile distributed computing
Today's wireless networks and devices support the dynamic composition of mobile distributed systems, according to device connectivity. This has in particular led to the introduction of a number of supporting middleware. However, such solutions need to be complemented with adequate modeling and verification support towards enforcing the correctness of the dynamic mobile systems with respect to both functional and nonfunctional properties. Building on the elegant properties of software architecture modeling, this paper introduces base modeling of mobile software components, which integrates key features of the wireless infrastructure and allows for reasoning about the behavior of dynamically composed systems.
9274730
Agent-based, energy efficient routing in sensor networks
Amorphous computing aims at discovering new approaches for programming and controlling vast number of computational entities. So far, most related studies are mainly on the problem of pattern formation. However, there still remains a great challenge: how to enable amorphous entities to handle computationally hard problems? In order to tackle this challenge, we propose to take the energy efficient routing problem in sensor networks as a special topic for study, due to the similar characteristics of sensor nodes and amorphous entities. In the paper, each data packet sent from a source node is carried by an autonomous mobile data agent, which can make its own routing decision based on its local information. Moreover, we propose a novel data routing idea on energy efficient route choosing. Simulation results demonstrate that our routing schemes based on the proposed idea can achieve a better performance of energy load balancing in the network, and a shorter time delay for data agents to travel from a source to a sink than other schemes discussed in the paper. Furthermore, by endowing the data agents with some intelligence, data aggregation can be performed locally and dynamically during their transmissions in sensor networks.
17502480
A QoS-Based Joint Scheduling and Caching Algorithm for Multimedia Objects
With the development of the broadband Internet, multimedia services have been widely deployed and contributed to a significant amount of today’s Internet traffic. Like normal web objects (e.g., HTML pages and images), media objects can benefit from proxy caching; yet their unique features such as huge size and high bandwidth demand imply that conventional proxy caching strategies have to be substantially revised. Moreover, in the current Internet, clients are highly heterogeneous; it is necessary to differentiate their Quality-of-Service (QoS) requirements in streaming. However, the presence of an intermediate proxy in a streaming system poses great challenges to designers. This paper proposes a novel QoS-based algorithm for media streaming with proxy caching. We employ layered coding and transmission, and jointly consider the problems of caching and scheduling to improve the QoS for the clients. We derive general and effective solutions to the problems and evaluate their performance under various configurations. The results demonstrate that the proposed algorithm can accommodate diverse QoS demands from the clients, and yet satisfy stringent resource limits.
43415133
The performance advantage of applying compression to the memory system
The memory system stores information comprising primarily instructions and data and secondarily address information, such as cache tag fields. It interacts with the processor by supporting related traffic (again comprising addresses, instructions, and data). Continuing exponential growth in processor performance, combined with technology, architecture, and application trends, place enormous demands on the memory system to permit this information storage and exchange at a high-enough performance (i.e., to provide low latency and high bandwidth access to large amounts of information). This paper comprehensively analyzes the redundancy in the information (addresses, instructions, and data) stored and exchanged between the processor and the memory system and evaluates the potential of compression in improving performance of the memory system. Analysis of traces obtained with Sun Microsystems' Shade simulator simulating SPARC executables of nine integer and six floating-point programs in the SPEC CPU2000 benchmark suite yield impressive results. Well-designed compression schemes may provide benefits in performance that far outweigh the extra time and logic for compression and decompression. This will be more so in the future since the speed and size of logic (which will be used to perform compression/decompression) are improving and are projected to improve at a much higher rate compared to those of interconnect (which will be used to communicate the information), both on-chip and off-chip.