Patents by Inventor David K. Siegwart
David K. 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: 10678557Abstract: A predicted profile is generated for target code to be executed on a processor of the computing environment. The predicted profile is based on a profile of sampled code. The sampled code is a different version of code than the target code and is a complex build of modules for which it is difficult to determine which versions of the modules have been profiled. Based on the predicted profile for the target code, a determination is made of predicted execution information for the target code. Based on the determining the predicted execution information for the target code, an action is performed to facilitate processing within the computing environment.Type: GrantFiled: October 15, 2018Date of Patent: June 9, 2020Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: David K. Siegwart, Allan H. Kielstra
-
Publication number: 20200117469Abstract: A predicted profile is generated for target code to be executed on a processor of the computing environment. The predicted profile is based on a profile of sampled code. The sampled code is a different version of code than the target code and is a complex build of modules for which it is difficult to determine which versions of the modules have been profiled. Based on the predicted profile for the target code, a determination is made of predicted execution information for the target code. Based on the determining the predicted execution information for the target code, an action is performed to facilitate processing within the computing environment.Type: ApplicationFiled: October 15, 2018Publication date: April 16, 2020Inventors: David K. Siegwart, Allan H. Kielstra
-
Patent number: 10467086Abstract: A method of determining causes of external fragmentation in a memory. The method includes collecting information associated with release of an area of the memory by an application, storing the information in the area of the memory, and analyzing the information to determine why the area of the memory has not been reallocated to any application. In embodiments wherein a first portion of an area of a memory is allocated to an application by an allocator and a second portion of the area of the memory is released by the allocator, the method includes storing in the second portion of the area of the memory an indicator indicating that the second portion is a remaining portion, collecting information associated with release of the second portion, storing the information in the second portion, and analyzing the information to determine why the second portion is not reallocated to any application.Type: GrantFiled: August 4, 2017Date of Patent: November 5, 2019Assignee: International Business Machines CorporationInventors: Matthew R. Kilner, David K. Siegwart
-
Patent number: 10248554Abstract: Aspects of the present invention include a method, system and computer program product that embeds collected profiling test case information into a binary file of a computer program and subsequently recompiles the program. The method includes a processor specifying one or more test cases to be embedded into a compiled binary file, wherein the one or more test cases relate to at least a portion of a computer program representing a compilation unit; executing the one or more embedded test cases under the computer program; gathering performance data associated with the computer program as the one or more embedded test cases are executed; recompiling the compilation unit based on the performance data; and linking the computer program based on the performance data.Type: GrantFiled: November 14, 2016Date of Patent: April 2, 2019Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Allan H. Kielstra, Ramy Shahin, David K. Siegwart
-
Publication number: 20180137039Abstract: Aspects of the present invention include a method, system and computer program product that embeds collected profiling test case information into a binary file of a computer program and subsequently recompiles the program. The method includes a processor specifying one or more test cases to be embedded into a compiled binary file, wherein the one or more test cases relate to at least a portion of a computer program representing a compilation unit; executing the one or more embedded test cases under the computer program; gathering performance data associated with the computer program as the one or more embedded test cases are executed; recompiling the compilation unit based on the performance data; and linking the computer program based on the performance data.Type: ApplicationFiled: November 14, 2016Publication date: May 17, 2018Inventors: Allan H. Kielstra, Ramy Shahin, David K. Siegwart
-
Publication number: 20170329663Abstract: A method of determining causes of external fragmentation in a memory. The method includes collecting information associated with release of an area of the memory by an application, storing the information in the area of the memory, and analyzing the information to determine why the area of the memory has not been reallocated to any application. In embodiments wherein a first portion of an area of a memory is allocated to an application by an allocator and a second portion of the area of the memory is released by the allocator, the method includes storing in the second portion of the area of the memory an indicator indicating that the second portion is a remaining portion, collecting information associated with release of the second portion, storing the information in the second portion, and analyzing the information to determine why the second portion is not reallocated to any application.Type: ApplicationFiled: August 4, 2017Publication date: November 16, 2017Inventors: Matthew R. Kilner, David K. Siegwart
-
Patent number: 9766815Abstract: A method of determining causes of external fragmentation in a memory. The method includes collecting information associated with release of an area of the memory by an application, storing the information in the area of the memory, and analyzing the information to determine why the area of the memory has not been reallocated to any application. In embodiments wherein a first portion of an area of a memory is allocated to an application by an allocator and a second portion of the area of the memory is released by the allocator, the method includes storing in the second portion of the area of the memory an indicator indicating that the second portion is a remaining portion, colleting information associated with release of the second portion, storing the information in the second portion, and analyzing the information to determine why the second portion is not reallocated to any application.Type: GrantFiled: August 20, 2015Date of Patent: September 19, 2017Assignee: International Business Machines CorporationInventors: Matthew R. Kilner, David K. Siegwart
-
Patent number: 9760288Abstract: A method of determining causes of external fragmentation in a memory. The method includes collecting information associated with release of an area of the memory by an application, storing the information in the area of the memory, and analyzing the information to determine why the area of the memory has not been reallocated to any application. In embodiments wherein a first portion of an area of a memory is allocated to an application by an allocator and a second portion of the area of the memory is released by the allocator, the method includes storing in the second portion of the area of the memory an indicator indicating that the second portion is a remaining portion, colleting information associated with release of the second portion, storing the information in the second portion, and analyzing the information to determine why the second portion is not reallocated to any application.Type: GrantFiled: February 18, 2015Date of Patent: September 12, 2017Assignee: International Business Machines CorporationInventors: Matthew R. Kilner, David K. Siegwart
-
Publication number: 20160239217Abstract: A method of determining causes of external fragmentation in a memory. The method includes collecting information associated with release of an area of the memory by an application, storing the information in the area of the memory, and analyzing the information to determine why the area of the memory has not been reallocated to any application. In embodiments wherein a first portion of an area of a memory is allocated to an application by an allocator and a second portion of the area of the memory is released by the allocator, the method includes storing in the second portion of the area of the memory an indicator indicating that the second portion is a remaining portion, colleting information associated with release of the second portion, storing the information in the second portion, and analyzing the information to determine why the second portion is not reallocated to any application.Type: ApplicationFiled: August 20, 2015Publication date: August 18, 2016Inventors: Matthew R. Kilner, David K. Siegwart
-
Publication number: 20160239216Abstract: A method of determining causes of external fragmentation in a memory. The method includes collecting information associated with release of an area of the memory by an application, storing the information in the area of the memory, and analyzing the information to determine why the area of the memory has not been reallocated to any application. In embodiments wherein a first portion of an area of a memory is allocated to an application by an allocator and a second portion of the area of the memory is released by the allocator, the method includes storing in the second portion of the area of the memory an indicator indicating that the second portion is a remaining portion, colleting information associated with release of the second portion, storing the information in the second portion, and analyzing the information to determine why the second portion is not reallocated to any application.Type: ApplicationFiled: February 18, 2015Publication date: August 18, 2016Inventors: Matthew R. Kilner, David K. Siegwart
-
Patent number: 9342377Abstract: Controlling access to a resource by a plurality of resource requesters is disclosed. The resource lock operates in a contention efficient (heavyweight) operating mode, and in response to a request from a resource requester to acquire the resource lock, a count of a total number of acquisitions of the resource lock in the contention efficient operating mode is incremented. In response to access to the resource not being contended by more than one resource requester, a count of a number of uncontended acquisitions of the resource lock in the contention efficient operating mode is incremented, and a contention rate is calculated 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. In response to the contention rate meeting a threshold contention rate, the resource lock is changed to a non-contention efficient (lightweight) operating mode.Type: GrantFiled: March 13, 2012Date of Patent: May 17, 2016Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventor: David K. Siegwart
-
Patent number: 8854952Abstract: A method, system and program product that in response to a segmented server going offline reallocates only those primary and secondary destinations that need to be reallocated on an evenhanded basis, so there is at most a difference of one in the number of buckets allocated to each segmented server before and after re-allocation.Type: GrantFiled: December 22, 2011Date of Patent: October 7, 2014Assignee: International Business Machines CorporationInventors: David K. Siegwart, Rajini Sivaram
-
Publication number: 20130163408Abstract: A method, system and program product that in response to a segmented server going offline reallocates only those primary and secondary destinations that need to be reallocated on an evenhanded basis, so there is at most a difference of one in the number of buckets allocated to each segmented server before and after re-allocation.Type: ApplicationFiled: December 22, 2011Publication date: June 27, 2013Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: David K. Siegwart, Rajini Sivaram
-
Publication number: 20120198111Abstract: Controlling access to a resource by a plurality of resource requesters is disclosed. The resource lock operates in a contention efficient (heavyweight) operating mode, and in response to a request from a resource requester to acquire the resource lock, a count of a total number of acquisitions of the resource lock in the contention efficient operating mode is incremented. In response to access to the resource not being contended by more than one resource requester, a count of a number of uncontended acquisitions of the resource lock in the contention efficient operating mode is incremented, and a contention rate is calculated 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. In response to the contention rate meeting a threshold contention rate, the resource lock is changed to a non-contention efficient (lightweight) operating mode.Type: ApplicationFiled: March 13, 2012Publication date: August 2, 2012Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventor: DAVID K. SIEGWART
-
Publication number: 20120180057Abstract: An activity recording system for a concurrent software environment executing software threads in a computer system, the activity recording system comprising: a thread state indicator for recording an indication of a synchronization state of a software thread, the indication being associated with an identification of the software thread; a time profiler for polling values of a program counter for a processor of the computer system at regular intervals, the time profiler being adapted to identify and record one or more synchronization states of the software thread based on the polled program counter value and the recorded indication of state.Type: ApplicationFiled: December 29, 2011Publication date: July 12, 2012Applicant: International Business Machines CorporationInventors: Frank E. Levine, Enio M. Pineda, David K. Siegwart
-
Patent number: 8108448Abstract: A garbage collection algorithm that achieves hierarchical copy order with parallel garbage collection threads. More specifically, the present invention provides a garbage collection method and system for copying objects from a from-space to a to-space. The method comprises the steps of (a) having multiple threads that simultaneously perform work for garbage collection (GC), (b) examining the placement of objects on blocks, and (c) changing the placement of objects on blocks based on step (b). Preferably, the method includes the additional step of calculating a placement of object(s) based on step (b), and using the result of the calculation for step (c). For example, the calculation may be used to increase the frequency of intra-block pointers and/or to increase the frequency of siblings on the same block.Type: GrantFiled: May 29, 2008Date of Patent: January 31, 2012Assignee: International Business Machines CorporationInventors: David K. Siegwart, Martin Hirzel
-
Patent number: 8024379Abstract: A garbage collection algorithm that achieves hierarchical copy order with parallel garbage collection threads. More specifically, the present invention provides a garbage collection method and system for copying objects from a from-space to a to-space. The method comprises the steps of (a) having multiple threads that simultaneously perform work for garbage collection (GC), (b) examining the placement of objects on blocks, and (c) changing the placement of objects on blocks based on step (b). Preferably, the method includes the additional step of calculating a placement of object(s) based on step (b), and using the result of the calculation for step (c). For example, the calculation may be used to increase the frequency of intra-block pointers and/or to increase the frequency of siblings on the same block.Type: GrantFiled: May 29, 2008Date of Patent: September 20, 2011Assignee: International Business Machines CorporationInventors: David K. Siegwart, Martin Hirzel
-
Patent number: 7930325Abstract: A garbage collection algorithm that achieves hierarchical copy order with parallel garbage collection threads. More specifically, the present invention provides a garbage collection method and system for copying objects from a from-space to a to-space. The method comprises the steps of (a) having multiple threads that simultaneously perform work for garbage collection (GC), (b) examining the placement of objects on blocks, and (c) changing the placement of objects on blocks based on step (b). Preferably, the method includes the additional step of calculating a placement of object(s) based on step (b), and using the result of the calculation for step (c). For example, the calculation may be used to increase the frequency of intra-block pointers and/or to increase the frequency of siblings on the same block.Type: GrantFiled: May 29, 2008Date of Patent: April 19, 2011Assignee: International Business Machines CorporationInventors: David K. Siegwart, Martin Hirzel
-
Publication number: 20080250089Abstract: Disclosed is a garbage collection algorithm that achieves hierarchical copy order with parallel garbage collection threads. More specifically, the present invention provides a garbage collection method and system for copying objects from a from-space to a to-space. The method comprises the steps of (a) having multiple threads that simultaneously perform work for garbage collection (GC), (b) examining the placement of objects on blocks, and (c) changing the placement of objects on blocks based on step (b). Preferably, the method includes the additional step of calculating a placement of object(s) based on step (b), and using the result of the calculation for step (c). For example, the calculation may be used to increase the frequency of intra-block pointers and/or to increase the frequency of siblings on the same block.Type: ApplicationFiled: May 29, 2008Publication date: October 9, 2008Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: David K. Siegwart, Martin Hirzel
-
Publication number: 20080235307Abstract: Disclosed is a garbage collection algorithm that achieves hierarchical copy order with parallel garbage collection threads. More specifically, the present invention provides a garbage collection method and system for copying objects from a from-space to a to-space. The method comprises the steps of (a) having multiple threads that simultaneously perform work for garbage collection (GC), (b) examining the placement of objects on blocks, and (c) changing the placement of objects on blocks based on step (b). Preferably, the method includes the additional step of calculating a placement of object(s) based on step (b), and using the result of the calculation for step (c). For example, the calculation may be used to increase the frequency of intra-block pointers and/or to increase the frequency of siblings on the same block.Type: ApplicationFiled: May 29, 2008Publication date: September 25, 2008Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: David K. Siegwart, Martin Hirzel