Shifting the Parallel Programming Paradigm
نویسندگان
چکیده
Multicore computer architectures are now the standard for desktop computers, high-end servers and personal laptops. Due to the multicore shift in computer architecture, software engineers must write multithreaded programs to harness the resources of these parallel machines. Unfortunately, today’s parallel programming techniques are difficult to reason about, highly error-prone and challenging to maintain for large-scale software. This paper presents an emerging parallel programming abstraction called transactional memory (TM) and its benefits over mutual exclusion, the most commonly used parallel programming abstraction. TM simplifies the parallel programming model by moving the complexity of shared memory correctness away from the programmer’s view. TM also shortens the software lifecycle by simplifying software design, abbreviating software test and reducing software development. We demonstrate the importance of TM by comparing it against mutual exclusion in terms of (1) simplicity, (2) scalability and (3) modularity.
منابع مشابه
Collaborative Computing and Applications J.UCS Special Issue
Evolving from parallel computing, cluster computing, grid computing, to nowadays cloud computing, the distributed computing paradigm has been shifting from parallelization, distribution, sharing, to be able to support full-scale collaboration between systems and people. This new computing paradigm can be called collaborative computing, composing of technologies and techniques to facilitate peop...
متن کاملA fuzzy mixed-integer goal programming model for a parallel machine scheduling problem with sequence-dependent setup times and release dates
This paper presents a new mixed-integer goal programming (MIGP) model for a parallel machine scheduling problem with sequence-dependent setup times and release dates. Two objectives are considered in the model to minimize the total weighted flow time and the total weighted tardiness simultaneously. Due to the com-plexity of the above model and uncertainty involved in real-world scheduling probl...
متن کاملA Case Study in Tightly Coupled Multi-paradigm Parallel Programming
Programming paradigms are designed to express algorithms elegantly and efficiently. There are many parallel programming paradigms, each suited to a certain class of problems. Selecting the best parallel programming paradigm for a problem minimizes programming effort and maximizes performance. Given the increasing complexity of parallel applications, no one paradigm may be suitable for all compo...
متن کاملImplementation Procedures for the Risk in Early Design (RED) Method
Risk assessments performed at the conceptual design phase of a product may offer the greatest opportunity to increase product safety and reliability at the least cost. This is an especially difficult proposition, however, as often the product has not assumed a physical form at this early design stage. This paper introduces the Risk in Early Design (RED) method, a method for performing risk asse...
متن کاملComparison of neural responses between exogenous and endogenous rule shifting in cued switching task; an ERPs study
Task switching is a well-known cognitive paradigm to explore task-set reconfiguration processes such as rule shifting. In particular, endogenous task switching is thought to differ qualitatively from stimulus-triggered exogenous task switching. However, no previous study has examined the neural substrate of endogenous task switching. The purpose of the present study is to explore the difference...
متن کامل