Miracle-dz/UniFAR-FTUs huggingface dataset:
An Empirical Comparison of k-Shortest Simple Path Algorithms on Multicores

We consider the loop less k-shortest path (KSP) problem. Although this problem has been studied in the sequential setting for at least the last two decades, no good parallel implementations are known. In this paper, we provide (i) a first systematic empirical comparison of various KSP algorithms and heuristic optimisations, (ii) carefully engineer various parallel implementations of these sequential algorithms and (iii) perform an extensive study of these parallel implementations on a range of graph classes and multicore architectures to determine the best algorithm and parallelization strategy for different graph classes. We find that even though the worst-case complexity of the best undirected KSP algorithm O(k(m + n log n)) is significantly better than that of the popular and considerably simpler directed KSP algorithm O(kn(m + n log n)), the two algorithms are fairly competitive in terms of their empirical performance on small diameter graphs. Furthermore, we show that a few simple optimisations help to bridge the gap between these KSP algorithms even more. However, on moderate to large diameter graphs, the undirected KSP algorithm is considerably faster than the directed algorithms, both in sequential and parallel settings. In terms of the parallelisation strategy, simply replacing the shortest path subroutine by parallel Δ-stepping algorithm can provide a good speed-up for many KSP algorithms on random graphs. In contrast, for graphs with skewed degree distribution, a more complex strategy of parallelizing the different deviations and then parallelizing the shortest path computation inside the deviations with the remaining threads, provides a better performance.
The governance of blockchain systems from an institutional perspective, a matter of trust or control?

Blockchain Technology is considered as a general-purpose technology with far reaching effects. As can be seen from the discussions on blockchain applications, both practitioners and researchers struggle to get to the core of blockchain technology consequences. Especially practitioners in the governmental sector explore adequate responses to this new technology. Therefore, our aim is to provide a conceptualization of the consequences of blockchain systems from an institutional perspective, and to use this conceptualization to provide insights into the governance of blockchain systems. We use a Grounded Theory approach to conceptualize the institutional consequences of blockchain technology. This approach leads to our core category: power transfer in environments with highly institutionalized values. This core category supports the synthetization of the governance issues related to blockchain systems. We conclude that the controlling powers that were formerly vested in highly institutionalized organizations (such as governments and regulators) and institutions (such as legal frameworks and agreements), are no longer automatically part of the governing ecosystem in blockchain systems but are engrained into the technical system itself. Thus, Blockchain technology enables the technological institutionalization of values in environments that are highly dependent on these values. We believe that this is at the core of why existing institutions are being pressured by blockchain technology, and as such increase the difficulty for governments to effectively govern blockchain systems. Using this notion, public and private parties within the block-chain ecosystems can develop regulatory arrangements and strategies that strike a balance between fostering the innovative power and possibilities that blockchain applications offer and to mitigate possible negative effects of blockchain technology.
Investigating open data portals automatically: a methodology and some illustrations

Deploying a suitable open data platform is one of the most important requirements for succeeding in the provision of open data. Currently, there are several platforms available in the market ranging from the commercial ecosystem to free and open source software. However, we know less about the extent to which they are adopted and what they offer. This paper aims to provide a methodology to investigate this. The methodology is illustrated through studying adoption and use of open data software platforms through a comprehensive survey of 3,152 open data portals worldwide. We have identified 1,104 installations relying on the main existing platforms CKAN, Socrata, ArcGIS Open Data, and OpenDataSoft. To support our analysis, we have automatically fetched metadata about 1,921,636 stored datasets. Our findings indicated that there is a gap between the adoption and the effective use of open data platforms, particularly in terms of technology choice. These data are both from a descriptive and analytical point, non-trivial and showcase the relevance of the methodology. This work makes contributions regarding the development of methods to automatically survey open data platforms and provides insights about availability of open data portals based on the utilization of software platforms, organized by country and frequency of dataset updates.
Bring the Missing Jigsaw Back: TrustedClock for SGX Enclaves

Intel SGX provisions shielded executions for security-sensitive computation, but has to rely on untrusted system services, such as clock, network and filesystem. This makes enclaves vulnerable to Iago attacks [5]. For example, current SGX programs cannot obtain a trusted clock to fulfill its purposes. To mitigate this problem, we present TrustedClock, which brings high-precision, low-latency and attack-aware absolute clock into the SGX ecosystem. Our experimental results show that TrsutedClock outperforms existing clock services with its design goals.
Multi-objective search-based approach to estimate issue resolution time

Background: Resolving issues is central to modern agile software development where a software is developed and evolved incrementally through series of issue resolutions. An issue could represent a requirement for a new functionality, a report of a software bug or a description of a project task. Aims: Knowing how long an issue will be resolved is thus important to different stakeholders including end-users, bug reporters, bug triagers, developers and managers. This paper aims to propose a multi-objective search-based approach to estimate the time required for resolving an issue. Methods: Using genetic programming (a meta-heuristic optimization method), we iteratively generate candidate estimate models and search for the optimal model in estimating issue resolution time. The search is guided simultaneously by two objectives: maximizing the accuracy of the estimation model while minimizing its complexity. Results: Our evaluation on 8,260 issues from five large open source projects demonstrate that our approach significantly (p < 0.001) outperforms both the baselines and state-of-the-art techniques. Conclusions: Evolutionary search-based approaches offer an effective alternative to build estimation models for issue resolution time. Using multiple objectives, one for measuring the accuracy and the other for the complexity, helps produce accurate and simple estimation models.
Do software engineering practitioners cite research on software testing in their online articles?: A preliminary survey.

Background: Software engineering (SE) research continues to study the degree to which practitioners perceive that SE research has impact on practice. Such studies typically comprise surveys of practitioner opinions. These surveys could be complemented with other in situ practitioner sources e.g. grey literature. Objective: To investigate whether and how practitioners cite software testing research in their online articles. Method: We conduct 11,200 web searches using a customized Google-based search tool, scrape the pages of 722 unique results, and then analyse the articles for citations to research. Results: We find few citations to research (range 0% - 1% in our datasets) although this is similar to the frequency of citations to practitioner sites (0% - 4%). We find and discuss the only two significant instances of practitioners citing research in our datasets. Conclusion: We conducted a preliminary survey that complements the findings of previous work. But our survey contains a number of threats to validity. Our results should therefore be interpreted as hypotheses to motivate further investigation into the frequency to which practitioners cite research, and into the impact of research on practice.
Parallelizing Pruning-based Graph Structural Clustering

A common class of graph structural clustering algorithms, pioneered by SCAN (Structural Clustering Algorithm for Networks), not only find clusters among vertices but also classify vertices as cores, hubs and outliers. However, these algorithms suffer from efficiency issues due to the great amount of computation required on structural similarity among vertices. Pruning-based SCAN algorithms improve efficiency by reducing the amount of computation. Nevertheless, this structural similarity computation is still the performance bottleneck, especially on big graphs of billions of edges. In this paper, we propose to parallelize pruning-based SCAN algorithms on multi-core CPUs and Intel Xeon Phi Processors (KNL) with multiple threads and vectorized instructions. Specifically, we design ppSCAN, a multi-phase vertex computation based parallel algorithm, to avoid redundant computation and achieve scalability. Moreover, we propose a pivot-based vectorized set intersection algorithm for structural similarity computation. Experimental results show that ppSCAN is scalable on both CPU and KNL with respect to the number of threads. On the 1.8 billion-edge graph friendster, our ppSCAN completes within 65 seconds on KNL (64 physical cores with hyper-threading). This performance is 100x-130x faster than our single-threaded version, and up to 250x faster than pSCAN, the state-of-the-art sequential algorithm, on the same platform.
FlyingARrow: Pointing Towards Out-of-View Objects on Augmented Reality Devices

Augmented Reality (AR) devices empower users to enrich their surroundings by pinning digital content onto real world objects. However, current AR devices suffer from having small fields of view, making the process of locating spatially distributed digital content similar to looking through a keyhole. Previous solutions are not suitable to address the problem of locating digital content out of view on small field of view devices because of visual clutter. Therefore, we developed FlyingARrow, which consists of a visual representation that flies on-demand from the user's line of sight toward the position of the out-of-view object and returns an acoustic signal over headphones if reached. We compared our technique with the out-of-view object visualization technique EyeSee360 and found that it resulted in higher usability and lower workload. However, FlyingARrow performed slightly worse with respect to search time and direction error. Furthermore, we discuss the challenges, and opportunities in combining visual and acoustic representations to overcome visual clutter.
Text mining as a transparency enabler to support decision making in a people management process

This paper discusses a case study that was performed using mining techniques to analyze data pertinent to a people management process of a Federal University. This process consists in observing documents containing data concerning the organizational environment, the duties required by the position, the course program carried out by the employee, and whether they have direct or indirect correlation. Currently, this correlation evaluation is performed subjectively and there are no instruments that can indicate the degree of similarity between the information. We use text mining techniques to automatically identify correlation through textual representation approaches and syntactic and semantic modeling, which retrieve terms and dimension their respective meanings. To obtain the degree of similarity between the respective documents, the measure of the cosines similarity was used. The results showed that the documents evaluated as correlated by the domain expert presented a degree of similarity consistent with the automatic evaluation. For the uncorrelated cases, it was perceived that the degree of high similarity was influenced by the comprehensiveness of the organizational environment common to all documents. After investigation and identification of the appropriate environment specification, the grades obtained represented the evaluation correctly. The proposed approach contributes to the speed of process judgment, as well as to promote formulations of criticism about the content of political qualifications. In addition, it enhanced processes and information transparency by tracking and publicizing all steps. Lastly, we present a simulation for a course recommendation task, considering position profiles and organizational environment.
Enable the Flow for GPGPU-Sim Simulators with Fixed-Point Instructions

GPGPU-Sim nowadays has become an important vehicle for academic architecture research. In the aspect of machine learning, it has now been widely used in various applications, such as auto-drive, mobile device, and medication, etc. As these machine learning applications are power-consuming, which has become a critical issue in the machine learning area. This paper proposes the implementation of fixed-point instructions and enabled flow on GPGPU-Sim to replace floating-point instructions in machine learning applications which is with scalable precision. Preliminary experimental results with our revised GPGPU-Sim models show that this design saves GPU energy consumptions by 11% on average when using 16-bit fixed-point as the data type.
Boosting scalable data analytics with modern programmable networks

Data center networks lie at the core of distributed data analytics frameworks running in large scale environments. Recent research seek to improve the system performance by optimizing the end-host network usage, e.g., optimally use RDMA [2] or zero copy I/O frameworks [5] for distributed data analytics frameworks. Such approaches allow these systems to leverage the high network-bandwidth at end-hosts, however, keep the network itself untouched which does not solve contention and scalability issues.
A Multi-user Interactive Public Display with Dynamic Layout Optimization

In this paper, we propose a user interface that allows multiple users to obtain information interactively and perform simultaneous operation on a public display. Users can interact with the display using hand gestures, which enables many users to easily and remotely use the system. A window pops up when a user selects an item on the screen, and information about the item is displayed in the window. In order for each user to effectively use the screen and also not to be interfered with by other users, the system dynamically optimizes the position and size of each window. We created a map guidance application to confirm the effectiveness of the proposed user interface.
Towards Automated Vulnerability Scanning of Network Servers

We explore a new technique for safe patch fingerprinting to automate vulnerability scanning of network servers. Our technique helps automate the discovery of inputs that safely discriminate vulnerable from patched servers for the latest vulnerabilities. This enables rapid updates to vulnerability scanning tools as new software vulnerabilities are discovered, allowing administrators to scan and secure their networks more quickly. To ensure such scans are safe and ethical, we need to reject inputs with malicious side effects. We have implemented a framework, based on delta execution, which tests the discriminative property of such inputs, as well as their safety. We use a fuzzer to find promising candidate inputs to further automate the process. To illustrate the potential of this approach, we present a Heartbleed case study.
GAS: GPU Assisted Process Scheduling for Multicore Systems

The challenges of process scheduling in multicore systems are more complex compared to those in single-core systems. Parameters such as number of process migrations, individual core component utilization, bus contention, etc., are not considered for making scheduling decisions in the Completely Fair Share (CFS) scheduler present in most Linux kernels. This leads to non-uniform core utilization at the functional unit level. Redesigning schedulers by considering an increased number of parameters for process scheduling is inefficient due to the increased computational complexity and high frequency of calls to the scheduler. Offline profile analysis for scheduling is not advisable as it fails to capture the runtime behaviour of processes if the workload is not periodic. We propose GAS, a GPU assisted scheduling framework for leveraging computational power offered by General-purpose computing on graphics processing units (GPGPU) compute models. Our proposed solution improves the scheduling performance in terms of core component and shared resource utilization. We further extend GAS by using it as a service provided by a GPU cluster. This service can be subscribed by a set of less powerful systems for efficient process scheduling. GAS stabilizes the system at runtime, based on the hardware performance counters. Experiments on the real-world Spark-bench benchmark show that GAS is able to achieve 24% reduction in execution time on average than the default Linux Scheduler.
NumLock: Towards Optimal Multi-Granularity Locking in Hierarchies

We study multi-granularity locking in hierarchies. Existing popular mechanisms for multi-granularity locking work on two extremes: fine-grained locking which maximizes concurrency, and coarsegrained locking which minimizes the locking cost. Between the two extremes, there exist several pareto-optimal options which provide a trade-off between the concurrency cost and the locking cost. These options are captured under multi-granularity locking (MGL) protocol, but there exists no methodical way to choose a good MGL option. In this work, we present a locking technique, NumLock, which chooses optimal locking combination to serve MGL requests. NumLock works in two phases: first, it generates few pareto-optimal MGL options and second, it quickly analyzes these options to report the optimal one. We propose a greedy algorithm to generate a subset of the pareto-optimal options. We further improve the concurrency by abstracting the non-planar hierarchy as logical planar sub-hierarchies using multiple intervals. Our study reveals that the lock manager must explore various MGL options for achieving the best parallel performance, and that the extreme options often used in practice are suboptimal. We validate our claim quantitatively using an XML database as well as STMBench7, and show that the intermediate MGL options perform better compared to the existing state-of-the-art methods. In particular, NumLock achieves 65% reduction in execution time for the XML database, and 25% throughput improvement on STMBench7.
GLP4NN: A Convergence-invariant and Network-agnostic Light-weight Parallelization Framework for Deep Neural Networks on Modern GPUs

In this paper, we propose a network-agnostic and convergence-invariant light-weight parallelization framework, namely GLP4NN, to accelerate the training of Deep Neural Networks (DNNs) by taking advantage of emerging GPU features, especially concurrent kernel execution. To determine the number of concurrent kernels on the fly, we design an analytical model in the kernel analyzer module and integrate a compact asynchronous resource tracker in the resource tracker module for collecting runtime configurations of kernels with low memory and time overheads. We further develop a runtime scheduler module and a pool-based stream manager for handling GPU work queues in GLP4NN to avoid consuming too many CPU threads or processes while dispatching workloads to GPU devices. In our experiments, we integrate GLP4NN into Caffe to accelerate the batch-based training of four well-known networks on NVIDIA GPUs. Experimental results show GLP4NN is able to achieve a speedup of up to 4X over the original implementation as well as keep the convergence property of networks.
On the power consumption modeling for the simulation of Heterogeneous HPC clouds

During the last years, except from the traditional CPU based hardware servers, hardware accelerators are widely used in various HPC application areas. More specifically, Graphics Processing Units (GPUs), Many Integrated Cores (MICs) and Field-Programmable Gate Arrays (FPGAs) have shown a great potential in HPC and have been widely mobilized in supercomputing. With the adoption of HPC from cloud environments, the realization of HPC-Clouds is evolving since many vendors provide HPC capabilities on their clouds. With the increase of the interest on clouds, there has been an analogous increase in cloud simulation frameworks. Cloud simulation frameworks offer a controllable environment for experimentation with various workloads and scenarios, while they provide several metrics such as server utilization and power consumption. For providing these metrics, cloud simulators propose mathematical models that estimate the behavior of the underlying hardware infrastructure. This paper focuses on the power consumption modeling of the main compute elements of heterogeneous HPC servers, i.e. CPU servers and pairs of CPU-accelerators. The modeling approaches of existing cloud simulators are examined and extended, while new models are proposed for estimating the power consumption of accelerators.
Smart Jewelry: Augmenting Traditional Wearable Self-Expression Displays

In this paper, we address smart jewelry, with particular focus on the enhancement of traditional jewelry. We chart people's perceptions on smart jewelry through focus group and online survey user studies. We then present and evaluate a necklace design including a prototype mobile augmented reality application. Our salient findings show that the technical concept and visual design should not conflict with the physical form and aesthetic of the jewelry, and that the personal nature and emotional bonding with the jewelry should be reflected also in the digital extensions. Our work progresses the understanding of people's attitudes and preferences towards smart jewelry, and extends the body of research on augmented wearables, which is under-explored but has a great potential for the future.
A methodology for interschema relationship identification in heterogeneous databases

Information sharing among databases, whether scientific or business, requires the development of techniques for accessing data from multiple heterogeneous databases. One approach to providing interoperability among these databases is to define one or more federated schemas which represent a coherent view of the underlying databases. A review of existing research on schema integration (the process of generating integrated schemas) points to the need for the development of techniques for identifying objects in multiple databases that may be related. This process of interschema relationship identification (IRI) is the focus of this paper. We present a methodology for utilizing schematic as well as integrity constraint knowledge for IRI. We present the details of a comprehensive set of heuristics for schematic IRI. We also introduce the concept of constraint-based relationships and describe how such relationships can be generated. Finally, we describe heuristics for generating "real world" interschema relationships based on the schematic and constraint-based relationships that are generated. <<ETX>>