Find research datasets worth reusing
Search datasets from major research repositories and use ShareScore to quickly assess how well each record supports discovery, access, and reuse.
13
datasets available to search
ShareScore release 0.9.0
Dataset results
13 results for “call graph”
Enhanced Bug Prediction in JavaScript Programs with Hybrid Call-Graph Based Invocation Metrics (Training Dataset)
<p>This dataset consists of multiple files which contain bug prediction training data.</p> <p>The entries in the dataset are JavaScript functions either being buggy or non-buggy. Bug related information was obtained from the project EsLint contained in BugsJS (https://github.com/BugsJS/eslint). The buggy instances were collected throughout the lifetime of the project, however we added non-buggy entries from the latest version which is tagged as fix (entries which were previously included as buggy were not included as non-buggy later on).</p> <p>The dataset is based on hybrid call graphs which are constructed by https://github.com/sed-szeged/hcg-js-framework. The result of this tool is a call graph where the edges are associated with a confidence level which shows how likely the given edge is a valid call edge.</p> <p>We used different threshold values from which we considered the edges to be valid. The following threshold values were used:</p> <ul> <li>0.00</li> <li>0.05</li> <li>0.20</li> <li>0.30</li> </ul> <p>The prefix in the dataset file names are coming from the used threshold. The the datasets include coupling metrics NII (Nubmer of Incoming Invocations) and NOI (Number of Outgoing Invocations) which were calculated by a static source code analyzer called SourceMeter. Hybrid counterparts of these metrics (HNII and HNOI) are based on the given threshold values.</p> <p>There are four variants for all of these datasets:</p> <ul> <li>Both static (NII, NOi) and hybrid (HNII, HNOI) coupling metrics are included with additional static source code metrics and information about the entries (file without any postfix). Column contained only in this dataset are: <ul> <li>ID</li> <li>Name</li> <li>Longname</li> <li>Parent ID</li> <li>Component ID</li> <li>Path</li> <li>Line</li> <li>Column</li> <li>EndLine</li> <li>EndColumn</li> </ul> </li> <li>Both static (NII, NOi) and hybrid (HNII, HNOI) coupling metrics are included with additional static source code metrics (file with '_h+s' postfix)</li> <li>Only static (NII, NOI) coupling metrics are included with additional static source code metrics (file with '_s' postfix)</li> <li>Only hybrid (HNII, HNOI) coupling metrics are included with additional static source code metrics (file with '_h' postfix)</li> </ul> <p>Static source code metrics which are contained in all dataset are the following:</p> <ul> <li>McCC - McCabe Cyclomatic Complexity</li> <li>NL - Nesting Level</li> <li>NLE - Nesting Level Else If</li> <li>CD - Comment Density</li> <li>CLOC - Comment Lines of Code</li> <li>DLOC - Documentation Lines of Code</li> <li>TCD - Total Comment Density (Comment Lines in an emedded function will be also considered)</li> <li>TCLOC - Total Comment Lines of Code (Comment Lines in an emedded function will be also considered)</li> <li>LLOC - Logical Lines of Code (Comment and empty lines not counted)</li> <li>LOC - Lines of Code (Comment and empty lines are counted)</li> <li>NOS - Number of Statements</li> <li>NUMPAR - Number of Parameters</li> <li>TLLOC - Logical Lines of Code (Lines in embedded functions are also counted)</li> <li>TLOC - Lines of Code (Lines in embedded functions are also counted)</li> <li>TNOS - Total Number of Statements (Statements in embedded functions are also counted)</li> </ul>
Linux Kernel 4.21 Call Graphs
<p>This is the<strong> Linux Kernel 4.21 Call Graphs</strong> created using <a href="http://github.com/dspinellis/cscout">CScout</a> containing the following graphs:</p> <ol> <li>File include graph (fgraph_I.txt) </li> <li>Compile Time Dependency Graph (fgraph_C.txt)</li> <li>Control Dependency Graph (through function calls) (fgraph_F_D.txt)</li> <li>Data Dependency Graph (through global variables) (fgraph_G.txt)</li> <li>Function and Macro Call Graph (cgraph.txt)</li> </ol> <p>Files are of the form</p> <p>foo.c boo.c</p> <p>which indicate a directed edge foo.c -> boo.c.</p> <p>The call graphs refer to <strong>all </strong>(ending with _all.txt) files or only the <strong>writable files.</strong> </p> <p>These graphs were produced by processing the Linux Kernel Codebase consisting of 20.3 million lines of source code. </p> <p>The results were produced on an Intel(R) Xeon(R) CPU E5-1410 0 @ 2.80GHz server with 64GB of RAM.</p> <p><strong>References: </strong></p> <p>1. Papachristou, Marios. "Software clusterings with vector semantics and the call graph." <em>Proceedings of the 2019 27th ACM Joint Meeting on European Software Engineering Conference and Symposium on the Foundations of Software Engineering</em>. 2019.</p>
Call Graphs for Javascript IDEs
<p>The authors have run their algorithms on ten real-world subject programs and measured their performance. The programs include medium to large browser-based JavaScript applications covering a number of different domains, including games (beslimed,pacman,pong), visualizations (3dmodel,coolclock), editors (htmledit,mark-itup), a presentation library (flotr), a calendar app (fullcalen-dar), and a PDF viewer (pdfjs).</p>
Artifact for "Total Recall? How Good are Static Call Graphs Really?"
<p>The artifact is password protected to provide exclusive access to the reviewers. To decompress the archive, run `7z x artifact.7z` and enter the password when asked. The password is provided on HotCRP.</p>
Artifact for "Efficient Construction of Practical Python Call Graphs with Entity Knowledge Base"
<p>This is the artifact for the paper entitled "Efficient Construction of Practical Python Call Graphs with Entity Knowledge Base"</p>
Call Graph Soundness in Android Static Analysis
<div> <pre>## Artifact Folder Structure Below is a brief explanation of each directory of our artifacts: - **dataset/**: Contains the dataset used in our study. - **dynamic_analysis/**: Contains everything needed to reproduce our dynamic analysis experiments. - **static_analysis/**: Contains everything needed to reproduce our static analyses experiments. - **instrumentation/**: Contains the necessary files to instrument the apps for the dynamic analysis. - **SLR/**: Contains the excel files with the papers collected during our Systematic Literature Review (SLR). Please ensure that all the necessary files and resources are present in the respective directories before running any experiments.</pre> </div>
Appendix for "Is JavaScript Call Graph Extraction Solved Yet? A Comparative Study of Static and Dynamic Tools"
<p><strong>Abstract</strong></p> <p>The popularity and wide adoption of JavaScript both at the client and server-side makes its code analysis more essential than ever before. Most of the algorithms for vulnerability analysis, coding issue detection, or type inference rely on the call graph representation of the underlying program. Luckily, there are quite a few tools to get this job done already. However, their performance in vitro and especially in vivo has not yet been extensively compared and evaluated.</p> <p>In this paper, we systematically compare five static and two dynamic approaches for building JavaScript call graphs on 26 WebKit SunSpider benchmark programs and two static and two dynamic methods on 12 real-world Node.js modules. The tools under examination using static techniques were <em>npm call graph</em>, <em>IBM WALA</em>, <em>Google Closure Compiler</em>, <em>Approximate Call Graph</em>, and <em>Type Analyzer for JavaScript</em>. We performed dynamic analyzes relying on the <em>nodejs-cg</em> tool (a customized Node.js runtime) and the <em>NodeProf </em>instrumentation and profiling framework.</p> <p>We provide a quantitative evaluation of the results, and a result quality analysis based on 941 manually validated call edges. On the SunSpider programs, which do not take any inputs, so dynamic extraction could be complete, all the static tools also performed well. For example, TAJS found 93% of all edges while having a 97% precision compared to the precise dynamic call graph. When it comes to real-world Node.js modules, our evaluation shows that static tools struggle with parsing the code and fail to detect a significant amount of call edges that dynamic approaches can capture. Nonetheless, a significant number of edges not detected by dynamic approaches are also reported. Among these, however, there are also edges that are real, but for some reason the unit tests did not execute the branches in which these calls were included.</p>
Call Graph Dataset
<p><strong>Description:</strong><br>This dataset is associated with the research paper titled "Bloat beneath Python’s Scales: A Fine-Grained Inter-Project Dependency Analysis," which has been accepted at FSE'24. It comprises partial and stitched call graphs of various Python projects along with their corresponding dependencies from PyPI. Additionally, the dataset includes bloat and security metrics extracted to analyze the prevalence and security impact of dependency bloat within the PyPI ecosystem.</p> <p><strong>Contents:</strong></p> <ul> <li>Partial and stitched call graphs of Python projects and PyPI releases (acting as dependencies)</li> <li>Bloat and security metrics for each project</li> </ul> <p><strong>Purpose:</strong><br>The dataset is intended to facilitate research and analysis aimed at understanding the extent of dependency bloat and its security implications within the Python ecosystem.</p>
Detecting microservice anti-patterns using interactive service call graphs: Effort Assessment
<p>Supplemental Figures for <em>Detecting microservice anti-patterns using interactive service call graphs: Effort Assessment</em></p>
Detecting microservice anti-patterns using interactive service call graphs: Effort Assessment
<p>Case Study Results for <em>Detecting microservice anti-patterns using interactive service call graphs: Effort Assessment</em></p>
Call Graph Soundness in Android Static Analysis
<pre>## Artifact Folder Structure Below is a brief explanation of each directory of our artifacts: - **dataset/**: Contains the dataset used in our study. - **dynamic_analysis/**: Contains everything needed to reproduce our dynamic analysis experiments. - **static_analysis/**: Contains everything needed to reproduce our static analyses experiments. - **instrumentation/**: Contains the necessary files to instrument the apps for the dynamic analysis. - **SLR/**: Contains the excel files with the papers collected during our Systematic Literature Review (SLR). - **results/**: Contains the results of our static analysis. Please ensure that all the necessary files and resources are present in the respective directories before running any experiments.</pre>
Simulated read data analysed in "Removing reference bias and improving indel calling in ancient DNA data analysis by mapping to a sequence variation graph"
<p>Simulated read data analyzed in "Removing reference bias and improving indel calling in ancient DNA data analysis by mapping to a sequence variation graph".</p> <p><strong>1) Human sequence data</strong></p> <p><strong>HO_chr11_50bp_sliding_window*fq.gz:</strong><br> All possible 50 bp reads overlapping chromosome 11 SNPs in the Human Origins dataset. Files with the word "alternate" in their filename carry the alternate allele, otherwise, they carry the reference allele. Deamination has been added into these simulated reads using gargammel (Renaud 2016) based on empirically estimated post-mortem damage in a dataset of 102 ancient genomes (Allentoft et al., 2015).</p> <p><strong>2) microbial data</strong></p> <p><strong>simulation_*_s.fq.gz:</strong><br> Simulated microbial read data from a set of microbial reference genomes identified in the ancient Clovis genome (Rasmussen 2014), using gargammel.</p>
Artifact for "Efficient Construction of Practical Python Call Graphs with Entity Knowledge Base"
<p>This is the artifact for the paper titled "Efficient Construction of Practical Python Call Graphs with Entity Knowledge Base"</p>
ScienceDex guides
Understand access before you commit
These curated guides explain access requirements, typical timelines, costs, and reuse considerations for widely used research datasets.
Allen Brain Atlas
Allen Brain Atlas is an Allen Institute collection of brain map atlases, datasets, APIs, and analysis tools covering mouse, human, and non-human primate brain resources.
Annotated Behaviour and Observability Dataset (ABODe)
ABODe is a University of Edinburgh DataShare dataset for behavior classification in group-housed mice using home-cage video, identities, bounding boxes, ground-plate positions, and annotator labels.
DANDI Archive for NWB datasets
DANDI is a BRAIN Initiative archive for publishing and sharing neurophysiology data, including electrophysiology, optophysiology, and behavioral data packaged as NWB and related standards.
International Brain Laboratory public data
The International Brain Laboratory public data releases expose standardized mouse decision-making experiments, including Neuropixels recordings, widefield calcium imaging, behavior, and session metadata accessed through the ONE API.
OpenNeuro
OpenNeuro is a free, open platform for sharing neuroimaging datasets, with public search, dataset pages, and download paths for web, S3, DataLad, and the OpenNeuro CLI.