CSC 801 (002) Fall 2021 Seminar in Computer Science (by Guoliang Jin)

Sept 10 Zhengyi Qiu Page

Zhengyi will present "Managing data constraints in database-backed web applications" from ICSE 2020.

Paper abstract: Database-backed web applications manipulate large amounts of persistent data, and such applications often contain constraints that restrict data length, data value, and other data properties. Such constraints are critical in ensuring the reliability and usability of these applications. In this paper, we present a comprehensive study on where data constraints are expressed, what they are about, how often they evolve, and how their violations are handled. The results show that developers struggle with maintaining consistent data constraints and checking them across different components and versions of their web applications, leading to various problems. Guided by our study, we developed checking tools and API enhancements that can automatically detect such problems and improve the quality of such applications.

  • Sept 17 Yuanchao Xu Page

    Yuanchao will give a practice talk for the following paper to appear at MICRO'21

    Title: PCCS: Processor-Centric Contention-aware Slowdown Model for Heterogeneous System-on-Chip.

    Abstract: Many slowdown models have been proposed to characterize memory interference of workloads co-running on heterogeneous System-on-Chips (SoCs). But they are mostly for post-silicon usage. How to effectively consider memory interference in the SoC design stage remains an open problem. This paper presents a new approach to this problem, consisting of a novel {\em processor-centric slowdown modeling} methodology and a new {\em three-region interference-conscious slowdown model}. The modeling process needs no measurement of co-running of various combinations of applications, but the produced slowdown models can be used to estimate the co-run slowdowns of arbitrary workloads on various SoC designs that embed a newer generation of accelerators, such as deep learning accelerators (DLA), in addition to CPUs and GPUs. The new method reduces average prediction errors of the state-of-art model from 24.8% to 8.7% on GPU, and from 13.0% to 3.3% on CPU, and demonstrates much improved efficacy in guiding SoC designs. 

  • Sept 24 Bo Liu from Auburn University Page

    Title: Trustworthy Reinforcement Learning: Explainability and Failure-Criticality

    Abstract: In this talk, I will discuss my recent work towards trustworthy artificial intelligence, particularly trustworthy reinforcement learning (RL). Many companies are now building self-driving vehicles and medical robots, and the development of advanced autonomous systems is already a billion-dollar industry. These new technologies offer oversight, advanced automation, and autonomous instruments, and they are adaptable to changing situations, knowledge, and constraints. However, introducing new technologies into our technical and social infrastructures has profound implications and requires establishing confidence in their behavior to avoid potential harm. Therefore, the effectiveness and broader acceptability of autonomous smart systems rely on these systems' ability to explain their decisions. Building trust in artificial intelligence (AI) systems is a critical requirement in human-robot interaction and essential for realizing the full spectrum of AI's societal and industrial benefits.

    This talk identifies two critical factors for establishing the trustworthiness of autonomous systems: explainability and safety (failure-criticality). First, to achieve human-level interpretability, I propose new algorithms leveraging symbolic AI and data-driven ML to enable real-world applications. Particularly, I investigate an explainable and data-efficient hierarchical sequential decision-making framework based on symbolic planning and deep reinforcement learning, termed Symbolic Deep Reinforcement Learning (SDRL, IJCAI'2018, AAAI'2019, ICLP'2019). This approach achieves state-of-the-art results on the most challenging Atari games, Montezuma's Revenge, and outperforms other methods by a large margin. Second, to enhance failure-criticality and risk-awareness in decision-making, I propose the Mean-Variance Policy search (MVP, NeurIPS'2018, JAIR'2018, ICML'2020, AAAI'2021) algorithm family. Instead of merely maximizing the expected mean of cumulative rewards in sequential decision-making, the MVP algorithm enables a trade-off between the mean and variance by utilizing the Legendre-Fenchel duality. Unlike conventional mean-variance optimization, which often has multi-timescale stepsizes to tune, this algorithm is single-time-scale and can thus scale up easily. Third, I will discuss a “magic” meta-algorithm framework that can “robustify” any off-the-shelf risk-oblivious decision-making algorithms. This line of work has a wide range of practical applications such as control, robotics, e-commerce, autonomous driving, and medical treatment.

    Brief bio: Bo Liu is a tenure-track assistant professor in the Dept. of Computer Science and Software Engineering at Auburn University. He obtained his Ph.D. from Autonomous Learning Lab at the University of Massachusetts Amherst, 2015, co-led by Drs. Sridhar Mahadevan and Andrew Barto. His primary research area covers decision-making under uncertainty, human-aided machine learning, symbolic AI, trustworthiness and interpretability in machine learning, and their numerous applications to BIGDATA, autonomous driving, and healthcare informatics. In his current research, he has more than 30 publications on several notable venues, such as NIPS/NeurIPS, ICML, UAI, AAAI, IJCAI, AAMAS, JAIR, IEEE-TNN, etc. His research is funded by NSF, Amazon, Tencent (China), Adobe, and ETRI (South Korea). He is the recipient of the Conference on Uncertainty in Artificial Intelligence (UAI)'2015 Facebook best student paper award and the Amazon research award in 2018. His research results have been covered by many prestigious venues, including the classical textbook "Reinforcement Learning: An Introduction" (2nd edition), NIPS'2015/IJCAI'2016/AAAI'2019 tutorials. He is an Associate Editor of IEEE Transactions on Neural Networks and Learning Systems (IEEE-TNN), a senior member of IEEE, and a member of AAAI, ACM, and INFORMS.
  • Oct 1 Guoqiang Zhang Page

    Guoliang will give a practice talk for the following paper to appear at OOPSLA'21

    Title: UDF to SQL Translation through Compositional Lazy Inductive Synthesis

    Abstract: Many data processing systems allow SQL queries that call user-defined functions (UDFs)written in conventional programming languages. While such SQL extensions provide convenience and flexibility to users, queries involving UDFs are not as efficient as their pure SQL counterparts that invoke SQL’s highly-optimized built-in functions. Motivated by this problem, we propose a new technique for translating SQL queries with UDFs to pure SQL expressions. Unlike prior work in this space (Ramachandra et al., 2017a), our method is not based on syntactic rewrite rules and can handle a much more general class of UDFs. At a high-level, our method is based on counterexample-guided inductive synthesis (CEGIS) but employs a novel compositional strategy that decomposes the synthesis task into simpler sub-problems. However, because there is no universal decomposition strategy that works for all UDFs, we propose a novel lazy inductive synthesis approach that generates a sequence of decompositions that correspond to increasingly harder inductive synthesis problems. Because most realistic UDF-to-SQL translation tasks are amenable to a fine-grained decomposition strategy, our lazy inductive synthesis method scales significantly better than traditional CEGIS.

    We have implemented our proposed technique in a tool called CLIS for optimizing Spark SQL programs containing Scala UDFs. To evaluate CLIS, we manually study 100 randomly selected UDFs and find that 63 of them can be expressed in pure SQL. Our evaluation on these 63 UDFs shows that CLIS can automatically synthesize equivalent SQL expressions in 92% of the cases and that it can solve 2.4× more benchmarks compared to a baseline that does not use our compositional approach. We also show that CLIS yields an average speed-up of 4.6× for individual UDFs and 1.3× to 3.1× in terms of end-to-end application performance.

  • Oct 8 Shudi Shao Page

    Shudi will give a practice talk for the following paper to appear at ISSRE'21

    Title: A Characteristic Study of Deadlocks in Database-Backed Web Applications

    Abstract: Deadlocks in database-backed web applications could involve different numbers of HTTP requests, and they could be caused by locks explicitly requested in application code or implicitly requested by databases during query execution. To help developers understand these deadlocks and guide the design of tools for combating these deadlocks, we conduct a characteristic study with 49 deadlocks collected from real-world web applications developed following different programming paradigms. We provide categorization results based on HTTP request numbers and resource types, with a special focus on categorizing deadlocks on database locks. We expect our results to be useful for application developers to understand web-application deadlocks and for tool researchers to design comprehensive support for combating web-application deadlocks.

  • Oct 15 Xu Liu and Qidong Zhao Page

    Xu and Qidong will present their ongoing work

    Title: EasyView: Bridging Software Developers with Dynamic Program Analysis

    Abstract: Dynamic program analysis (also known as profiling) is well-known for its powerful capabilities of identifying performance inefficiencies in modern software packages. Although a large number of dynamic program analysis techniques are developed in academia and industry, very few of them are widely used by software developers in their regular software developing activities. We develop EasyView, a general solution to integrate the interpretation and visualization of various profiling results in the coding environments, which bridges software developers with profilers to provide easy and intuitive dynamic analysis during the code development cycle.

  • Oct 22 Qi Zhao Page

    Qi will present "The Scalable Commutativity Rule: Designing Scalable Software for Multicore Processors" from SOSP 2013.

    Paper abstract: What fundamental opportunities for scalability are latent in interfaces, such as system call APIs? Can scalability opportunities be identified even before any implementation exists, simply by considering interface specifications? To answer these questions this paper introduces the following rule: Whenever interface operations commute, they can be implemented in a way that scales. This rule aids developers in building more scalable software starting from interface design and carrying on through implementation, testing, and evaluation.

    To help developers apply the rule, a new tool named COMMUTER accepts high-level interface models and generates tests of operations that commute and hence could scale. Using these tests, COMMUTER can evaluate the scalability of an implementation. We apply COMMUTER to 18 POSIX calls and use the results to guide the implementation of a new research operating system kernel called sv6. Linux scales for 68% of the 13,664 tests generated by COMMUTER for these calls, and COMMUTER finds many problems that have been observed to limit application scalability. sv6 scales for 99% of the tests.

  • Oct 29 Hassan Ali Khan Page

    Hassan will present "A Nationwide Study on Cellular Reliability: Measurement, Analysis, and Enhancements" from SigComm 2021

    Paper abstract: With recent advances on cellular technologies (such as 5G) that push the boundary of cellular performance, cellular reliability has become a key concern of cellular technology adoption and deployment. However, this fundamental concern has never been addressed due to the challenges of measuring cellular reliability on mobile devices and the cost of conducting large-scale measurements. This paper closes the knowledge gap by presenting the first large-scale, in-depth study on cellular reliability with more than 70 million Android phones across 34 different hardware models. Our study identifies the critical factors that affect cellular reliability and clears up misleading intuitions indicated by common wisdom. In particular, our study pinpoints that software reliability defects are among the main root causes of cellular data connection failures. Our work provides actionable insights for improving cellular reliability at scale. More importantly, we have built on our insights to develop enhancements that effectively address cellular reliability issues with remarkable real-world impact—our optimizations on Android’s cellular implementations have reduced 40% cellular connection failures for 5G phones and 36% failure duration across all phones.

  • Nov 5 [10:15AM] [EB3 2232] Prof. Samarjit Chakraborty from UNC Chapel Hill Page

    This is a in-person seminar at EB3 2232, 10:15 AM – 11:30 AM, Friday, November 5

    Abstract: Cars, computer games, smartphones and drones are currently witnessing unprecedented technological advancements and are poised to change many aspects of how we live. Imagine the impacts that fully electric and autonomous cars will have. The video gaming industry is soon expected to exceed $300 billion. Today's smartphones are already incredibly powerful and versatile computing platforms and have influenced our lives in more ways than we would actually like. Drones are being used for an unimaginable array of applications ranging from photography to goods delivery, surveillance, weather and crop monitoring. What do all of these have in common? What is one of the biggest technological challenges on the path of their development? That is the topic of this talk.

    Bio: Samarjit Chakraborty is a William R. Kenan, Jr. Distinguished Professor in the Department of Computer Science at UNC Chapel Hill. Prior to coming here, from 2008 - 2019 he was a professor of Electrical Engineering at the Technical University of Munich in Germany, where he held the Chair of Real-Time Computer Systems. From 2003 - 2008 he was an assistant professor of Computer Science at the National University of Singapore. He obtained his PhD from ETH Zurich in 2003. His research interests can be best described as a random walk through various aspects of designing hardware and software for embedded computers. He served/s on the editorial boards of IEEE Transactions on Computers, ACM Transactions on Cyber-Physical Systems, Leibnitz Transactions on Embedded Systems, Design Automation of Embedded Systems, and Springer’s Lecture Notes on Electrical Engineering. For his Ph.D. thesis, he received the ETH Medal and the European Design and Automation Association’s Outstanding Doctoral Dissertation Award in 2004. In addition, he and his students have received Best Paper and Demo Awards at ISLPED, ICCD, RTCSA, ASP-DAC, EUC, and Mobisys, the 2019 ACM Transactions on Design Automation of Electronic Systems Best Paper Award for their work on automotive security, and more recently the 2021 ACM Transactions on Embedded Computing Systems Best Paper Award for their work on energy modeling of the Bluetooth Low Energy protocol.

  • Nov 19 Xinning Hui Page

    Xinning will present her ongoing work on "Understanding the Consistency Issue between Cache and Database"

    Abstract: Memcached is a well-known, simple, in-memory caching solution for data-intensive applications. However, the cache layer between the database and the webserver will introduce some inconsistency between the cache and the database. In this presentation, I will first discuss some designs that are used to solve the inconsistency problem between the cache and the database at a small scale.  Then, I will discuss the paper “Scaling Memcache at Facebook”. This paper describes how Facebook leverages Memcached as a building block to construct and scale a distributed key-value store that supports the world’s largest social network. Their system handles billions of requests per second and holds trillions of items to deliver a rich experience for over a billion users around the world.