IBM Haifa researchers give DB2 a jump start in the race against Oracle
IBM Haifa Labs News Center
Oracle seems to be somewhat concerned about IBM’s position in the market, otherwise, why all of the mud slinging? Perhaps the new battle cry is a testament to IBM’s advances in the database area. According to a recent Gartner report, DB2 is now a close second to Oracle in overall database market share.
Although the decision-making process still boils down to price vs. performance, IT planning must now consider a host of other factors, including how a database upgrade will affect application architecture or how much training will be required to take advantage of database optimization features.
Since the latest release, Meta Group conducted a study where comparison tests have shown that IBM’s DB2 comes in at half the price of Oracle, so the price issue is pretty much taken care of. The latest database war is all about how many transactions can be done per minute. And when it comes to database optimization, IBM’s got a unique secret weapon. IBM Haifa researchers have come up with a new kind of optimization that extends the operation and functionality of high performance applications such as DB2. FDPR —Feedback Directed Program Restructuring—optimizes applications based on feedback received from the application itself. The technology is used to optimize the performance of DB2 on many different platforms, and has produced significant performance optimization improvements.
FDPR is used to optimize the sections of code that are critical to the application. “The optimization is done at the post link phase – after the compilers have done their jobs in optimizing the application. This is when FDPR takes over and gives the application’s code another ‘bang,’ where compiler and linker conventions don't need to be preserved,” states Dr. Bilha Mendelson, manager of the Code Optimization Technologies group at IBM Haifa’s Research Lab.
Targeted at very large systems, FDPR works best where the code is large and contains pieces of code that deals with extreme cases that are rarely executed. “We identify the pieces of code that are critical and executed many times, and that is where we do the improvement,” explains Mendelson whose dedicated team spent days and nights working on new ways to optimize.
How does it work?
In today’s computers, the CPU is faster than the memory hierarchy. FDPR minimizes memory access by code repositioning, based on increased code/data locality. It also offers global program optimization since the entire executable is viewed as a single unit, enabling cross-compilation optimizations.
FDPR optimization is done at the post link level and works directly on the executable. “At this point, we don’t need the source code because we’re working on the final product, and with equal ease can optimize legacy code or even applications that have been around a while,” continues Mendelson.
At present, FDPR optimizations are available on AIX 3.2, 4.1 and on 32 bit and 64 bit AIX versions (part of the Performance ToolBox), Windows NT/2000. They are also used to enhance debug capabilities and add support for reordering of shared libraries. FDPR has already been applied to the IBM DB2/6000 product, where it provides up to 15% performance improvement and on TPC-C and TPC-D. In addition, Oracle, Informix, and Sybase have been experimenting with FDPR, not being able to resist this substantial performance improvement provided by the technology.
Future directions for the technology include improving the current approach, using FDPR for additional static optimizations and data cache optimization.
About IBM Haifa
The IBM Research and Development Labs in Israel have been active for almost 30 years in areas such as: VLSI design, verification technologies, distributed computing, system availability, operating systems, storage subsystems, computer communication, programming languages, multimedia, mathematical models and applications, optimization techniques, and e-business and security.
Visit our web site at http://www.haifa.il.ibm.com