lines of code

14,000,000 Leading Edge Experts on the ideXlab platform

Scan Science and Technology

Contact Leading Edge Experts & Companies

Scan Science and Technology

Contact Leading Edge Experts & Companies

The Experts below are selected from a list of 11091 Experts worldwide ranked by ideXlab platform

Ben Hardekopf - One of the best experts on this subject based on the ideXlab platform.

  • Flow-sensitive pointer analysis for millions of lines of code
    International Symposium on Code Generation and Optimization (CGO 2011), 2011
    Co-Authors: Ben Hardekopf
    Abstract:

    Many program analyses benefit, both in precision and performance, from precise pointer analysis. An important dimension of pointer analysis precision is flow-sensitivity, which has been shown to be useful for applications such as program verification and static analysis of binary code, among many others. However, flow-sensitive pointer analysis has historically been unable to scale to programs with millions of lines of code. We present a new flow-sensitive pointer analysis algorithm that is an order of magnitude faster than the existing state of the art, enabling for the first time flow-sensitive pointer analysis for programs with millions of lines of code. Our flow-sensitive algorithm is based on a sparse representation of program code created by a staged, flow-insensitive pointer analysis. We explain how this new algorithm is a member of a new family of pointer analysis algorithms that deserves further study.

  • CGO - Flow-sensitive pointer analysis for millions of lines of code
    International Symposium on Code Generation and Optimization (CGO 2011), 2011
    Co-Authors: Ben Hardekopf
    Abstract:

    Many program analyses benefit, both in precision and performance, from precise pointer analysis. An important dimension of pointer analysis precision is flow-sensitivity, which has been shown to be useful for applications such as program verification and static analysis of binary code, among many others. However, flow-sensitive pointer analysis has historically been unable to scale to programs with millions of lines of code. We present a new flow-sensitive pointer analysis algorithm that is an order of magnitude faster than the existing state of the art, enabling for the first time flow-sensitive pointer analysis for programs with millions of lines of code. Our flow-sensitive algorithm is based on a sparse representation of program code created by a staged, flow-insensitive pointer analysis. We explain how this new algorithm is a member of a new family of pointer analysis algorithms that deserves further study.

Carrick Detweiler - One of the best experts on this subject based on the ideXlab platform.

  • IROS - Dimensional inconsistencies in code and ROS messages: A study of 5.9M lines of code
    2017 IEEE RSJ International Conference on Intelligent Robots and Systems (IROS), 2017
    Co-Authors: Sebastian Elbaum, Carrick Detweiler
    Abstract:

    This work presents a study of robot software using the Robot Operating System (ROS), focusing on detecting inconsistencies in physical unit manipulation. We discuss how dimensional analysis, the rules governing how physical quantities are combined, can be used to detect inconsistencies in robot software that are otherwise difficult to detect. Using a corpus of ROS software with 5.9M lines of code, we measure the frequency of these dimensional inconsistencies and find them in 6% (211 / 3,484) of repositories that use ROS. We find that the inconsistency type ‘Assigning multiple units to a variable’ accounts for 75% of inconsistencies in ROS code. We identify the ROS classes and physical units most likely to be involved with dimensional inconsistencies, and find that the ROS Message type geometry_msgs::Twist is involved in over half of all inconsistencies and is used by developers in ways contrary to Twist's intent. We further analyze the frequency of physical units used in ROS programs as a proxy for assessing how developers use ROS, and discuss the practical implications of our results including how to detect and avoid these inconsistencies.

  • Dimensional inconsistencies in code and ROS messages: A study of 5.9M lines of code
    2017 IEEE RSJ International Conference on Intelligent Robots and Systems (IROS), 2017
    Co-Authors: Sebastian Elbaum, Carrick Detweiler
    Abstract:

    This work presents a study of robot software using the Robot Operating System (ROS), focusing on detecting inconsistencies in physical unit manipulation. We discuss how dimensional analysis, the rules governing how physical quantities are combined, can be used to detect inconsistencies in robot software that are otherwise difficult to detect. Using a corpus of ROS software with 5.9M lines of code, we measure the frequency of these dimensional inconsistencies and find them in 6% (211 / 3,484) of repositories that use ROS. We find that the inconsistency type `Assigning multiple units to a variable' accounts for 75% of inconsistencies in ROS code. We identify the ROS classes and physical units most likely to be involved with dimensional inconsistencies, and find that the ROS Message type geometry_msgs::Twist is involved in over half of all inconsistencies and is used by developers in ways contrary to Twist's intent. We further analyze the frequency of physical units used in ROS programs as a proxy for assessing how developers use ROS, and discuss the practical implications of our results including how to detect and avoid these inconsistencies.

Sorin Lerner - One of the best experts on this subject based on the ideXlab platform.

  • relay static race detection on millions of lines of code
    Foundations of Software Engineering, 2007
    Co-Authors: Jan W Voung, Ranjit Jhala, Sorin Lerner
    Abstract:

    Data races occur when multiple threads are about to access the same piece of memory, and at least one of those accesses is a write. Such races can lead to hard-to-reproduce bugs that are time consuming to debug and fix. We present R ELAY , a static and scalable race detection analysis in which unsoundness is modularized to a few sources. We describe the analysis and results from our experiments using R ELAY to find data races in the Linux kernel, which includes about 4.5 million lines of code.

  • ESEC/SIGSofT FSE - RELAY: static race detection on millions of lines of code
    Proceedings of the the 6th joint meeting of the European software engineering conference and the ACM SIGSOFT symposium on The foundations of software , 2007
    Co-Authors: Jan W Voung, Ranjit Jhala, Sorin Lerner
    Abstract:

    Data races occur when multiple threads are about to access the same piece of memory, and at least one of those accesses is a write. Such races can lead to hard-to-reproduce bugs that are time consuming to debug and fix. We present R ELAY , a static and scalable race detection analysis in which unsoundness is modularized to a few sources. We describe the analysis and results from our experiments using R ELAY to find data races in the Linux kernel, which includes about 4.5 million lines of code.

Sebastian Elbaum - One of the best experts on this subject based on the ideXlab platform.

  • IROS - Dimensional inconsistencies in code and ROS messages: A study of 5.9M lines of code
    2017 IEEE RSJ International Conference on Intelligent Robots and Systems (IROS), 2017
    Co-Authors: Sebastian Elbaum, Carrick Detweiler
    Abstract:

    This work presents a study of robot software using the Robot Operating System (ROS), focusing on detecting inconsistencies in physical unit manipulation. We discuss how dimensional analysis, the rules governing how physical quantities are combined, can be used to detect inconsistencies in robot software that are otherwise difficult to detect. Using a corpus of ROS software with 5.9M lines of code, we measure the frequency of these dimensional inconsistencies and find them in 6% (211 / 3,484) of repositories that use ROS. We find that the inconsistency type ‘Assigning multiple units to a variable’ accounts for 75% of inconsistencies in ROS code. We identify the ROS classes and physical units most likely to be involved with dimensional inconsistencies, and find that the ROS Message type geometry_msgs::Twist is involved in over half of all inconsistencies and is used by developers in ways contrary to Twist's intent. We further analyze the frequency of physical units used in ROS programs as a proxy for assessing how developers use ROS, and discuss the practical implications of our results including how to detect and avoid these inconsistencies.

  • Dimensional inconsistencies in code and ROS messages: A study of 5.9M lines of code
    2017 IEEE RSJ International Conference on Intelligent Robots and Systems (IROS), 2017
    Co-Authors: Sebastian Elbaum, Carrick Detweiler
    Abstract:

    This work presents a study of robot software using the Robot Operating System (ROS), focusing on detecting inconsistencies in physical unit manipulation. We discuss how dimensional analysis, the rules governing how physical quantities are combined, can be used to detect inconsistencies in robot software that are otherwise difficult to detect. Using a corpus of ROS software with 5.9M lines of code, we measure the frequency of these dimensional inconsistencies and find them in 6% (211 / 3,484) of repositories that use ROS. We find that the inconsistency type `Assigning multiple units to a variable' accounts for 75% of inconsistencies in ROS code. We identify the ROS classes and physical units most likely to be involved with dimensional inconsistencies, and find that the ROS Message type geometry_msgs::Twist is involved in over half of all inconsistencies and is used by developers in ways contrary to Twist's intent. We further analyze the frequency of physical units used in ROS programs as a proxy for assessing how developers use ROS, and discuss the practical implications of our results including how to detect and avoid these inconsistencies.

Eamonn Keogh - One of the best experts on this subject based on the ideXlab platform.

  • The Swiss army knife of time series data mining: ten useful things you can do with the matrix profile and ten lines of code
    Data Mining and Knowledge Discovery, 2020
    Co-Authors: Shaghayegh Gharghabi, Diego Furtado Silva, Nader Shakibay Senobari, Abdulaziz Almaslukh, Kaveh Kamgar, Zachary Zimmerman, Gareth Funning, Abdullah Mueen, Eamonn Keogh
    Abstract:

    The recently introduced data structure, the Matrix Profile, annotates a time series by recording the location of and distance to the nearest neighbor of every subsequence. This information trivially provides answers to queries for both time series motifs and time series discords , perhaps two of the most frequently used primitives in time series data mining. One attractive feature of the Matrix Profile is that it completely divorces the high-level details of the analytics performed, from the computational “heavy lifting.” The Matrix Profile can be computed using the appropriate computational paradigm for the task at hand: CPU, GPU, FPGA, distributed computing, anytime computation, incremental computation, and so forth. However, all the details of such computation can be hidden from the analyst who only needs to think about her analytical need. In this work, we expand on this philosophy and ask the following question: If we assume that we get the Matrix Profile for free, what interesting analytics can we do, writing at most ten lines of code? As we will show, the answer is surprisingly large and diverse. Our aim here is not to establish or compete with state-of-the-art results, but merely to show that we can both reproduce the results of many existing algorithms and find novel regularities in time series data collections with very little effort.