Patents by Inventor Steven J. Branda

Steven J. 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: 8856742
    Abstract: In an embodiment, a first debug agent at a first computer receives a packet. The first debug agent adds a debug command and an identifier of the first debug agent to the packet and sends the packet to a receiving computer. A second debug agent at the receiving computer removes the debug command and the identifier of the first debug agent from the packet and sends the packet to a second program that executes at the receiving computer. The second debug agent further executes the debug command, which causes the second program that executes on the receiving computer to halt execution at a breakpoint or address watch memory location. The second debug agent sends the state of the second program to the first debug agent, which presents, at the first computer, the state and a listing of the second program.
    Type: Grant
    Filed: June 11, 2010
    Date of Patent: October 7, 2014
    Assignee: International Business Machines Corporation
    Inventors: Steven J. Branda, William T. Newport, John J. Stecher, Robert Wisniewski
  • Patent number: 8261245
    Abstract: A computer implemented method, apparatus and program product for analyzing performance data particular to an algorithm using a profiler algorithm, and automatically associates the performance data with a reference clock time. The performance data may be automatically associated with a tag, also associated with the reference clock time. Using the tag, the performance data may be associated with a portion of the algorithm. For instance, the tag may be associated with a corresponding tag associated with the algorithm. User input may be received that designates both the tag and an additional tag associated with the program code. Aspects may identify tags in the performance data that correspond to both the tag and additional tag of program code. The portion of the performance data bounded by the identified tags in the performance data may be retrieved and displayed to a user. In this manner, the performance data may be automatically associated with a portion of algorithm.
    Type: Grant
    Filed: January 22, 2008
    Date of Patent: September 4, 2012
    Assignee: International Business Machines Corporation
    Inventors: Steven J. Branda, John J. Stecher
  • Publication number: 20110307871
    Abstract: In an embodiment, a first debug agent at a first computer receives a packet. The first debug agent adds a debug command and an identifier of the first debug agent to the packet and sends the packet to a receiving computer. A second debug agent at the receiving computer removes the debug command and the identifier of the first debug agent from the packet and sends the packet to a second program that executes at the receiving computer. The second debug agent further executes the debug command, which causes the second program that executes on the receiving computer to halt execution at a breakpoint or address watch memory location. The second debug agent sends the state of the second program to the first debug agent, which presents, at the first computer, the state and a listing of the second program.
    Type: Application
    Filed: June 11, 2010
    Publication date: December 15, 2011
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Steven J. Branda, William T. Newport, John J. Stecher, Robert Wisniewski
  • Patent number: 8060812
    Abstract: A system for class verification includes a data storage device holding verification caches; and a host system in communication with the data storage device, the host system executing a virtual machine (VM), including a class verifier. The VM is configured to perform: initiating loading of a class; searching for the class in the verification caches, wherein a record from the verification caches, including a checksum, is returned upon locating the class; comparing the checksum in the record to a checksum of the class being loaded; completing the loading of the class when the checksums match; performing bytecode verification of the class upon one of: a checksum comparison mismatch, and a failure to locate the class in the verification caches; calculating new checksum of the class upon a successful bytecode verification; and storing the new checksum in the verification caches.
    Type: Grant
    Filed: July 27, 2007
    Date of Patent: November 15, 2011
    Assignee: International Business Machines Corporation
    Inventors: Steven J. Branda, John J. Stecher
  • Publication number: 20110099542
    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: Application
    Filed: October 28, 2009
    Publication date: April 28, 2011
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Steven J. Branda, John J. Stecher
  • Patent number: 7742476
    Abstract: The present invention a synchronous peer to peer transfer model that utilizes all available network bandwidth to deploy application code to an entire cluster as fast as it can be sent to one machine. A method in accordance with an embodiment of the present invention includes: determining a number N of simultaneous connections that should be opened to the cluster members to maximize network bandwidth; and synchronously deploying the application to the cluster members using the N simultaneous connections.
    Type: Grant
    Filed: August 4, 2006
    Date of Patent: June 22, 2010
    Assignee: International Business Machines Corporation
    Inventors: Steven J. Branda, Robert V. Geiner, John J. Stecher
  • Patent number: 7739698
    Abstract: The “API Usage Tool” (AUT) comprises an Interactive Developer Environment Plug-in (IDEP) and a Web Service Component (WSC). The IDEP opens the source code file containing API method calls, identifies the API method calls in the source code, and saves the identified API method calls to an API usage log. The WSC searches API usage data sheets for usage, best practices and known bugs for each identified API method call. The WSC generates an API usage compilation based on the identified API method calls. The IDEP compares the API usage compilation to the dynamic data in the usage log, looking for conflicts between the compiled usage and the actual usage in the source code. The IDEP marks any API method calls in the source code that do not comport with the compiled usage guidelines.
    Type: Grant
    Filed: May 25, 2006
    Date of Patent: June 15, 2010
    Assignee: International Business Machines Corporation
    Inventors: Steven J. Branda, Robert V. Geiner, John J. Stecher
  • Patent number: 7685604
    Abstract: A method for capturing and converting legacy applications into a Business Process Execution Language (BPEL) model supporting a Service Oriented Architecture (SOA), the method comprising: starting a recorder for recording the legacy applications; mapping the plurality of variables of the legacy applications to a plurality of fields and to a plurality of sub-fields of the BPEL model; highlighting and identifying the plurality of fields and the plurality of sub-fields; identifying and generating partner links; identifying additional input variables of the legacy applications; mapping the additional input variables of the legacy applications to arbitrary variables; repeating the previous steps until an end result is generated; and ending the recorder.
    Type: Grant
    Filed: June 29, 2006
    Date of Patent: March 23, 2010
    Assignee: International Business Machines Corporation
    Inventors: Randall P. Baartman, Steven J. Branda, Christopher D. Johnson, Bhushan K. Lokhande, John J Stecher
  • Publication number: 20100037244
    Abstract: A method for providing inline service-oriented architecture application fragments is disclosed. A remote procedure call is initially from a client application executing on a first data processing system by an application server executing on a second data processing system. The remote procedure call is a call to execute a service in a service-oriented architecture hosted by the application server. The remote procedure call includes a metadata tag indicating a preference for having computer-executable code corresponding to the service transmitted from the second data processing system to the first data processing system for execution on the first data processing system. A determination is made whether or not the service supports transmitting computer-executable code. If the service supports the transmitting computer-executable code, a service unit of work is transmitted to the first data processing system.
    Type: Application
    Filed: August 8, 2008
    Publication date: February 11, 2010
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: STEVEN J. BRANDA, WILLIAM T. NEWPORT, JOHN J. STECHER, ROBERT WISNIEWSKI
  • Publication number: 20090282414
    Abstract: Middleware may dynamically restrict or otherwise allocate computer resources in response to changing demand and based on prioritized user access levels. Users associated with a relatively low priority may have their resource access delayed in response to high demand, e.g., processor usage. Users having a higher priority may experience uninterrupted access during the same period and until demand subsides.
    Type: Application
    Filed: May 7, 2008
    Publication date: November 12, 2009
    Inventors: Steven J. Branda, John J. Stecher, Robert Wisniewski
  • Publication number: 20090265704
    Abstract: Embodiments of the invention provide methods, systems, and articles of manufacture for managing and executing applications in a clustered server system. In one embodiment, an application may be installed at an application server having the associated lowest energy cost of maintenance, thereby lowering the cost of operating the system. In another embodiment, requests for services from the system may be routed to application servers having the lowest energy cost, thereby lowering the cost of operating the system.
    Type: Application
    Filed: April 17, 2008
    Publication date: October 22, 2009
    Inventors: Steven J. Branda, Chris D. Johnson, John J. Stecher, Matthew R. Weaver
  • Publication number: 20090265419
    Abstract: Embodiments of the invention provide methods, systems, and articles of manufacture for managing and executing applications in a clustered server system. In one embodiment, an application may be installed at an application server having the associated lowest energy cost of maintenance, thereby lowering the cost of operating the system. In another embodiment, requests for services from the system may be routed to application servers having the lowest energy cost, thereby lowering the cost of operating the system.
    Type: Application
    Filed: April 17, 2008
    Publication date: October 22, 2009
    Inventors: Steven J. Branda, Chris D. Johnson, John J. Stecher, Matthew R. Weaver
  • Publication number: 20090254918
    Abstract: A method, system, and computer program product for optimizing “Hypertext Preprocessor” (PHP) processes by identifying the PHP pages which are active on a server and forwarding requests for specific pages to a processor which has recently processed that page. A request processing optimization (RPO) utility assigns an initial request received at the server for a PHP page based on a number of factors which may include a relative usage level of a processor within a pool of available processors on a server. The RPO utility assigns a request to additional processors based on: (1) a threshold frequency of page requests; and (2) a resource intensive factor of a page request measured by average response time of the page request. The assignment of PHP pages to a particular processor(s) enhances cache performance since the requisite code for a specific PHP page is loaded into the processor's cache.
    Type: Application
    Filed: April 3, 2008
    Publication date: October 8, 2009
    Inventors: Steven J. Branda, William T. Newport, John J. Stecher, Robert Wisniewski
  • Publication number: 20090228537
    Abstract: A method, apparatus and program product include an object heap having memory space dedicated to individual threads. Individual threads may allocate objects into their respective, assigned spaces. If their space should become full, the thread may allocate an object to a shared space of the object heap. Filling the space in this manner may allow the thread to continue working, without pauses. The thread may be continued to allocate objects and otherwise complete the work until it is done, and before any associated cleanup and consequent pauses. A garbage collection algorithm minimizes pauses for a given transaction by making the garbage collection scheme aware of the presence of end to end transactions. This awareness may allow the system to make appropriate decisions for optimizing object allocation processes.
    Type: Application
    Filed: March 7, 2008
    Publication date: September 10, 2009
    Inventors: Steven J. Branda, William T. Newport, John J. Stecher, Robert Wisniewski
  • Publication number: 20090216784
    Abstract: A method of storing probabilistic data in accordance with an exemplary embodiment of the present invention includes capturing a first instance of a probabilistic data sample, storing the first instance of the probabilistic data sample as a probabilistic data record, collecting a second instance of the probabilistic data sample, refining the probabilistic data record with the second instance of the probabilistic data sample to establish a refined probabilistic data record, and saving the refined probabilistic data record in a probabilistic data record database.
    Type: Application
    Filed: February 26, 2008
    Publication date: August 27, 2009
    Inventors: Steven J. Branda, William T. Newport, John J. Stecher, Robert Wisniewski
  • Publication number: 20090204956
    Abstract: A computer implemented method, for multiple-mode software license enforcement on a client, including encoding in the software at least one predetermined event that occurs prior to a validation of the software program and encoding it with different functional states. The software's resulting modification may be of reduced or increased functionality or both reduced and increased functionality. The predetermined events may be the elapsing of a predetermined length of time, the entry of a valid registration key or an act of validating. Each of these events may take place a multiple number of times.
    Type: Application
    Filed: February 8, 2008
    Publication date: August 13, 2009
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Steven J. Branda, Surya V. Duggirala, Bhushan K. Lokhande, Timothy P. Pickett, John J. Stecher
  • Publication number: 20090187890
    Abstract: A computer implemented method, apparatus and program product for analyzing performance data particular to an algorithm using a profiler algorithm, and automatically associates the performance data with a reference clock time. The performance data may be automatically associated with a tag, also associated with the reference clock time. Using the tag, the performance data may be associated with a portion of the algorithm. For instance, the tag may be associated with a corresponding tag associated with the algorithm. User input may be received that designates both the tag and an additional tag associated with the program code. Aspects may identify tags in the performance data that correspond to both the tag and additional tag of program code. The portion of the performance data bounded by the identified tags in the performance data may be retrieved and displayed to a user. In this manner, the performance data may be automatically associated with a portion of algorithm.
    Type: Application
    Filed: January 22, 2008
    Publication date: July 23, 2009
    Inventors: Steven J. Branda, John J. Stecher
  • Patent number: 7509370
    Abstract: The present invention provides a method for optimizing the processing of backend transactions by receiving related transactions for processing from a program executing on a computer, and prioritizing the related transactions by determining: a degree of necessity for each related transaction; and which of the related transactions can be executed in parallel by determining which related transactions depend upon the successful completion of a transaction. The method further includes executing all related transactions that can be in parallel, and do not depend upon the successful completion of a transaction, executing related transactions that depend upon the successful completion of a transaction if it successful completes, canceling execution of any of the related transactions that depend upon the transaction that did not successful complete and has the degree of necessity of critical or best effort, and returning to the program any data resulting from the execution of the related transactions.
    Type: Grant
    Filed: May 15, 2008
    Date of Patent: March 24, 2009
    Assignee: International Business Machines Corporation
    Inventors: Steven J. Branda, William T. Newport, John J. Stecher, Robert Wisniewski
  • Publication number: 20090043557
    Abstract: A network appliance is emulated in a logically partitioned environment. Activity of a logical partition (LPAR) acting as a network appliance is monitored. When a change in activity occurs in the LPAR acting as the network appliance, a set of business logic partitions served by the LPAR acting as the network appliance is determined, and resource utilization of each business logic partition served by the LPAR acting as the network appliance is determined. A determination is also made whether each business logic partition served by the LPAR acting as the network appliance needs more or less resources. Availability of resources is determined, and resources are allocated or deallocated to or from the business logic partitions served by the LPAR acting as the network appliance based on the need for resources and the availability of resources for each business logic partition.
    Type: Application
    Filed: August 8, 2007
    Publication date: February 12, 2009
    Inventors: Steven J. Branda, Christopher J. Kundinger, Adam T. Stallman, Brett M. Yokom
  • Patent number: 7490327
    Abstract: The present invention provides a method for optimizing the processing of backend transactions. The method operates by identifying a transaction group comprising related transactions for processing from a program executing on a computer and determining a degree of necessity for each of the related transactions, where the degree of necessity represents a predetermined time period given for each of the plurality of related transactions to successfully complete execution. The method includes determining which of the plurality of related transactions depend upon the successful completion of a transaction, assigning a priority for each of the related transactions, and scheduling the execution of the related transactions based upon priority. The method further includes canceling the execution of any of the related transactions that depend upon a transaction that does not successful complete execution, and returning to the program any data resulting from the execution of the related transactions.
    Type: Grant
    Filed: May 15, 2008
    Date of Patent: February 10, 2009
    Assignee: International Business Machines Corporation
    Inventors: Steven J. Branda, William T. Newport, John J. Stecher, Robert Wisniewski