Patents by Inventor Steven Joseph Branda

Steven Joseph Branda 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: 8478738
    Abstract: 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: Grant
    Filed: December 10, 2007
    Date of Patent: July 2, 2013
    Assignee: International Business Machines Corporation
    Inventors: Steven Joseph Branda, William T. Newport, John Joseph Stecher, Robert E. Wisniewski
  • Patent number: 8429635
    Abstract: 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: Grant
    Filed: October 28, 2009
    Date of Patent: April 23, 2013
    Assignee: International Buisness Machines Corporation
    Inventors: Steven Joseph Branda, John Joseph Stecher
  • Patent number: 8387041
    Abstract: A method, apparatus, and program product to allocate processor resources to a plurality of logical partitions in a computing device including a plurality of processors, each processor having at least one general purpose processing element and a plurality of synergistic processing elements. General purpose processing element resources and synergistic processing element resources are separately allocated to each logical partition. The synergistic processing element resources to each logical partition are allocated such that each synergistic processing element is assigned to a logical partition exclusively. At least one virtual processor is allocated for each logical partition. The at least one virtual processor may be allocated virtual general purpose processing element resources and virtual synergistic processing element resources that correspond to the general purpose processing element resources and synergistic processing element resources allocated to the logical partition.
    Type: Grant
    Filed: January 9, 2008
    Date of Patent: February 26, 2013
    Assignee: International Business Machines Corporation
    Inventors: Steven Joseph Branda, Christopher James Kundinger, Adam Thomas Stallman, Brett Michael Yokom
  • Patent number: 8166077
    Abstract: 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: Grant
    Filed: September 30, 2008
    Date of Patent: April 24, 2012
    Assignee: International Business Machines Corporation
    Inventors: Steven Joseph Branda, John Joseph Stecher, Robert E. Wisniewski
  • Patent number: 7904691
    Abstract: 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: Grant
    Filed: March 28, 2008
    Date of Patent: March 8, 2011
    Assignee: International Business Machines Corporation
    Inventors: Steven Joseph Branda, John Joseph Stecher
  • Patent number: 7877734
    Abstract: 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: Grant
    Filed: January 12, 2006
    Date of Patent: January 25, 2011
    Assignee: International Business Machines Corporation
    Inventors: Steven Joseph Branda, John Joseph Stecher
  • Patent number: 7818743
    Abstract: 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: Grant
    Filed: September 22, 2005
    Date of Patent: October 19, 2010
    Assignee: International Business Machines Corporation
    Inventors: Steven Joseph Branda, John Joseph Stecher
  • Publication number: 20100083228
    Abstract: 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: Application
    Filed: September 30, 2008
    Publication date: April 1, 2010
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Steven Joseph Branda, John Joseph Stecher, Robert E. Wisniewski
  • Patent number: 7647336
    Abstract: According to the preferred embodiments, an apparatus and method is described for creating a real-time class package to class archive file mapping index that improves the performance of a class loader to load needed classes in an object oriented programming environment. In preferred embodiments, the class loader includes a mapping mechanism that creates and maintains a real-time class package to file archive mapping index. In preferred embodiments, the mapping mechanism optimizes access to the file archive mapping index. In a preferred embodiment, when the mapping mechanism finds a entry in the file archive mapping index for the package, but the class is not found, the class is searched in the class path beginning from the last file archive listed in the index to optimize the search. In other embodiments, the class loader includes a large package list that is used to further optimize access to the archive index.
    Type: Grant
    Filed: February 9, 2006
    Date of Patent: January 12, 2010
    Assignee: International Business Machines Corporation
    Inventors: Steven Joseph Branda, John Joseph Stecher
  • Patent number: 7644141
    Abstract: An apparatus and method is described for identification of applications that benefit from HA features and assisting a system administrator in the installation of the applications in an application server with HA features configured properly for run-time operation. In preferred embodiments, an HA policy engine allows a system administrator to set up one or more general HA policies in a policy table. In a preferred embodiment, an HA run-time engine uses the policies in the policy table to configure new applications being installed in the application server. Other embodiments include an application inspection unit that introspects the byte code of the application as well as deployment descriptors to determine which features and APIs are being used that can take advantage of HA functions.
    Type: Grant
    Filed: March 23, 2006
    Date of Patent: January 5, 2010
    Assignee: International Business Machines Corporation
    Inventors: Steven Joseph Branda, John Joseph Stecher
  • Patent number: 7561178
    Abstract: A method, apparatus and computer program product are provided for synchronizing separate compressed video and text streams to provide lightweight closed captioning and instant messaging integration with video conferencing. A video encoder encodes a video stream and periodically generates a synchronization frame event. Each generated synchronization frame event has a unique ID. A text recording agent receives the periodically generated synchronization frame events, and generates text packets associating stored text with the synchronization frame event. A video decoder decodes the video stream, periodically generating the synchronization frame event having the unique ID. A text display agent receives the periodically generated synchronization frame events and associates stored text packets with the synchronization frame events.
    Type: Grant
    Filed: September 13, 2005
    Date of Patent: July 14, 2009
    Assignee: International Business Machines Corporation
    Inventors: Randall Paul Baartman, Steven Joseph Branda, John Joseph Stecher
  • Publication number: 20090178049
    Abstract: A method, apparatus, and program product to allocate processor resources to a plurality of logical partitions in a computing device including a plurality of processors, each processor having at least one general purpose processing element and a plurality of synergistic processing elements. General purpose processing element resources and synergistic processing element resources are separately allocated to each logical partition. The synergistic processing element resources to each logical partition are allocated such that each synergistic processing element is assigned to a logical partition exclusively. At least one virtual processor is allocated for each logical partition. The at least one virtual processor may be allocated virtual general purpose processing element resources and virtual synergistic processing element resources that correspond to the general purpose processing element resources and synergistic processing element resources allocated to the logical partition.
    Type: Application
    Filed: January 9, 2008
    Publication date: July 9, 2009
    Inventors: Steven Joseph Branda, Christopher James Kundinger, Adam Thomas Stallman, Brett Michael Yokom
  • Publication number: 20090150465
    Abstract: 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: Application
    Filed: December 10, 2007
    Publication date: June 11, 2009
    Inventors: Steven Joseph Branda, William T. Newport, John Joseph Stecher, Robert E. Wisniewski
  • Publication number: 20090150498
    Abstract: A program product, an apparatus, and a method that identify a plurality of related electronic messages and combine the plurality of the related electronic messages into a composite view are provided. Also provided is a method that searches a first account of a first user to identify a plurality of related electronic messages stored in the first account and searches a second account of a second user to identify at least one other electronic message that is associated with the plurality. By doing so, a user may be provided with a more complete email chain, often leading to an increase in productivity, improved collaboration, and a reduction of duplicate data.
    Type: Application
    Filed: December 7, 2007
    Publication date: June 11, 2009
    Inventors: Steven Joseph Branda, William Thomas Newport, John Joseph Stecher
  • Patent number: 7543182
    Abstract: An apparatus, program product and method improve software updates processes within a logically partitioned environment by creating a new, proxy partition having substantially the same operating characteristics as an original partition, in addition to an updated software application. Network connectivity is transferred seamlessly over from the original partition to the new partition. While “hidden” from the network, the original partition continues to operate with reduced resources as the new partition takes over production operations. As such, the original partition remains in a ready state against the possibility of a problem arising with the new partition. In such an instance, network connectivity is transferred back over to the original partition, which resumes production operations as before.
    Type: Grant
    Filed: January 12, 2006
    Date of Patent: June 2, 2009
    Assignee: International Business Machines Corporation
    Inventors: Steven Joseph Branda, Matthew Ara Goshgarian, John Joseph Stecher
  • Publication number: 20090119352
    Abstract: A method and apparatus to determine if an object should be instantiated in a nursery space or in a long lived space. Information as to real or estimated longevity of an object instantiated from a class is used to cause instantiation in the long lived space if the object instantiated is likely to be relatively long lived. Otherwise, default instantiation is made to a nursery space in which frequent garbage collection is performed to free up space by eliminating objects that are no longer used.
    Type: Application
    Filed: November 5, 2007
    Publication date: May 7, 2009
    Inventors: Steven Joseph Branda, William Thomas Newport, John Joseph Stecher
  • Patent number: 7461231
    Abstract: 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: Grant
    Filed: January 12, 2006
    Date of Patent: December 2, 2008
    Assignee: International Business Machines Corporation
    Inventors: Steven Joseph Branda, John Joseph Stecher
  • Publication number: 20080177977
    Abstract: 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 automatically 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: Application
    Filed: March 28, 2008
    Publication date: July 24, 2008
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Steven Joseph Branda, John Joseph Stecher
  • Publication number: 20080177976
    Abstract: 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: Application
    Filed: March 28, 2008
    Publication date: July 24, 2008
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Steven Joseph Branda, John Joseph Stecher