Search Images Maps Play YouTube News Gmail Drive More »
Advanced Patent Search | Page images | Web History | Sign in

Patents

  

Illllllllllllllllllllllllllllllllllllllllllllllllll

US007254810B2

(12) United States Patent

Barsness et al.

(io) Patent No.: (45) Date of Patent:

US 7,254,810 B2 Aug. 7, 2007

(54) APPARATUS AND METHOD FOR USING

DATABASE KNOWLEDGE TO OPTIMIZE A
COMPUTER PROGRAM

(75) Inventors: Eric Lawrence Barsness, Pine Island,
MN (US); Richard Dean Dettinger,
Rochester, MN (US); John Matthew
Santosuosso, Rochester, MN (US)

(73) Assignee: International Business Machines Corporation, Armonk, NY (US)

( * ) Notice: Subject to any disclaimer, the term of this patent is extended or adjusted under 35 U.S.C. 154(b) by 837 days.

(21) Appl. No.: 10/124,936

(22) Filed: Apr. 18, 2002

(65) Prior Publication Data

US 2003/0200537 Al Oct. 23, 2003

[blocks in formation]

6,067,641 A * 5/2000 Mclnemey et al 714/38

6,081,812 A * 6/2000 Boggs et al 707/202

6,356,887 Bl * 3/2002 Berenson et al 707/2

6,460,043 Bl * 10/2002 Tabbara et al 707/100

6,470,335 Bl * 10/2002 Marusak 707/4

6,484,188 Bl* 11/2002 Kwong et al 707/206

6,601,058 B2* 7/2003 Forster et al 707/3

6,604,102 B2* 8/2003 Klein et al 707/4

6,718,541 B2* 4/2004 Ostanevich et al 717/149

6,789,071 Bl * 9/2004 Kapoor et al 707/2

6,847,978 B2 * 1/2005 Ellis et al 707/102

6,865,735 Bl * 3/2005 Sirer et al 717/158

2005/0065911 Al* 3/2005 Ellis et al 707/2

2005/0278713 Al* 12/2005 Goodwin et al 717/151

2007/0006191 Al* 1/2007 Franz et al 717/146

[blocks in formation]
[blocks in formation]

A code optimizer is used to optimize a computer program that references a database by determining the characteristics of the database and making suitable optimizations based on the characteristics of the database. By taking into account the characteristics of a database referenced in the computer program, the optimizer may make suitable optimizations to the computer program. Such optimizations include, without limitation, removing unnecessary calls to the database, removing unnecessary loops, removing unnecessary database operations, providing compile-time errors, and replacing dynamic calls with static data.

29 Claims, 9 Drawing Sheets

[blocks in formation]
[merged small][merged small][merged small][merged small][graphic][merged small][merged small][merged small][merged small][merged small][merged small][merged small][merged small][merged small][merged small][merged small][merged small][merged small][merged small][merged small][merged small][merged small][merged small][merged small][subsumed][merged small][merged small][merged small][merged small][graphic][merged small][merged small]
[blocks in formation]
[merged small][merged small][merged small][graphic][merged small][merged small][merged small][merged small][merged small][merged small][merged small][merged small][merged small][merged small][merged small][merged small][merged small]
« PreviousContinue »