arXiv Science⌕ Search

arXiv subjects

Xiaozhou Li

Publications and source records attributed to Xiaozhou Li.

29 records · Page 2Linked to original sources

Open Tracing Tools: Overview and Critical Comparison

Background. Coping with the rapid growing complexity in contemporary software architecture, tracing has become an increasingly critical practice and been adopted widely by software engineers. By adopting tracing tools, practitioners are able to monitor, debug, and optimize distributed software architectures easily. However, with excessive number of valid candidates, researchers and practitioners have a hard time finding and selecting the suitable tracing tools by systematically considering their features and advantages.Objective. To such a purpose, this paper aims to provide an overview of popular Open tracing tools via comparison. Method. Herein, we first identified \ra{30} tools in an objective, systematic, and reproducible manner adopting the Systematic Multivocal Literature Review protocol. Then, we characterized each tool looking at the 1) measured features, 2) popularity both in peer-reviewed literature and online media, and 3) benefits and issues. We used topic modeling and sentiment analysis to extract and summarize the benefits and issues. Specially, we adopted ChatGPT to support the topic interpretation. Results. As a result, this paper presents a systematic comparison amongst the selected tracing tools in terms of their features, popularity, benefits and issues. Conclusion. The result mainly shows that each tracing tool provides a unique combination of features with also different pros and cons. The contribution of this paper is to provide the practitioners better understanding of the tracing tools facilitating their adoption.

cs.SE↗

Exploring Factors and Metrics to Select Open Source Software Components for Integration: An Empirical Study

[Context] Open Source Software (OSS) is nowadays used and integrated in most of the commercial products. However, the selection of OSS projects for integration is not a simple process, mainly due to a of lack of clear selection models and lack of information from the OSS portals. [Objective] We investigate the factors and metrics that practitioners currently consider when selecting OSS. We also investigate the source of information and portals that can be used to assess the factors, as well as the possibility to automatically extract such information with APIs. [Method] We elicited the factors and the metrics adopted to assess and compare OSS performing a survey among 23 experienced developers who often integrate OSS in the software they develop. Moreover, we investigated the APIs of the portals adopted to assess OSS extracting information for the most starred 100K projects in GitHub. [Result] We identified a set consisting of 8 main factors and 74 sub-factors, together with 170 related metrics that companies can use to select OSS to be integrated in their software projects. Unexpectedly, only a small part of the factors can be evaluated automatically, and out of 170 metrics, only 40 are available, of which only 22 returned information for all the 100K projects. Therefore, we recommend project maintainers and project repositories to pay attention to provide information for the project they are hosting, so as to increase the likelihood of being adopted [Conclusion] OSS selection can be partially automated, by extracting the information needed for the selection from portal APIs. OSS producers can benefit from our results by checking if they are providing all the information commonly required by potential adopters...

cs.SE↗

OSS PESTO: An Open Source Software Project Evaluation and Selection TOol

Open source software (OSS), playing an increasingly critical role nowadays, has been commonly adopted and integrated in various software products. For many practitioners, selecting and adopting suitable OSS can help them greatly. Though many studies have been conducted on proposing OSS evaluation and selection models, a limited number are followed and used in the industry. Meanwhile, many existing OSS evaluation tools, though providing valuable details, fall short on offering intuitive suggestions in terms of framework-supported evaluation factors. Towards filling the gap, we propose an Open Source Software Project Evaluation and Selection TOol (OSS PESTO). Targeting OSS on Github, the largest OSS source code host, it facilitates the evaluation practice by enabling practitioners to compare candidates therein in terms of selected OSS evaluation models. It also allows in-time Github data collection and customized evaluation that enriches its effectiveness and ease of use.

cs.SE↗

How to Design A Generic Accuracy-Enhancing Filter for Discontinuous Galerkin Methods

Higher-order accuracy (order of $k+1$ in the $L^2$ norm) is one of the well known beneficial properties of the discontinuous Galerkin (DG) method. Furthermore, many studies have demonstrated the superconvergence property (order of $2k+1$ in the negative norm) of the semi-discrete DG method. One can take advantage of this superconvergence property by post-processing techniques to enhance the accuracy of the DG solution. A popular class of post-processing techniques to raise the convergence rate from order $k+1$ to order $2k+1$ in the $L^2$ norm is the Smoothness-Increasing Accuracy-Conserving (SIAC) filtering. In addition to enhancing the accuracy, the SIAC filtering also increases the inter-element smoothness of the DG solution. The SIAC filtering was introduced for the DG method of the linear hyperbolic equation by Cockburn et al. in 2003. Since then, there are many generalizations of the SIAC filtering have been proposed. However, the development of SIAC filtering has never gone beyond the framework of using spline functions (mostly B-splines) to construct the filter function. In this paper, we first investigate the general basis function (beyond the spline functions) that can be used to construct the SIAC filter. The studies of the general basis function relax the SIAC filter structure and provide more specific properties, such as extra smoothness, etc. Secondly, we study the basis functions' distribution and propose a new SIAC filter called compact SIAC filter that significantly reduces the original SIAC filter's support size while preserving (or even improving) its ability to enhance the accuracy of the DG solution. We show that the proofs of the new SIAC filters' ability to extract the superconvergence and provide numerical results to confirm the theoretical results and demonstrate the new finding's good numerical performance.

math.NA↗

Concury: A Fast and Light-weighted Software Load Balancer

A load balancer (LB) is a vital network function for cloud services to balance the load amongst resources. Stateful software LBs that run on commodity servers provides flexibility, cost-efficiency, and packet consistency. However current designs have two main limitations: 1) states are stored as digests which may cause packet inconsistency due to digest collisions; 2) the data plane needs to update for every new connection, and frequent updates hurt throughput and packet consistency. In this work, we present a new software stateful LB called Concury, which is the first solution to solve these problems. The key innovation of Concury is an algorithmic approach to store and look up large network states with frequent connection arrivals, which is succinct in memory cost, consistent under network changes, and incurs infrequent data plane updates. The evaluation results show that the Concury algorithm provides 4x throughput and consumes less memory compared to other LB algorithms, while providing weighted load balancing and false-hit freedom, for both real and synthetic data center traffic. We implement Concury as a prototype system deployed in CloudLab and show that the throughput of Concury on a single thread can reach 62.5% of the maximum capacity of two 10GbE NICs and that on two threads can reach the maximum capacity.

cs.NI↗

An interior penalty discontinuous Galerkin method for the time-domain acoustic-elastic wave interaction problem

In this paper, we consider numerical solutions of a time domain acoustic-elastic wave interaction problem which occurs between a bounded penetrable elastic body and a compressible inviscid fluid. It is also called the fluid-solid interaction problem. Firstly, an artificial boundary is introduced to transform the original transmission problem into a problem in a bounded region, and then its well-posed results are presented. We then employ a symmetric interior penalty discontinuous Galerkin method for the solution of the reduced interaction problem consisting of second-order wave equations. A priori error estimate in the energy norm is presented, and numerical results confirm the accuracy and validity of the proposed method.

math.NA↗

DistCache: Provable Load Balancing for Large-Scale Storage Systems with Distributed Caching

Load balancing is critical for distributed storage to meet strict service-level objectives (SLOs). It has been shown that a fast cache can guarantee load balancing for a clustered storage system. However, when the system scales out to multiple clusters, the fast cache itself would become the bottleneck. Traditional mechanisms like cache partition and cache replication either result in load imbalance between cache nodes or have high overhead for cache coherence. We present DistCache, a new distributed caching mechanism that provides provable load balancing for large-scale storage systems. DistCache co-designs cache allocation with cache topology and query routing. The key idea is to partition the hot objects with independent hash functions between cache nodes in different layers, and to adaptively route queries with the power-of-two-choices. We prove that DistCache enables the cache throughput to increase linearly with the number of cache nodes, by unifying techniques from expander graphs, network flows, and queuing theory. DistCache is a general solution that can be applied to many storage systems. We demonstrate the benefits of DistCache by providing the design, implementation, and evaluation of the use case for emerging switch-based caching.

cs.DC↗

Celer Network: Bring Internet Scale to Every Blockchain

Off-chain scaling techniques allow mutually distrustful parties to execute a contract locally among themselves instead of on the global blockchain. Parties involved in the transaction maintain a multi-signature fraud-proof off-chain replicated state machine, and only resort to on-chain consensus when absolutely necessary (e.g., when two parties disagree on a state). Off-chain scaling is the only way to support fully scale-out decentralized applications ("dApps") with better privacy and no compromise on the trust and decentralization guarantees. It is the inflection point for blockchain mass adoption, and will be the engine behind all scalable dApps. Celer Network is an Internet-scale, trust-free, and privacy-preserving platform where everyone can quickly build, operate, and use highly scalable dApps. It is not a standalone blockchain but a networked system running on top of existing and future blockchains. It provides unprecedented performance and flexibility through innovation in off-chain scaling techniques and incentive-aligned cryptoeconomics. Celer Network embraces a layered architecture with clean abstractions that enable rapid evolution of each individual component, including a generalized state channel and sidechain suite that supports fast and generic off-chain state transitions; a provably optimal value transfer routing mechanism that achieves an order of magnitude higher throughput compared to state-of-the-art solutions; a powerful development framework and runtime for off-chain applications; and a new cryptoeconomic model that provides network effect, stable liquidity, and high availability for the off-chain ecosystem.

cs.NI↗

NetChain: Scale-Free Sub-RTT Coordination (Extended Version)

Coordination services are a fundamental building block of modern cloud systems, providing critical functionalities like configuration management and distributed locking. The major challenge is to achieve low latency and high throughput while providing strong consistency and fault-tolerance. Traditional server-based solutions require multiple round-trip times (RTTs) to process a query. This paper presents NetChain, a new approach that provides scale-free sub-RTT coordination in datacenters. NetChain exploits recent advances in programmable switches to store data and process queries entirely in the network data plane. This eliminates the query processing at coordination servers and cuts the end-to-end latency to as little as half of an RTT---clients only experience processing delay from their own software stack plus network delay, which in a datacenter setting is typically much smaller. We design new protocols and algorithms based on chain replication to guarantee strong consistency and to efficiently handle switch failures. We implement a prototype with four Barefoot Tofino switches and four commodity servers. Evaluation results show that compared to traditional server-based solutions like ZooKeeper, our prototype provides orders of magnitude higher throughput and lower latency, and handles failures gracefully.

cs.DC↗

Modeling Actuation Constraints for IoT Applications

Internet of Things (IoT) promises to bring ease of monitoring, better efficiency and innovative services across many domains with connected devices around us. With information from critical parts of infrastructure and powerful cloud-based data analytics, many applications can be developed to gain insights about IoT systems as well as transform their capabilities. Actuation applications form an essential part of these IoT systems, as they enable automation as well as fast low-level decision making. However, modern IoT systems are designed for data acquisition, and actuation applications are implemented in an ad-hoc manner. We identify modeling constraints in a systematic manner as indispensable to support actuation applications because constraints encompass high-level policies dictated by laws of physics, legal policies, user preferences. We explore data models for constraints inIoT system with the example of a home heating system and illustrate the challenges in enforcing these constraints in theIoT system architecture.

eess.SY↗

An Iterative Approach for Time Integration Based on Discontinuous Galerkin Methods

We present a new class of iterative schemes for solving initial value problems (IVP) based on discontinuous Galerkin (DG) methods. Starting from the weak DG formulation of an IVP, we derive a new iterative method based on a preconditioned Picard iteration. Using this approach, we can systematically construct explicit, implicit and semi-implicit schemes with arbitrary order of accuracy. We also show that the same schemes can be constructed by solving a series of correction equations based on the DG weak formulation. The accuracy of the schemes is proven to be $\min\{2p+1, K+1\}$ with $p$ the degree of the DG polynomial basis and $K$ the number of iterations. The stability is explored numerically; we show that the implicit schemes are $A$-stable at least for $0 \leq p \leq 9$. Furthermore, we combine the methods with a multilevel strategy to accelerate their convergence speed. The new multilevel scheme is intended to provide a flexible framework for high order space-time discretizations and to be coupled with space-time multigrid techniques for solving partial differential equations (PDEs). We present numerical examples for ODEs and PDEs to analyze the performance of the new methods. Moreover, the newly proposed class of methods, due to its structure, is also a competitive and promising candidate for parallel in time algorithms such as Parareal, PFASST, multigrid in time, etc.

math.NA↗