19.06.2013 Views

DB2 UDB for z/OS Version 8 Performance Topics - IBM Redbooks

DB2 UDB for z/OS Version 8 Performance Topics - IBM Redbooks

DB2 UDB for z/OS Version 8 Performance Topics - IBM Redbooks

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

2.2 CPU usage<br />

The most common question is “What did you experience in terms of CPU per<strong>for</strong>mance<br />

impact?”. In any release of <strong>DB2</strong>, what the new features cost is a concern. This release<br />

contains a dramatic amount of new function, and because of that, you may experience an<br />

increase in CPU cost. Since <strong>DB2</strong> V8 deals with much longer names, and exploits 64-bit<br />

addressing, CPU utilization can increase even if instruction path length does not change. The<br />

number of instructions may not change, but because each instruction is now a 64-bit<br />

instruction instead of a 31-bit instruction, it can be more expensive to execute.<br />

This release also has a number of new SQL functions which usually increases path lengths.<br />

Normally, the target is less than 5% CPU increase from release to release. In V8 the target is<br />

less than 10%.<br />

The assumption, when measuring the CPU regression, is that you do not change the<br />

application to take advantage of any new function. Obviously, once you do rewrite the<br />

application to take advantage of new function, you may even experience a decrease in CPU<br />

time.<br />

When looking at the percent increase in CPU cost, there can be a lot of deviation depending<br />

on a number of different factors, such as:<br />

► Type of workload<br />

– Online<br />

– Batch<br />

– DRDA transaction<br />

– Batch running in DRDA<br />

– Data warehouse<br />

► Characteristics of the workload<br />

– Static or dynamic<br />

– Fetch intensive<br />

– Update intensive<br />

– A combination of the two<br />

– Simple SQL<br />

– Complex query<br />

► Data sharing or a non-data sharing environment<br />

► JDBC or CLI ODBC<br />

► Utilities execution<br />

► Commit frequency and options<br />

There are actions that you can take to mitigate any CPU overhead and we discuss these<br />

actions in the book. One obvious task is to rebind all plans and packages after you migrate.<br />

Once you are in CM, if you rebind, <strong>DB2</strong> re-establishes fast column processing and your<br />

application also exploits more efficient access paths, already available under CM, that can<br />

possibly improve CPU costs.<br />

Once you are running in NFM, you can take advantage of more optimization enhancements<br />

after rebind.<br />

For more about new access paths, refer to Chapter 3, “SQL per<strong>for</strong>mance” on page 29.<br />

Another optional item of interest to reduce CPU time is the long term page fixing which can be<br />

specified at the buffer pool level; this feature can be enabled in compatibility mode. An<br />

Chapter 2. Per<strong>for</strong>mance overview 15

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!