lnu.sePublikasjoner
Endre søk
Begrens søket
1 - 14 of 14
RefereraExporteraLink til resultatlisten
Permanent link
Referera
Referensformat
  • apa
  • harvard1
  • ieee
  • modern-language-association-8th-edition
  • vancouver
  • Annet format
Fler format
Språk
  • de-DE
  • en-GB
  • en-US
  • fi-FI
  • nn-NO
  • nn-NB
  • sv-SE
  • Annet språk
Fler språk
Utmatningsformat
  • html
  • text
  • asciidoc
  • rtf
Treff pr side
  • 5
  • 10
  • 20
  • 50
  • 100
  • 250
Sortering
  • Standard (Relevans)
  • Forfatter A-Ø
  • Forfatter Ø-A
  • Tittel A-Ø
  • Tittel Ø-A
  • Type publikasjon A-Ø
  • Type publikasjon Ø-A
  • Eldste først
  • Nyeste først
  • Skapad (Eldste først)
  • Skapad (Nyeste først)
  • Senast uppdaterad (Eldste først)
  • Senast uppdaterad (Nyeste først)
  • Disputationsdatum (tidligste først)
  • Disputationsdatum (siste først)
  • Standard (Relevans)
  • Forfatter A-Ø
  • Forfatter Ø-A
  • Tittel A-Ø
  • Tittel Ø-A
  • Type publikasjon A-Ø
  • Type publikasjon Ø-A
  • Eldste først
  • Nyeste først
  • Skapad (Eldste først)
  • Skapad (Nyeste først)
  • Senast uppdaterad (Eldste først)
  • Senast uppdaterad (Nyeste først)
  • Disputationsdatum (tidligste først)
  • Disputationsdatum (siste først)
Merk
Maxantalet träffar du kan exportera från sökgränssnittet är 250. Vid större uttag använd dig av utsökningar.
  • 1.
    Gutzmann, Tobias
    Linnéuniversitetet, Fakulteten för teknik (FTK), Institutionen för datavetenskap (DV).
    Benchmarking Points-to Analysis2013Doktoravhandling, monografi (Annet vitenskapelig)
    Abstract [en]

    Points-to analysis is a static program analysis that, simply put, computes which objects created at certain points of a given program might show up at which other points of the same program. In particular, it computes possible targets of a call and possible objects referenced by a field. Such information is essential input to many client applications in optimizing compilers and software engineering tools.

    Comparing experimental results with respect to accuracy and performance is required in order to distinguish the promising from the less promising approaches to points-to analysis. Unfortunately, comparing the accuracy of two different points-to analysis implementations is difficult, as there are many pitfalls in the details. In particular, there are no standardized means to perform such a comparison, i.e, no benchmark suite - a set of programs with well-defined rules of how to compare different points-to analysis results - exists. Therefore, different researchers use their own means to evaluate their approaches to points-to analysis. To complicate matters, even the same researchers do not stick to the same evaluation methods, which often makes it impossible to take two research publications and reliably tell which one describes the more accurate points-to analysis.

    In this thesis, we define a methodology on how to benchmark points-to analysis. We create a benchmark suite, compare three different points-to analysis implementations with each other based on this methodology, and explain differences in analysis accuracy.

    We also argue for the need of a Gold Standard, i.e., a set of benchmark programs with exact analysis results. Such a Gold Standard is often required to compare points-to analysis results, and it also allows to assess the exact accuracy of points-to analysis results. Since such a Gold Standard cannot be computed automatically, it needs to be created semi-automatically by the research community. We propose a process for creating a Gold Standard based on under-approximating it through optimistic (dynamic) analysis and over-approximating it through conservative (static) analysis. With the help of improved static and dynamic points-to analysis and expert knowledge about benchmark programs, we present a first attempt towards a Gold Standard.

    We also provide a Web-based benchmarking platform, through which researchers can compare their own experimental results with those of other researchers, and can contribute towards the creation of a Gold Standard.

  • 2.
    Gutzmann, Tobias
    Linnéuniversitetet, Fakultetsnämnden för naturvetenskap och teknik, Institutionen för datavetenskap, fysik och matematik, DFM.
    Towards a Gold Standard for Points-to Analysis2010Licentiatavhandling, monografi (Annet vitenskapelig)
    Abstract [en]

    Points-to analysis is a static program analysis that computes reference informationfor a given input program. It serves as input to many client applicationsin optimizing compilers and software engineering tools. Unfortunately, the Gold Standard – i.e., the exact reference information for a given program– is impossible to compute automatically for all but trivial cases, and thus, little can been said about the accuracy of points-to analysis.

    This thesis aims at paving the way towards a Gold Standard for points-to analysis. For this, we discuss theoretical implications and practical challenges that occur when comparing results obtained by different points-to analyses. We also show ways to improve points-to analysis by different means, e.g., combining different analysis implementations, and a novel approach to path sensitivity.

    We support our theories with a number of experiments.

  • 3.
    Gutzmann, Tobias
    et al.
    Växjö universitet, Fakulteten för matematik/naturvetenskap/teknik, Matematiska och systemtekniska institutionen.
    Khairova, Antonina
    Växjö universitet, Fakulteten för matematik/naturvetenskap/teknik, Matematiska och systemtekniska institutionen.
    Lundberg, Jonas
    Växjö universitet, Fakulteten för matematik/naturvetenskap/teknik, Matematiska och systemtekniska institutionen.
    Löwe, Welf
    Växjö universitet, Fakulteten för matematik/naturvetenskap/teknik, Matematiska och systemtekniska institutionen.
    Towards Comparing and Combining Points-to Analyses2009Inngår i: Ninth IEEE International Working Conference on Source Code Analysis and Manipulation (SCAM 2009), IEEE, 2009, s. 45-54Konferansepaper (Fagfellevurdert)
    Abstract [en]

    Points-to information is the basis for many analyses and transformations, e.g., for program understanding and optimization. To justify new analysis techniques, they need to be compared to the state of the art regarding their accuracy and efficiency. Usually, benchmark suites are used to experimentally compare the different techniques. In this paper, we show that the accuracy of two analyses can only be compared in restricted cases, as there is no benchmark suite with exact Points-to information, no Gold Standard, and it is hard to construct one for realistic programs. We discuss the challenges and possible traps that may arise when comparing different Points-to analyses directly with each other, and with over- and under-approximations of a Gold Standard. Moreover, we discuss how different Points-to analyses can be combined to a more precise one. We complement the paper with experiments comparing and combining different static and dynamic Points-to analyses.

  • 4.
    Gutzmann, Tobias
    et al.
    Linnéuniversitetet, Fakultetsnämnden för naturvetenskap och teknik, Institutionen för datavetenskap, fysik och matematik, DFM.
    Lundberg, Jonas
    Linnéuniversitetet, Fakultetsnämnden för naturvetenskap och teknik, Institutionen för datavetenskap, fysik och matematik, DFM.
    Löwe, Welf
    Linnéuniversitetet, Fakultetsnämnden för naturvetenskap och teknik, Institutionen för datavetenskap, fysik och matematik, DFM.
    Collections Frameworks for Points-to Analysis2012Inngår i: IEEE 12th International Working Conference on Source Code Analysis and Manipulation (SCAM) 2012, IEEE, 2012, s. 4-13Konferansepaper (Fagfellevurdert)
    Abstract [en]

    Points-to information is the basis for many analysesand transformations, e.g., for program understanding andoptimization. Collections frameworks are part of most modern programming languages’ infrastructures and used by many applications. The richness of features and the inherent structure of collection classes affect both performance and precision of points-to analysis negatively.

    In this paper, we discuss how to replace original collections frameworks with versions specialized for points-to analysis. We implement such a replacement for the Java Collections Framework and support its benefits for points-to analysis by applying it to three different points-to analysis implementations. In experiments, context-sensitive points-to analyses require, on average, 16-24% less time while at the same time being more precise. Context-insensitive analysis in conjunction with inlining also benefits in both precision and analysis cost.

  • 5.
    Gutzmann, Tobias
    et al.
    Linnéuniversitetet, Fakultetsnämnden för naturvetenskap och teknik, Institutionen för datavetenskap, fysik och matematik, DFM.
    Lundberg, Jonas
    Linnéuniversitetet, Fakultetsnämnden för naturvetenskap och teknik, Institutionen för datavetenskap, fysik och matematik, DFM.
    Löwe, Welf
    Linnéuniversitetet, Fakultetsnämnden för naturvetenskap och teknik, Institutionen för datavetenskap, fysik och matematik, DFM.
    Feedback-driven Points-to Analysis2010Rapport (Annet vitenskapelig)
    Abstract [en]

    Points-to analysis is a static program analysis that extracts reference information from agiven input program. Its accuracy is limited due to abstractions that any such analysisneeds to make. Further, the exact analysis results are unknown, i.e., no so-called GoldStandard exists for points-to analysis. This hinders the assessment of new ideas to pointstoanalysis, as results can be compared only relative to results obtained by other inaccurateanalyses.

    In this paper, we present feedback-driven points-to analysis. We suggest performing(any classical) points-to analysis with the points-to results at certain programpoints guarded by a-priori upper bounds. Such upper bounds can come from other pointstoanalyses – this is of interest when different approaches are not strictly ordered in termsof accuracy – and from human insight, i.e., manual proofs that certain points-to relationsare infeasible for every program run. This gives us a tool at hand to compute very accuratepoints-to analysis and, ultimately, to manually create a Gold Standard.

  • 6.
    Gutzmann, Tobias
    et al.
    Linnéuniversitetet, Fakultetsnämnden för naturvetenskap och teknik, Institutionen för datavetenskap, fysik och matematik, DFM.
    Lundberg, Jonas
    Linnéuniversitetet, Fakultetsnämnden för naturvetenskap och teknik, Institutionen för datavetenskap, fysik och matematik, DFM.
    Löwe, Welf
    Linnéuniversitetet, Fakultetsnämnden för naturvetenskap och teknik, Institutionen för datavetenskap, fysik och matematik, DFM.
    Feedback-driven Points-to Analysis2011Inngår i: 26th Symposium On Applied Computing (SAC 2011), TaiChung, March 21-24, 2011, 2011Konferansepaper (Fagfellevurdert)
    Abstract [en]

    In this paper, we present feedback-driven points-to analysis where any classical points-to analysis has its points-to results at certain program points guarded by a-priori upper bounds. Such upper bounds can come from other points-to analyses – this is of interest when different approaches are not strictlyordered in terms of accuracy – and from human insight, i.e., manual proofs that certain points-to relations are infeasible for every program run.

  • 7.
    Gutzmann, Tobias
    et al.
    Växjö universitet, Fakulteten för matematik/naturvetenskap/teknik, Matematiska och systemtekniska institutionen. Datalogi.
    Lundberg, Jonas
    Växjö universitet, Fakulteten för matematik/naturvetenskap/teknik, Matematiska och systemtekniska institutionen. Datalogi.
    Löwe, Welf
    Växjö universitet, Fakulteten för matematik/naturvetenskap/teknik, Matematiska och systemtekniska institutionen. Datalogi.
    Towards Path-Sensitive Points-to Analysis2007Inngår i: Seventh IEEE International Working Conference on Source Code Analysis and Manipulation (SCAM), IEEE Computer Society, Loas Alamitos, CA, USA , 2007, s. 59-68Konferansepaper (Fagfellevurdert)
    Abstract [en]

    Points-to analysis is a static program analysis aiming at analyzing the reference structure of dynamically allocated objects at compile-time. It constitutes the basis for many analyses and optimizations in software engineering and compiler construction. Sparse program representations, such as Whole Program Points-to Graph (WPP2G) and Points-to SSA (P2SSA), represent only dataflow that is directly relevant for points-to analysis. They have proved to be practical in terms of analysis precision and efficiency. However, intra-procedural control flow information is removed from these representations, which sacrifices analysis precision to improve analysis performance.

    We show an approach for keeping control flow related information even in sparse program representations by representing control flow effects as operations on the data transferred, i.e., as dataflow information. These operations affect distinct paths of the program differently, thus yielding a certain degree of pathsensitivity. Our approach works with both WPP2G and P2SSA representations.

    We apply the approach to P2SSA-based and flow-sensitive points-to analysis and evaluate a context-insensitive and a context-sensitive variant. We assess our approach using abstract precision metrics. Moreover, we investigate the precision improvements and performance penalties when used as an input to three source-code-level analyses: dead code, cast safety, and null pointer analysis.

  • 8.
    Gutzmann, Tobias
    et al.
    Linnéuniversitetet, Fakultetsnämnden för naturvetenskap och teknik, Institutionen för datavetenskap, fysik och matematik, DFM.
    Löwe, Welf
    Linnéuniversitetet, Fakultetsnämnden för naturvetenskap och teknik, Institutionen för datavetenskap, fysik och matematik, DFM.
    Custom-made Instrumentation Based on Static Analysis2011Inngår i: WODA 2011: Ninth International Workshop on Dynamic Analysis, 2011, s. 18-23Konferansepaper (Fagfellevurdert)
    Abstract [en]

    Many dynamic analysis tools capture the occurrences of events at runtime. The longer programs are being monitored, the more accurate the data they provide to the user. Then, the runtime overhead must be kept as low as possible, because it decreases the user's productivity. Runtime performance overhead occurs due to identifying events, and storing them in a result data-structure. We address the latter issue by generating custom-made instrumentation code for each program. By using static analysis to get a~priori knowledge about which events of interest can occur and where they can occur, tailored code for storing those events can be generated for each program. We evaluate our idea by comparing the runtime overhead of a general purpose dynamic analysis tool that captures points-to information for Java programs with approaches based on custom-made instrumentation code. Experiments suggest highly reduced performance overhead for the latter.

  • 9.
    Gutzmann, Tobias
    et al.
    Linnéuniversitetet, Fakultetsnämnden för naturvetenskap och teknik, Institutionen för datavetenskap, fysik och matematik, DFM.
    Löwe, Welf
    Linnéuniversitetet, Fakultetsnämnden för naturvetenskap och teknik, Institutionen för datavetenskap, fysik och matematik, DFM.
    Reducing the Performance Overhead of Dynamic Analysis through Custom-made Agents2010Inngår i: 5th International Workshop on Program Comprehension through Dynamic Analysis (PCODA 2010), 2010, s. 1-6Konferansepaper (Fagfellevurdert)
    Abstract [en]

    The usefulness of dynamic analysis tools for programcomprehension increases with the amount oftime a given analyzed program is monitored. Thus, monitoring the analyzed program in a production environment should give the best picture of how the program actually works. However, high performance overhead is especially undesirable in such a setting, because it decreases the user’s productivity. Performance overhead occurs due to recognizing events that are of interest to the agent monitoring the program run and storing those events in data-structures. We propose to address this issue by creating a custom-made agent for each program. By using static analysis to get a priori knowledge about which events of interest can occur and where they can occur, tailored code for recognizing and storing those events can be generated for each program. We evaluate our idea by comparing a "general purpose" dynamic agent that captures fine-grained points-to information with custom-made agents that do the same job for specific programs. The latter show highly reduced performance overhead in practice. We also investigate how the precision of the static analysis affects the performance of the custom-made agents.

  • 10.
    Gutzmann, Tobias
    et al.
    Växjö universitet, Fakulteten för matematik/naturvetenskap/teknik, Matematiska och systemtekniska institutionen.
    Steijger, Tamara
    Växjö universitet, Fakulteten för matematik/naturvetenskap/teknik, Matematiska och systemtekniska institutionen.
    Backporting Java 5 Code2009Inngår i: Ninth IEEE International Working Conference on Source Code Analysis and Manipulation (SCAM 2009), 2009, s. 121-122Konferansepaper (Fagfellevurdert)
    Abstract [en]

    Java 5 has introduced a number of new syntactical language features that make development faster, easier, and safer. However, at the same time, it has also introduced downward incompatibilities: code written for Java 5 cannot be used on pre-Java 5 platforms. This tool demonstration presents a number of source-to-source transformations that backport source code written for the Java 5 platform to legacy platforms. Developers who are, for different reasons, still bound to legacy platforms can benefit with help of this tool from the new language features, and they can use thirdparty components written for more recent platforms. Compared to existing tools, ours is the first that can backport all new syntactical Java 5 language features while the user maintains full control of the source code.

  • 11.
    Lincke, Rüdiger
    et al.
    Linnéuniversitetet, Fakultetsnämnden för naturvetenskap och teknik, Institutionen för datavetenskap, fysik och matematik, DFM.
    Gutzmann, Tobias
    Linnéuniversitetet, Fakultetsnämnden för naturvetenskap och teknik, Institutionen för datavetenskap, fysik och matematik, DFM.
    Löwe, Welf
    Linnéuniversitetet, Fakultetsnämnden för naturvetenskap och teknik, Institutionen för datavetenskap, fysik och matematik, DFM.
    Software Quality Prediction Models Compared2010Inngår i: Software Quality Prediction Models Compared, 2010Konferansepaper (Fagfellevurdert)
    Abstract [en]

    Numerous empirical studies confirm that many software metrics aggregated in software quality prediction models are valid predictors for qualities of general interest like maintainability and correctness. Even these general quality models differ quite a bit, which raises the question: Do the differences matter? The goal of our study is to answer this question for a selection of quality models that have previously been published in empirical studies. We compare these quality models statistically by applying them to the same set of software systems, i.e., to altogether 328 versions of 11 open-source software systems. Finally, we draw conclusions from quality assessment using the different quality models, i.e., we calculate a quality trend and compare these conclusions statistically. We identify significant differences among the quality models. Hence, the selection of the quality model has influence on the quality assessment of software based on software metrics.

  • 12.
    Lundberg, Jonas
    et al.
    Växjö universitet, Fakulteten för matematik/naturvetenskap/teknik, Matematiska och systemtekniska institutionen.
    Gutzmann, Tobias
    Växjö universitet, Fakulteten för matematik/naturvetenskap/teknik, Matematiska och systemtekniska institutionen.
    Edvinsson, Marcus
    Växjö universitet, Fakulteten för matematik/naturvetenskap/teknik, Matematiska och systemtekniska institutionen.
    Löwe, Welf
    Växjö universitet, Fakulteten för matematik/naturvetenskap/teknik, Matematiska och systemtekniska institutionen.
    Fast and Precise Points-to Analysis2009Inngår i: Information and Software Technology, ISSN 0950-5849, E-ISSN 1873-6025, Vol. 51, nr 10, s. 1428-1439Artikkel i tidsskrift (Fagfellevurdert)
    Abstract [en]

    Many software engineering applications require points-to analysis. These client applications range from optimizing compilers to integrated program development environments (IDEs) and from testing environments to reverse-engineering tools. Moreover, software engineering applications used in an edit-compile cycle need points-to analysis to be fast and precise.

    In this article, we present a new context- and flow-sensitive approach to points-to analysis where calling contexts are distinguished by the points-to sets analyzed for their call target expressions. Compared to other well-known context-sensitive techniques it is faster in practice, on average, twice as fast as the call string approach and by an order of magnitude faster than the object-sensitive technique. In fact, it shows to be only marginally slower than a context-insensitive baseline analysis. At the same time, it provides higher precision than the call string technique and is similar in precision to the object-sensitive technique. We confirm these statements with experiments using a number of abstract precision metrics and a concrete client application: escape analysis.

  • 13.
    Lundberg, Jonas
    et al.
    Växjö universitet, Fakulteten för matematik/naturvetenskap/teknik, Matematiska och systemtekniska institutionen. Datalogi.
    Gutzmann, Tobias
    Växjö universitet, Fakulteten för matematik/naturvetenskap/teknik, Matematiska och systemtekniska institutionen. Datalogi.
    Löwe, Welf
    Växjö universitet, Fakulteten för matematik/naturvetenskap/teknik, Matematiska och systemtekniska institutionen. Datalogi.
    Fast and Precise Points-to Analysis2008Inngår i: Eighth IEEE International Working Conference on Source Code Analysis and Manipulation (SCAM 2008), IEEE Computer Society, Loas Alamitos, CA, USA , 2008, s. 133-142Konferansepaper (Fagfellevurdert)
    Abstract [en]

    Many software engineering applications require points-to analysis. Client applications range from optimizing compilers to program development and testing environments to reverse-engineering tools. In this paper, we present a new context-sensitive approach to points-to analysis where calling contexts are distinguished by the points-to sets analyzed for their target expressions. Compared to other well-known context-sensitive techniques, it is faster - twice as fast as the call string approach and by an order of magnitude faster than the object-sensitive technique - and requires less memory. At the same time, it provides higher precision than the call string technique and is similar in precision to the object-sensitive technique. These statements are confirmed by experiments.

  • 14.
    Steijger, Tamara
    et al.
    Växjö universitet, Fakulteten för matematik/naturvetenskap/teknik, Matematiska och systemtekniska institutionen. Datalogi.
    Gutzmann, Tobias
    Växjö universitet, Fakulteten för matematik/naturvetenskap/teknik, Matematiska och systemtekniska institutionen. Datalogi.
    Backporting Java 5 Code to Legacy Environments2008Konferansepaper (Fagfellevurdert)
    Abstract [en]

    Software migration usually deals with adapting old software systems for new technologies. However, sometimes it is not feasible to migrate an existing software system to newer technologies. Then, in order to use new technology, ways must be found to backport code written for this technology to be used with older technology. For instance, the introduction of Java 5 came long with extensions of the language syntax which ease the development, but at the same time create downward incompatibilities. For some active projects, however, it is not possible to upgrade to more recent Java versions. If one still wants to use components written for Java 5, these must be backported.

    In this paper, we compare existing tools which backport code developed for Java 5. We then present our own set of source-code

    based transformations that do this job, and successfully apply these to two test projects.

1 - 14 of 14
RefereraExporteraLink til resultatlisten
Permanent link
Referera
Referensformat
  • apa
  • harvard1
  • ieee
  • modern-language-association-8th-edition
  • vancouver
  • Annet format
Fler format
Språk
  • de-DE
  • en-GB
  • en-US
  • fi-FI
  • nn-NO
  • nn-NB
  • sv-SE
  • Annet språk
Fler språk
Utmatningsformat
  • html
  • text
  • asciidoc
  • rtf