After over two decades of extensive research on branch prediction, branch mispredictions are still an important performance/power bottleneck for today's aggressive processors. In our prior work, to further underst...
详细信息
ISBN:
(纸本)9781479964536
After over two decades of extensive research on branch prediction, branch mispredictions are still an important performance/power bottleneck for today's aggressive processors. In our prior work, to further understand the causes for mispredictions, we presented a source-code based classification of branch mispredictions extending the prior work on predictor-specific classification. Since source-code analysis by hand is very time-consuming and not possible in some cases, in this paper, we develop methods in order to automatically identify the data structures for each branch instruction, which allows detailed source-code analysis at run-time. We show that our run-time method can successfully provide source-code analysis and classify more than 99% of the branch mispredictions.
In order to help teachers to identify plagiarism in student assignment submissions among students' source code quickly and accurately, this paper discusses a measurement method of source code similarity. In the pr...
详细信息
ISBN:
(纸本)9783038353126
In order to help teachers to identify plagiarism in student assignment submissions among students' source code quickly and accurately, this paper discusses a measurement method of source code similarity. In the proposed algorithm, firstly, both of token oriented edit distance (TD) and token oriented length of longest common subsequence (TLCSLen) is calculated;secondly, considering the TD and TLCSLen, a similarity calculation formula is given to measure similarity of source code;Thirdly, a dynamic and variable similarity threshold is set to determine whether there is plagiarism between source codes, which ensure a relatively reasonable judgment of plagiarism. This method has been applied to the university's programming course work online submission system and online examination system. Practical application results show that this method can identify similar source code timely, effectively and accurately.
code search and comprehension have become more difficult in recent years due to the rapid expansion of available source code. Current tools lack a way to label arbitrary code at scale while maintaining up-to-date repr...
详细信息
ISBN:
(纸本)9781450359726
code search and comprehension have become more difficult in recent years due to the rapid expansion of available source code. Current tools lack a way to label arbitrary code at scale while maintaining up-to-date representations of new programming languages, libraries, and functionalities. Comprehensive labeling of source code enables users to search for documents of interest and obtain a high-level understanding of their contents. We use Stack Overflow code snippets and their tags to train a language-agnostic, deep convolutional neural network to automatically predict semantic labels for source code documents. On Stack Overflow code snippets, we demonstrate a mean area under ROC of 0.957 over a long-tailed list of 4,508 tags. We also manually validate the model outputs on a diverse set of unlabeled source code documents retrieved from Github, and obtain a top-1 accuracy of 86.6%. This strongly indicates that the model successfully transfers its knowledge from Stack Overflow snippets to arbitrary source code documents.
A variable-length lossy source code is introduced with a rate-distortion pair close to the rate-distortion function. The proof of the theorem is based on the balanced-coloring property of an ensemble of functions. Sin...
详细信息
ISBN:
(纸本)9781479959990
A variable-length lossy source code is introduced with a rate-distortion pair close to the rate-distortion function. The proof of the theorem is based on the balanced-coloring property of an ensemble of functions. Since an ensemble of systematic sparse matrices has this property, we can construct a practical code for a memoryless source by using the sum-product algorithm.
We present CognitIDE, a tool for collecting physiological measurements, mapping them to source code, and visualizing them directly within IntelliJ-based Integrated Development Environments (IDE)s. CognitIDE facilitate...
详细信息
ISBN:
(纸本)9798400706585
We present CognitIDE, a tool for collecting physiological measurements, mapping them to source code, and visualizing them directly within IntelliJ-based Integrated Development Environments (IDE)s. CognitIDE facilitates the setup and conduction of empirical studies evaluating the relationships between software artifacts and physiological parameters. Corresponding measurements enable researchers to evaluate, for example, the cognitive load software developers are experiencing. Our tool lets study participants use IDEs in a natural way while eye gaze, further body sensor data, and interactions with the IDE are collected. Furthermore, CognitIDE enables highlighting code positions according to the physiological values collected while corresponding positions were looked at. This facilitates the identification of poorly maintainable code and provides a direct way for study participants to reflect on whether the measurements mirror their perception. Moreover, the plugin has additional features for facilitating studies, such as interrupting participants and letting them answer predefined questions. Our tool supports recording measurements with the wide variety of devices supported by the Lab Streaming Layer. Video: https://***/9yLV5AdTiJw
Software Product Lines Engineering focuses on identifying and managing the commonalities and variabilities of a set of software products where core assets can be developed and (re)used to derive individual product var...
详细信息
ISBN:
(纸本)9780769547909
Software Product Lines Engineering focuses on identifying and managing the commonalities and variabilities of a set of software products where core assets can be developed and (re)used to derive individual product variants with reduced costs. In this context, software product line scoping is the process responsible for identifying and delimiting products, features, sub-domains and existing assets of the product line where there are economical benefits to invest in reuse. Typically, product line engineers elicit scoping information from the available documentation of existing products and based on knowledge from domain experts. This is an effort-intensive task because much time is invested in workshops and interviews with the domain and system experts. Thus, in order to reduce costs and time in the scoping process, this paper proposes an approach to support the scoping process based on the existing products source code.
Knowledge extraction is the discovery of knowledge from structured and/or unstructured sources. This knowledge can be used to build or enrich a domain ontology. source code is rarely used. But implementation platforms...
详细信息
ISBN:
(纸本)9783319777023;9783319777030
Knowledge extraction is the discovery of knowledge from structured and/or unstructured sources. This knowledge can be used to build or enrich a domain ontology. source code is rarely used. But implementation platforms evolve faster than business logic and these evolutions are usually integrated directly into source code without updating the conceptual model. In this paper, we present a generic approach for knowledge extraction from source code of typed programming languages using Hidden Markov Models. This approach consist of the definition of the HMMso that it can be used to extract any type of knowledge from the source code. The method is experimented on EPICAM and GeoServer developed in Java and on MapServer developed in C/C++. Structural evaluation shows that source code contains a structure that permit to build a domain ontology and functional evaluation shows that source code contains more knowledge than those contained in both databases and meta-models.
We as a society have built our exceptional development pace on top of a widespread use of energy resources. Unfortunately, over the past number of years we have begun to understand this problem of growing energy deman...
详细信息
ISBN:
(纸本)9781538615898
We as a society have built our exceptional development pace on top of a widespread use of energy resources. Unfortunately, over the past number of years we have begun to understand this problem of growing energy demands and concern ourselves over the impact is has done to the environment, such as global warming.
If the World Wide Web is taken as a mountain of information containing data regarding every aspect of life, then Semantic Web is its extended version, that structures the information and makes it machine process able....
详细信息
ISBN:
(纸本)9781479922932
If the World Wide Web is taken as a mountain of information containing data regarding every aspect of life, then Semantic Web is its extended version, that structures the information and makes it machine process able. Semantic Web has many advantages which have proved it as an innovative approach to structure the data for multipurpose domains. Its characteristics of annotation enable the extraction of precise information which is required by the user. Software testing is the process which evaluates a systems behavior to ensure whether it meets user's requirement or not. In software engineering, specifically in the software testing domain, semantic structuring the relevant artifacts is new. Researchers provided XML based representations for many languages and approaches but their context is different when we try to apply it on the software testing domain. In this paper, we focus on the shortcomings of the software testing domain when its concerned activities are required to represent semantically. We present a novel approach, Semantic Structure of Test Cases and source code (SSTCSC) which relates the RDF based test cases satisfying white box testing coverage criterion statement coverage, with the RDF based target java class(s). After the execution of semantically presented information (test cases against program) is then passes through two phases further i.e. code Categorization and code Visualization which shows the final output of the classified code segments visually. Whole process of the presented approach is supported by the tool which performs the related steps with ease automatically.
This paper proposes translation rules of Java-JML source code to Event-B. Java Modeling Language (JML), a specification language for Java, provides an ease to make a code-level specification regarding to its similarit...
详细信息
ISBN:
(纸本)9781479979967
This paper proposes translation rules of Java-JML source code to Event-B. Java Modeling Language (JML), a specification language for Java, provides an ease to make a code-level specification regarding to its similarity with Java syntax. However, the verification tools which support JML still have a lot of limitations. On the other hand, in formal method, Event-B has been frequently used to specify software and hardware systems. Also, its verification tools are widely available and supplements one another. These facts give the opportunity to combine the ease provided by JML and the maturity of Event-B in formal method. In this case, translating Java-JML source code to Event-B could be the way. Thus, systematic translation rules are needed. Through this work, the rules are successfully formulated. Besides, the soundness of the rules are also guaranteed according to its correct-by-construction approach. Then, the rules are also evaluated yielding that unique properties which are required by the Event-B model-assertion, convergence, and enabledness-are properly checked. By using these rules, limitation of verification tools for JML can be supplemented.
暂无评论