ACM Computing Surveys (CSUR)
PVM: Parallel virtual machine: a users' guide and tutorial for networked parallel computing
PVM: Parallel virtual machine: a users' guide and tutorial for networked parallel computing
A comparison of implicit and explicit parallel programming
Journal of Parallel and Distributed Computing
Cilk: an efficient multithreaded runtime system
Journal of Parallel and Distributed Computing - Special issue on multithreading for multiprocessors
The implementation of the Cilk-5 multithreaded language
PLDI '98 Proceedings of the ACM SIGPLAN 1998 conference on Programming language design and implementation
JOMP—an OpenMP-like interface for Java
Proceedings of the ACM 2000 conference on Java Grande
Parallel programming in OpenMP
Parallel programming in OpenMP
From patterns to frameworks to parallel programs
Parallel Computing - Special issue: Advanced environments for parallel and distributed computing
Component technology: what, where, and how?
Proceedings of the 25th International Conference on Software Engineering
An easy-to-use toolkit for efficient Java bytecode translators
Proceedings of the 2nd international conference on Generative programming and component engineering
The Grid 2: Blueprint for a New Computing Infrastructure
The Grid 2: Blueprint for a New Computing Infrastructure
Distributed caching with memcached
Linux Journal
Computer
Computing in Science and Engineering
Self-managed decentralised systems using K-components and collaborative reinforcement learning
WOSS '04 Proceedings of the 1st ACM SIGSOFT workshop on Self-managed systems
JavaSymphony, a programming model for the Grid
Future Generation Computer Systems
X10: an object-oriented approach to non-uniform cluster computing
OOPSLA '05 Proceedings of the 20th annual ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
Crosscutting Concerns in Parallelization by Invasive Software Composition and Aspect Weaving
HICSS '06 Proceedings of the 39th Annual Hawaii International Conference on System Sciences - Volume 09
Reusable aspect-oriented implementations of concurrency patterns and mechanisms
Proceedings of the 5th international conference on Aspect-oriented software development
JAC: declarative Java concurrency: Research Articles
Concurrency and Computation: Practice & Experience
The java.util.concurrent synchronizer framework
Science of Computer Programming - Special issue: Concurrency and synchronization in Java programs
Computer
Aspect-Oriented Parallel Discrete Optimization on the Cohesion Desktop Grid Platform
CCGRID '06 Proceedings of the Sixth IEEE International Symposium on Cluster Computing and the Grid
Computer
GAUGE: Grid Automation and Generative Environment: Research Articles
Concurrency and Computation: Practice & Experience - Workflow in Grid Systems
Building computational grids with apple's Xgrid middleware
ACSW Frontiers '06 Proceedings of the 2006 Australasian workshops on Grid computing and e-research - Volume 54
Proceedings of the 2006 ACM/IEEE conference on Supercomputing
Satin++: Divide-and-Share on the Grid
E-SCIENCE '06 Proceedings of the Second IEEE International Conference on e-Science and Grid Computing
Java Annotated Concurrency Based on the Concurrent Package
PDCAT '06 Proceedings of the Seventh International Conference on Parallel and Distributed Computing, Applications and Technologies
Algorithmic skeletons meeting grids
Parallel Computing - Algorithmic skeletons
Programming with exceptions in JCilk
Science of Computer Programming - Special issue: Synchronization and concurrency in object-oriented languages
Skeleton-based parallel programming: Functional and parallel semantics in a single shot
Computer Languages, Systems and Structures
Design and implementation of a dynamic tuning environment
Journal of Parallel and Distributed Computing
The Internet Operating System: Middleware for Adaptive Distributed Computing
International Journal of High Performance Computing Applications
Parallel Languages and Compilers: Perspective From the Titanium Experience
International Journal of High Performance Computing Applications
Parallel Programmability and the Chapel Language
International Journal of High Performance Computing Applications
Google's MapReduce programming model — Revisited
Science of Computer Programming
Behavioural Skeletons in GCM: Autonomic Management of Grid Components
PDP '08 Proceedings of the 16th Euromicro Conference on Parallel, Distributed and Network-Based Processing (PDP 2008)
Intel® threading building blocks
Journal of Computing Sciences in Colleges
A survey on approaches to gridification
Software—Practice & Experience
GMAC: An overlay multicast network for mobile agent platforms
Journal of Parallel and Distributed Computing
Babylon: middleware for distributed, parallel, and mobile Java applications
Concurrency and Computation: Practice & Experience
The Definitive Guide to Terracotta: Cluster the JVM for Spring, Hibernate and POJO Scalability
The Definitive Guide to Terracotta: Cluster the JVM for Spring, Hibernate and POJO Scalability
Software—Practice & Experience
Performance modeling and analysis of correlated parallel computations
Parallel Computing
Service oriented adaptive Java applications
Proceedings of the 3rd workshop on Middleware for service oriented computing
G-BLAST: a Grid-based solution for mpiBLAST on computational Grids
Concurrency and Computation: Practice & Experience
ACM Transactions on Programming Languages and Systems (TOPLAS)
Generic operations and capabilities in the JR concurrent programming language
Computer Languages, Systems and Structures
Optimization Techniques for Solving Complex Problems
Optimization Techniques for Solving Complex Problems
Aspect-oriented component assembly—a case study in parallel software design
Software—Practice & Experience
Enabling JaSkel skeletons for clusters and computational Grids
CLUSTER '07 Proceedings of the 2007 IEEE International Conference on Cluster Computing
Runtime bytecode transformation for Smalltalk
Computer Languages, Systems and Structures
Extending movilog for supporting Web services
Computer Languages, Systems and Structures
Advances in Engineering Software
Hi-index | 0.00 |
Motivated by the advent of powerful hardware such as SMP machines and execution environments such as Grids, research in parallel programming has gained much attention within the distributed computing community. There is a substantial body of efforts in the form of parallel libraries and frameworks that supply developers with programming tools to exploit parallelism in their applications. Still, many of these efforts prioritize performance over other important characteristics such as code invasiveness, ease of use and independence of the underlying executing hardware/environment. In this paper, we present EasyFJP, a new approach for semi-automatically injecting parallelism into sequential Java applications that offers a convenient balance to these four aspects. EasyFJP is based upon the popular fork/join parallel pattern, and combines implicit, application-level parallelism with explicit, non-invasive application tuning. Experiments performed with several classic CPU-intensive benchmarks and a real-world application confirm that EasyFJP effectively addresses these problems while delivers very competitive performance.