Demonstration venue · read-only. Every page can be browsed; the buttons that would change it are switched off. Create an account to run TaxoReview on your own data. A simulation from public publication records: the people listed were not invited and did not agree to review.
? Tutorial for this page

James Christopher Jenista

dblp:11/9117 · DBLP profile ↗
← Back
3ranked-venue papers
2as first author
0since 2021 · last 2012
—ORCID · none

Domains — the database's venue-derived domains; a paper can count in several

Systems, architecture and hardware · 2 · 1 first-authorSoftware engineering, systems software and programming languages · 1 · 1 first-author

Expertise — from the expertise taxonomy: the topics of the expert's papers under the CCF categories. A weight counts papers with recency: 1 for a paper about the topic, 0.3 when the topic is its context, halved every five years.

Computer architecture, parallel and distributed computing, and storage systems
2 papers
Parallel and multicore computing · 100%
Software engineering, system software, and programming languages
2 papers
Compilers and program optimization · 100%

Topics — the 5 heaviest of 6, each with the papers that count most for it

TopicWeightPapersLastEvidence papers
Compilers and program optimization
parallelizing compiler
0.112012
DOJ: dynamically parallelizing object-oriented programs · PPoPP 2012
Parallel and multicore computing › parallel programming models
automatic parallelization
0.112012
DOJ: dynamically parallelizing object-oriented programs · PPoPP 2012
Parallel and multicore computing › speculative parallelization
dynamic parallelization
0.112012
DOJ: dynamically parallelizing object-oriented programs · PPoPP 2012
Parallel and multicore computing › deterministic execution
deterministic parallelism
0.112011
OoOJava: software out-of-order execution · PPoPP 2011
Parallel and multicore computing
parallel programming models
0.112011
OoOJava: software out-of-order execution · PPoPP 2011

Methods — techniques the papers use, named apart from their topics

task annotation · 0.3dynamic dependence analysis · 0.3static analysis · 0.2developer annotations · 0.2
YearPublicationVenuePosition
2012 DOJ: dynamically parallelizing object-oriented programs
abstract
We present Dynamic Out-of-Order Java (DOJ), a dynamic parallelization approach. In DOJ, a developer annotates code blocks as tasks to decouple these blocks from the parent execution thread. The DOJ compiler then analyzes the code to generate heap examiners that ensure the parallel execution preserves the behavior of the original sequential program. Heap examiners dynamically extract heap dependences between code blocks and determine when it is safe to execute a code block.
Yong Hun Eom, James Christopher Jenista, Brian Demsky
PPoPP3
2011 Using Disjoint Reachability for Parallelization
James Christopher Jenista, Yong Hun Eom, Brian Demsky
CC1
2011 OoOJava: software out-of-order execution
abstract
Developing parallel software using current tools can be challenging. Even experts find it difficult to reason about the use of locks and often accidentally introduce race conditions and deadlocks into parallel software. OoOJava is a compiler-assisted approach that leverages developer annotations along with static analysis to provide an easy-to-use deterministic parallel programming model. OoOJava extends Java with a task annotation that instructs the compiler to consider a code block for out-of-order execution. OoOJava executes tasks as soon as their data dependences are resolved and guarantees that the execution of an annotated program preserves the exact semantics of the original sequential program. We have implemented OoOJava and achieved an average speedup of 16.6x on our ten benchmarks.
James Christopher Jenista, Yong Hun Eom, Brian Demsky
PPoPP1