The DB2® UDB Symmetric Multiprocessing feature provides the optimizer with additional methods for retrieving data that include parallel processing. Symmetrical multiprocessing (SMP) is a form of parallelism achieved on a single server where multiple (CPU and I/O) processors that share memory and disk resource work simultaneously toward achieving a single end result.
This parallel processing means that the database manager can have more than one (or all) of the server processors working on a single query simultaneously. The performance of a CPU bound query can be significantly improved with this feature on multiple-processor servers by distributing the processor load across more than one processor.
The tables above indicate what data access method are enabled to take advantage of the DB2 UDB Symmetric Multiprocessing feature. An important thing to note, however, is that the parallel implementation differs for both the SQL Query Engine and the Classic Query Engine.
Parallelism requires that SMP parallel processing must be enabled by one of the following methods:
Once parallelism has been enabled, a set of database system tasks or threads is created at server startup for use by the database manager. The database manager uses the tasks to process and retrieve data from different disk devices. Since these tasks can be run on multiple processors simultaneously, the elapsed time of a query can be reduced. Even though much of the I/O and CPU processing of a parallel query is done by the tasks, the accounting of the I/O and CPU resources used are transferred to the application job. The summarized I/O and CPU resources for this type of application continue to be accurately displayed by the Work with Active Jobs (WRKACTJOB) command.
The job should be run in a shared storage pool with the *CALC paging option, as this will cause more efficient use of active memory.