Patents by Inventor David Kevin Siegwart
David Kevin Siegwart 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: 11886848Abstract: A method, system, and computer-readable medium for binary translation cause a binary translator to combine raw binary code and compiler-produced metadata associated with a compiled program module. The binary translator is caused to further reconcile, using the compiler-produced metadata, original compiler-produced control flow information with how lower-level machine instructions comprise a control flow in the raw binary code, and original compiler-produced aliasing information with how lower-level machine instructions access the memory locations described by the aliasing information according to predetermined criteria. The binary translator further caused to prevent, copy propagation of values in temporary variables for decimal computations beyond offsets in the machine instructions where the temporary variables are killed.Type: GrantFiled: May 25, 2022Date of Patent: January 30, 2024Assignee: International Business Machines CorporationInventors: Toshihiko Koju, Reid Copeland, David Kevin Siegwart, Jordan Ryan Zannier, Allan H. Kielstra
-
Publication number: 20230385041Abstract: A method, system, and computer-readable medium for binary translation cause a binary translator to combine raw binary code and compiler-produced metadata associated with a compiled program module. The binary translator is caused to further reconcile, using the compiler-produced metadata, original compiler-produced control flow information with how lower-level machine instructions comprise a control flow in the raw binary code, and original compiler-produced aliasing information with how lower-level machine instructions access the memory locations described by the aliasing information according to predetermined criteria. The binary translator further caused to prevent, copy propagation of values in temporary variables for decimal computations beyond offsets in the machine instructions where the temporary variables are killed.Type: ApplicationFiled: May 25, 2022Publication date: November 30, 2023Inventors: Toshihiko Koju, REID COPELAND, David Kevin Siegwart, Jordan Ryan Zannier, ALLAN H. KIELSTRA
-
Patent number: 9600348Abstract: The present disclosure provides a computer program product and activity recording system for identifying idleness in a processor via a concurrent software environment. A thread state indicator records an indication of a synchronization state of a software thread that is associated with an identification of the software thread. A time profiler identifies a processor of the computer system being idle and records an indication that the processor is idle. A dispatch monitor identifies a dispatch of the software thread to the processor. In response to the dispatch monitor determining the indication identifies that the processor is idle and the indication of a synchronization state of the software thread indicating the software thread ceases to execute in the processor, the dispatch monitor generates a record attributing the idleness of the processor to the software thread and the indicated synchronization state.Type: GrantFiled: January 5, 2012Date of Patent: March 21, 2017Assignee: International Business Machines CorporationInventors: Frank Eliot Levine, David Kevin Siegwart, Enio Manuel Pineda
-
Patent number: 9471458Abstract: The present disclosure provides a method for identifying idleness in a processor via a concurrent software environment. A thread state indicator records an indication of a synchronization state of a software thread that is associated with an identification of the software thread. A time profiler identifies a processor of the computer system being idle and records an indication that the processor is idle. A dispatch monitor identifies a dispatch of the software thread to the processor. In response to the dispatch monitor determining the indication identifies that the processor is idle and the indication of a synchronization state of the software thread indicating the software thread ceases to execute in the processor, the dispatch monitor generates a record attributing the idleness of the processor to the software thread and the indicated synchronization state.Type: GrantFiled: August 29, 2014Date of Patent: October 18, 2016Assignee: International Business Machines CorporationInventors: Frank Eliot Levine, David Kevin Siegwart, Enio Manuel Pineda
-
Publication number: 20140373029Abstract: The present disclosure provides a method for identifying idleness in a processor via a concurrent software environment. A thread state indicator records an indication of a synchronization state of a software thread that is associated with an identification of the software thread. A time profiler identifies a processor of the computer system being idle and records an indication that the processor is idle. A dispatch monitor identifies a dispatch of the software thread to the processor. In response to the dispatch monitor determining the indication identifies that the processor is idle and the indication of a synchronization state of the software thread indicating the software thread ceases to execute in the processor, the dispatch monitor generates a record attributing the idleness of the processor to the software thread and the indicated synchronization state.Type: ApplicationFiled: August 29, 2014Publication date: December 18, 2014Inventors: Frank Eliot Levine, David Kevin Siegwart, Enio Manuel Pineda
-
Patent number: 8694751Abstract: Automatic memory management with a generational copy collector garbage collection algorithm running on parallel threads to perform simultaneous and independent copying and scanning. An object is scanned. It is determined whether an object referenced within the slot of the object being scanned may be copied to the same generation as the scanned object. A mark may be made to indicate that the referenced object may be copied to a different generation than the scanned object. The mark defers the copying of the referenced object.Type: GrantFiled: December 31, 2008Date of Patent: April 8, 2014Assignee: International Business Machines CorporationInventors: David Kevin Siegwart, Nikola Grcevski, Daryl James Maier, Ryan Andrew Sciampacone
-
Patent number: 8612956Abstract: A computer-implementable method, system and apparatus. The frequency of reference to an object, also known as “hotness,” can be collected as a part of a profiling phase during a runtime operation of data-processing system by permitting each reference to the object during the runtime operation to randomly guess a predetermined value associated with the object, such that a correct guess thereof implies that the object is referenced frequently. Thereafter, the frequency of reference to the object can be validated by identifying a particular value in a header associated with the object, in response to collecting the frequency of reference to the object during the profiling phase, thereby increasing the scalability and efficiency of the runtime operation while permitting data associated with the frequency of reference to the object to other applications for immediate use.Type: GrantFiled: December 5, 2007Date of Patent: December 17, 2013Assignee: International Business Machines CorporationInventors: Daryl James Maier, Nikola Groevski, David Kevin Siegwart
-
Publication number: 20130227586Abstract: The present disclosure provides a method, computer program product, and activity recording system for identifying idleness in a processor via a concurrent software environment. A thread state indicator records an indication of a synchronization state of a software thread that is associated with an identification of the software thread. A time profiler identifies a processor of the computer system being idle and records an indication that the processor is idle. A dispatch monitor identifies a dispatch of the software thread to the processor. In response to the dispatch monitor determining the indication identifies that the processor is idle and the indication of a synchronization state of the software thread indicating the software thread ceases to execute in the processor, the dispatch monitor generates a record attributing the idleness of the processor to the software thread and the indicated synchronization state.Type: ApplicationFiled: January 5, 2012Publication date: August 29, 2013Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Frank Eliot Levine, David Kevin Siegwart, Enio Manuel Pineda
-
Patent number: 8429143Abstract: Methods and systems for generating a hashcode for a hash table are provided to improve the hash table performance. A particular method includes receiving an input of a key; applying a hash function to the key to generate an incoming hashcode of the key; encoding a key type into the incoming hashcode to generate a first hashcode; and storing the first hashcode. A particular method includes encoding the key type into at least one bit of a bucket index portion of the incoming hashcode.Type: GrantFiled: April 25, 2008Date of Patent: April 23, 2013Assignee: International Business Machines CorporationInventors: Timothy Peter Ellison, Nikola Grcevski, David Kevin Siegwart
-
Patent number: 8341321Abstract: A method of operating a resource lock for controlling access to a resource by a plurality of resource requesters, the resource lock operating in a contention efficient (heavyweight) operating mode, and the method being responsive to a request from a resource requester to acquire the resource lock, the method comprising the steps of: incrementing a count of a total number of acquisitions of the resource lock in the contention efficient operating mode; in response to a determination that access to the resource is not contended by more than one resource requester, performing the steps of: a) incrementing a count of a number of uncontended acquisitions of the resource lock in the contention efficient operating mode; b) calculating a contention rate as the number of uncontended acquisitions in the contention efficient operating mode divided by the total number of acquisitions in the contention efficient operating mode; and c) in response to a determination that the contention rate meets a threshold contention rateType: GrantFiled: April 7, 2008Date of Patent: December 25, 2012Assignee: International Business Machines CorporationInventor: David Kevin Siegwart
-
Publication number: 20100169593Abstract: Automatic memory management with a generational copy collector garbage collection algorithm running on parallel threads to perform simultaneous and independent copying and scanning. An object is scanned. It is determined whether an object referenced within the slot of the object being scanned may be copied to the same generation as the scanned object. A mark may be made to indicate that the referenced object may be copied to a different generation than the scanned object. The mark defers the copying of the referenced object.Type: ApplicationFiled: December 31, 2008Publication date: July 1, 2010Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: David Kevin Siegwart, Nikola Grcevski, Daryl James Maier, Ryan Andrew Sciampacone
-
Patent number: 7647521Abstract: A method, apparatus and computer instructions for application based tracing and for normalization of processor clocks in a symmetric multiprocessor environment. By deliberately establishing a large skew among processor clocks, it is possible to perform application based tracing by directly using the processors. In addition, the identity, time stamp, and drift information of each processor may be used to create a time library. The time library is used to adjust a measured time to execute a program or software routine. The adjusted time is a normalized time that is statistically more accurate than the measured time alone. The adjusted time is then reported as the time to execute the program or software routine.Type: GrantFiled: December 11, 2006Date of Patent: January 12, 2010Assignee: International Business Machines CorporationInventors: Frank Eliot Levine, David Kevin Siegwart
-
Patent number: 7627457Abstract: A computer-implemented method, for application based tracing and for normalization of processor clocks in a symmetric multiprocessor environment. By deliberately establishing a large skew among processor clocks, it is possible to perform application based tracing by directly using the processors. In addition, the identity, time stamp, and drift information of each processor may be used to create a time library. The time library is used to adjust a measured time to execute a program or software routine. The adjusted time is a normalized time that is statistically more accurate than the measured time alone. The adjusted time is then reported as the time to execute the program or software routine.Type: GrantFiled: December 11, 2006Date of Patent: December 1, 2009Assignee: International Business Machines CorporationInventors: Frank Eliot Levine, David Kevin Siegwart
-
Publication number: 20090271366Abstract: Methods and systems for generating a hashcode for a hash table are provided to improve the hash table performance. A particular method includes receiving an input of a key; applying a hash function to the key to generate an incoming hashcode of the key; encoding a key type into the incoming hashcode to generate a first hashcode; and storing the first hashcode. A particular method includes encoding the key type into at least one bit of a bucket index portion of the incoming hashcode.Type: ApplicationFiled: April 25, 2008Publication date: October 29, 2009Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Timothy Peter Ellison, Nikola Grcevski, David Kevin Siegwart
-
Publication number: 20090249353Abstract: Decisions whether or not to initiate certain types of computer operations, such as Just In Time (JIT) compiling or garbage collection can be made using a probabilistic threshold monitor. A decision whether to drive a threshold indicator bit to a set state is made on the detection of each of a certain kind of event occurring over a predetermined interval. The probability that the bit will be driven to a set state upon the detection of any given event is controlled. At the end of the predetermined interval, a computer operation is initiated if the threshold indicator bit is found to be in its set state.Type: ApplicationFiled: February 9, 2009Publication date: October 1, 2009Applicant: International Business Machines CorporationInventor: David Kevin Siegwart
-
Publication number: 20090150875Abstract: A computer-implementable method, system and apparatus. The frequency of reference to an object, also known as “hotness,” can be collected as a part of a profiling phase during a runtime operation of data-processing system by permitting each reference to the object during the runtime operation to randomly guess a predetermined value associated with the object, such that a correct guess thereof implies that the object is referenced frequently. Thereafter, the frequency of reference to the object can be validated by identifying a particular value in a header associated with the object, in response to collecting the frequency of reference to the object during the profiling phase, thereby increasing the scalability and efficiency of the runtime operation while permitting data associated with the frequency of reference to the object to other applications for immediate use.Type: ApplicationFiled: December 5, 2007Publication date: June 11, 2009Inventors: Daryl James Maier, Nikola Groevski, David Kevin Siegwart
-
Patent number: 7478258Abstract: A method for storing an identity of a processor in a multiprocessor computer system, the processor including a high frequency clock having a clock value represented as a set of binary digits, the method comprising encoding an identifier of the processor in a subset of the set of binary digits. It is therefore possible to retrieve a value of a time represented by a high frequency clock in a processor and an identification of the corresponding processor in a single indivisible operation by encoding the processor identifier in the clock value.Type: GrantFiled: December 22, 2005Date of Patent: January 13, 2009Assignee: International Business Machines CorporationInventor: David Kevin Siegwart
-
Publication number: 20080216079Abstract: A method of operating a resource lock for controlling access to a resource by a plurality of resource requesters, the resource lock operating in a contention efficient (heavyweight) operating mode, and the method being responsive to a request from a resource requester to acquire the resource lock, the method comprising the steps of: incrementing a count of a total number of acquisitions of the resource lock in the contention efficient operating mode; in response to a determination that access to the resource is not contended by more than one resource requester, performing the steps of: a) incrementing a count of a number of uncontended acquisitions of the resource lock in the contention efficient operating mode; b) calculating a contention rate as the number of uncontended acquisitions in the contention efficient operating mode divided by the total number of acquisitions in the contention efficient operating mode; and c) in response to a determination that the contention rate meets a threshold contention rateType: ApplicationFiled: April 7, 2008Publication date: September 4, 2008Inventor: DAVID KEVIN SIEGWART
-
Patent number: 7409574Abstract: A method for determining if a measurement of an elapsed time for an execution of a software routine in a computer system is valid. A clock skew is used between the clocks of two processors such that the size of the clock skew is greater than the maximum possible elapsed time for the execution of the software routine. The software routine is executed with a clock value recorded before (start time) and after (end time) execution. An elapsed time is calculated as a difference between the start time and the end time. Whether the elapsed time is valid is determined by checking for a positive value of the elapsed time and comparing the value of the elapsed time with the clock skew.Type: GrantFiled: December 16, 2005Date of Patent: August 5, 2008Assignee: International Business Machines CorporationInventor: David Kevin Siegwart
-
Patent number: 7383369Abstract: A method of operating a resource lock for controlling access to a resource by a plurality of resource requesters, the resource lock operating in a contention efficient (heavyweight) operating mode, and the method being responsive to a request from a resource requester to acquire the resource lock, the method comprising the steps of: incrementing a count of a total number of acquisitions of the resource lock in the contention efficient operating mode; in response to a determination that access to the resource is not contended by more than one resource requester, performing the steps of: a) incrementing a count of a number of uncontended acquisitions of the resource lock in the contention efficient operating mode; b) calculating a contention rate as the number of uncontended acquisitions in the contention efficient operating mode divided by the total number of acquisitions in the contention efficient operating mode; and c) in response to a determination that the contention rate meets a threshold contention rateType: GrantFiled: September 8, 2006Date of Patent: June 3, 2008Assignee: International Business Machines CorporationInventor: David Kevin Siegwart