12104793
Planning for code buffer management in distributed virtual execution environments
Virtual execution environments have become increasingly useful in system implementation, with dynamic translation techniques being an important component for performance-critical systems. Many devices have exceptionally tight performance and memory constraints (e.g., smart cards and sensors in distributed systems), which require effective resource management. One approach to manage code memory is to download code partitions on-demand from a server and to cache the partitions in the resource-constrained device (client). However, due to the high cost of downloading code and re-translation, it is critical to intelligently manage the code buffer to minimize the overhead of code buffer misses. Yet, intelligent buffer management on the tightly constrained client can be too expensive. In this paper, we propose to move code buffer management to the server, where sophisticated schemes can be employed. We describe two schemes that use profiling information to direct the client in caching code partitions. One scheme is designed for workloads with stable run-time behavior, while the other scheme adapts its decisions for workloads with unstable behaviors. We evaluate and compare our schemes and show they perform well, compared to other approaches, with the adaptive scheme having the best performance overall.
815725
Virtual Execution Environments: Support and Tools
In today's dynamic computing environments, the available resources and even underlying computation engine can change during the execution of a program. Additionally, current trends in software development favor the flexibility and cost-effectiveness of dynamically loaded components and libraries. Because of these trends, there has been increased research interest in virtual execution environments (VEEs) for delivering adaptable software suitable for today's rapidly changing, heterogeneous computing environments. In this project, we have been investigating tools and techniques to support implementation of VEEs using software dynamic translation (SDT). This paper highlights some of our recent results. One significant result is that we have developed novel translation techniques that reduce the memory and runtime overhead of SDT to negligible levels. We have also developed innovative debugging and instrumentation tools for SDT-based software environments. Together, these results make SDT-based systems viable for solving a wide range of pressing problems. The paper concludes with a discussion of how SDT may offer a solution to one such problem-inherent process variation in emerging chip multiprocessors.
13254850
Profile guided management of code partitions for embedded systems
Researchers have proposed to divide embedded applications into code partitions and to download partitions on demand from a wireless code server to enable a diverse set of applications for very tightly constrained embedded systems. This paper describes a new approach for managing the request and storage of code partitions and we explore the benefits of our scheme.
14594677
Techniques and tools for dynamic optimization
Traditional code optimizers have produced significant performance improvements over the past forty years. While promising avenues of research still exist, traditional static and profiling techniques have reached the point of diminishing returns. The main problem is that these approaches have only a limited view of the program and have difficulty taking advantage of the actual run-time behavior of a program. We are addressing this problem through the development of a dynamic optimization system suited for aggressive optimization - using the full power of the most beneficial optimizations. We have designed our optimizer to operate using a software dynamic translation (SDT) execution system. Difficult challenges in this research include reducing SDT overhead and determining what optimizations to apply and where in the code to apply them. Another challenge is having the necessary tools to ensure the reliability of software that is dynamically optimized. In this paper, we describe our efforts in reducing overhead in SDT and efficient techniques for instrumenting the application code. We also describe our approach to determine what and where an optimization should be applied. We discuss other fundamental issues in developing a dynamic optimizer and finally present a basic debugger for SDT systems
2387693
Labelling Cayley Graphs on Abelian Groups
For given integers $j \ge k \ge 1$, an $L(j,k)$-labelling of a graph $\Ga$ is an assignment of labels---nonnegative integers---to the vertices of $\Ga$ such that adjacent vertices receive labels that differ by at least $j$, and vertices distance two apart receive labels that differ by at least $k$. The span of such a labelling is the difference between the largest and the smallest labels used, and the minimum span over all $L(j,k)$-labellings of $\Ga$ is denoted by $\l_{j,k}(\Ga)$. The minimum number of labels needed in an $L(j,k)$-labelling of $\Ga$ is independent of $j$ and $k$, and is denoted by $\mu(\Ga)$. In this paper we introduce a general approach to $L(j,k)$-labelling Cayley graphs $\Ga$ over Abelian groups and deriving upper bounds for $\l_{j,k}(\Ga)$ and $\mu(\Ga)$. Using this approach we obtain upper bounds on $\l_{j,k}(\Ga)$ and $\mu(\Ga)$ for graphs $\Ga$ admitting a vertex-transitive Abelian group of automorphisms. Hypercubes $Q_d$ are examples of such graphs, and as consequences we obtain upper bounds for $\l_{j,k}(Q_d)$ and $\mu(Q_d)$. We also obtain the exact values of $\l_{j,k}(\Ga)$ ($2k \ge j \ge k$) and $\mu(\Ga)$ for some Hamming graphs $\Ga$. The result shows that, under certain arithmetic conditions, these two invariants rely only on $k$ and the orders of the two largest complete graph factors of the Hamming graph.
38623555
Domination number and neighbourhood conditions
Abstract The domination number γ of a graph G is the minimum cardinality of a subset D of vertices of G such that each vertex outside D is adjacent to at least one vertex in D . For any subset A of the vertex set of G , let ∂ + ( A ) be the set of vertices not in A which are adjacent to at least one vertex in A . Let N (A) be the union of A and ∂ + ( A ), and d ( A ) be the sum of degrees of all the vertices of A . In this paper we prove the inequality 2q ⩽ (p−γ)(p−γ+2)−|∂ + (A)| (p−γ+1)+d( N (A)) , and characterize the extremal graphs for which the equality holds, where p and q are the numbers of vertices and edges of G , respectively. From this we then get an upper bound for γ which generalizes the known upper bound γ⩽p+1− 2q+1 . Let I ( A ) be the set of vertices adjacent to all vertices of A , and I (A) be the union of A and I ( A ). We prove that 2q ⩽ (p − γ − | I (A)| + 2)(p − γ + 4) + d( I (A)) − min {p − γ − | I (A)| + 2, |A|, |I(A)|, 3} , which implies an upper bound for γ as well.
11541594
A network-centric approach to enhancing the interactivity of large-scale distributed virtual environments
In Distributed Virtual Environments (DVEs), where many simultaneous human users interact with each other in a shared, 3D virtual world, enhancing interactivity is of crucial importance, since the success of a DVE greatly depends on users' perceptions. In general, enhancing interactivity for large-scale DVEs with thousands of geographically distributed users faces various challenges such as large Internet latencies, high resource demands and high potential of security threats. In this paper, we propose a network-centric approach to enhance the interactivity of DVEs by directly minimizing the network latencies in client-server communications. We consider two key problems: the server placement problem and the client assignment problem. We have formulated these two problems and proved that they are both NP-hard. We then adapt and develop several degree-based server placement approaches and greedy client assignment algorithms. Extensive simulation studies using realistic models have shown that our approach is very effective in enhancing the interactivity of large-scale DVEs.
379157
From sample similarity to ensemble similarity: probabilistic distance measures in reproducing kernel Hilbert space
This paper addresses the problem of characterizing ensemble similarity from sample similarity in a principled manner. Using a reproducing kernel as a characterization of sample similarity, we suggest a probabilistic distance measure in the reproducing kernel Hilbert space (RKHS) as the ensemble similarity. Assuming normality in the RKHS, we derive analytic expressions for probabilistic distance measures that are commonly used in many applications, such as Chernoff distance (or the Bhattacharyya distance as its special case), Kullback-Leibler divergence, etc. Since the reproducing kernel implicitly embeds a nonlinear mapping, our approach presents a new way to study these distances whose feasibility and efficiency is demonstrated using experiments with synthetic and real examples. Further, we extend the ensemble similarity to the reproducing kernel for ensemble and study the ensemble similarity for more general data representations.
13349007
Greedy Algorithms for Client Assignment in Large-Scale Distributed Virtual Environments
Distributed Virtual Environments (DVEs), such as online games, military simulations, collaborative design, etc., are very popular nowadays. To support large-scale DVEs, a multi-server architecture is usually employed, and the virtual world is partitioned into multiple zones for load distribution. The client assignment problem arises when assigning the participating clients to the servers. Current approaches usually assign clients to servers according to the locations of clients in the virtual world, i.e., clients interacting in the same zone of the virtual world will be assigned to the same server. This approach may degrade the interactivity of DVEs if the network delay from a client to its assigned server is large. In this paper, we formulate the client assignment problem, and propose two algorithms to assign clients to servers in a more efficient way. The proposed algorithms are based on the heuristics developed for the well-known Terminal Assignment problem. Simulation results with the BRITE Internet Topology Generator show that our algorithms are effective in enhancing the interactivity of DVEs.