TY - JOUR TI - Simpler hyperparameter optimization for software analytics: Why, how, when? AU - Agrawal, A. AU - Yang, X. AU - Agrawal, R. AU - Yedida, R. AU - Shen, X. AU - Menzies, T. T2 - arXiv DA - 2019/// PY - 2019/// DO - 10.48550/arxiv.1912.04061 UR - http://www.scopus.com/inward/record.url?eid=2-s2.0-85169982985&partnerID=MN8TOARS ER - TY - JOUR TI - LipschitzLR: Using theoretically computed adaptive learning rates for fast convergence AU - Yedida, R. AU - Saha, S. T2 - arXiv AB - Optimizing deep neural networks is largely thought to be an empirical process, requiring manual tuning of several hyper-parameters, such as learning rate, weight decay, and dropout rate. Arguably, the learning rate is the most important of these to tune, and this has gained more attention in recent works. In this paper, we propose a novel method to compute the learning rate for training deep neural networks with stochastic gradient descent. We first derive a theoretical framework to compute learning rates dynamically based on the Lipschitz constant of the loss function. We then extend this framework to other commonly used optimization algorithms, such as gradient descent with momentum and Adam. We run an extensive set of experiments that demonstrate the efficacy of our approach on popular architectures and datasets, and show that commonly used learning rates are an order of magnitude smaller than the ideal value. DA - 2019/// PY - 2019/// DO - 10.48550/arxiv.1902.07399 UR - http://www.scopus.com/inward/record.url?eid=2-s2.0-85170970222&partnerID=MN8TOARS ER - TY - JOUR TI - Evolution of novel activation functions in neural network training with applications to classification of exoplanets AU - Saha, S. AU - Nagaraj, N. AU - Mathur, A. AU - Yedida, R. T2 - arXiv DA - 2019/// PY - 2019/// DO - 10.48550/arxiv.1906.01975 UR - http://www.scopus.com/inward/record.url?eid=2-s2.0-85170132364&partnerID=MN8TOARS ER - TY - JOUR TI - HONEYSCOPE: IoT device protection with deceptive network views AU - Mohamed, Reham AU - O’Connor, Terrence AU - Miettinen, Markus AU - Enck, William AU - Sadeghi, Ahmad-Reza T2 - Autonomous Cyber Deception: Reasoning, Adaptive Planning, and Evaluation of HoneyThings DA - 2019/// PY - 2019/// SP - 167-181 ER - TY - CONF TI - PolicyLint: Investigating Internal Privacy Policy Contradictions on Google Play. AU - Andow, Benjamin AU - Mahmud, Samin Yaseer AU - Wang, Wenyu AU - Whitaker, Justin AU - Enck, William AU - Reaves, Bradley AU - Singh, Kapil AU - Xie, Tao C2 - 2019/// C3 - USENIX Security Symposium DA - 2019/// SP - 585-602 ER - TY - CONF TI - Replication: Do We Snooze If We Can’t Lose? Modelling Risk with Incentives in Habituation User Studies AU - Busse, Karoline AU - Fahl, Sascha AU - Wermke, Dominik AU - Zezschwitz, Emanuel AU - Amft, Sabrina AU - Smith, Matthew C2 - 2019/// C3 - Workshop on Usable Security (USEC) 2019 DA - 2019/// ER - TY - ER - TY - JOUR TI - What will you do next? A sequence analysis on the student transitions between online platforms in blended courses AU - Gitinabard, Niki AU - Heckman, Sarah AU - Barnes, Tiffany AU - Lynch, Collin F T2 - arXiv preprint arXiv:1905.00928 DA - 2019/// PY - 2019/// ER - TY - CONF TI - Wait, Wait. No, Tell Me. Analyzing Selenium Configuration Effects on Test Flakiness AU - Presler-Marshall, Kai AU - Horton, Eric AU - Heckman, Sarah AU - Stolee, Kathryn T2 - IEEE C2 - 2019/// C3 - 2019 IEEE/ACM 14th International Workshop on Automation of Software Test (AST) DA - 2019/// SP - 7-13 ER - TY - JOUR TI - SIGCSE technical symposium 2020 call for submissions AU - Zhang, Jian AU - Sherriff, Mark AU - Heckman, Sarah AU - Cutter, Pam AU - Monge, Alvaro T2 - ACM SIGCSE Bulletin DA - 2019/// PY - 2019/// VL - 51 IS - 3 SP - 2-3 ER - TY - JOUR TI - SIGCSE technical symposium 2019 report AU - Hawthorne, Elizabeth K AU - Pérez-Quiñones, Manuel A AU - Heckman, Sarah AU - Zhang, Jian T2 - ACM SIGCSE Bulletin DA - 2019/// PY - 2019/// VL - 51 IS - 2 SP - 2-4 ER - TY - JOUR TI - Building and expanding a successful undergraduate research program AU - Heckman, Sarah AU - Fain, Brandon AU - Pérez-Quiñones, Manuel T2 - Journal of Computing Sciences in Colleges DA - 2019/// PY - 2019/// VL - 35 IS - 4 SP - 18-19 ER - TY - JOUR TI - Editorial AU - Rouskas, George AU - Verikoukis, Christos T2 - IEEE Networking Letters AB - We are proud to present this inaugural issue of the IEEE Networking Letters. This issue is the culmination of an effort that started two years ago and introduces a new publication that rounds out the IEEE portfolio of journals in the broad field of communications and networking. Specifically, IEEE Networking Letters is intended to complement its sister publications, IEEE Communications Letters and IEEE Wireless Communications Letters, by providing a forum for letter-style journal papers reporting on research advances in all layers of the networking stack above the physical layer. DA - 2019/3// PY - 2019/3// DO - 10.1109/LNET.2019.2897895 VL - 1 IS - 1 SP - 1-1 UR - https://doi.org/10.1109/LNET.2019.2897895 ER - TY - JOUR TI - $\mathcal{DBSDA}$ : Lowering the Bound of Misclassification Rate for Sparse Linear Discriminant Analysis via Model Debiasing AU - Xiong, Haoyi AU - Cheng, Wei AU - Bian, Jiang AU - Hu, Wenqing AU - Sun, Zeyi AU - Guo, Zhishan T2 - IEEE Transactions on Neural Networks and Learning Systems AB - Linear discriminant analysis (LDA) is a well-known technique for linear classification, feature extraction, and dimension reduction. To improve the accuracy of LDA under the high dimension low sample size (HDLSS) settings, shrunken estimators, such as Graphical Lasso, can be used to strike a balance between biases and variances. Although the estimator with induced sparsity obtains a faster convergence rate, however, the introduced bias may also degrade the performance. In this paper, we theoretically analyze how the sparsity and the convergence rate of the precision matrix (also known as inverse covariance matrix) estimator would affect the classification accuracy by proposing an analytic model on the upper bound of an LDA misclassification rate. Guided by the model, we propose a novel classifier, DBSDA, which improves classification accuracy through debiasing. Theoretical analysis shows that DBSDA possesses a reduced upper bound of misclassification rate and better asymptotic properties than sparse LDA (SDA). We conduct experiments on both synthetic datasets and real application datasets to confirm the correctness of our theoretical analysis and demonstrate the superiority of DBSDA over LDA, SDA and other downstream competitors under HDLSS settings. DA - 2019/3// PY - 2019/3// DO - 10.1109/tnnls.2018.2846783 VL - 30 IS - 3 SP - 707-717 J2 - IEEE Trans. Neural Netw. Learning Syst. OP - SN - 2162-237X 2162-2388 UR - http://dx.doi.org/10.1109/tnnls.2018.2846783 DB - Crossref ER - TY - ER - TY - JOUR TI - SpHMC: Spectral Hamiltonian Monte Carlo AU - Xiong, Haoyi AU - Wang, Kafeng AU - Bian, Jiang AU - Zhu, Zhanxing AU - Xu, Cheng-Zhong AU - Guo, Zhishan AU - Huan, Jun T2 - Proceedings of the AAAI Conference on Artificial Intelligence AB - Stochastic Gradient Hamiltonian Monte Carlo (SGHMC) methods have been widely used to sample from certain probability distributions, incorporating (kernel) density derivatives and/or given datasets. Instead of exploring new samples from kernel spaces, this piece of work proposed a novel SGHMC sampler, namely Spectral Hamiltonian Monte Carlo (SpHMC), that produces the high dimensional sparse representations of given datasets through sparse sensing and SGHMC. Inspired by compressed sensing, we assume all given samples are low-dimensional measurements of certain high-dimensional sparse vectors, while a continuous probability distribution exists in such high-dimensional space. Specifically, given a dictionary for sparse coding, SpHMC first derives a novel likelihood evaluator of the probability distribution from the loss function of LASSO, then samples from the high-dimensional distribution using stochastic Langevin dynamics with derivatives of the logarithm likelihood and Metropolis–Hastings sampling. In addition, new samples in low-dimensional measuring spaces can be regenerated using the sampled high-dimensional vectors and the dictionary. Extensive experiments have been conducted to evaluate the proposed algorithm using real-world datasets. The performance comparisons on three real-world applications demonstrate the superior performance of SpHMC beyond baseline methods. DA - 2019/7/17/ PY - 2019/7/17/ DO - 10.1609/aaai.v33i01.33015516 VL - 33 IS - 01 SP - 5516-5524 J2 - AAAI OP - SN - 2374-3468 2159-5399 UR - http://dx.doi.org/10.1609/aaai.v33i01.33015516 DB - Crossref ER - TY - ER - TY - ER - TY - ER - TY - ER - TY - ER - TY - ER - TY - ER - TY - ER - TY - JOUR TI - CASS: Criticality-Aware Standby-Sparing for real-time systems AU - Zhao, Mingxiong AU - Liu, Di AU - Jiang, Xu AU - Liu, Weichen AU - Xue, Gang AU - Xie, Cheng AU - Yang, Yun AU - Guo, Zhishan T2 - Journal of Systems Architecture AB - The standby-sparing (SS) is a promising technique which deploys the dual-processor platform, i.e., one primary processor and one spare processor, to achieve fault tolerance for real-time systems. In the existing SS framework, all applications have their backup copies on the spare processor, but, in practice, not all applications on a system are equally important to the system. Some low critical tasks may be traded off for other system objectives. Motivated by this, in this paper, we integrate the concept of criticality into the SS framework. Such integration enables the SS framework to further reduce energy consumption. We propose an offline approach to determine an energy-efficient frequency for the primary processor. Additionally, as the cluster systems are emerging as the mainstream computing platform, we consider the SS technique on the cluster/island systems and propose an algorithm to determine the energy-efficient algorithm for such systems. We evaluate the proposed approach on synthetic tasks and real-platforms. The experimental results demonstrate the effectiveness of our proposed framework in terms of energy efficiency. DA - 2019/11// PY - 2019/11// DO - 10.1016/j.sysarc.2019.101661 VL - 100 SP - 101661 J2 - Journal of Systems Architecture LA - en OP - SN - 1383-7621 UR - http://dx.doi.org/10.1016/j.sysarc.2019.101661 DB - Crossref ER - TY - JOUR TI - Intra-Task Priority Assignment in Real-Time Scheduling of DAG Tasks on Multi-Cores AU - He, Qingqiang AU - Jiang, Xu AU - Guan, Nan AU - Guo, Zhishan T2 - IEEE Transactions on Parallel and Distributed Systems AB - Real-time scheduling and analysis of parallel tasks modeled as directed acyclic graphs (DAG) have been intensively studied in recent years. However, no existing work has explored the execution order of eligible vertices within a DAG task. In this paper, we show that this intra-task vertex execution order has a large impact on system schedulability and propose to control the execution order by vertex-level priority assignment. We develop analysis techniques to bound the worst-case response time for the proposed scheduling strategy and design heuristics for proper priority assignment to improve system schedulability as much as possible. We further extend the proposed approach to the general setting of multiple recurrent DAG tasks. Experiments with both realistic parallel benchmark applications and randomly generated workload show that our method consistently outperforms state-of-the-art methods with different task graph structures and parameter configurations. DA - 2019/10/1/ PY - 2019/10/1/ DO - 10.1109/TPDS.2019.2910525 VL - 30 IS - 10 SP - 2283-2295 UR - https://doi.org/10.1109/TPDS.2019.2910525 ER - TY - JOUR TI - Data-Driven Robust Control of Discrete-Time Uncertain Linear Systems via Off-Policy Reinforcement Learning AU - Yang, Yongliang AU - Guo, Zhishan AU - Xiong, Haoyi AU - Ding, Da-Wei AU - Yin, Yixin AU - Wunsch, Donald C. T2 - IEEE Transactions on Neural Networks and Learning Systems AB - This paper presents a model-free solution to the robust stabilization problem of discrete-time linear dynamical systems with bounded and mismatched uncertainty. An optimal controller design method is derived to solve the robust control problem, which results in solving an algebraic Riccati equation (ARE). It is shown that the optimal controller obtained by solving the ARE can robustly stabilize the uncertain system. To develop a model-free solution to the translated ARE, off-policy reinforcement learning (RL) is employed to solve the problem in hand without the requirement of system dynamics. In addition, the comparisons between on- and off-policy RL methods are presented regarding the robustness to probing noise and the dependence on system dynamics. Finally, a simulation example is carried out to validate the efficacy of the presented off-policy RL approach. DA - 2019/12// PY - 2019/12// DO - 10.1109/TNNLS.2019.2897814 VL - 30 IS - 12 SP - 3735-3747 UR - https://doi.org/10.1109/TNNLS.2019.2897814 ER - TY - ER - TY - JOUR TI - DPavatar: A real-time location protection framework for incumbent users in cognitive radio networks AU - Liu, Jianqing AU - Zhang, Chi AU - Lorenzo, Beatriz AU - Fang, Yuguang T2 - IEEE Transactions on Mobile Computing DA - 2019/// PY - 2019/// VL - 19 IS - 3 SP - 552-565 ER - TY - CONF TI - Verifiable Search Meets Blockchain: A Privacy-Preserving Framework for Outsourced Encrypted Data AU - Jiang, Shunrong AU - Liu, Jianqing AU - Wang, Liangmin AU - Yoo, Seong-Moo T2 - IEEE C2 - 2019/// C3 - ICC 2019-2019 IEEE International Conference on Communications (ICC) DA - 2019/// SP - 1-6 ER - TY - CONF TI - Priority Service for Paying Content Providers through Dedicated Cache Leasing in Information-Centric Networking AU - Chen, Yutong AU - Xue, Kaiping AU - Qin, Jin AU - Wei, Wenjia AU - Liu, Jianqing T2 - IEEE C2 - 2019/// C3 - 2019 2nd International Conference on Hot Information-Centric Networking (HotICN) DA - 2019/// SP - 25-30 ER - TY - CONF TI - An Energy-Efficient Design for Mobile UAV Fire Surveillance Networks AU - Wang, Yixin AU - Xu, Wenjun AU - Liu, Jianqing AU - Pan, Miao AU - Zhang, Ping AU - Lin, Jiaru T2 - IEEE C2 - 2019/// C3 - ICC 2019-2019 IEEE International Conference on Communications (ICC) DA - 2019/// SP - 1-6 ER - TY - CONF TI - STNDN: Link Aware Segmented Transmission for Named Data Networking AU - Qin, Jin AU - Xue, Kaiping AU - Chen, Yutong AU - Wei, Wenjia AU - Liu, Jianqing AU - Yue, Hao T2 - IEEE C2 - 2019/// C3 - 2019 2nd International Conference on Hot Information-Centric Networking (HotICN) DA - 2019/// SP - 50-55 ER - TY - CONF TI - Attribute-Based Accountable Access Control for Multimedia Content with In-Network Caching AU - He, Peixuan AU - Xue, Kaiping AU - Xu, Jie AU - Xia, Qiudong AU - Liu, Jianqing AU - Yue, Hao T2 - IEEE C2 - 2019/// C3 - 2019 IEEE International Conference on Multimedia and Expo (ICME) DA - 2019/// SP - 778-783 ER - TY - JOUR TI - Turning waste into wealth: Free control message transmissions in indoor WiFi networks AU - Feng, Bing AU - Zhang, Chi AU - Liu, Jianqing AU - Fang, Yuguang T2 - IEEE Transactions on Mobile Computing DA - 2019/// PY - 2019/// ER - TY - JOUR TI - Optimal VNF placement via deep reinforcement learning in SDN/NFV-enabled networks AU - Pei, Jianing AU - Hong, Peilin AU - Pan, Miao AU - Liu, Jiangqing AU - Zhou, Jingsong T2 - IEEE Journal on Selected Areas in Communications DA - 2019/// PY - 2019/// VL - 38 IS - 2 SP - 263-278 ER - TY - JOUR TI - Machine Learning-Based Handovers for Sub-6 GHz and mmWave Integrated Vehicular Networks AU - Yan, Li AU - Ding, Haichuan AU - Zhang, Lan AU - Liu, Jianqing AU - Fang, Xuming AU - Fang, Yuguang AU - Xiao, Ming AU - Huang, Xiaoxia T2 - IEEE Transactions on Wireless Communications DA - 2019/// PY - 2019/// VL - 18 IS - 10 SP - 4873-4885 ER - TY - JOUR TI - D2D Communications-Assisted Traffic Offloading in Integrated Cellular-WiFi Networks AU - Feng, Bing AU - Zhang, Chi AU - Liu, Jianqing AU - Fang, Yuguang T2 - IEEE Internet of Things Journal DA - 2019/// PY - 2019/// VL - 6 IS - 5 SP - 8670-8680 ER - TY - JOUR TI - An ICN/SDN-based network architecture and efficient content retrieval for future satellite-terrestrial integrated networks AU - Li, Jian AU - Xue, Kaiping AU - Liu, Jianqing AU - Zhang, Yongdong AU - Fang, Yuguang T2 - IEEE Network DA - 2019/// PY - 2019/// VL - 34 IS - 1 SP - 188-195 ER - TY - CONF TI - A Robust Algorithm for Sniffing BLE Long-Lived Connections in Real-time AU - Sarkar, Sopan AU - Liu, Jianqing AU - Jovanov, Emil T2 - IEEE C2 - 2019/// C3 - 2019 IEEE Global Communications Conference (GLOBECOM) DA - 2019/// SP - 1-6 ER - TY - CONF TI - A Privacy-preserving Ethereum Lightweight Client Using PIR AU - Xie, Yankai AU - Zhang, Chi AU - Wei, Lingbo AU - Niu, Yukun AU - Wang, Faxing AU - Liu, Jianqing T2 - IEEE C2 - 2019/// C3 - 2019 IEEE/CIC International Conference on Communications in China (ICCC) DA - 2019/// SP - 1006-1011 ER - TY - CONF TI - Mining maximal induced bicliques using odd cycle transversals AU - Kloster, K. AU - Poel, A. AU - Sullivan, B.D. AB - Many common graph data mining tasks take the form of identifying dense subgraphs (e.g. clustering, clique-finding, etc). In biological applications, the natural model for these dense substructures is often a complete bipartite graph (biclique), and the problem requires enumerating all maximal bicliques (instead of identifying just the largest or densest). The best known algorithm in general graphs is due to Dias et al., and runs in time O(M|V|4), where M is the number of maximal induced bicliques (MIBs) in the graph. When the graph being searched is itself bipartite, Zhang et al. give a faster algorithm where the time per MIB depends on the number of edges in the graph. In this work, we present a new algorithm for enumerating MIBs in general graphs, whose run time depends on how “close to bipartite” the input is. Specifically, the runtime is parameterized by the size k of an odd cycle transversal (OCT), a vertex set whose deletion results in a bipartite graph. Our algorithm runs in time O(M|V‖E|k23k/3), which is an improvement on Dias et al. whenever k ≤ 3 log3 |V|. We implement our algorithm alongside a variant of Dias et al.'s in open-source C++ code, and experimentally verify that the OCT-based approach is faster in practice on graphs with a wide variety of sizes, densities, and OCT decompositions.MSC codesbicliquesodd cycle transversalparameterized algorithmsenumerationbipartite C2 - 2019/// C3 - SIAM International Conference on Data Mining, SDM 2019 DA - 2019/// DO - 10.1137/1.9781611975673.37 SP - 324-332 UR - http://www.scopus.com/inward/record.url?eid=2-s2.0-85066094908&partnerID=MN8TOARS ER - TY - JOUR TI - Approximating vertex cover using structural rounding AU - Lavallee, B. AU - Russell, H. AU - Sullivan, B.D. AU - Poel, A. T2 - arXiv DA - 2019/// PY - 2019/// UR - http://www.scopus.com/inward/record.url?eid=2-s2.0-85094768942&partnerID=MN8TOARS ER - TY - CONF TI - Detecting suggestions in peer assessments AU - Zingle, Gabriel AU - Radhakrishnan, Balaji AU - Xiao, Yunkai AU - Gehringer, Edward AU - Xiao, Zhongcan AU - Pramudianto, Ferry AU - Khurana, Gauraang AU - Arnav, Ayush T2 - EDM 2019: 12th International Conference on Educational Data Mining C2 - 2019/7// C3 - EDM 2019: 12th International Conference on Educational Data Mining CY - Montreal DA - 2019/7// PY - 2019/7// SP - 474–479 ER - TY - CONF TI - A Test-Driven Approach to Improving Student Contributions to Open-Source Projects AU - Hu, Zhewei AU - Song, Yang AU - Gehringer, Edward F. T2 - 2019 IEEE Frontiers in Education Conference (FIE) AB - Test-driven development (TDD) promises to help students write high-quality code with fewer defects. Although many studies of TDD usage have been conducted in entry-level computer science courses, few have looked at more advanced students doing projects of larger scope, such as contributing to open-source software (OSS). To test the performance of the test-driven approach on OSS-based course projects, we conducted a quasi-experimental controlled study, which lasted for more than one month. Thirty-five masters students participated in our study. They worked on course projects in teams, half of which were assigned to the TDD group (using a test-driven approach), and the rest of which were assigned to the non-TDD group (using the traditional test-last approach). We found that students in the TDD group were able to apply test-driven techniques pragmatically-spending more than 20% of their time on average complying with the test-driven process-throughout the whole project. There were no major differences in the quality of source-code modifications and newly added tests between the TDD group and the non-TDD group; however, the TDD group wrote more tests and achieved significantly higher (12% more) statement coverage. C2 - 2019/// C3 - 2019 IEEE Frontiers in Education Conference (FIE) CY - Covington, KY DA - 2019/// PY - 2019/10/16/ DO - 10.1109/FIE43999.2019.9028521 ER - TY - CONF TI - PeerLogic: Web Services for Peer Assessment AU - Gehringer, Edward F. T2 - 2019 ASEE Annual Conference & Exposition AB - Abstract Peer assessment means students giving feedback on each other’s work. Dozens of online systems have been developed for peer assessment. They all face many of the same issues. The PeerLogic project is an effort to develop specialized features for peer-assessment systems so that they can be used by multiple systems without the need for re-implementation. In addition, the project maintains a “data warehouse,” which includes anonymized peer reviews from different peer-assessment systems, which are freely made available to researchers. C2 - 2019/// C3 - 2019 ASEE Annual Conference & Exposition CY - Tampa, FL DA - 2019/// PY - 2019/6/15/ DO - 10.18260/1-2--32388 PB - American Society for Engineering Education Annual Conference ER - TY - CONF TI - Improving feedback on github pull requests: A bots approach AU - Hu, Zhewei AU - Gehringer, Edward F T2 - IEEE C2 - 2019/// C3 - 2019 IEEE Frontiers in Education Conference (FIE) DA - 2019/// SP - 1-9 ER - TY - BOOK TI - Answering queries using views AU - Afrati, Foto AU - Chirkova, Rada DA - 2019/// PY - 2019/// PB - Morgan & Claypool Publishers SN - 1681734648 9781681734644 1681734621 9781681734620 ER - TY - CONF TI - CADApps: MATLAB Apps for Core Courses in Aerospace and Mechanical Engineering Curricula AU - Battestilli, Lina AU - Silverberg, Larry C2 - 2019/3// C3 - ASEE-SE Annual Conference DA - 2019/3// UR - https://sites.asee.org/se/wp-content/uploads/sites/56/2021/04/2019ASEESE28.pdf ER - TY - CONF TI - Energy audition based cyber-physical attack detection system in IoT AU - Shi, Yang AU - Li, Fangyu AU - Song, WenZhan AU - Li, Xiang-Yang AU - Ye, Jin AB - In this paper, we propose an attack detection framework in the Internet of Things (IoT) devices. The framework applies a data-centric method to process the energy consumption data and classify the attack status of the monitored device. We implement the framework in real hardware, and emulate common types of attacks to evaluate the performance of the attack detection framework. Due to the characteristic of the energy data, not only cyber attacks but also physical attacks such as heating are also emulated and tested. To shorten the detection time, a two-stage strategy is also proposed to first apply a short time window for a rough detection, then a long time window to the fine detection of anomalies. The accuracy of short-term detection is 90%, while in the long-term detections the accuracy reaches 99.5%. Due to the nature of information from energy consumption data, the framework is more secure in cases the kernel of the device is already compromised. C2 - 2019/5/17/ C3 - Proceedings of the ACM Turing Celebration Conference - China DA - 2019/5/17/ DO - 10.1145/3321408.3321588 PB - ACM UR - http://dx.doi.org/10.1145/3321408.3321588 ER - TY - PAT TI - Visualizing convolutional neural networks AU - Leeman-Munk, Samuel Paul AU - Sethi, Saratendu AU - Healey, Christopher Graham AU - Nie, Shaoliang AU - Padia, Kalpesh AU - Devarajan, Ravinder AU - Caira, David James AU - Benson, Jordan Riley AU - Cox, James Allen AU - Lewis, Lawrence E AU - others C2 - 2019/1/29/ DA - 2019/1/29/ PY - 2019/1/29/ RP - US Patent 10,192,001 N1 - US Patent 10,192,001 RN - US Patent 10,192,001 ER - TY - THES TI - Storyline Visualization Techniques for Linear, Non-Linear, and Diegetic Narratives. AU - Padia, Kalpesh DA - 2019/// PY - 2019/// PB - North Carolina State University ER - TY - PAT TI - Interactive visualizations for a recurrent neural network AU - Leeman-Munk, Samuel Paul AU - Sethi, Saratendu AU - Healey, Christopher Graham AU - Nie, Shaoliang AU - Padia, Kalpesh AU - Devarajan, Ravinder AU - Caira, David James AU - Benson, Jordan Riley AU - Cox, James Allen AU - Lewis, Lawrence E C2 - 2019/1/31/ DA - 2019/1/31/ PY - 2019/1/31/ RP - US Patent 10,324,983 N1 - US Patent 10,324,983 RN - US Patent 10,324,983 ER - TY - CONF TI - CADApps: MATLAB Apps for Core Courses in Aerospace and Mechanical Engineering Curricula AU - Battestilli, L. AU - Silverberg, L. AU - Eischen, J. AU - Thomas, C. T2 - American Society for Engineering Education-Southeast 2019 Annual Conference C2 - 2019/// C3 - Proceedings of the ASEE-SE 2019 CY - Raleigh, NC DA - 2019/// PY - 2019/3/10/ ER - TY - RPRT TI - A Lightweight Intervention to Decrease Gender Bias in Student Evaluations of Teaching (Full Version) AU - Fisk, S. AU - Stolee, K.T. AU - Battestilli, L. A3 - North Carolina State University DA - 2019/// PY - 2019/// M1 - TR-2019-9 M3 - Technical Report PB - North Carolina State University SN - TR-2019-9 ER - TY - CONF TI - STARS Computing Corps IGNITE Program AU - Barnes, T. AU - Payton, J. AU - Battestilli, L. AU - Doman, M. T2 - RESPECT Conference 2019 (ACM Technical Symposium on Computer Science Education (SIGCSE)) C2 - 2019/// C3 - Proceedings of the Research in Equity and Sustained Participation in Engineering, Computing, and Technology (RESPECT) Conference 2019 CY - Minneapolis, MN DA - 2019/// PY - 2019/2/27/ ER - TY - JOUR TI - POSTER: GOPipe: A Granularity-Oblivious Programming Framework for Pipelined Stencil Executions on GPU AU - Oh, Chanyoung AU - Zheng, Zhen AU - Shen, Xipeng AU - Zhai, Jidong AU - Yi, Youngmin T2 - PROCEEDINGS OF THE 24TH SYMPOSIUM ON PRINCIPLES AND PRACTICE OF PARALLEL PROGRAMMING (PPOPP '19) AB - Recent studies have shown promising performance benefits of pipelined stencil applications. An important factor for the computing efficiency of such pipelines is the granularity of a task. We presents GOPipe, the first granularity-oblivious programming framework for efficient pipelined stencil executions. With GOPipe, programmers no longer need to specify the appropriate task granularity. GOPipe automatically finds it, and schedules tasks of that granularity while observing all inter-task and inter-stage data dependencies. In our experiments on four real-life applications, GOPipe outperforms the state-of-the-art by up to 4.57× with a much better programming productivity. DA - 2019/// PY - 2019/// DO - 10.1145/3293883.3301494 SP - 431-432 KW - GPU KW - Pipelined Execution KW - Data Dependence ER - TY - JOUR TI - Designing and Developing Interactive Narratives for Collaborative Problem-Based Learning AU - Mott, Bradford W. AU - Taylor, Robert G. AU - Lee, Seung Y. AU - Rowe, Jonathan P. AU - Saleh, Asmalina AU - Glazewski, Krista D. AU - Hmelo-Silver, Cindy E. AU - Lester, James C. T2 - INTERACTIVE STORYTELLING, ICIDS 2019 AB - Narrative and collaboration are two core features of rich interactive learning. Narrative-centered learning environments offer significant potential for supporting student learning. By contextualizing learning within interactive narratives, these environments leverage students’ innate facilities for developing understandings through stories. Computer-supported collaborative learning environments offer students rich, collaborative learning experiences in which small groups of students engage in constructing artifacts, addressing disciplinary challenges, and solving problems. Narrative and collaboration have distinct affordances for learning, but combining them poses significant challenges. In this paper, we present initial work on solving this problem by introducing collaborative narrative-centered learning environments. These environments will enable small groups of students to collaboratively solve problems in rich multi-participant storyworlds. We propose a novel framework for designing and developing these environments, which we are using to create a collaborative narrative-centered learning environment for middle school ecosystems education. In the learning environment, students work on problem-solving scenarios centered on how to support optimal fish health in aquatic environments. Results from pilot testing the learning environment with 45 students suggest it supports the creation of engaging and effective collaborative narrative-centered learning experiences. DA - 2019/// PY - 2019/// DO - 10.1007/978-3-030-33894-7_10 VL - 11869 SP - 86-100 SN - 1611-3349 KW - Narrative-centered learning KW - Collaborative learning ER - TY - JOUR TI - A Spectrum of Audience Interactivity for Entertainment Domains AU - Striner, Alina AU - Azad, Sasha AU - Martens, Chris T2 - INTERACTIVE STORYTELLING, ICIDS 2019 AB - The concept of audience interactivity has been rediscovered across many domains of storytelling and entertainment—e.g. digital games, in-person role-playing, film, theater performance, music, and theme parks—that enrich the form with new idioms, language, and practices. In this paper, we introduce a Spectrum of Audience Interactivity that establishes a common vocabulary for the design space across entertainment domains. Our spectrum expands on an early vocabulary conceptualized through co-design sessions for interactive musical performances. We conduct a cross-disciplinary literature review to evaluate and iterate upon this vocabulary, using our findings to develop our validated spectrum. DA - 2019/// PY - 2019/// DO - 10.1007/978-3-030-33894-7_23 VL - 11869 SP - 214-232 SN - 1611-3349 KW - Audience interaction KW - Audience participation KW - Entertainment KW - Agency KW - Performance interaction KW - Immersion ER - TY - JOUR TI - Programming Quantum Computers: A Primer with IBM Q and D-Wave Exercises AU - Mueller, Frank AU - Byrd, Greg AU - Dreher, Patrick T2 - PROCEEDINGS OF THE 24TH SYMPOSIUM ON PRINCIPLES AND PRACTICE OF PARALLEL PROGRAMMING (PPOPP '19) AB - This tutorial provides a hands-on introduction to quantum computing. It will feature the three pillars, architectures, programming, and algorithms/applications of quantum computing. Its focus is on the applicability of problems to quantum computing from a practical point, with only the necessary foundational coverage of the physics and theoretical aspects to understand quantum computing. Simulation software will be utilized complemented by access to actual quantum computers to prototype problem solutions. This should develop a better understanding of how problems are transformed into quantum algorithms and what programming language support is best suited for a given application area. As a first of its kind, to the best of our knowledge, the tutorial includes hands-on programming experience with IBM Q and D-Wave hardware. DA - 2019/// PY - 2019/// DO - 10.1145/3293883.3302578 SP - 451-451 KW - quantum computing ER - TY - JOUR TI - Villanelle: An Authoring Tool for Autonomous Characters in Interactive Fiction AU - Martens, Chris AU - Iqbal, Owais T2 - INTERACTIVE STORYTELLING, ICIDS 2019 AB - Our goal is to discover tool and language design principles that enable powerful, usable autonomous character authorship for diverse audiences of storytellers. This paper describes the Villanelle project, an approach to interactive narrative authoring that supports seamless integration of autonomous characters into choice-based storytelling. We present our computational model based on behavior trees uniformly for scripting agent interaction, user interaction, and narrative events; our stand-alone authoring tool, which provides an integrated development and testing environment for authoring with this model; and our JavaScript API for web-based development, demonstrating the expressiveness and simplicity of our approach through two case studies. DA - 2019/// PY - 2019/// DO - 10.1007/978-3-030-33894-7_29 VL - 11869 SP - 290-303 SN - 1611-3349 ER - TY - JOUR TI - Semantics-Aware Scheduling Policies for Synchronization Determinism AU - Zhao, Qi AU - Qiu, Zhengyi AU - Jin, Guoliang T2 - PROCEEDINGS OF THE 24TH SYMPOSIUM ON PRINCIPLES AND PRACTICE OF PARALLEL PROGRAMMING (PPOPP '19) AB - A common task for all deterministic multithreading (DMT) systems is to enforce synchronization determinism. However, synchronization determinism has not been the focus of existing DMT research. Instead, most DMT systems focused on how to order data races remained after synchronization determinism is enforced. Consequently, existing scheduling policies for synchronization determinism all have limitations. They may either require performance annotations to achieve good performance or fail to provide schedule stability. DA - 2019/// PY - 2019/// DO - 10.1145/3293883.3295731 SP - 242-256 UR - http://dx.doi.org/10.1145/3293883.3295731 KW - synchronization determinism KW - synchronization scheduling KW - semantics-aware policies KW - deterministic multithreading KW - stable multithreading ER - TY - CONF TI - One minute is enough: Early Prediction of Student Success and Event-level Difficulty during Novice Programming Tasks AU - Mao, Y. AU - Zhi, R. AU - Khoshnevisan, F. AU - Price, T.W. AU - Barnes, T. AU - Chi, M. A2 - Lynch, C.F. A2 - Merceron, A. A2 - Desmarais, M. A2 - Nkambou, R. C2 - 2019/// C3 - Proceedings of the 12th International Conference on Educational Data Mining DA - 2019/// SP - 119-128 ER - TY - CHAP TI - Applications of Reinforcement Learning to Self-Improving Educational Systems AU - Shen, S. AU - Shimmei, M. AU - Chi, M. AU - Matsuda, N. T2 - Design Recommendations for Intelligent Tutoring Systems A2 - Sinatra, A.M. A2 - Graesser, A.C. A2 - Hu, X. A2 - Brawner, K. A2 - Rus, V. PY - 2019/// VL - 7: Self-Improving Systems SP - 77–96 PB - US Army Research Lab ER - TY - JOUR TI - Computer Science Principles for Teachers of Blind and Visually Impaired Students AU - Stefik, Andreas AU - Ladner, Richard E. AU - Allee, William AU - Mealin, Sean T2 - SIGCSE '19: PROCEEDINGS OF THE 50TH ACM TECHNICAL SYMPOSIUM ON COMPUTER SCIENCE EDUCATION AB - The College Board's AP Computer Science Principles (CSP) content has become a major new course for introducing K-12 students to the discipline. The course was designed for many reasons, but one major goal was to broaden participation. While significant work has been completed toward equity by many research groups, we know of no systematic analysis of CSP content created by major vendors in relation to accessibility for students with disabilities, especially those who are blind or visually impaired. In this experience report, we discuss two major actions by our team to make CSP more accessible. First, with the help of accessibility experts and teachers, we modified the entire Code.org CSP course to make it accessible. Second, we conducted a one-week professional development workshop in the summer of 2018 for teachers of blind or visually impaired students in order to help them prepare to teach CSP or support those who do. We report here on lessons learned that are useful to teachers who have blind or visually impaired students in their classes, to AP CSP curriculum providers, and to the College Board. DA - 2019/// PY - 2019/// DO - 10.1145/3287324.3287453 SP - 766-772 KW - Blind and Visually Impaired KW - Accessibility KW - Computer Science Principles KW - Professional Development KW - The College Board KW - Code.org ER - TY - JOUR TI - Faster Biclique Mining in Near-Bipartite Graphs AU - Sullivan, Blair D. AU - Poel, Andrew AU - Woodlief, Trey T2 - ANALYSIS OF EXPERIMENTAL ALGORITHMS, SEA2 2019 AB - Identifying dense bipartite subgraphs is a common graph data mining task. Many applications focus on the enumeration of all maximal bicliques (MBs), though sometimes the stricter variant of maximal induced bicliques (MIBs) is of interest. Recent work of Kloster et al. introduced a MIB-enumeration approach designed for “near-bipartite” graphs, where the runtime is parameterized by the size k of an odd cycle transversal (OCT), a vertex set whose deletion results in a bipartite graph. Their algorithm was shown to outperform the previously best known algorithm even when k was logarithmic in |V|. In this paper, we introduce two new algorithms optimized for near-bipartite graphs - one which enumerates MIBs in time $$O(M_I |V| |E| k)$$, and another based on the approach of Alexe et al. which enumerates MBs in time $$O(M_B |V| |E| k)$$, where $$M_I$$ and $$M_B$$ denote the number of MIBs and MBs in the graph, respectively. We implement all of our algorithms in open-source C++ code and experimentally verify that the OCT-based approaches are faster in practice than the previously existing algorithms on graphs with a wide variety of sizes, densities, and OCT decompositions. DA - 2019/// PY - 2019/// DO - 10.1007/978-3-030-34029-2_28 VL - 11544 SP - 424-453 SN - 1611-3349 UR - http://www.scopus.com/inward/record.url?eid=2-s2.0-85076404739&partnerID=MN8TOARS KW - Bicliques KW - Odd cycle transversal KW - Bipartite KW - Enumeration algorithms KW - Parameterized complexity ER - TY - JOUR TI - DESEN: Specification of Sociotechnical Systems via Patterns of Regulation and Control AU - Kafalı, Özgür AU - Ajmeri, Nirav AU - Singh, Munindar P. T2 - ACM Transactions on Software Engineering and Methodology (TOSEM) AB - We address the problem of engineering a sociotechnical system (STS) with respect to its stakeholders’ requirements. We motivate a two-tier STS conception composed of a technical tier that provides control mechanisms and describes what actions are allowed by the software components, and a social tier that characterizes the stakeholders’ expectations of each other in terms of norms. We adopt agents as computational entities, each representing a different stakeholder. Unlike previous approaches, our framework, D ESEN , incorporates the social dimension into the formal verification process. Thus, D ESEN supports agents potentially violating applicable norms—a consequence of their autonomy. In addition to requirements verification, D ESEN supports refinement of STS specifications via design patterns to meet stated requirements. We evaluate D ESEN at three levels. We illustrate how D ESEN carries out refinement via the application of patterns on a hospital emergency scenario. We show via a human-subject study that a design process based on our patterns is helpful for participants who are inexperienced in conceptual modeling and norms. We provide an agent-based environment to simulate the hospital emergency scenario to compare STS specifications (including participant solutions from the human-subject study) with metrics indicating social welfare and norm compliance, and other domain dependent metrics. DA - 2019/2// PY - 2019/2// DO - 10.1145/3365664 VL - 29 IS - 1 SP - 1–50 KW - Agent-oriented software engineering KW - norms KW - security and privacy requirements KW - design patterns KW - simulation ER - TY - CONF TI - Supple: Multiagent Communication Protocols with Causal Types AU - Günay, Akın AU - Chopra, Amit K. AU - Singh, Munindar P. C2 - 2019/5// C3 - Proceedings of the 18th International Conference on Autonomous Agents and MultiAgent Systems (AAMAS) DA - 2019/5// SP - 781–789 PB - IFAAMAS SN - 9781450363099 UR - https://eprints.lancs.ac.uk/id/eprint/131277/ ER - TY - JOUR TI - A Dataset of Crowdsourced Smarthome Requirements with Creativity Ratings AU - Murukannaiah, Pradeep K. AU - Ajmeri, Nirav AU - Rahman, Muhammad Fazalul AU - Singh, Munindar P. DA - 2019/11/1/ PY - 2019/11/1/ DO - 10.5281/zenodo.3550721 UR - https://research-information.bris.ac.uk/en/publications/585cb1e7-aa33-4082-9720-e32c94faec72 N1 - Zenodo is an open science data repository created by the European Commission RN - Zenodo is an open science data repository created by the European Commission ER - TY - CONF TI - Applying norms and sanctions to promote cybersecurity hygiene AU - Goyal, S. AU - Ajmeri, N. AU - Singh, M.P. C2 - 2019/// C3 - Proceedings of the International Joint Conference on Autonomous Agents and Multiagent Systems, AAMAS DA - 2019/// VL - 4 SP - 1991-1993 UR - http://www.scopus.com/inward/record.url?eid=2-s2.0-85077021008&partnerID=MN8TOARS ER - TY - JOUR TI - Structural Rounding: Approximation Algorithms for Graphs Near an Algorithmically Tractable Class AU - Demaine, Erik D. AU - Goodrich, Timothy D. AU - Kloster, Kyle AU - Lavallee, Brian AU - Liu, Quanquan C. AU - Sullivan, Blair D. AU - Vakilian, Ali AU - Poel, Andrew T2 - 27TH ANNUAL EUROPEAN SYMPOSIUM ON ALGORITHMS (ESA 2019) DA - 2019/// PY - 2019/// DO - 10.4230/LIPIcs.ESA.2019.37 VL - 144 SP - SN - 1868-8969 UR - http://www.scopus.com/inward/record.url?eid=2-s2.0-85074821909&partnerID=MN8TOARS KW - structural rounding KW - graph editing KW - approximation algorithms ER - TY - JOUR TI - Beyond the Code Itself: How Programmers Really Look at Pull Requests AU - Ford, Denae AU - Behroozi, Mahnaz AU - Serebrenik, Alexander AU - Parnin, Chris T2 - 2019 IEEE/ACM 41ST INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING: SOFTWARE ENGINEERING IN SOCIETY (ICSE-SEIS 2019) AB - Developers in open source projects must make decisions on contributions from other community members, such as whether or not to accept a pull request. However, secondary factors-beyond the code itself-can influence those decisions. For example, signals from GitHub profiles, such as a number of followers, activity, names, or gender can also be considered when developers make decisions. In this paper, we examine how developers use these signals (or not) when making decisions about code contributions. To evaluate this question, we evaluate how signals related to perceived gender identity and code quality influenced decisions on accepting pull requests. Unlike previous work, we analyze this decision process with data collected from an eye-tracker. We analyzed differences in what signals developers said are important for themselves versus what signals they actually used to make decisions about others. We found that after the code snippet (x̅=57%), the second place programmers spent their time fixating is on supplemental technical signals (x̅=32%), such as previous contributions and popular repositories. Diverging from what participants reported themselves, we also found that programmers fixated on social signals more than recalled. DA - 2019/// PY - 2019/// DO - 10.1109/ICSE-SEIS.2019.00014 SP - 51-60 KW - transparency KW - code contributions KW - open source software development KW - eye-tracking KW - socio-technical ecosystems ER - TY - JOUR TI - Blockchain Enabled AI Marketplace: The Price You Pay For Trust AU - Sarpatwar, Kanthi AU - Ganapavarapu, Venkata Sitaramagiridharganesh AU - Shanmugam, Karthikeyan AU - Rahman, Akond AU - Vaculin, Roman T2 - 2019 IEEE/CVF CONFERENCE ON COMPUTER VISION AND PATTERN RECOGNITION WORKSHOPS (CVPRW 2019) AB - There has been a considerable amount of interest in exploring blockchain technologies for enabling marketplaces of different kinds. In this work, we provide a blockchain implementation that enables an "AI marketplace": a platform where consumers and data providers can transact data and/or models and derive value. Preserving privacy and trust during these transactions is a paramount concern. As an enabling use case, we consider a transfer learning setting. In this setting, a consumer entity wants to acquire a large training set, from different private data providers, that matches a small validation dataset provided by the consumer. Data providers expect fair value for their contribution and the consumer also wants to maximize its benefit. We implement a distributed protocol on a blockchain that provides guarantees on privacy and consumer's benefit. We also demonstrate that our blockchain implementation plays a crucial role in addressing the issue of fair value attribution and privacy in a trustable way. We consider three different designs for a blockchain implementation that trades off trust requirements on different entities and the overhead in terms of time taken for completion of the task. The first design provides no trust guarantees. The second one guarantees trust with respect to other participants if the platform is trustworthy. The third one guarantees complete trust with no requirements. Our experiments show that the performance in the second and third cases, with partial/complete trust guarantees, degrade by roughly 2× and 5× respectively, compared to the baseline with no trust guarantees. DA - 2019/// PY - 2019/// DO - 10.1109/CVPRW.2019.00345 SP - 2857-2866 SN - 2160-7508 ER - TY - JOUR TI - FabZK: Supporting Privacy-Preserving, Auditable Smart Contracts in Hyperledger Fabric AU - Kang, Hui AU - Dai, Ting AU - Jean-Louis, Nerla AU - Tao, Shu AU - Gu, Xiaohui T2 - 2019 49TH ANNUAL IEEE/IFIP INTERNATIONAL CONFERENCE ON DEPENDABLE SYSTEMS AND NETWORKS (DSN 2019) AB - On a Blockchain network, transaction data are exposed to all participants. To preserve privacy and confidentiality in transactions, while still maintaining data immutability, we design and implement FabZK. FabZK conceals transaction details on a shared ledger by storing only encrypted data from each transaction (e.g., payment amount), and by anonymizing the transactional relationship (e.g., payer and payee) between members in a Blockchain network. It achieves both privacy and auditability by supporting verifiable Pedersen commitments and constructing zero-knowledge proofs. FabZK is implemented as an extension to the open source Hyperledger Fabric. It provides APIs to easily enable data privacy in both client code and chaincode. It also supports on-demand, automated auditing based on encrypted data. Our evaluation shows that FabZK offers strong privacy-preserving capabilities, while delivering reasonable performance for the applications developed based on its framework. DA - 2019/// PY - 2019/// DO - 10.1109/DSN.2019.00061 SP - 543-555 SN - 1530-0889 KW - Blockchain KW - privacy KW - auditability KW - zero-knowledge proofs ER - TY - JOUR TI - The Colored Refresh Server for DRAM AU - Pan, Xing AU - Mueller, Frank T2 - 2019 IEEE 40TH REAL-TIME SYSTEMS SYMPOSIUM (RTSS 2019) AB - Bounding each task's worst-case execution time (WCET) accurately is essential for real-time systems to determine if all deadlines can be met. Yet, access latencies to Dynamic Random Access Memory (DRAM) vary significantly due to DRAM refresh, which blocks access to memory cells. Variations further increase as DRAM density grows. This work contributes the "Colored Refresh Server" (CRS), a uniprocessor scheduling paradigm that partitions DRAM in two distinctly colored groups such that refreshes of one color occur in parallel to the execution of real-time tasks of the other color. By executing tasks in phase with periodic DRAM refreshes with opposing colors, memory requests no longer suffer from refresh interference. Experimental results confirm that refresh overhead is completely hidden and memory throughput enhanced. DA - 2019/// PY - 2019/// DO - 10.1109/RTSS46320.2019.00023 SP - 146-153 SN - 1052-8725 ER - TY - JOUR TI - TFix: Automatic Timeout Bug Fixing in Production Server Systems AU - He, Jingzhu AU - Dai, Ting AU - Gu, Xiaohui T2 - 2019 39TH IEEE INTERNATIONAL CONFERENCE ON DISTRIBUTED COMPUTING SYSTEMS (ICDCS 2019) AB - Timeout is widely used to handle unexpected failures in distributed systems. However, improper use of timeout schemes can cause serious availability and performance issues, which is often difficult to fix due to lack of diagnostic information. In this paper, we present TFix, an automatic timeout bug fixing system for correcting misused timeout bugs in production systems. TFix adopts a drill-down bug analysis protocol that can narrow down the root cause of a misused timeout bug and producing recommendations for correcting the root cause. TFix first employs a system call frequent episode mining scheme to check whether a timeout bug is caused by a misused timeout variable. TFix then employs application tracing to identify timeout affected functions. Next, TFix uses taint analysis to localize the misused timeout variable. Last, TFix produces recommendations for proper timeout variable values based on the tracing results during normal runs. We have implemented a prototype of TFix and conducted extensive experiments using 13 real world server timeout bugs. Our experimental results show that TFix can correctly localize the misused timeout variables and suggest proper timeout values for fixing those bugs. DA - 2019/// PY - 2019/// DO - 10.1109/ICDCS.2019.00067 SP - 612-623 SN - 1063-6927 ER - TY - JOUR TI - Thou Shalt Discuss Security: Quantifying the Impacts of Instructions to RFC Authors AU - Whitaker, Justin AU - Prasad, Sathvik AU - Reaves, Bradley AU - Enck, William T2 - PROCEEDINGS OF THE 5TH ACM WORKSHOP ON SECURITY STANDARDISATION RESEARCH WORKSHOP (SSR '19) AB - The importance of secure development of new technologies is unquestioned, yet the best methods to achieve this goal are far from certain. A key issue is that while significant effort is given to evaluating the outcomes of development (e.g., security of a given project), it is far more difficult to determine what organizational practices result in secure projects. In this paper, we quantitatively examine efforts to improve the consideration of security in Requests for Comments (RFCs)--- the design documents for the Internet and many related systems --- through the mandates and guidelines issued to RFC authors. We begin by identifying six metrics that quantify the quantity and quality of security informative content. We then apply these metrics longitudinally over 8,437 documents and 49 years of development to determine whether guidance to RFC authors changed these security metrics in later documents. We find that even a simply worded --- but effectively enforced --- mandate to explicitly consider security created a significant effect in increased discussion and topic coverage of security content both in and outside of a mandated security considerations section. We find that later guidelines with more detailed advice on security also improve both volume and quality of security informative content in RFCs. Our work demonstrates that even modest amounts of guidance can correlate to significant improvements in security focus in RFCs, indicating a promising approach for other network standards bodies. DA - 2019/// PY - 2019/// DO - 10.1145/3338500.3360332 SP - 57-68 KW - Requests for Comments KW - Internet Standards KW - Network Security KW - Text Analysis ER - TY - JOUR TI - iSENSE: Completion-Aware Crowdtesting Management AU - Wang, Junjie AU - Yang, Ye AU - Krishna, Rahul AU - Menzies, Tim AU - Wang, Qing T2 - 2019 IEEE/ACM 41ST INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING (ICSE 2019) AB - Crowdtesting has become an effective alternative to traditional testing, especially for mobile applications. However, crowdtesting is hard to manage in nature. Given the complexity of mobile applications and unpredictability of distributed crowdtesting processes, it is difficult to estimate (a) remaining number of bugs yet to be detected or (b) required cost to find those bugs. Experience-based decisions may result in ineffective crowdtesting processes, e.g., there is an average of 32% wasteful spending in current crowdtesting practices. This paper aims at exploring automated decision support to effectively manage crowdtesting processes. It proposes an approach named ISENSE which applies incremental sampling technique to process crowdtesting reports arriving in chronological order, organizes them into fixed-size groups as dynamic inputs, and predicts two test completion indicators in an incremental manner. The two indicators are: 1) total number of bugs predicted with Capture-ReCapture model, and 2) required test cost for achieving certain test objectives predicted with AutoRegressive Integrated Moving Average model. The evaluation of ISENSE is conducted on 46,434 reports of 218 crowdtesting tasks from one of the largest crowdtesting platforms in China. Its effectiveness is demonstrated through two application studies for automating crowdtesting management and semi-automation of task closing trade-off analysis. The results show that ISENSE can provide managers with greater awareness of testing progress to achieve cost-effectiveness gains of crowdtesting. Specifically, a median of 100% bugs can be detected with 30% saved cost based on the automated close prediction. DA - 2019/// PY - 2019/// DO - 10.1109/ICSE.2019.00097 SP - 912-923 SN - 0270-5257 KW - Crowdtesting KW - automated close prediction KW - test completion KW - crowdtesting management ER - TY - JOUR TI - Investigating the Effects of Gender Bias on GitHub AU - Imtiaz, Nasif AU - Middleton, Justin AU - Chakraborty, Joymallya AU - Robson, Neill AU - Bai, Gina AU - Murphy-Hill, Emerson T2 - 2019 IEEE/ACM 41ST INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING (ICSE 2019) AB - Diversity, including gender diversity, is valued by many software development organizations, yet the field remains dominated by men. One reason for this lack of diversity is gender bias. In this paper, we study the effects of that bias by using an existing framework derived from the gender studies literature.We adapt the four main effects proposed in the framework by posing hypotheses about how they might manifest on GitHub,then evaluate those hypotheses quantitatively. While our results how that effects of gender bias are largely invisible on the GitHub platform itself, there are still signals of women concentrating their work in fewer places and being more restrained in communication than men. DA - 2019/// PY - 2019/// DO - 10.1109/ICSE.2019.00079 SP - 700-711 SN - 0270-5257 KW - GitHub KW - gender KW - open source ER - TY - JOUR TI - DockerizeMe: Automatic Inference of Environment Dependencies for Python Code Snippets AU - Horton, Eric AU - Parnin, Chris T2 - 2019 IEEE/ACM 41ST INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING (ICSE 2019) AB - Platforms like Stack Overflow and GitHub's gist system promote the sharing of ideas and programming techniques via the distribution of code snippets designed to illustrate particular tasks. Python, a popular and fast-growing programming language, sees heavy use on both sites, with nearly one million questions asked on Stack Overflow and 400 thousand public gists on GitHub. Unfortunately, around 75% of the Python example code shared through these sites cannot be directly executed. When run in a clean environment, over 50% of public Python gists fail due to an import error for a missing library. We present DockerizeMe, a technique for inferring the dependencies needed to execute a Python code snippet without import error. DockerizeMe starts with offline knowledge acquisition of the resources and dependencies for popular Python packages from the Python Package Index (PyPI). It then builds Docker specifications using a graph-based inference procedure. Our inference procedure resolves import errors in 892 out of nearly 3,000 gists from the Gistable dataset for which Gistable's baseline approach could not find and install all dependencies. DA - 2019/// PY - 2019/// DO - 10.1109/ICSE.2019.00047 SP - 328-338 SN - 0270-5257 KW - Docker KW - Configuration Management KW - Environment Inference KW - Dependencies KW - Python ER - TY - JOUR TI - The Seven Sins: Security Smells in Infrastructure as Code Scripts AU - Rahman, Akond AU - Parnin, Chris AU - Williams, Laurie T2 - 2019 IEEE/ACM 41ST INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING (ICSE 2019) AB - Practitioners use infrastructure as code (IaC) scripts to provision servers and development environments. While developing IaC scripts, practitioners may inadvertently introduce security smells. Security smells are recurring coding patterns that are indicative of security weakness and can potentially lead to security breaches. The goal of this paper is to help practitioners avoid insecure coding practices while developing infrastructure as code (IaC) scripts through an empirical study of security smells in IaC scripts. We apply qualitative analysis on 1,726 IaC scripts to identify seven security smells. Next, we implement and validate a static analysis tool called Security Linter for Infrastructure as Code scripts (SLIC) to identify the occurrence of each smell in 15,232 IaC scripts collected from 293 open source repositories. We identify 21,201 occurrences of security smells that include 1,326 occurrences of hard-coded passwords. We submitted bug reports for 1,000 randomly-selected security smell occurrences. We obtain 212 responses to these bug reports, of which 148 occurrences were accepted by the development teams to be fixed. We observe security smells can have a long lifetime, e.g., a hard-coded secret can persist for as long as 98 months, with a median lifetime of 20 months. DA - 2019/// PY - 2019/// DO - 10.1109/ICSE.2019.00033 SP - 164-175 SN - 0270-5257 KW - devops KW - devsecops KW - empirical study KW - infrastructure as code KW - puppet KW - security KW - smell KW - static analysis ER - TY - JOUR TI - Sparse Generative Adversarial Network AU - Mahdizadehaghdam, Shahin AU - Panahi, Ashkan AU - Krim, Hamid T2 - 2019 IEEE/CVF INTERNATIONAL CONFERENCE ON COMPUTER VISION WORKSHOPS (ICCVW) AB - We propose a new approach to Generative Adversarial Networks (GANs) to achieve an improved performance with additional robustness to its so-called and well-recognized mode collapse. We first proceed by mapping the desired data onto a frame-based space for a sparse representation to lift any limitation of small support features prior to learning the structure. To that end, we start by dividing an image into multiple patches and modifying the role of the generative network from producing an entire image, at once, to creating a sparse representation vector for each image patch. We synthesize an entire image by multiplying generated sparse representations to a pre-trained dictionary and assembling the resulting patches. This approach restricts the output of the generator to a particular structure, obtained by imposing a Union of Subspaces (UoS) model to the original training data, leading to more realistic images, while maintaining a desired diversity. To further regularize GANs in generating high-quality images and to avoid the notorious mode-collapse problem, we introduce a third player in GANs, called reconstructor. This player utilizes an auto-encoding scheme to ensure that first, the input-output relation in the generator is injective and second each real image corresponds to some input noise. We present a number of experiments, where the proposed algorithm shows a remarkably higher inception score compared to the equivalent conventional GANs. DA - 2019/// PY - 2019/// DO - 10.1109/ICCVW.2019.00369 SP - 3063-3071 SN - 2473-9936 ER - TY - JOUR TI - Operationalizing Conflict Strategies in a Board Game AU - Harmon, Sarah AU - Maxwell, Remington AU - Jhala, Arnav T2 - PROCEEDINGS OF THE 14TH INTERNATIONAL CONFERENCE ON THE FOUNDATIONS OF DIGITAL GAMES (FDG'19) AB - The aim of conflict resolution education is to impart essential strategies and skills for resolving conflicts effectively. While these are important life skills, conflict resolution can be difficult to teach because it requires individuals to interact with others, explore new strategies, and receive feedback within a natural social context in order for strong connections to be made. As board games often involve co-located multiplayer interaction and can be effective tools for young learners, we explore the possibility of incorporating learning about conflict resolution into a tabletop game. We describe the process of designing an educational board game - StarStruck - that fosters discussions about conflict management via operationalization of conflict strategies drawn from an instrument founded in social psychology theory. Through in- and out-of-board interactions, StarStruck is designed to provide players with affordances to explore different resolution strategies within their natural social environment. We present examples from initial playtesting sessions to consider the expressive range of conflict scenarios generated by playing the game. This work serves as a preliminary illustration of how to map the vocabulary of conflict resolution to game mechanics, dynamics, and aesthetics so that players can naturally engage with and discuss conflict interactions. DA - 2019/// PY - 2019/// DO - 10.1145/3337722.3342235 SP - KW - conflict modeling KW - education KW - social skill learning ER - TY - JOUR TI - Efficient Choice Enumeration for Narrative World Design AU - Robertson, Justus AU - Jhala, Arnav AU - Young, R. Michael T2 - PROCEEDINGS OF THE 14TH INTERNATIONAL CONFERENCE ON THE FOUNDATIONS OF DIGITAL GAMES (FDG'19) AB - An open challenge for AI in digital games is narrative experience management, the problem of automatically directing virtual characters in an interactive story to produce specific narrative effects for human participants. One important aspect of interactive narrative quality is participant choice, which provides the central distinction between interactive and linear storytelling. Most experience management work identifies storytelling patterns an agent should value or guides participants through high-value story trajectories. However, the types and quality of choices available in an interactive story are influenced not only by a model of narrative and specific story character actions, but also the world design that affords situations and actions. In this paper, we present a method for generating all unique, accessible choice combinations for a story world as a first step towards experience-driven interactive narrative world design. We benchmark the approach against several baselines and discuss its use as a tool for human and automated world designers. DA - 2019/// PY - 2019/// DO - 10.1145/3337722.3337736 SP - KW - Interactive Narrative KW - Experience Management KW - Drama Management KW - Intelligent Tutoring Systems ER - TY - JOUR TI - Stories of the Town: Balancing Character Autonomy and Coherent Narrative in Procedurally Generated Worlds AU - Miller, Chris AU - Dighe, Mayank AU - Martens, Chris AU - Jhala, Arnav T2 - PROCEEDINGS OF THE 14TH INTERNATIONAL CONFERENCE ON THE FOUNDATIONS OF DIGITAL GAMES (FDG'19) AB - Procedural narrative generation systems often focus on autonomous agent based simulations to create emergent interactions, plan-based approaches to provide guarantees for coherence, or using elements of simulation to guide plan-based approaches. These different approaches, with some exceptions, tend to trade off character autonomy in service of more designer controlled experiences or content authoring in service of encoding domain knowledge of possible branches of the narrative and participating characters. We have developed a system, called Stories of the Town, that automatically generates narratives by synthesizing three distinct approaches to traditional narrative generation: context-free grammars, planning, and simulation. More specifically, our system generates narratives via probabilistic context-free grammars applied to state-space planning problem solutions from planning problem formulations of simulated character models. Our system uses character simulations to generate variety in narratives and ensures narrative coherence through authoring probabilistic context-free grammars. By doing so, this system takes advantage of the strengths of each individual approach (e.g. controllability, scalability, intentionality, and variety) to generate narratives that are extensible, expressive, consistent with simulated character personalities and histories, and controllable. We show that this system has strong potential in automatically generating varied, complex, consistent, and goal-oriented narratives. Further development of the system will allow for more efficient utilization of the strengths of each narrative generation approach while also using these strengths to supplement their individual shortcomings. DA - 2019/// PY - 2019/// DO - 10.1145/3337722.3341850 SP - ER - TY - CONF TI - Toward Data-Driven Example Feedback for Novice Programming AU - Zhi, R. AU - Marwan, S. AU - Dong, Y. AU - Lytle, N. AU - Price, T.W. AU - Barnes, T. T2 - International Educational Data Mining Society C2 - 2019/// C3 - Proceedings of the 12th International Conference on Educational Data Mining CY - Montreal, Canada DA - 2019/// PY - 2019/7/2/ SP - 218-227 ER - TY - JOUR TI - UIBK: User Interactions for Building Knowledge AU - Christensen, Johanne AU - Bae, Juhee AU - Watson, Benjamin AU - Talamadupula, Kartik AU - Spjut, Josef AU - Joines, Stacy T2 - PROCEEDINGS OF THE 24TH INTERNATIONAL CONFERENCE ON INTELLIGENT USER INTERFACES: COMPANION (IUI 2019) AB - This half-day workshop seeks to bring together practitioners and academics interested in the challenges of structuring interactions for subject matter experts (SMEs) who are providing knowledge and/or feedback to an AI system, but are not well-versed in the underlying algorithms. Since the information provided by SMEs directly effects the efficacy of the final system, collecting the correct data is a problem that navigates issues ranging from curating data that may be tainted to structuring data collection tasks in such a way as to mitigate user boredom. The goal of this workshop is to discuss methods and new paradigms for productively interacting with users while collecting knowledge. DA - 2019/// PY - 2019/// DO - 10.1145/3308557.3313122 SP - 131-132 KW - User Interfaces KW - Model building KW - User Experience ER - TY - JOUR TI - Uncore Power Scavenger: A Runtime for Uncore Power Conservation on HPC Systems AU - Gholkar, Neha AU - Mueller, Frank AU - Rountree, Barry T2 - PROCEEDINGS OF SC19: THE INTERNATIONAL CONFERENCE FOR HIGH PERFORMANCE COMPUTING, NETWORKING, STORAGE AND ANALYSIS AB - The US Department of Energy (DOE) has set a power target of 20-30MW on the first exascale machines. To achieve one exaflop under this power constraint, it is necessary to minimize wasteful consumption of power while striving to improve performance. DA - 2019/// PY - 2019/// DO - 10.1145/3295500.3356150 SP - KW - high-performance computing KW - power awareness ER - TY - JOUR TI - How Do Developers Act on Static Analysis Alerts? An Empirical Study of Coverity Usage AU - Imtiaz, Nasif AU - Murphy, Brendan AU - Williams, Laurie T2 - 2019 IEEE 30TH INTERNATIONAL SYMPOSIUM ON SOFTWARE RELIABILITY ENGINEERING (ISSRE) AB - Static analysis tools (SATs) often fall short of developer satisfaction despite their many benefits. An understanding of how developers in the real-world act on the alerts detected by SATs can help improve the utility of these tools and determine future research directions. The goal of this paper is to aid researchers and tool makers in improving the utility of static analysis tools through an empirical study of developer action on the alerts detected by Coverity, a state-of-the-art static analysis tool. In this paper, we analyze five open source projects as case studies (Linux, Firefox, Samba, Kodi, and Ovirt-engine) that have been actively using Coverity over a period of at least five years. We investigate the alert occurrences and developer triage of the alerts from the Coverity database; identify the alerts that were fixed through code changes (i.e. actionable) by mining the commit history of the projects; analyze the time an alert remain in the code base (i.e. lifespan) and the complexity of code changes (i.e. fix complexity) in fixing the alert. We find that 27.4% to 49.5% (median: 36.7%) of the alerts are actionable across projects, a rate higher than previously reported. We also find that the fixes of Coverity alerts are generally low in complexity (2 to 7 lines of code changes in the affected file, median: 4). However, developers still take from 36 to 245 days (median: 96) to fix these alerts. Finally, our data suggest that severity and fix complexity may correlate with an alert's lifespan in some of the projects. DA - 2019/// PY - 2019/// DO - 10.1109/ISSRE.2019.00040 SP - 323-333 SN - 1071-9458 KW - static analysis KW - tools KW - alerts KW - warnings KW - developer action ER - TY - JOUR TI - V2: Fast Detection of Configuration Drift in Python AU - Horton, Eric AU - Parnin, Chris T2 - 34TH IEEE/ACM INTERNATIONAL CONFERENCE ON AUTOMATED SOFTWARE ENGINEERING (ASE 2019) AB - Code snippets are prevalent, but are hard to reuse because they often lack an accompanying environment configuration. Most are not actively maintained, allowing for drift between the most recent possible configuration and the code snippet as the snippet becomes out-of-date over time. Recent work has identified the problem of validating and detecting out-of-date code snippets as the most important consideration for code reuse. However, determining if a snippet is correct, but simply out-of-date, is a non-trivial task. In the best case, breaking changes are well documented, allowing developers to manually determine when a code snippet contains an out-of-date API usage. In the worst case, determining if and when a breaking change was made requires an exhaustive search through previous dependency versions. We present V2, a strategy for determining if a code snippet is out-of-date by detecting discrete instances of configuration drift, where the snippet uses an API which has since undergone a breaking change. Each instance of configuration drift is classified by a failure encountered during validation and a configuration patch, consisting of dependency version changes, which fixes the underlying fault. V2 uses feedback-directed search to explore the possible configuration space for a code snippet, reducing the number of potential environment configurations that need to be validated. When run on a corpus of public Python snippets from prior research, V2 identifies 248 instances of configuration drift. DA - 2019/// PY - 2019/// DO - 10.1109/ASE.2019.00052 SP - 477-488 KW - Configuration Management KW - Configuration Repair KW - Configuration Drift KW - Environment Inference KW - Dependencies ER - TY - CONF TI - Toward computational models of team effectiveness with natural language processing AU - Spain, R. AU - Geden, M. AU - Min, W. AU - Mott, B. AU - Lester, J. C2 - 2019/// C3 - CEUR Workshop Proceedings DA - 2019/// VL - 2501 SP - 30-39 UR - http://www.scopus.com/inward/record.url?eid=2-s2.0-85075911853&partnerID=MN8TOARS ER - TY - CONF TI - Generating educational game levels with multistep deep convolutional generative adversarial networks AU - Park, K. AU - Mott, B.W. AU - Min, W. AU - Boyer, K.E. AU - Wiebe, E.N. AU - Lester, J.C. AB - Educational games offer significant potential for supporting personalized learning in engaging virtual worlds. However, many educational games do not provide adaptive gameplay to meet the needs of individual students. To address this issue, educational games should include game levels that can self-adjust to the specific needs of individual students. However, creating a large number of adaptable game levels requires considerable effort by game developers. A promising solution to this problem is to leverage procedural content generation to automatically generate levels for educational games that incorporate the desired learning objectives. In this paper, we propose a multistep deep convolutional generative adversarial network for generating new levels within a game for middle school computer science education. The model operates in two phases: (1) train a generator with a small set of human-authored example levels and generate a much larger set of synthetic levels to augment the training data for a second generator, and (2) train a second generator using the augmented training data and use it to generate novel educational game levels with enhanced solvability. We evaluate the performance of the model by comparing the novelty and solvability of generated levels between the two generators. Results suggest that the proposed multistep model significantly enhances the solvability of the generated levels with only minor degradation in the novelty of the generated levels. C2 - 2019/// C3 - IEEE Conference on Computatonal Intelligence and Games, CIG DA - 2019/// DO - 10.1109/CIG.2019.8848085 VL - 2019-August UR - http://www.scopus.com/inward/record.url?eid=2-s2.0-85073108251&partnerID=MN8TOARS ER - TY - CONF TI - Position: Scaffolded Coding Activities Afforded by Block-Based Environments AU - Lytle, Nicholas AU - Dong, Yihuan AU - Catete, Veronica AU - Milliken, Alex AU - Isvik, Amy AU - Barnes, Tiffany AB - Block-based programming environments (BBEs) help students first learning to program through reduced syntax errors and easier code construction. In setting up project files and designing activities, it is also possible to integrate within BBEs scaffolding for novice programmers. We outline and present examples for a set of Scaffold Activities developed for use in novice programming settings that we have found in practice to be successful in easing students into programming. C2 - 2019/// C3 - Proceedings of the 2019 IEEE Blocks and Beyond Workshop (B&B) DA - 2019/// DO - 10.1109/bb48857.2019.8941203 SP - 5-7 PB - IEEE UR - http://www.scopus.com/inward/record.url?eid=2-s2.0-85078085335&partnerID=MN8TOARS ER - TY - CONF TI - Infusing Computing Through Professional Development: Shifts in Content Area Teachers' Understandings of Computational Thinking Integration AU - Jocius, R. AU - Albert, J. AU - Andrews, A. AU - Catete, V. AU - Dong, Y. AU - Joshi, D. AU - Robinson, R. AU - Barnes, T. AU - Lytle, N. T2 - Association for the Advancement of Computing in Education (AACE) C2 - 2019/// C3 - Proceedings of Society for Information Technology & Teacher Education International Conference DA - 2019/// SP - 302–305 PB - Association for the Advancement of Computing in Education (AACE) ER - TY - CONF TI - From 'Use' to 'Choose': Scaffolding CT Curricula and Exploring Student Choices while Programming (Practical Report) AU - Lytle, Nicholas AU - Catete, Veronica AU - Isvik, Amy AU - Boulden, Danielle AU - Dong, Yihuan AU - Wiebe, Eric AU - Barnes, Tiffany T2 - ACM AB - As computing skills become necessary for 21st-century students, infused computational thinking (CT) lessons must be created for core courses to truly provide computing education for all. This will bring challenges as students will have widely varying experience and programming ability. Additionally, STEM teachers might have little experience teaching CT and instructing using unfamiliar technology might create discomfort. We present a design pattern for infused CT assignments that scaffold students and teachers into block-based programming environments. Beginning with existing code, students and teachers work together 'Using' and comprehending code before 'Modifying' it together to fix their programs. The activity ends with students 'Choosing' their own extensions from a pre-set list. We present a comparison of two implementations of a simulation activity, one ending with student choosing how to extend their models and one having all students create the same option. Through triangulating data from classroom observations, student feedback, teacher interviews, and programming interaction logs, we present support for student and teacher preference of the 'Student-Choice' model. We end with recommended strategies for developing curricula that follow our design model. C2 - 2019/// C3 - Proceedings of the 14th Workshop in Primary and Secondary Computing Education DA - 2019/// DO - 10.1145/3361721.3362110 SP - 18 PB - ACM Press UR - http://www.scopus.com/inward/record.url?eid=2-s2.0-85074811076&partnerID=MN8TOARS KW - Use-Modify-Create KW - Lesson Design KW - Student Choice ER - TY - CONF TI - Developing a Systemic, Scalable Model to Broaden Participation in Middle School Computer Science AU - Wiebe, Eric AU - Boulden, Danielle AU - Catete, Veronica AU - Barnes, Tiffany AU - Freeman, Sharon AU - Frye, David AU - Maher, Mary Lou AU - Cao, Lijuan AU - Dorodchi, Mohsen M AU - Pugalee, David AU - Rorrer, Audrey S. T2 - IEEE AB - This poster describes the overarching goals of a newly awarded NSF-funded grant (DRL-1837439) designed to address the provision of equitable access to underrepresented students (e.g., females, African-Americans, Hispanic/Latinx) in computing. Collaborative Research: Broadening Participation with the STEM Ecosystem: Developing a Scalable Model using an RPP Approach evolved out of the research team’s past experiences with developing strategic partnerships with school administrators and classroom teachers to bring computationally-rich activities to students throughout the school day, but especially in core math and science courses. C2 - 2019/// C3 - 2019 Research on Equity and Sustained Participation in Engineering, Computing, and Technology (RESPECT) DA - 2019/// DO - 10.1109/respect46404.2019.8985931 SP - 1-2 PB - IEEE UR - http://www.scopus.com/inward/record.url?eid=2-s2.0-85080061277&partnerID=MN8TOARS ER - TY - CONF TI - Semantic query transformations for increased parallelization in distributed knowledge graph query processing AB - Ontologies have become an increasingly popular semantic layer for integrating multiple heterogeneous datasets. However, significant challenges remain with supporting efficient and scalable processing of queries with data linked with ontologies (ontological queries). Ontological query processing queries requires explicitly defined query patterns be expanded to capture implicit ones, based on available ontology inference axioms. However, in practice such as in the biomedical domain, the complexity of the ontological axioms results in significantly large query expansions which present day query processing infrastructure cannot support. In particular, it remains unclear how to effectively parallelize such queries. C2 - 2019/11/17/ C3 - Proceedings of the International Conference for High Performance Computing, Networking, Storage and Analysis DA - 2019/11/17/ DO - 10.1145/3295500.3356212 UR - http://dx.doi.org/10.1145/3295500.3356212 KW - Graph and network algorithms KW - improved models KW - algorithms KW - performance or scalability of specific applications and respective software KW - cloud workflow KW - data KW - resource management including dynamic resource provisioning KW - data analytics and frameworks supporting data analytics KW - Scalable storage KW - metadata KW - namespaces KW - data management ER - TY - CHAP TI - Evaluating Generalized Path Queries by Integrating Algebraic Path Problem Solving with Graph Pattern Matching T2 - Lecture Notes in Computer Science AB - Path querying on Semantic Networks is gaining increased focus because of its broad applicability. Some graph databases offer support for variants of path queries e.g. shortest path. However, many applications have the need for the set version of various path problem i.e. finding paths between multiple source and multiple destination nodes (subject to different kinds of constraints). Further, the sets of source and destination nodes may be described declaratively as patterns, rather than given explicitly. Such queries lead to the requirement of integrating graph pattern matching with path problem solving. There are currently existing limitations in support of such queries (either inability to express some classes, incomplete results, inability to complete query evaluation unless graph patterns are extremely selective, etc). In this paper, we propose a framework for evaluating generalized path queries - gpqs that integrate an algebraic technique for solving path problems with SPARQL graph pattern matching. The integrated algebraic querying technique enables more scalable and efficient processing of gpqs, including the possibility of support for a broader range of path constraints. We present the approach and implementation strategy and compare performance and query expressiveness with a popular graph engine. PY - 2019/// DO - 10.1007/978-3-030-33220-4_8 UR - http://dx.doi.org/10.1007/978-3-030-33220-4_8 ER - TY - JOUR TI - Discussion of "State-of-the-Art Review on Seismic Design of Steel Structures" by Chia-Ming Uang and Michel Bruneau AU - Azizsoltani, Hamoon AU - Ramon Gaxiola-Camacho, J. AU - Villegas-Mercado, Francisco J. AU - Haldar, Achintya T2 - JOURNAL OF STRUCTURAL ENGINEERING DA - 2019/5/1/ PY - 2019/5/1/ DO - 10.1061/(ASCE)ST.1943-541X.0002312 VL - 145 IS - 5 SP - SN - 1943-541X ER - TY - JOUR TI - On the Lambek Calculus with an Exchange Modality AU - Jiang, Jiaming AU - Eades, Harley, III AU - Paiva, Valeria T2 - ELECTRONIC PROCEEDINGS IN THEORETICAL COMPUTER SCIENCE AB - In this paper we introduce Commutative/Non-Commutative Logic (CNC logic) and two categorical models for CNC logic. This work abstracts Benton's Linear/Non-Linear Logic by removing the existence of the exchange structural rule. One should view this logic as composed of two logics; one sitting to the left of the other. On the left, there is intuitionistic linear logic, and on the right is a mixed commutative/non-commutative formalization of the Lambek calculus. Then both of these logics are connected via a pair of monoidal adjoint functors. An exchange modality is then derivable within the logic using the adjunction between both sides. Thus, the adjoint functors allow one to pull the exchange structural rule from the left side to the right side. We then give a categorical model in terms of a monoidal adjunction, and then a concrete model in terms of dialectica Lambek spaces. DA - 2019/// PY - 2019/// DO - 10.4204/EPTCS.292.4 IS - 292 SP - 43-89 SN - 2075-2180 ER - TY - JOUR TI - DeepStealth: Game-Based Learning Stealth Assessment with Deep Neural Networks AU - Min, W. AU - Frankosky, M. AU - Mott, B.W. AU - Rowe, J. AU - Smith, P.A.M. AU - Wiebe, E. AU - Boyer, K. AU - Lester, J. T2 - IEEE Transactions on Learning Technologies AB - A distinctive feature of game-based learning environments is their capacity for enabling stealth assessment. Stealth assessment analyzes a stream of fine-grained student interaction data from a game-based learning environment to dynamically draw inferences about students' competencies through evidence-centered design. In evidence-centered design, evidence models have been traditionally designed using statistical rules authored by domain experts that are encoded using Bayesian networks. This article presents DeepStealth, a deep learning-based stealth assessment framework, that yields significant reductions in the feature engineering labor that has previously been required to create stealth assessments. DeepStealth utilizes end-to-end trainable deep neural network-based evidence models. Using this framework, evidence models are devised using a set of predictive features captured from raw, low-level interaction data to infer evidence for competencies. We investigate two deep learning-based evidence models, long short-term memory networks (LSTMs) and n-gram encoded feedforward neural networks (FFNNs). We compare these models' predictive performance for inferring students' knowledge to linear-chain conditional random fields (CRFs) and naïve Bayes models. We perform feature set-level analyses of game trace logs and external pre-learning measures, and we examine the models' early prediction capacity. The framework is evaluated using data collected from 182 middle school students interacting with a game-based learning environment for middle grade computational thinking. Results indicate that LSTM-based stealth assessors outperform competitive baseline approaches with respect to predictive accuracy and early prediction capacity. We find that LSTMs, FFNNs, and CRFs all benefit from combined feature sets derived from both game trace logs and external pre-learning measures. DA - 2019/// PY - 2019/// DO - 10.1109/tlt.2019.2922356 UR - http://dx.doi.org/10.1109/tlt.2019.2922356 KW - Hidden Markov models KW - Computational modeling KW - Games KW - Predictive models KW - Task analysis KW - Adaptation models KW - Computer science KW - Computational thinking KW - deep learning KW - educational games KW - game-based learning KW - stealth assessment ER - TY - JOUR TI - GraphSSD: Graph Semantics Aware SSD AU - Matam, Kiran Kumar AU - Koo, Gunjae AU - Zha, Haipeng AU - Tseng, Hung-Wei AU - Annavaram, Murali T2 - PROCEEDINGS OF THE 2019 46TH INTERNATIONAL SYMPOSIUM ON COMPUTER ARCHITECTURE (ISCA '19) AB - Graph analytics play a key role in a number of applications such as social networks, drug discovery, and recommendation systems. Given the large size of graphs that may exceed the capacity of the main memory, application performance is bounded by storage access time. Out-of-core graph processing frameworks try to tackle this storage access bottleneck through techniques such as graph sharding, and sub-graph partitioning. Even with these techniques, the need to access data across different graph shards or sub-graphs causes storage systems to become a significant performance hurdle. In this paper, we propose a graph semantic aware solid state drive (SSD) framework, called GraphSSD, which is a full system solution for storing, accessing, and performing graph analytics on SSDs. Rather than treating storage as a collection of blocks, GraphSSD considers graph structure while deciding on graph layout, access, and update mechanisms. GraphSSD replaces the conventional logical to physical page mapping mechanism in an SSD with a novel vertex-to-page mapping scheme and exploits the detailed knowledge of the flash properties to minimize page accesses. GraphSSD also supports efficient graph updates (vertex and edge modifications) by minimizing unnecessary page movement overheads. GraphSSD provides a simple programming interface that enables application developers to access graphs as native data in their applications, thereby simplifying the code development. It also augments the NVMe (non-volatile memory express) interface with a minimal set of changes to map the graph access APIs to appropriate storage access mechanisms. DA - 2019/// PY - 2019/// DO - 10.1145/3307650.3322275 SP - 116-128 KW - SSD KW - Graphs KW - Flash storage ER - TY - JOUR TI - Share, But Be Aware: Security Smells in Python Gists AU - Rahman, Md Rayhanur AU - Rahman, Akond AU - Williams, Laurie T2 - 2019 IEEE INTERNATIONAL CONFERENCE ON SOFTWARE MAINTENANCE AND EVOLUTION (ICSME 2019) AB - Github Gist is a service provided by Github which is used by developers to share code snippets. While sharing, developers may inadvertently introduce security smells in code snippets as well, such as hard-coded passwords. Security smells are recurrent coding patterns that are indicative of security weaknesses, which could potentially lead to security breaches. The goal of this paper is to help software practitioners avoid insecure coding practices through an empirical study of security smells in publicly-available GitHub Gists. Through static analysis, we found 13 types of security smells with 4,403 occurrences in 5,822 publicly-available Python Gists. 1,817 of those Gists, which is around 31%, have at least one security smell including 689 instances of hard-coded secrets. We also found no significance relation between the presence of these security smells and the reputation of the Gist author. Based on our findings, we advocate for increased awareness and rigorous code review efforts related to software security for Github Gists so that propagation of insecure coding practices are mitigated. DA - 2019/// PY - 2019/// DO - 10.1109/ICSME.2019.00087 SP - 536-540 SN - 1063-6773 KW - GitHub KW - Gist KW - Python KW - Security KW - Security Smell KW - Static Analysis KW - Software Security ER - TY - JOUR TI - BARRIERFINDER: Recognizing Ad Hoc Barriers AU - Wang, Tao AU - Yu, Xiao AU - Qiu, Zhengyi AU - Jin, Guoliang AU - Mueller, Frank T2 - 2019 IEEE INTERNATIONAL CONFERENCE ON SOFTWARE MAINTENANCE AND EVOLUTION (ICSME 2019) AB - Ad hoc synchronizations are pervasive in multi-threaded programs. Due to their diversity and complexity, understanding the enforced synchronization relationships of ad hoc synchronizations is challenging but crucial to multi-threaded program development and maintenance. Existing techniques can partially detect primitive ad hoc synchronizations, but they cannot recognize complete implementations or infer the enforced synchronization relationships. In this paper, we propose a framework to automatically identify complex ad hoc synchronizations in full and infer their synchronization relationships for barriers. We instantiate the framework with a tool called BARRIERFINDER, which features various techniques, including program slicing and bounded symbolic execution, to efficiently explore interleaving space of ad hoc synchronizations within multi-threaded programs for their traces. BARRIERFINDER then uses these traces to recognize ad hoc barriers. Our evaluation shows that BARRIERFINDER is both effective and efficient in recognizing ad hoc barriers automatically. DA - 2019/// PY - 2019/// DO - 10.1109/ICSME.2019.00049 SP - 323-327 SN - 1063-6773 KW - ad hoc synchronization KW - barrier KW - symbolic execution KW - interprocedural program slicing KW - Cloud9 KW - LLVM ER - TY - JOUR TI - Towards Data-Driven Programming Problem Generation for Mastery Learning AU - Lytle, Nicholas T2 - ICER '19 - PROCEEDINGS OF THE 2019 ACM CONFERENCE ON INTERNATIONAL COMPUTING EDUCATION RESEARCH AB - Research into intelligent programming systems has lead to numerous means of providing help to students during programming tasks but not in generating the right problem for students to work through. My work will be in developing and analyzing a programming problem generator for mastery learning that will leverage student data and incorporate methods for instructional design for programming tasks to give students the best problem to practice and achieve proficiency DA - 2019/// PY - 2019/// DO - 10.1145/3291279.3339447 SP - 339-340 KW - Mastery Learning KW - Problem Generation KW - Instructional Support ER - TY - JOUR TI - Dynamic Multi-Resolution Data Storage AU - Hu, Yu-Ching AU - Lokhandwala, Murtuza Taher AU - Te, I AU - Tseng, Hung-Wei T2 - MICRO'52: THE 52ND ANNUAL IEEE/ACM INTERNATIONAL SYMPOSIUM ON MICROARCHITECTURE AB - Approximate computing that works on less precise data leads to significant performance gains and energy-cost reductions for compute kernels. However, without leveraging the full-stack design of computer systems, modern computer architectures undermine the potential of approximate computing. DA - 2019/// PY - 2019/// DO - 10.1145/3352460.3358282 SP - 196-210 KW - Approximate Computing KW - Heterogeneous Computer Architectures/Systems KW - In-Storage Processing KW - Intelligent Storage Systems KW - Near-Data Processing ER - TY - JOUR TI - VisibleV8: In-browser Monitoring of JavaScript in the Wild AU - Jueckstock, Jordan AU - Kapravelos, Alexandros T2 - IMC'19: PROCEEDINGS OF THE 2019 ACM INTERNET MEASUREMENT CONFERENCE AB - Modern web security and privacy research depends on accurate measurement of an often evasive and hostile web. No longer just a network of static, hyperlinked documents, the modern web is alive with JavaScript (JS) loaded from third parties of unknown trustworthiness. Dynamic analysis of potentially hostile JS currently presents a cruel dilemma: use heavyweight in-browser solutions that prove impossible to maintain, or use lightweight inline JS solutions that are detectable by evasive JS and which cannot match the scope of coverage provided by in-browser systems. We present VisibleV8, a dynamic analysis framework hosted inside V8, the JS engine of the Chrome browser, that logs native function or property accesses during any JS execution. At less than 600 lines (only 67 of which modify V8's existing behavior), our patches are lightweight and have been maintained from Chrome versions 63 through 72 without difficulty. VV8 consistently outperforms equivalent inline instrumentation, and it intercepts accesses impossible to instrument inline. This comprehensive coverage allows us to isolate and identify 46 JavaScript namespace artifacts used by JS code in the wild to detect automated browsing platforms and to discover that 29% of the Alexa top 50k sites load content which actively probes these artifacts. DA - 2019/// PY - 2019/// DO - 10.1145/3355369.3355599 SP - 393-405 ER - TY - CONF TI - Bounded Verification of Sparse Matrix Computations AU - Dyer, Tristan AU - Altuntas, Alper AU - Baugh, John AB - We show how to model and reason about the structure and behavior of sparse matrices, which are central to many applications in scientific computation. Our approach is state-based, relying on a formalism called Alloy to show that one model is a refinement of another. We present examples of sparse matrix-vector multiplication, transpose, and translation between formats using ELLPACK and compressed sparse row formats to demonstrate the approach. To model matrix computations in a declarative language like Alloy, a new idiom is presented for bounded iteration with incremental updates. Mechanical verification is performed using SAT solvers built into the tool. C2 - 2019/11// C3 - 2019 IEEE/ACM 3rd International Workshop on Software Correctness for HPC Applications (Correctness) DA - 2019/11// DO - 10.1109/correctness49594.2019.00010 SP - 36-43 PB - IEEE/ACM UR - http://dx.doi.org/10.1109/correctness49594.2019.00010 KW - sparse matrix formats KW - state-based formal methods KW - mechanical verification ER - TY - CONF TI - P4PCN: Privacy-Preserving Path Probing for Payment Channel Networks AB - Recent advances in security and cryptography have enabled new paradigms for secure networking in various scenarios. The payment channel network (PCN) is a notable example, which has emerged from the combination of the traditional credit network in economics and the latest blockchain technology. PCN provides a secure and efficient way for conducting payments, by addressing both the intrinsic financial risk of the credit network and the scalability issue of the blockchain. A crucial challenge in PCN is routing, i.e., to find a set of paths that fulfill a payment request. Due to the fully distributed and dynamic nature of PCN, existing routing algorithms utilize active probing to improve routing success probability. However, while the payment itself is privacy-preserving through existing protocols, the probing process can leak sensitive information including the location of the sender or the recipient. In this paper, we address the privacy of the users in the path probing process, filling in the last piece of the privacy puzzle in PCN. We propose P4PCN, a cryptographic protocol for anonymous active probing without knowing the identities or public keys of the intermediate nodes, while hiding the locations of sender and recipient as well as any path-related information. Our protocol is lightweight and scales with the number of hops a probe explores. We confirm its performance via real-world implementation and simulation experiments. C2 - 2019/12// C3 - 2019 IEEE Global Communications Conference (GLOBECOM) DA - 2019/12// DO - 10.1109/globecom38437.2019.9014080 UR - http://dx.doi.org/10.1109/globecom38437.2019.9014080 ER - TY - CONF TI - Load Balancing for Interdependent IoT Microservices AB - Advances in virtualization technologies and edge computing have inspired a new paradigm for Internet-of-Things (IoT) application development. By breaking a monolithic application into loosely coupled microservices, great gain can be achieved in performance, flexibility and robustness. In this paper, we study the important problem of load balancing across IoT microservice instances. A key difficulty in this problem is the interdependencies among microservices: the load on a successor microservice instance directly depends on the load distributed from its predecessor microservice instances. We propose a graph-based model for describing the load dependencies among microservices. Based on the model, we first propose a basic formulation for load balancing, which can be solved optimally in polynomial time. The basic model neglects the quality-of-service (QoS) of the IoT application. We then propose a QoS-aware load balancing model, based on a novel abstraction that captures a realization of the application's internal logic. The QoS-aware load balancing problem is NP-hard. We propose a fully polynomial-time approximation scheme for the QoS-aware problem. We show through simulation experiments that our proposed algorithm achieves enhanced QoS compared to heuristic solutions. C2 - 2019/4// C3 - IEEE INFOCOM 2019 - IEEE Conference on Computer Communications DA - 2019/4// DO - 10.1109/infocom.2019.8737450 UR - http://dx.doi.org/10.1109/infocom.2019.8737450 ER - TY - JOUR TI - Performance Analysis of Microservice Design Patterns AU - Akbulut, Akhan AU - Perros, Harry G. T2 - IEEE INTERNET COMPUTING AB - Microservice-based solutions are currently gaining momentum because they do not have the disadvantages of traditional monolithic architectures. Business interest in microservices is increasing since the microservice architecture brings a lightweight, independent, reuse-oriented, and fast service deployment approach that minimizes infrastructural risks. This approach is at an early stage of its development, and in view of this, it is important to understand the performance of its design patterns. In this article, we obtained performance results related to query response time, efficient hardware usage, hosting costs, and packet-loss rate, for three microservice design patterns practiced in the software industry. DA - 2019/// PY - 2019/// DO - 10.1109/MIC.2019.2951094 VL - 23 IS - 6 SP - 19-27 SN - 1941-0131 KW - Time factors KW - Logic gates KW - Computer architecture KW - Random access memory KW - Measurement KW - Internet KW - Message systems KW - Microservices KW - Design Patterns KW - Microservices Architecture KW - Performance Analysis KW - Software Architecture ER - TY - CONF TI - Performance characterization of a DRAM-NVM hybrid memory architecture for HPC applications using intel optane DC persistent memory modules AU - Patil, Onkar AU - Ionkov, Latchesar AU - Lee, Jason AU - Mueller, Frank AU - Lang, Michael T2 - the International Symposium AB - Non-volatile, byte-addressable memory (NVM) has been introduced by Intel in the form of NVDIMMs named Intel® Optane™ DC PMM. This memory module has the ability to persist the data stored in it without the need for power. This expands the memory hierarchy into a hybrid memory system due the differences in access latency and memory bandwidth from DRAM, which has been the predominant byte-addressable main memory technology. The Optane DC memory modules have up to 8x the capacity of DDR4 DRAM modules which can expand the byte-address space up to 6 TB per node. Many applications can now scale up the their problem size given such a memory system. We evaluate the capabilities of this DRAM-NVM hybrid memory system and its impact on High Performance Computing (HPC) applications. We characterize the Optane DC in comparison to DDR4 DRAM with a STREAM-like custom benchmark and measure the performance for HPC mini-apps like VPIC, SNAP, LULESH and AMG under different configurations of Optane DC PMMs. We find that Optane-only executions are slower in terms of execution time than DRAM-only and Memory-mode executions by a minimum of 2 to 16% for VPIC and maximum of 6x for LULESH. C2 - 2019/// C3 - Proceedings of the International Symposium on Memory Systems - MEMSYS '19 DA - 2019/// DO - 10.1145/3357526.3357541 PB - ACM Press SN - 9781450372060 UR - http://dx.doi.org/10.1145/3357526.3357541 DB - Crossref KW - NVM KW - Persistent Memory KW - Intel Optane DC KW - Memory Allocation KW - Hybrid Memory KW - NUMA KW - SICM ER - TY - CONF TI - Toward a Responsive Interface to Support Novices in Block-Based Programming AU - Rodriguez, F.J. AU - Smith, C.R. AU - Smith, A. AU - Boyer, K.E. AU - Wiebe, E.N. AU - Mott, B.W. AU - Lester, J.C. AB - Block-based programming environments are often used for teaching novice students, including at the undergraduate level. Despite the simplification these tools offer, undergraduates still require additional support, often learning programming by themselves or in large section courses with little instructional support. Programming environments that provide adaptive support hold great promise for meeting this need. This paper presents the early design and piloting of Prime, a learning environment under development that provides scaffolded support for novices in block-based programming. A pilot study with Prime compared two implementations of the functionality for moving between programming subtasks: one with a static “Next Step” button for advancing through subtasks at any time, and one with a responsive button that only appeared once the current subtask was completed. Analysis of students' code quality showed that students in the responsive condition achieved higher quality code in later programming tasks. The results highlight design considerations and opportunities for adaptively supporting novices in block-based programming. C2 - 2019/// C3 - Proceedings - 2019 IEEE Blocks and Beyond Workshop, B and B 2019 DA - 2019/// DO - 10.1109/BB48857.2019.8941205 SP - 9-13 UR - http://www.scopus.com/inward/record.url?eid=2-s2.0-85078105153&partnerID=MN8TOARS ER - TY - CONF TI - Position: IntelliBlox: A Toolkit for Integrating Block-Based Programming into Game-Based Learning Environments AU - Taylor, S. AU - Min, W. AU - Mott, B. AU - Emerson, A. AU - Smith, A. AU - Wiebe, E. AU - Lester, J. AB - Block-based programming languages reduce the need to learn low-level programming syntax while enabling novice learners to focus on computational thinking skills. Game-based learning environments have been shown to create effective and engaging learning experiences for students in a broad range of educational domains. The fusion of block-based programming with game-based learning offers significant potential to motivate learners to develop computational thinking skills. A key challenge educational game developers face in creating rich, interactive learning experiences that integrate computational thinking activities is the lack of an embeddable block-based programming toolkit. Current block-based programming languages, such as Blockly and Scratch, cannot be easily embedded into industry-standard 3D game engines. This paper presents IntelliBlox, a Blockly-inspired toolkit for the Unity cross-platform game engine that enables learners to create block-based programs within immersive game-based learning environments. Our experience using IntelliBlox suggests that it is an effective toolkit for integrating block-based programming challenges into game-based learning environments. C2 - 2019/// C3 - Proceedings - 2019 IEEE Blocks and Beyond Workshop, B and B 2019 DA - 2019/// DO - 10.1109/BB48857.2019.8941222 SP - 55-58 UR - http://www.scopus.com/inward/record.url?eid=2-s2.0-85078082955&partnerID=MN8TOARS ER - TY - CONF TI - Prime: Engaging STEM undergraduates in computer science with intelligent tutoring systems AU - Lester, J.C. AU - Boyer, K.E. AU - Wiebe, E.N. AU - Mott, B. AU - Smith, A. C2 - 2019/// C3 - ASEE Annual Conference and Exposition, Conference Proceedings DA - 2019/// UR - http://www.scopus.com/inward/record.url?eid=2-s2.0-85078800967&partnerID=MN8TOARS ER - TY - CONF TI - PASTEL: Evidence-based learning engineering method to create intelligent online textbook at scale AU - Matsuda, N. AU - Shimmei, M. C2 - 2019/// C3 - CEUR Workshop Proceedings DA - 2019/// VL - 2384 SP - 70-80 UR - http://www.scopus.com/inward/record.url?eid=2-s2.0-85067813785&partnerID=MN8TOARS ER - TY - CONF TI - In-Place Zero-Space Memory Protection for CNN AU - Guan, Hui AU - Ning, Lin AU - Lin, Zhen AU - Shen, Xipeng AU - Zhou, Huiyang AU - Lim, Seung-Hwan A2 - Wallach, H. A2 - Larochelle, H. A2 - Beygelzimer, A. A2 - d'Alché-Buc, F. A2 - Fox, E. A2 - Garnett, R. C2 - 2019/// C3 - Advances in Neural Information Processing Systems Proceedings DA - 2019/// ER - TY - CONF TI - HiWayLib AU - Zheng, Zhen AU - Oh, Chanyoung AU - Zhai, Jidong AU - Shen, Xipeng AU - Yi, Youngmin AU - Chen, Wenguang T2 - the Twenty-Fourth International Conference AB - Pipeline is a parallel computing model underpinning a class of important applications running on CPU-GPU heterogeneous systems. A critical aspect for the efficiency of such applications is the support of communications among pipeline stages that may reside on CPU and different parts of a GPU. Existing libraries of concurrent data structures do not meet the needs, due to the massive parallelism on GPU and the complexities in CPU-GPU memory and connections. This work gives an in-depth study on the communication problem. It identifies three key issues, namely, slow and error-prone detection of the end of pipeline processing, intensive queue contentions on GPU, and cumbersome inter-device data movements. This work offers solutions to each of the issues, and integrates all together to form a unified library named HiWayLib. Experiments show that HiWayLib significantly boosts the efficiency of pipeline communications in CPU-GPU heterogeneous applications. For real-world applications, HiWayLib produces 1.22~2.13× speedups over the state-of-art implementations with little extra programming effort required. C2 - 2019/// C3 - Proceedings of the Twenty-Fourth International Conference on Architectural Support for Programming Languages and Operating Systems - ASPLOS '19 DA - 2019/// DO - 10.1145/3297858.3304032 PB - ACM Press SN - 9781450362405 UR - http://dx.doi.org/10.1145/3297858.3304032 DB - Crossref KW - pipeline communication KW - CPU-GPU system KW - contention relief KW - end detection KW - lazy copy ER - TY - CONF TI - Wootz: a compiler-based framework for fast CNN pruning via composability AU - Guan, Hui AU - Shen, Xipeng AU - Lim, Seung-Hwan T2 - the 40th ACM SIGPLAN Conference AB - Convolutional Neural Networks (CNN) are widely used for Deep Learning tasks. CNN pruning is an important method to adapt a large CNN model trained on general datasets to fit a more specialized task or a smaller device. The key challenge is on deciding which filters to remove in order to maximize the quality of the pruned networks while satisfying the constraints. It is time-consuming due to the enormous configuration space and the slowness of CNN training. C2 - 2019/// C3 - Proceedings of the 40th ACM SIGPLAN Conference on Programming Language Design and Implementation - PLDI 2019 DA - 2019/// DO - 10.1145/3314221.3314652 PB - ACM Press SN - 9781450367127 UR - http://dx.doi.org/10.1145/3314221.3314652 DB - Crossref KW - CNN KW - network pruning KW - compiler KW - composability ER - TY - CONF TI - IA-graph based inter-app conflicts detection in open IoT systems AU - Li, Xinyi AU - Zhang, Lei AU - Shen, Xipeng T2 - the 20th ACM SIGPLAN/SIGBED International Conference AB - This paper tackles the problem of detecting potential conflicts among independently developed apps that are to be installed into an open Internet of Things (IoT) environment. It provides a new set of definitions and categorizations of the conflicts to more precisely characterize the nature of the problem, and employs a graph representation (named IA Graph) for formally representing IoT controls and inter-app interplays. It provides an efficient conflicts detection algorithm implemented on a SmartThings compiler and shows significantly improved efficacy over prior solutions. C2 - 2019/// C3 - Proceedings of the 20th ACM SIGPLAN/SIGBED International Conference on Languages, Compilers, and Tools for Embedded Systems - LCTES 2019 DA - 2019/// DO - 10.1145/3316482.3326350 PB - ACM Press SN - 9781450367240 UR - http://dx.doi.org/10.1145/3316482.3326350 DB - Crossref ER - TY - CONF TI - Deep reuse AU - Ning, Lin AU - Shen, Xipeng T2 - the ACM International Conference AB - This paper presents deep reuse, a method for speeding up CNN inferences by detecting and exploiting deep reusable computations on the fly. It empirically reveals the massive similarities among neuron vectors in activation maps, both within CNN inferences on an input and across inputs. It gives an in-depth study on how to effectively turn the similarities into beneficial computation reuse to speed up CNN inferences. The investigation covers various factors, ranging from the clustering methods for similarity detection, to clustering scopes, similarity metrics, and neuron vector granularities. The insights help create deep reuse. As an on-line method, deep reuse is easy to apply, and adapts to each CNN (compressed or not) and its input. Using no special hardware support or CNN model changes, this method speeds up inferences by 1.77--2X (up to 4.3X layer-wise) on the fly with virtually no (