Computing Surveys (CSUR)

Latest Articles

Cloud Pricing Models: Taxonomy, Survey, and Interdisciplinary Challenges

This article provides a systematic review of cloud pricing in an interdisciplinary approach. It examines many historical cases of pricing in practice and tracks down multiple roots of pricing in research. The aim is to help both cloud service provider (CSP) and cloud customers to capture the essence of cloud pricing when they need to make a... (more)

Document Layout Analysis: A Comprehensive Survey

Document layout analysis (DLA) is a preprocessing step of document understanding systems. It is responsible for detecting and annotating the physical structure of documents. DLA has several important applications such as document retrieval, content categorization, text recognition, and the like. The objective of DLA is to ease the subsequent... (more)

Security and Privacy Approaches in Mixed Reality: A Literature Survey

Mixed reality (MR) technology development is now gaining momentum due to advances in computer vision, sensor fusion, and realistic display technologies. With most of the research and development focused on delivering the promise of MR, the privacy and security implications of this technology are yet to be thoroughly investigated. This survey... (more)

A Survey on Representation Learning Efforts in Cybersecurity Domain

In this technology-based era, network-based systems are facing new cyber-attacks on daily bases. Traditional cybersecurity approaches are based on old... (more)

Academic Plagiarism Detection: A Systematic Literature Review

This article summarizes the research on computational methods to detect academic plagiarism by systematically reviewing 239 research papers published between 2013 and 2018. To structure the presentation of the research contributions, we propose novel technically oriented typologies for plagiarism prevention and detection efforts, the forms of... (more)

A Survey of Metaprogramming Languages

Metaprogramming is the process of writing computer programs that treat programs as data, enabling them to analyze or transform existing programs or generate new ones. While the concept of metaprogramming has existed for several decades, activities focusing on metaprogramming have been increasing rapidly over the past few years, with most languages... (more)

Seeing the Invisible: Survey of Video Motion Magnification and Small Motion Analysis

The latest techniques in video motion magnification and relevant small motion analysis are surveyed. The main motion magnification techniques are discussed in chronological fashion, highlighting the inherent limitations of predecessor techniques in comparison with subsequent variants. The focus is then shifted to the specific stages within the... (more)

Video Description: A Survey of Methods, Datasets, and Evaluation Metrics

Video description is the automatic generation of natural language sentences that describe the contents of a given video. It has applications in human-robot interaction, helping the visually impaired and video subtitling. The past few years have seen a surge of research in this area due to the unprecedented success of deep learning in computer... (more)

Survey of Compressed Domain Video Summarization Techniques

Video summarization is the method of extracting key frames or clips from a video to generate a synopsis of the content of the video. Generally, video... (more)

New Opportunities for Integrated Formal Methods

Formal methods have provided approaches for investigating software engineering fundamentals and also have high potential to improve current practices in dependability assurance. In this article, we summarise known strengths and weaknesses of formal methods. From the perspective of the assurance of robots and autonomous systems (RAS), we highlight... (more)

A Survey of Coarse-Grained Reconfigurable Architecture and Design: Taxonomy, Challenges, and Applications

As general-purpose processors have hit the power wall and chip fabrication cost escalates alarmingly, coarse-grained reconfigurable architectures... (more)

Survey of Text-based Epidemic Intelligence: A Computational Linguistics Perspective

Epidemic intelligence deals with the detection of outbreaks using formal (such as hospital records) and informal sources (such as user-generated text on the web) of information. In this survey, we discuss approaches for epidemic intelligence that use textual datasets, referring to it as “text-based epidemic intelligence.” We view... (more)



About CSUR

ACM Computing Surveys (CSUR) publishes comprehensive, readable tutorials and survey papers that give guided tours through the literature and explain topics to those who seek to learn the basics of areas outside their specialties. These carefully planned and presented introductions are also an excellent way for professionals to develop perspectives on, and identify trends in complex technologies. Recent issues have covered image understanding, software reusability, and object and relational database topics. 

read more

A Survey on Fuzzy Deep Neural Networks

Deep Learning-Based Video Coding: A Review and A Case Study

The past decade has witnessed great success of deep learning in many disciplines, especially in computer vision and image processing. However, deep learning-based video coding remains in its infancy. We review the representative works about using deep learning for image/video coding, an actively developing research area since 2015. We divide the related works into two categories: new coding schemes that are built primarily upon deep networks, and deep network-based coding tools that shall be used within traditional coding schemes. For deep schemes, pixel probability modeling and auto-encoder are the two approaches, that can be viewed as predictive coding and transform coding, respectively. For deep tools, there have been several techniques using deep learning to perform intra-picture prediction, inter-picture prediction, cross-channel prediction, probability distribution prediction, transform, post- or in-loop filtering, down- and up-sampling, as well as encoding optimizations. In the hope of advocating the research of deep learning-based video coding, we present a case study of our developed prototype video codec, Deep Learning Video Coding (DLVC). DLVC features two deep tools that are both based on convolutional neural network (CNN), namely CNN-based in-loop filter and CNN-based block adaptive resolution coding. The source code of DLVC has been released for future researches.

A Survey of IoT Applications in Blockchain Systems: Architecture, Consensus and Traffic Modeling

Blockchain technology can be extensively applied in diverse services, ranging from online micro-payment, supply chain tracking, digital forensics, health-care record sharing to insurance payment. Extending the technology to the Internet of things (IoT), we can obtain a verifiable and traceable IoT network. Emerging research in IoT applications exploits blockchain technology to record transaction data, optimize current system performance or construct next-generation systems, which can provide additional security, automatic transaction management, decentralized platforms, and offline-to-online data verification, etc. In this paper, we conduct a systematic survey of the key components of IoT blockchain and examine a number of popular blockchain applications. In particular, we first give an architecture overview of popular IoT-blockchain systems by analyzing their network structures and protocols. Then, we discuss variant consensus protocols for IoT blockchains, and make comparisons among different consensus algorithms. Finally, we analyze the traffic model for P2P and blockchain systems and provide several metrics. We also provide a suitable traffic model for IoT-blockchain systems to illustrate network traffic distribution.

Generic Dynamic Data Outsourcing Framework for Integrity Verification

Ateniese et al. proposed the Provable Data Possession (PDP) model in 2007. Following that, Erway et al. adapted the model for dynamically updatable data, and called it the Dynamic Provable Data Possession (DPDP) model. The idea is that a client outsources her files to a cloud server, and later on challenges the server to obtain a proof of the integrity of her data. Many schemes have later been proposed for this purpose, all following a similar framework. We analyze dynamic data outsourcing schemes for the cloud regarding security and efficiency, and show a general framework for constructing such schemes that encompasses existing DPDP-like schemes as different instantiations. This generalization shows that a dynamic outsourced data integrity verification scheme can be constructed given black-box access to an implicitly-ordered authenticated data structure. Moreover, for blockless verification efficiency, a homomorphic verifiable tag scheme is also needed. We investigate the requirements and conditions these building blocks should satisfy, using which one may easily check the applicability of a given building block for dynamic data outsourcing. Our framework serves as a guideline/tutorial/survey and enables us to provide a comparison among different building blocks that existing schemes employ.

Change Detection and Notification of Webpages: A Survey

Majority of the currently available webpages are dynamic in nature and are changing frequently. New content gets added to webpages and existing content gets updated or deleted. Hence, people need to be alert for changes in webpages which contain information valuable to them. In the current context, keeping track of these webpages and getting alerts about different changes have become significantly challenging. Change Detection and Notification (CDN) systems were introduced to automate this monitoring process and notify users when changes occur in webpages. This survey classifies and analyzes different aspects of CDN systems and different techniques used for each aspect. Furthermore, the survey highlights current challenges and areas of improvement present within the field of research.

Frameworks for Collective Intelligence: A Systematic Literature Review

Over the last few years, Collective Intelligence (CI) platforms have become a vital resource for learning, problem solving, decision making and predictions. This rising interest in the topic has to lead to the development of several models and frameworks available in published literature. Unfortunately, most of these models are built around domain-specific requirements, i.e., they are often based on the intuitions of their domain experts and developers. This has created a gap in our knowledge in the theoretical foundations of CI systems and models, in general. In this paper, we attempt to fill this gap by conducting a systematic review of CI models and frameworks, identified from a collection of 9,418 scholarly articles published since 2000. Eventually, we contribute by aggregating the available knowledge from 12 CI models into one novel framework and present a generic model that describes CI systems irrespective of their domains. We add to the previously available CI models by providing a more granular view of how different components of CI systems interact. We evaluate the proposed model by examining it with respect to six popular, ongoing CI initiatives available on the web.

A Methodology for Comparing the Reliability of GPU-based and CPU-based HPCs

Today, GPU-based heterogeneous HPCs offer new opportunities for the exascale era with their high performance and low energy consumption. However, many studies have shown that GPUs are less reliable than CPUs, and reliability issues that might arise due to the integration of general purpose GPUs (GPGPU) into HPCs have not been adequately analyzed. If the inherent reliability issues of the GPU can not be understood enough and effective solutions can not be developed, integration of GPUs into HPCs where many critical calculations are done, will be costly. For this reason, we present a survey about the reliability issues of GPU-based heterogeneous systems in this study. To this end, we have examined comparatively the studies analyzing the error/failure logs of homogeneous and heterogeneous systems, and we tried to understand the reliability behaviors of GPU-based heterogeneous systems. We have also reviewed the fault tolerance techniques developed for GPU-based systems and clarified the challenges. Our goal is to present a study that can guide the researchers in this field by indicating the current state of GPU-based heterogeneous HPCs and requirements for the future, in terms of reliability.

The Ideal Versus the Real: Revisiting the History of Virtual Machines and Containers

The common perception in both academic literature and the industry today is that virtual machines offer better security, while containers offer better performance. However, a detailed review of the history of these technologies and the current threats they face reveals a different story. This survey covers key developments in the evolution of virtual machines and containers from the 1950s to today, with an emphasis on countering modern misperceptions with accurate historical details and providing a solid foundation for ongoing research into the future of secure isolation for multitenant infrastructures, such as cloud and container deployments.

A Systematic Review on Literature-Based Discovery: General Overview, Methodology, & Statistical Analysis

The vast nature of scientific publications brings out the importance of Literature-Based Discovery (LBD) research that is highly beneficial to accelerate knowledge acquisition and the research development process. LBD is a knowledge discovery process that automatically detects significant, implicit knowledge associations hidden in fragmented knowledge areas by analysing scientific literature. Therefore, the LBD output not only assists in formulating scientifically sensible, novel research hypotheses but also encourages the development of cross-disciplinary research. Initially, the review outlines the major LBD tools and the application areas to provide a general overview of the discipline. Subsequently, an in-depth analysis of the computational techniques is provided using a novel, up-to-date and detailed classification. Moreover, the review summarises the key milestones of the discipline through a timeline of topics. We also outline the insights gathered through our statistical analysis that captures the trends in LBD literature. To conclude, we discuss the prevailing research deficiencies in the discipline by highlighting the challenges and opportunities of future LBD research.

Autonomous Visual Navigation for Mobile Robots: A Systematic Literature Review

Autonomous mobile robots are required to move throughout the environment, map it, locate itself, and plan paths between positions. Vision stands out among other senses for its richness and practicality. Even though there are well-established autonomous navigation solutions, as far as we can tell, no complete vision-based autonomous navigation system has fully succeeded. This paper presents a systematic literature review of methods and techniques used to solve the complete autonomous navigation problem or its parts: localization, mapping, path planning, and locomotion. The focus of this review lays on vision-based methods for indoor environments and ground robots. A total of 121 studies were considered, comprising methods, conceptual models, and other literature reviews published between 2000 and 2017. To the best of our knowledge, this is the first systematic review on this topic. It addresses navigation methods, autonomous navigation requirements, vision benefits, methods testing, and implementations validation. The results of this review show a deficiency in testing and validation of presented methods, poor requirements specification, and lack of complete navigation systems in the literature. These results should encourage new works on computer vision techniques, requirements specification, development, integration, and systematic testing and validation of general navigation systems.

Resource Management and Scheduling in Distributed Stream Processing Systems: A Taxonomy, Review and Future Directions

Stream processing handles continuous big data in memory on a process-once-arrival basis, powering latency-critical application such as fraud detection, algorithmic trading, and health surveillance. Though the development of streaming applications has been facilitated by a variety of Data streaming Management Systems (DSMS), the problem of resource management and task scheduling is not automatically handled by the DSMS middleware and remains the heavy burden of the application providers. As the advent of cloud computing has supported customised deployment on rented resources, it is of great interest to investigate novel resource management mechanisms to host streaming systems in clouds satisfying the Quality of Service (QoS) while minimising the resource cost. In this paper, we introduce the hierarchical structure of a streaming system, define the scope of the resource management problem, and then present a comprehensive taxonomy regarding critical research topics such as resource provisioning, operator parallelisation, and task scheduling. We also review the existing works based on the proposed taxonomy, which helps in making a better comparison of the specific work properties and method features. Finally, we propose the open issues and research directions towards realising an automatic, QoS-aware resource management framework for deploying stream processing systems in distributed computing environments.

Scalable Deep Learning on Distributed Infrastructures: Challenges, Techniques and Tools

Deep Learning (DL) has had an immense success in the recent past, leading to state-of-the-art results in various domains such as image recognition and natural language processing. One of the reasons for this success is the increasing size of DL models and the proliferation of vast amounts of training data being available. To keep on improving the performance of DL, increasing the scalability of DL systems is necessary. In this survey, we perform a broad and thorough investigation on challenges, techniques and tools for scalable DL on distributed infrastructures. This incorporates infrastructures for DL, methods for parallel DL training, multi-tenant resource scheduling and the management of training and model data. Further, we analyze and compare 11 current open-source DL frameworks and tools and investigate which of the techniques are commonly implemented in practice. Finally, we highlight future research trends in DL systems that deserve further research.

Multiple Workflows Scheduling in Multi-tenant Distributed Systems: A Taxonomy and Future Directions

Workflows are an application model that enable the automated execution of multiple interdependent and interconnected tasks. They are widely used by the scientific community to manage the distributed execution and data flow of complex simulations and experiments. As the popularity of scientific workflows continue to rise, and their computational requirements continue to increase, the emergence and adoption of multi-tenant computing platforms that offer the execution of these workflows as a service becomes widespread. This paper discusses the scheduling and resource provisioning problems particular to this type of platforms. It presents a detailed taxonomy and a comprehensive survey of the current literature and identifies future directions to foster research in the field of multiple workflow scheduling in multi-tenant distributed computing systems.

Random Graph Modeling: A survey of the concepts

Random graph models play a central role in the analysis of complex networks. They help to understand, control and predict phenomena occurring in social networks, biological networks, Internet and so on. We claim that despite of a large number of RG models present in literature, there is a handful of ideas underlying them. Instead of classifying models themselves it is worthwhile to capture and describe ideas they exploit in slight variations. The list includes Preferential attachment, copying principle, hyperbolic geometry, recursively defined structure, edge switching, Monte Carlo sampling and others. In this paper we have analysed RG models, extract their basic principles and build a taxonomy of ideas they are based on. We also discuss how this ideas work in typical applications like benchmarks, null models and data anonymization.

A Survey of Compiler Testing

Virtually any software running on a computer has been processed by a compiler or a compiler-like tool. Because compilers are such a crucial piece of infrastructure for building software, their correctness is of paramount importance. To validate and increase the correctness of compilers, significant research efforts have been devoted to testing compilers. This survey article provides a comprehensive summary of the current state of the art of research on compiler testing. The survey covers different aspects of the compiler testing problem, including how to construct test programs, what test oracles to use for determining whether a compiler behaves correctly, how to execute compiler tests efficiently, and how to help compiler developers take action on bugs discovered by compiler testing. Moreover, we survey work that empirically studies the strengths and weaknesses of current compiler testing research and practice. Based on the discussion of existing work, we outline several open challenges that remain to be addressed in future work.

Core Concepts, Challenges, and Future Directions in Blockchain: A Centralized Tutorial

Blockchains are a topic of immense interest in academia and industry, but their true nature is often obscured by marketing and hype. In this tutorial, we explain the fundamental elements of blockchains. We discuss their ability to achieve availability, consistency, and data integrity as well as their inherent limitations. Using Ethereum as a case study, we describe the inner workings of blockchains in detail before comparing blockchains to traditional distributed systems. In the second part of our tutorial, we discuss the major challenges facing blockchains and summarize ongoing research and commercial offerings that seek to address these challenges.

A Survey of Context Simulation for Testing Mobile Context-Aware Applications

Equipped with an abundance of small-scale microelectromechanical sensors, modern mobile devices such as smartphones and smartwatches can now offer context-aware services to users in mobile environments. While advances in mobile context-aware applications have made our everyday environments increasingly intelligent, these applications are prone to bugs that are highly difficult to reproduce and repair. Compared to conventional computer software, mobile context-aware applications often have more complex structures to process a wide variety of dynamic context data in specific scenarios. Accordingly, researchers have proposed diverse context simulation techniques to enable low-cost and effective tests, instead of conducting costly and time-consuming real-world experiments. This article aims to give a comprehensive overview of the state-of-the-art context simulation methods for testing mobile context-aware applications. In particular, this article highlights the technical distinctions and commonalities in previous research conducted across a multiple disciplines, particularly at the intersection of software testing, ubiquitous computing and mobile computing. This article also discusses how each method can be implemented and deployed by testing tool developers and mobile application testers. Finally, this article identifies several unexplored issues and directions for further advancements in this field.

Blockchain: a Systematic Multivocal Literature Review

Blockchain technology has gained tremendous popularity across the globe, both in practice and academia. The goal of this article is to develop a coherent overview of the state of the art in blockchain technology, using a systematic (i.e., protocol-based, replicable), multivocal (i.e., featuring both white and grey literature alike) literature review, to (1) define blockchain technology (2) elaborate on its architecture options and (3) trade-offs, as well as understanding (4) the current applications and challenges, as evident from the state of the art. We derive a systematic definition of blockchain technology, based on a formal concept analysis. Further on, we flesh out an overview of blockchain technology elaborated by means of Grounded-Theory.

A Survey on Computational Metaphor Processing

In the last decade, the problem of computational metaphor processing has garnered immense attention of linguistics as well as from the domain of cognition. Various approaches ranging from hand coded rule system to deep learning techniques have been proposed to automate metaphor processing. In this paper, we systematically examine the major views on metaphor. We discuss the existing literature to provide a concise yet representative picture of computational metaphor processing. We conclude the paper with possible research directions.

The AI-Based Cyber Threat Landscape: A Survey

Recent advancements in artificial intelligence (AI) technologies have induced tremendous growth in innovation and automation. Although these AI technologies offer significant benefits, they can be used maliciously. Highly targeted and evasive attacks in benign carrier applications, such as DeepLocker, have demonstrated the intentional use of AI for harmful purposes. Threat actors are constantly changing and improving their attack strategy with particular emphasis on the application of AI-driven techniques in the attack process, called AI-based cyber attack, which can be used in conjunction with conventional attack techniques to cause greater damage. Despite several studies on AI and security, researchers have not summarized AI-based cyber attacks enough to be able to understand the adversary?s actions and to develop proper defenses against such attacks. This study aims to explore existing studies of AI-based cyber attacks and to map them onto a proposed framework, providing insight into new threats. Our framework includes the classification of several aspects of malicious uses of AI during the cyber attack life cycle and provides a basis for their detection in order to predict future threats. We also explain how to apply this framework to analyze AI-based cyber attacks in a hypothetical scenario of a critical smart grid infrastructure.

Decentralized Trust Management: Risk Analysis and Trust Aggregation

Decentralized trust management is used as a referral benchmark for assisting decision making by human or intelligence machines in open collaborative systems. During any given period of time, each participant might only interact with a couple of participants. Simply relying on direct trust may frequently resort to random team formation. Thus, trust aggregation becomes critical. It can leverage decentralized trust management to learn about indirect trust of every participant based on past transaction experiences. This paper investigates the design principles of decentralized trust management and their efficiency and robustness against various risks and threats. First, we study the risk factors and adverse effects of six common threat models. Second, we review the representative trust aggregation models and trust metrics. Third, we present an in-depth analysis and comparison of these reference trust aggregation methods with respect to effectiveness and robustness. We show our comparative study results through formal analysis and experimental evaluation. This comprehensive study advances the understanding of adverse effects of present and future threats and the robustness of different trust metrics. It may also serve as a guideline for research and development of next generation trust aggregation algorithms and services in the anticipation of risk factors and malicious threats.

The Landscape of Exascale Research --- A Data-Driven Literature Analysis

The next generation of supercomputers will break the exascale barrier. Soon we will have systems capable of at least one quintillion (billion billion) floating-point operations per second (1018 FLOPS). However, the shift from petascale to exascale computing will be disruptive. Tremendous amounts of work have been invested into identifying and overcoming the challenges of the exascale era. In this work, we provide an overview of these efforts and gain insight into the important trends, developments and exciting research opportunities in exascale research. We use a three-stage approach in which we (1) discuss various exascale landmark studies, (2) use data-driven techniques to analyze the large collection of related literature, and (3) discuss eight research areas based on influential articles. The landscape we paint shows that great progress has been made in tackling the exascale challenges. Nevertheless, energy efficiency and resilience remain primary challenges. Additionally, both the lack of suitable programming tools and the growing gap between processor performance and memory bandwidth are concerning. Although we will certainly reach exascale soon, without additional research, these issues could potentially limit the impact of exascale computing.

Improving Performance and Energy Consumption in Embedded Systems via Binary Acceleration: A Survey

Comprising a body of research spanning over twenty years, automatic acceleration of software via translation to hardware has gained new importance with the recent trend to reconfigurable heterogeneous platforms. Although fully dedicated hardware implementations on a per-application basis optimize the performance per watt figure, it is also evident that such an approach presents disadvantages. Manual hardware design requires specific expertise, lengthy development time, entails a high cost, suffers from reduced capability for revisions, and results implementations which do not benefit from the portability of fully software based approaches. This paper reviews approaches that automate the process of specialized hardware generation in embedded systems, using binary code as a starting point. We present the characteristics of this kind of binary acceleration approaches, and of the accelerator architectures on which they rely. We also summarize notable state-of-the-art approaches individually, and present an overall taxonomy and comparison. For the most notable approaches, performance gains from 2.57× and 5.61× are reported, mostly considering bare-metal embedded applications, along with power consumption reductions between 1.27× and 3.94×. We believe that the methodologies and results achievable by automatic hardware generation approaches are promising in the context of emergent all-in-one reconfigurable devices.

Mind Your Mind: EEG-Based Brain-Computer Interfaces and their Security in Cyber Space

A brain-computer interface (BCI) system is a system that leverages brainwave information acquired by a designated brain monitoring device in order to interact with a computerized system. Over the last 40 years, many BCI applications have been developed in a variety of domains, from entertainment to medical field and even to computer security mechanisms. Until now, the development of BCI systems has focused on improving their accuracy, functionality, and ease of use, and not enough effort and attention has been invested in securing these systems and the sensitive data they acquire. In this paper, we present the principles of brain activity data acquisition, with a special focus on EEG, and present a taxonomy of BCI applications and domains. We also provide a comprehensive survey that covers eight possible attacks aimed at BCI systems. For each BCI application, we created an ecosystem and data and attack flow-diagram, which comprehensively describes the roles and interactions of the players associated with the BCI application and presents the most vulnerable vectors and components within its ecosystem; we identified gaps between existing security solutions and the presented attacks and vulnerabilities. Finally, we provide several concrete suggestions for improving the security of BCI systems in cyber-space.

How Smart are Smart Classrooms? A Review of Smart Classroom Technologies

There has been a large number of works on making classrooms smart with the help of technology. These works span over a wide range of research areas covering information communication technology, machine learning, sensor networks, mobile computing, cloud computing, and hardware. Consequently, there has been a number of review papers on various aspects of smart classrooms. These reviews define smart classroom from a specific perspective and review related works. While such reviews are useful and necessary for improving technology related to a specific aspect, it is hard to derive a general picture of how smart the smart classroom is currently. In this article, we complement the literature with a comprehensive review covering all main aspects of a smart classroom. We first provide a common definition of smart classrooms and review works in different fields against that common definition. This multi-field review has exposed new research opportunities and challenges that need to be addressed for the synergistic integration of interdisciplinary works. We list these challenges in the paper along with a systematic review of the works. We believe that the article is very useful for researchers and practitioners in the field of smart classrooms.

Fast Packet Processing with eBPF and XDP: Concepts, Code, Challenges and Applications

Extended Berkeley Packet Filter (eBPF) is an instruction set and an execution environment inside the Linux kernel. It enables modification, interaction and kernel programmability at runtime. eBPF can be used to program the eXpress Data Path (XDP), a kernel network layer that processes packets closer to the NIC for fast packet processing. Developers can write programs in C or P4 languages and then compile to eBPF instructions, which can be processed by the kernel or by programmable devices (e.g. SmartNICs). Since its introduction in 2014, eBPF has been rapidly adopted by major companies such as Facebook, Cloudflare, and Netronome. Use cases include network monitoring, network traffic manipulation, load balancing, and system profiling. This work aims to present eBPF to an inexpert audience, covering the main theoretical and fundamental aspects of eBPF and XDP, as well as introducing the reader to simple examples to give insight into the general operation and use of both technologies.

Interactive Clustering: a Comprehensive Review

In this survey, 105 papers related to interactive clustering were reviewed according to seven perspectives: (1) on what level is the interaction happening, (2) what interactive operations are involved, (3) how is user feedback incorporated, (4) how is the interactive clustering evaluated, (5) which data and (6) which clustering methods have been used, and (7) what outlined challenges there are. This paper serves as a comprehensive overview of the field and outlines the state-of-the-art within the area as well as identifies challenges and future research needs.

Modeling Influence With Semantics in Social Networks: a Survey

The discovery of influential entities in all kinds of networks (e.g. social, digital, or computer) has always been an important field of study. In recent years, Online Social Networks (OSNs) have been established as a basic means of communication and often influencers and opinion makers promote politics, events, brands or products through viral content. In this work, we present a systematic review across i) online social influence metrics, properties, and applications and ii) the role of semantic in modeling OSNs information. We found that both areas can jointly provide useful insights towards the qualitative assessment of viral user-generated content, as well as for modeling the dynamic properties of influential content and its flow dynamics.

A Survey of Cache Simulators

Computer architecture simulation tools are essential for implementing and evaluating new ideas in the domain and can be useful for understanding the behavior of programs and finding microarchitectural bottlenecks. One particularly important part of almost any processor is the cache hierarchy. While some simulators support simulating a whole processor, including the cache hierarchy, cores, and on-chip interconnect, others may only support simulating the cache hierarchy. This survey provides a detailed discussion on 28 CPU cache simulators, including popular or recent simulators. We compare between all of these simulators in four different ways: major design characteristics, support for specific cache design features, support for specific cache-related metrics, and validation methods and efforts. The strengths and shortcomings of each simulator and major issues that are common to all simulators are highlighted. The information presented in this survey was collected from many different sources including research papers, documentations, source code bases, and others. This survey is potentially useful for both users and developers of cache simulators. To the best of our knowledge, this is the first comprehensive survey on cache simulation tools.

Stance Detection: A Survey

Automatic elicitation of semantic information from natural language texts is an important research problem with many practical application areas. Especially after the recent proliferation of the online content through channels such as social media sites, news portals, and forums; solutions to problems such as sentiment analysis, sarcasm/controversy/veracity/rumour/fake news detection, and argument mining gained increasing impact and significance, revealed with large volumes of related scientific publications. In this paper, we tackle an important problem from the same family and present a survey of stance detection in social media posts and online regular texts. Although stance detection is defined in different ways in different application settings, the most common definition is "automatic classification of the stance of the producer of a piece of text, towards a target, into one of these three classes: {Favor, Against, Neither}". Our survey includes definitions of related problems and concepts, classifications of the proposed approaches so far, descriptions of the relevant datasets and tools, related outstanding issues, and observations and recommendations for stance detection researchers. Stance detection is a recent natural language processing topic with diverse application areas, and our survey paper on this newly-emerging topic will act as a significant resource for interested researchers and practitioners.

All ACM Journals | See Full Journal Index

Search CSUR
enter search term and/or author name below: