Building Multi-core Ready Java Applications, Part I and Part 2
With the advent of multi-core processors, the existing subject of symmetric multiprocessing has been thrust to the forefront in the development community. As multi-core CPUs make parallel processing systems more prevalent, and more affordable, there is an increasing need for frameworks that help to handle threading, synchronization, deadlock detection, memory management, data pipelining, vertical/horizontal data partitioning, and so on.
This two-part article series will discuss some of the special design, development and testing techniques that must be used to take full advantage of multiprocessor systems. It examines some frameworks available to make Java-based parallel programming easier and even transparent in some cases.
Part 1: Symmetric Multiprocessing Overview
Symmetric multiprocessing (SMP) is a multiprocessor computer architecture where two or more identical processors are connected to a single shared main memory. Most common multiprocessor systems today use an SMP architecture, where the system allows any processor to work on any task no matter where the data for that task is located in memory. In fact, all system resources are available to all processors, and hence all applications, equally. With proper operating system support, SMP systems can easily move tasks between processors to balance the workload efficiently.
Part 2 of this article will focus on a framework from Pervasive Software, called Pervasive DataRushâ„¢,which reduces the complexity of parallel programming. The issues around parallel computing, as applied to the problem of loading large amounts of text-based data into an RDBMS, will be introduced, and Pervasive DataRush will be explored as a way to solve them.
Source URL: http://java.dzone.com/news/building-multi-core-ready-java
Links:
[1] http://java.dzone.com/news/build-multi-core-ready-java-ap-0




