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.
5
datasets available to search
ShareScore release 0.9.0
Dataset results
5 results for “Java streams”
Accepted Artifact for Profiling and Optimizing Java Streams
<p>The accepted artifact for the journal article "Profiling and Optimizing Java Streams" published in Volume 7, Issue 3 of <a href="https://programming-journal.org/"><em>The Art, Science, and Engineering of Programming</em></a>.</p> <p>Please refer to the README.md to work with the artifact and reproduce results from the article.</p>
Safe Automated Refactoring for Intelligent Parallelization of Java 8 Streams
<p>Streaming APIs are becoming more pervasive in mainstream Object-Oriented programming languages. For example, the Stream API introduced in Java 8 allows for functional-like, MapReduce-style operations in processing both finite and infinite data structures. However, using this API efficiently involves subtle considerations like determining when it is best for stream operations to run in parallel, when running operations in parallel can be less efficient, and when it is safe to run in parallel due to possible lambda expression side-effects. In this paper, we present an automated refactoring approach that assists developers in writing efficient stream code in a semantics-preserving fashion. The approach, based on a novel data ordering and typestate analysis, consists of preconditions for automatically determining when it is safe and possibly advantageous to convert sequential streams to parallel and unorder or de-parallelize already parallel streams. The approach was implemented as a plug-in to the Eclipse IDE, uses the WALA and SAFE analysis frameworks, and was evaluated on 11 Java projects consisting of ~642 thousand lines of code. We found that 36.31% of candidate streams were refactorable, and an average speedup of 3.49 on performance tests was observed. The results indicate that the approach is useful in optimizing stream code to their full potential.</p>
Subject source code for Safe Automated Refactoring for Intelligent Parallelization of Java 8 Streams
<p>The set of open source Java projects packaged as Eclipse projects used for assessing our refactoring. Please refer to the included README.md file for building instructions and the LICENSE.md file for licensing information.<br> </p>
An Empirical Study on the Use and Misuse of Java 8 Streams
<p>Streaming APIs allow for big data processing of native data structures by providing MapReduce-like operations over these structures. However, unlike traditional big data systems, these data structures typically reside in shared memory accessed by multiple cores. Although popular, this emerging hybrid paradigm opens the door to possibly detrimental behavior, such as thread contention and bugs related to non-execution and non-determinism. This study explores the use and misuse of a popular streaming API, namely, Java 8 Streams. The focus is on how developers decide whether or not to run these operations sequentially or in parallel and bugs both specific and tangential to this paradigm. Our study involved analyzing 34 Java projects and 5.53 million lines of code, along with 719 manually examined code patches. Various automated, including interprocedural static analysis, and manual methodologies were employed. The results indicate that streams are pervasive, stream parallelization is not widely used, and performance is a crosscutting concern that accounted for the majority of fixes. We also present coincidences that both confirm and contradict the results of related studies. The study advances our understanding of streams, as well as benefits practitioners, programming language and API designers, tool developers, and educators alike.</p>
Dataset of the publication: Large-scale Characterization of Java Streams
<p>This repository contains all the data supporting the findings of the research article: <em>Large-scale Characterization of Java Streams</em>, including the list of all analyzed projects and their metadata. The repository contains two files as follows:</p> <p>1. database.tar: This archive contains all the data that supports the findings reported in the manuscript entitled “Large-scale Characterization of Java Streams” which is under revision.</p> <p>The data is provided as a database created via PostgreSQL and can be restored to an installation of PostgreSQL (version 12 or later) by following the next procedure:</p> <p>A. Using pgAdmin (https://www.pgadmin.org/):</p> <p>- Enter to the "Restore Dialog" (https://www.pgadmin.org/docs/pgadmin4/development/restore_dialog.html).</p> <p>- Select as "Format" the "Custom or tar" option.</p> <p>- When selecting the "Filename", browse to the folder where this archive was decompressed and select the file "database.tar".</p> <p>2. ListOfProjects.csv: This comma-separated value file contains the list of all analyzed projects and their metadata.</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.