Patents by Inventor John Joseph Stecher
John Joseph Stecher has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).
-
Patent number: 9400667Abstract: A method, system and computer program product for optimizing memory usage associated with duplicate string objects in a Java virtual machine. The method comprises scanning a heap of the Java virtual machine at the end of the start-up process of the virtual machine to identify duplicate strings associated with the virtual machine, storing the identified strings in a string cache file, and determining whether a new string that needs to be created during start-up already exists in the string cache file. The duplicate strings are added to an interned strings table. A reference to a duplicate string is returned if a string to be created is already in the string cache file.Type: GrantFiled: December 20, 2013Date of Patent: July 26, 2016Assignee: International Business Machines CorporationInventors: Curtis E. Hrischuk, Andrew Russell Low, Peter Duncan Shipton, John Joseph Stecher
-
Patent number: 8839215Abstract: A method, system and computer program product for optimizing memory usage associated with duplicate string objects in a Java virtual machine. The method comprises scanning a heap of the Java virtual machine at the end of the start-up process of the virtual machine to identify duplicate strings associated with the virtual machine, storing the identified strings in a string cache file, and determining whether a new string that needs to be created during start-up already exists in the string cache file. The duplicate strings are added to an interned strings table. A reference to a duplicate string is returned if a string to be created is already in the string cache file.Type: GrantFiled: July 19, 2010Date of Patent: September 16, 2014Assignee: International Business Machines CorporationInventors: Curtis E. Hrischuk, Andrew Russell Low, Peter Duncan Shipton, John Joseph Stecher
-
Publication number: 20140115585Abstract: A method, system and computer program product for optimizing memory usage associated with duplicate string objects in a Java virtual machine. The method comprises scanning a heap of the Java virtual machine at the end of the start-up process of the virtual machine to identify duplicate strings associated with the virtual machine, storing the identified strings in a string cache file, and determining whether a new string that needs to be created during start-up already exists in the string cache file. The duplicate strings are added to an interned strings table. A reference to a duplicate string is returned if a string to be created is already in the string cache file.Type: ApplicationFiled: December 20, 2013Publication date: April 24, 2014Applicant: IBM CORPORATIONInventors: Curtis E. HRISCHUK, Andrew Russell LOW, Peter Duncan SHIPTON, John Joseph STECHER
-
Patent number: 8478738Abstract: A method, apparatus and program product deallocate an object from a memory heap in a virtual machine environment by, in part, determining that the object is replaceable using an object reference associated with the object. The object may additionally be automatically determined as being properly removable by using a value indicative of a number of object references associated with the object. Where these conditions are met, the object may be removed from the memory heap. Where a new object can fit into a space within the memory from which the object was removed, the new object may be automatically allocated into the space. The object may be designated as being replaceable using automated or manual processes. A garbage collector algorithm may additionally execute, as needed.Type: GrantFiled: December 10, 2007Date of Patent: July 2, 2013Assignee: International Business Machines CorporationInventors: Steven Joseph Branda, William T. Newport, John Joseph Stecher, Robert E. Wisniewski
-
Patent number: 8438161Abstract: A database access facility for accessing databases includes a monitoring function which monitors accesses by requestors of database data. The monitoring function tracks which database fields are requested to dynamically determine the fields which the application needs. Once sufficient tracking data is obtained, subsequent accesses to the database on behalf of an application are automatically modified by the application server to request only the fields which are likely to be needed. Preferably, the database access facility is an application server for one or middle tier applications which access the database on behalf of multiple clients in a three-tier client-server environment.Type: GrantFiled: March 19, 2012Date of Patent: May 7, 2013Assignee: International Business Machines CorporationInventors: William T. Newport, John Joseph Stecher, Robert Wisniewski
-
Patent number: 8429635Abstract: In an embodiment, a conditional branch is detected that selects between execution of a first alternative block and a second alternative block. A first count and a second count are saved, where the first count is a number of times the first alternative block was executed, and the second count is a number of times the second alternative block was executed. If the first count is greater than a threshold and the second count equals zero, the first alternative block is compiled into first alternative block object code and the second alternative block is not compiled. If the first count is not greater than the threshold, the first alternative block is compiled into the first alternative block object code and the second alternative block is compiled into second alternative block object code.Type: GrantFiled: October 28, 2009Date of Patent: April 23, 2013Assignee: International Buisness Machines CorporationInventors: Steven Joseph Branda, John Joseph Stecher
-
Patent number: 8327386Abstract: Disclosed is an apparatus, method, service product, and program product which each provide an enhanced, registration-based event handler mechanism. Listener programs are located and compiled before notification is needed. When notification is ultimately required, the pre-located listeners can be called directly without incurring the performance expense associated with first locating and then calling each listener.Type: GrantFiled: January 25, 2012Date of Patent: December 4, 2012Assignee: International Business Machines CorporationInventors: William T. Newport, John Joseph Stecher
-
Publication number: 20120179679Abstract: A database access facility for accessing databases includes a monitoring function which monitors accesses by requestors of database data. The monitoring function tracks which database fields are requested to dynamically determine the fields which the application needs. Once sufficient tracking data is obtained, subsequent accesses to the database on behalf of an application are automatically modified by the application server to request only the fields which are likely to be needed. Preferably, the database access facility is an application server for one or middle tier applications which access the database on behalf of multiple clients in a three-tier client-server environment.Type: ApplicationFiled: March 19, 2012Publication date: July 12, 2012Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: William T. Newport, John Joseph Stecher, Robert Wisniewski
-
Publication number: 20120131598Abstract: Disclosed is an apparatus, method, service product, and program product which each provide an enhanced, registration-based event handler mechanism. Listener programs are located and compiled before notification is needed. When notification is ultimately required, the pre-located listeners can be called directly without incurring the performance expense associated with first locating and then calling each listener.Type: ApplicationFiled: January 25, 2012Publication date: May 24, 2012Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: William T. Newport, John Joseph Stecher
-
Patent number: 8180780Abstract: A method, apparatus and program product facilitate the collaborative development of an algorithm by, in part, displaying an algorithm associated with a performance attribute, and receiving user input relating to the algorithm from a plurality of networked users. The performance attribute of the algorithm may be automatically modified based on the user input. The modified performance attribute may be displayed to the plurality of networked users. A query may be received from a user interested in the algorithm. In response to the user query, the algorithm may be located from among a plurality of algorithms. For instance, the algorithm may be located from among the plurality of algorithms by matching the performance attribute to a criterion of the user query. Alternatively or additionally, the algorithm may be located by matching the performance attribute to a profile of the user submitting the user query.Type: GrantFiled: December 6, 2007Date of Patent: May 15, 2012Assignee: International Business Machines CorporationInventors: Eric Nels Herness, William T. Newport, John Joseph Stecher, Robert E. Wisniewski
-
Patent number: 8166077Abstract: A program product, apparatuses, and methods provide for the collection of profile information for a component of a software program by generating a data structure that maps at least one method to a component. The method includes a name, and the data structure maps the method to the component using at least a portion of the name of the method. A class or pattern may also be mapped to a component. Furthermore, during profiling, a statistic associated with the execution of the method is determined; the data structure is accessed using the name of the method to determine the associated component; and the determined statistic is associated with the determined component. By doing so, method level and class level information can be aggregated to improve profiling, often leading to a clearer picture of which components are contributing to the performance and memory footprint of large scale software programs.Type: GrantFiled: September 30, 2008Date of Patent: April 24, 2012Assignee: International Business Machines CorporationInventors: Steven Joseph Branda, John Joseph Stecher, Robert E. Wisniewski
-
Patent number: 8146091Abstract: A method, apparatus, and program product manage a plurality of resources of at least one logically partitioned computing system of the type that includes a plurality of logical partitions managed by a partition manager with an application level administrative console resident in a logical partition of the computing system. Each logical partition is allocated at least a portion of the plurality of resources. A user request to adjust the allocation of at least a portion of the resources using the administrative console is received. The resources of the logically partitioned computing system to adjust in order to satisfy the user request are determined using the application level administrative console. The application level administrative console accesses the partition manager through a resource allocation interface to adjust the determined resources of the logically partitioned computing system in order to satisfy the user request.Type: GrantFiled: May 1, 2008Date of Patent: March 27, 2012Assignee: International Business Machines CorporationInventors: Chris D. Johnson, Kristi Paula Peterson, John Joseph Stecher, Matthew Ryan Weaver
-
Patent number: 8140529Abstract: A database access facility for accessing databases includes a monitoring function which monitors accesses by requesters of database data. The monitoring function tracks which database fields are requested to dynamically determine the fields which the application needs. Once sufficient tracking data is obtained, subsequent accesses to the database on behalf of an application are automatically modified by the application server to request only the fields which are likely to be needed. Preferably, the database access facility is an application server for one or middle tier applications which access the database on behalf of multiple clients in a three-tier client-server environment.Type: GrantFiled: July 28, 2005Date of Patent: March 20, 2012Assignee: International Business Machines CorporationInventors: William T. Newport, John Joseph Stecher, Robert Wisniewski
-
Patent number: 8112765Abstract: Disclosed is an apparatus, method, service product, and program product which each provide an enhanced, registration-based event handler mechanism. Listener programs are located and compiled before notification is needed. When notification is ultimately required, the pre-located listeners can be called directly without incurring the performance expense associated with first locating and then calling each listener.Type: GrantFiled: March 19, 2009Date of Patent: February 7, 2012Assignee: International Business Machines CorporationInventors: William T. Newport, John Joseph Stecher
-
Publication number: 20120017204Abstract: A method, system and computer program product for optimizing memory usage associated with duplicate string objects in a Java virtual machine. The method comprises scanning a heap of the Java virtual machine at the end of the start-up process of the virtual machine to identify duplicate strings associated with the virtual machine, storing the identified strings in a string cache file, and determining whether a new string that needs to be created during start-up already exists in the string cache file. The duplicate strings are added to an interned strings table. A reference to a duplicate string is returned if a string to be created is already in the string cache file.Type: ApplicationFiled: July 19, 2010Publication date: January 19, 2012Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Curtis E. Hrischuk, Andrew Russell Low, Peter Duncan Shipton, John Joseph Stecher
-
Patent number: 8041690Abstract: A method, apparatus and program product dynamically enlist a plurality of resources to be committed by a transaction during execution of the transaction and store information about each enlisted resource in the plurality of resources with the transaction in a transaction log, including information about a state of each resource, to facilitate recovery of the transaction. Enlisting and storing may be performed during the execution of the transaction, and the resources to be committed by the transaction may be unknown prior to execution of the transaction. By doing so, a more complete record of all the resources that were enlisted during runtime may be maintained.Type: GrantFiled: January 27, 2009Date of Patent: October 18, 2011Assignee: International Business Machines CorporationInventors: William Thomas Newport, John Joseph Stecher
-
Patent number: 7996401Abstract: In an embodiment, a selection of an original transaction is received. In response to the selection of the original transaction, a call stack of the application that sends the original transaction during a learn mode of the application is saved. A specification of a new transaction and a location of the new transaction with respect to the original transaction in an transaction stream is received. During a production mode of the application, the original transaction is received from the application. A determination is made that the call stack of the application during the production mode matches the saved call stack of the application during the learn mode. In response to the determination, the new transaction is inserted at the location into a transaction stream that is sent to a database.Type: GrantFiled: May 31, 2007Date of Patent: August 9, 2011Assignee: International Business Machines CorporationInventors: William Thomas Newport, John Joseph Stecher, Robert Wisniewski
-
Patent number: 7904691Abstract: A computer program communicates with a partition manager in the logical partition where the computer program is run. When resource allocation in the logical partition dynamically changes, the partition manager notifies the computer program of the configuration change. The computer program may autonomically adjust one or more configuration settings that affect performance of the computer program to dynamically tune the computer program to optimal performance each time the allocation of resources within the logical partition changes. The partition manager may notify the computer program of an impending change in resource allocation in the logical partition that runs the computer program, which allows the computer program to reconfigure its configuration setting(s) before the partition manager changes the resource allocation in the logical partition.Type: GrantFiled: March 28, 2008Date of Patent: March 8, 2011Assignee: International Business Machines CorporationInventors: Steven Joseph Branda, John Joseph Stecher
-
Patent number: 7877734Abstract: An apparatus, program product and method associate a unique key with routines in an application to enable a profiler to ascertain whether to collect profile information for a routine during its execution. A key may be generated, for example, during deployment or installation of an application in an application server or other runtime environment, and subsequently associated with the routines in the application, e.g., by storing the key in the class and/or library files for the application. By doing so, each application in a runtime environment may be uniquely identified by a profiler during execution, such that profile information will only be collected for those applications for which profiling has been enabled.Type: GrantFiled: January 12, 2006Date of Patent: January 25, 2011Assignee: International Business Machines CorporationInventors: Steven Joseph Branda, John Joseph Stecher
-
Patent number: 7818743Abstract: A method, apparatus, system, and signal-bearing medium that, in an embodiment, wait for expiration of a poll interval and in response to expiration of the poll interval, retrieve data regarding locks on objects and store the data in a log. In an embodiment, the stored data may include an identifier of the lock, a name of a class from which the threads were instantiated, a number of the threads, and a thread stack. The threads are waiting on the locks, and the lock wait times for the threads are calculated and stored in the log. The lock wait time is the time that the respective thread has waited on the lock. If any of the lock wait times exceeds a threshold, an identifier of the thread associated with the lock wait time that exceeds the threshold is stored in the log.Type: GrantFiled: September 22, 2005Date of Patent: October 19, 2010Assignee: International Business Machines CorporationInventors: Steven Joseph Branda, John Joseph Stecher