218 research outputs found

    An Analysis of the Search Spaces for Generate and Validate Patch Generation Systems

    Get PDF
    We present the first systematic analysis of the characteristics of patch search spaces for automatic patch generation systems. We analyze the search spaces of two current state-of-the-art systems, SPR and Prophet, with 16 different search space configurations. Our results are derived from an analysis of 1104 different search spaces and 768 patch generation executions. Together these experiments consumed over 9000 hours of CPU time on Amazon EC2. The analysis shows that 1) correct patches are sparse in the search spaces (typically at most one correct patch per search space per defect), 2) incorrect patches that nevertheless pass all of the test cases in the validation test suite are typically orders of magnitude more abundant, and 3) leveraging information other than the test suite is therefore critical for enabling the system to successfully isolate correct patches. We also characterize a key tradeoff in the structure of the search spaces. Larger and richer search spaces that contain correct patches for more defects can actually cause systems to find fewer, not more, correct patches. We identify two reasons for this phenomenon: 1) increased validation times because of the presence of more candidate patches and 2) more incorrect patches that pass the test suite and block the discovery of correct patches. These fundamental properties, which are all characterized for the first time in this paper, help explain why past systems often fail to generate correct patches and help identify challenges, opportunities, and productive future directions for the field

    An Analysis of the Search Spaces for Generate and Validate Patch Generation Systems

    Get PDF
    We present the first systematic analysis of the characteristics of patch search spaces for automatic patch generation systems. We analyze the search spaces of two current state-of- the-art systems, SPR and Prophet, with 16 different search space configurations. Our results are derived from an analysis of 1104 different search spaces and 768 patch generation executions. Together these experiments consumed over 9000 hours of CPU time on Amazon EC2.The analysis shows that 1) correct patches are sparse in the search spaces (typically at most one correct patch per search space per defect), 2) incorrect patches that nevertheless pass all of the test cases in the validation test suite are typically orders of magnitude more abundant, and 3) leveraging information other than the test suite is therefore critical for enabling the system to successfully isolate correct patches.We also characterize a key tradeoff in the structure of the search spaces. Larger and richer search spaces that contain correct patches for more defects can actually cause systems to find fewer, not more, correct patches. We identify two reasons for this phenomenon: 1) increased validation times because of the presence of more candidate patches and 2) more incorrect patches that pass the test suite and block the discovery of correct patches. These fundamental properties, which are all characterized for the first time in this paper, help explain why past systems often fail to generate correct patches and help identify challenges, opportunities, and productive future directions for the field

    Proving acceptability properties of relaxed nondeterministic approximate programs

    Get PDF
    Approximate program transformations such as skipping tasks [29, 30], loop perforation [21, 22, 35], reduction sampling [38], multiple selectable implementations [3, 4, 16, 38], dynamic knobs [16], synchronization elimination [20, 32], approximate function memoization [11],and approximate data types [34] produce programs that can execute at a variety of points in an underlying performance versus accuracy tradeoff space. These transformed programs have the ability to trade accuracy of their results for increased performance by dynamically and nondeterministically modifying variables that control their execution. We call such transformed programs relaxed programs because they have been extended with additional nondeterminism to relax their semantics and enable greater flexibility in their execution. We present language constructs for developing and specifying relaxed programs. We also present proof rules for reasoning about properties [28] which the program must satisfy to be acceptable. Our proof rules work with two kinds of acceptability properties: acceptability properties [28], which characterize desired relationships between the values of variables in the original and relaxed programs, and unary acceptability properties, which involve values only from a single (original or relaxed) program. The proof rules support a staged reasoning approach in which the majority of the reasoning effort works with the original program. Exploiting the common structure that the original and relaxed programs share, relational reasoning transfers reasoning effort from the original program to prove properties of the relaxed program. We have formalized the dynamic semantics of our target programming language and the proof rules in Coq and verified that the proof rules are sound with respect to the dynamic semantics. Our Coq implementation enables developers to obtain fully machine-checked verifications of their relaxed programs.National Science Foundation (U.S.). (Grant number CCF-0811397)National Science Foundation (U.S.). (Grant number CCF-0905244)National Science Foundation (U.S.). (Grant number CCF-1036241)National Science Foundation (U.S.). (Grant number IIS-0835652)United States. Defense Advanced Research Projects Agency (Grant number FA8650-11-C-7192)United States. Defense Advanced Research Projects Agency (Grant number FA8750-12-2-0110)United States. Dept. of Energy. (Grant Number DE-SC0005288

    The Role of Industry in Supporting Education in Environmentally Responsible Engineering

    Get PDF
    Achievement of a sustainable future implies a collaborative effort between a variety of stakeholders including industry, government, and academia. We are traveling in unfamiliar waters where the course is not always clear and the goals are sometimes daunting. To develop the environmental wisdom we need to help us know the “right answers,” we must bring together the knowledge we get from our academic pursuits with the experience we obtain through trial and error. Bringing together the academic world and the business world not only helps us solve the immediate engineering need, it more importantly builds a partnership that will produce greater lasting value through students (future employees) who are attuned to the market demands for improved environmental performance in both business practices and products. This paper describes a new collaborative effort between Steelcase, Inc. and Kettering University that will prepare future engineers, managers, scientists, and policy-makers for a workplace that places greater emphasis on conducting business within a framework of environmental and social responsibility. Since its founding in 1912, Steelcase, Inc. has approached its business from a “value driven” perspective, focused on the underlying premise of how a responsible business should conduct itself. As such, Steelcase, Inc. has been a leading company in promoting sustainable business practices both within the corporation and among a variety of other constituents. Kettering University (formerly GMI Engineering and Management Institute) has been preparing engineers and managers for the workforce since 1919, emphasizing the importance of leadership, integrity, and practical experience as the keys to success in the workplace. Together these organizations, along with other partners, are committed to demonstrating the practice need for enhanced education in issues of sustainability and social responsibility

    Verifying Quantitative Reliability of Programs That Execute on Unreliable Hardware

    Get PDF
    Emerging high-performance architectures are anticipated to contain unreliable components that may exhibit soft errors, which silently corrupt the results of computations. Full detection and recovery from soft errors is challenging, expensive, and, for some applications, unnecessary. For example, approximate computing applications (such as multimedia processing, machine learning, and big data analytics) can often naturally tolerate soft errors. In this paper we present Rely, a programming language that enables developers to reason about the quantitative reliability of an application -- namely, the probability that it produces the correct result when executed on unreliable hardware. Rely allows developers to specify the reliability requirements for each value that a function produces. We present a static quantitative reliability analysis that verifies quantitative requirements on the reliability of an application, enabling a developer to perform sound and verified reliability engineering. The analysis takes a Rely program with a reliability specification and a hardware specification, that characterizes the reliability of the underlying hardware components, and verifies that the program satisfies its reliability specification when executed on the underlying unreliable hardware platform. We demonstrate the application of quantitative reliability analysis on six computations implemented in Rely.This research was supported in part by the National Science Foundation (Grants CCF-0905244, CCF-1036241, CCF-1138967, CCF-1138967, and IIS-0835652), the United States Department of Energy (Grant DE-SC0008923), and DARPA (Grants FA8650-11-C-7192, FA8750-12-2-0110)

    Extraluminal Colonic Carcinoma Invading into Kidney: A Case Report and Review of the Literature

    Get PDF
    Renal metastasis from primary colon cancer is very rare, comprising less than 3% of secondary renal neoplasms. There are just 11 cases reported in the medical literature of colonic adenocarcinoma metastatic to the kidney. Of these cases, none occurred via direct invasion. We report a unique case of a 51-year-old female with extraluminal colonic adenocarcinoma which directly invaded into the kidney. Additionally, we investigate the causal relationship between the site of invasion and a previous stab injury by reviewing the role of the peritoneum and Gerota's fascia in preventing the spread of metastatic cancer into the perirenal space. Due to the rarity of this event, we present this case including a review of the existing literature relative to the diagnosis and treatment

    Chisel: Reliability- and Accuracy-Aware Optimization of Approximate Computational Kernels

    Get PDF
    The accuracy of an approximate computation is the distance between the result that the computation produces and the corresponding fully accurate result. The reliability of the computation is the probability that it will produce an acceptably accurate result. Emerging approximate hardware platforms provide approximate operations that, in return for reduced energy consumption and/or increased performance, exhibit reduced reliability and/or accuracy. We present Chisel, a system for reliability- and accuracy-aware optimization of approximate computational kernels that run on approximate hardware platforms. Given a combined reliability and/or accuracy specification, Chisel automatically selects approximate kernel operations to synthesize an approximate computation that minimizes energy consumption while satisfying its reliability and accuracy specification. We evaluate Chisel on five applications from the image processing, scientific computing, and financial analysis domains. The experimental results show that our implemented optimization algorithm enables Chisel to optimize our set of benchmark kernels to obtain energy savings from 8.7% to 19.8% compared to the fully reliable kernel implementations while preserving important reliability guarantees.National Science Foundation (U.S.) (Grant CCF-1036241)National Science Foundation (U.S.) (Grant CCF-1138967)National Science Foundation (U.S.) (Grant IIS-0835652)United States. Dept. of Energy (Grant DE-SC0008923)United States. Defense Advanced Research Projects Agency (Grant FA8650-11-C-7192)United States. Defense Advanced Research Projects Agency (Grant FA8750-12-2-0110)United States. Defense Advanced Research Projects Agency (Grant FA-8750-14-2-0004

    TFE3 Translocation-Associated Renal Cell Carcinoma Presenting as Avascular Necrosis of the Femur in a 19-Year-Old Patient: Case Report and Review of the Literature

    Get PDF
    In the United States, renal cell carcinoma (RCC) accounts for approximately 3% of adult malignancies and 90–95% of all neoplasms arising from the kidney. According to the National Cancer Institute, 58 240 new cases and 13 040 deaths from renal cancer will occur in 2010. RCC usually occurs in older adults between the ages of 50 and 70 and is rare in young adults and children. We describe a case of a TFE3 translocation-associated RCC in a 19-year-old patient presenting as avascular necrosis of the femur. Due to the rarity of this malignancy, we present this case including a review of the existing literature relative to diagnosis and treatment
    corecore