Patents by Inventor Terry Jacks

Terry Jacks 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: 10353679
    Abstract: A PGO compiler can instrument an executable to collect profile data from which global variables that were modified during the execution of a training executable can be identified. PGO optimization using a list of modified global variables identified from the profile data can be used to optimize a program in a second compilation phase. The global variables that were modified during the training run are identified by capturing a current snapshot of global variables and comparing their state to a baseline snapshot to ascertain the addresses of global variables that were modified. The addresses that changed can be mapped to global variable names to create a list of global variables that were modified during execution of the training executable. The list of global variables that have been modified can be to enable the compiler to perform optimizations such as but not limited to co-locate the modified global variables in memory.
    Type: Grant
    Filed: October 31, 2014
    Date of Patent: July 16, 2019
    Assignee: MICROSOFT TECHNOLOGY LICENSING, LLC.
    Inventor: Terry Jack Mahaffey
  • Patent number: 10241763
    Abstract: Intra-procedural and inter-procedural dynamic type propagation can be used to optimize code by devirtualizing virtual functions. In the intra-procedural pass each function in the program is inspected. If the dynamic type of a variable within the function is determined, the static type is replaced by the dynamic type. If the dynamic type of a variable within the function is not determinable, a placeholder type is inserted. After each function and each statement in the function and each statement outside of the function is examined, an attempt is made to resolve all of the placeholder types references created in the first pass, replacing the placeholder type with the dynamic type. This process is iterated until additional dynamic type determination ends.
    Type: Grant
    Filed: December 10, 2014
    Date of Patent: March 26, 2019
    Assignee: MICROSOFT TECHNOLOGY LICENSING, LLC.
    Inventor: Terry Jack Mahaffey
  • Patent number: 10175965
    Abstract: Multiphased profile guided optimization optimizes executable code based on data collected during multiple training runs of a training executable. In multiphased profile guided optimization, multiple sets of profiling data are collected where each set of profiling data is associated with a program phase and a particular training run. Program phases include but are not limited to different program features, startup, steady state and shutdown. The program features can run concurrently. Priority of the phases can be specified.
    Type: Grant
    Filed: February 20, 2017
    Date of Patent: January 8, 2019
    Assignee: MICROSOFT TECHNOLOGY LICENSING, LLC.
    Inventors: Terry Jack Mahaffey, Ten H. Tzen, Pratap Chandar Joseph
  • Publication number: 20170300308
    Abstract: Multiphased profile guided optimization optimizes executable code based on data collected during multiple training runs of a training executable. In multiphased profile guided optimization, multiple sets of profiling data are collected where each set of profiling data is associated with a program phase and a particular training run. Program phases include but are not limited to different program features, startup, steady state and shutdown. The program features can run concurrently. Priority of the phases can be specified.
    Type: Application
    Filed: February 20, 2017
    Publication date: October 19, 2017
    Inventors: TERRY JACK MAHAFFEY, TEN H. TZEN, PRATAP CHANDAR JOSEPH
  • Patent number: 9612809
    Abstract: Multiphased profile guided optimization optimizes executable code based on data collected during multiple training runs of a training executable. In multiphased profile guided optimization, multiple sets of profiling data are collected where each set of profiling data is associated with a program phase and a particular training run. Program phases include but are not limited to different program features, startup, steady state and shutdown. The program features can run concurrently. Priority of the phases can be specified.
    Type: Grant
    Filed: May 30, 2014
    Date of Patent: April 4, 2017
    Assignee: MICROSOFT TECHNOLOGY LICENSING, LLC.
    Inventors: Terry Jack Mahaffey, Ten H. Tzen, Pratap Chandar Joseph
  • Publication number: 20160170724
    Abstract: Intra-procedural and inter-procedural dynamic type propagation can be used to optimize code by devirtualizing virtual functions. In the intra-procedural pass each function in the program is inspected. If the dynamic type of a variable within the function is determined, the static type is replaced by the dynamic type . If the dynamic type of a variable within the function is not determinable, a placeholder type is inserted. After each function and each statement in the function and each statement outside of the function is examined, an attempt is made to resolve all of the placeholder types references created in the first pass, replacing the placeholder type with the dynamic type. This process is iterated until additional dynamic type determination ends.
    Type: Application
    Filed: December 10, 2014
    Publication date: June 16, 2016
    Inventor: Terry Jack Mahaffey
  • Patent number: 9348567
    Abstract: Profile guided optimization (PGO) in the presence of stale profile data as described herein can be based on path profiling, whereby different paths through a program's call graph are uniquely identified. Stale profile data is data collected in a training run of a previous version of the program. Profile data can be collected along these paths and optimization decisions can be made using the collected data. The paths can be numbered using an algorithm that assigns path increments to all the callees of a function. The path increment assignments (which can be stored in the profile database) can be used to locate the profile data for that path and to make corresponding optimization decisions. PGO optimizations along call graph paths involving edited functions can be performed.
    Type: Grant
    Filed: July 3, 2014
    Date of Patent: May 24, 2016
    Assignee: MICROSOFT TECHNOLOGY LICENSING, LLC.
    Inventors: Shishir Sharma, Ankit Asthana, Terry Jack Mahaffey, Ten H. Tzen
  • Publication number: 20160124728
    Abstract: A PGO compiler can instrument an executable to collect profile data from which global variables that were modified during the execution of a training executable can be identified. PGO optimization using a list of modified global variables identified from the profile data can be used to optimize a program in a second compilation phase. The global variables that were modified during the training run are identified by capturing a current snapshot of global variables and comparing their state to a baseline snapshot to ascertain the addresses of global variables that were modified. The addresses that changed can be mapped to global variable names to create a list of global variables that were modified during execution of the training executable. The list of global variables that have been modified can be to enable the compiler to perform optimizations such as but not limited to co-locate the modified global variables in memory.
    Type: Application
    Filed: October 31, 2014
    Publication date: May 5, 2016
    Inventor: Terry Jack Mahaffey
  • Publication number: 20160004518
    Abstract: Profile guided optimization (PGO) in the presence of stale profile data as described herein can be based on path profiling, whereby different paths through a program's call graph are uniquely identified. Stale profile data is data collected in a training run of a previous version of the program. Profile data can be collected along these paths and optimization decisions can be made using the collected data. The paths can be numbered using an algorithm that assigns path increments to all the callees of a function. The path increment assignments (which can be stored in the profile database) can be used to locate the profile data for that path and to make corresponding optimization decisions. PGO optimizations along call graph paths involving edited functions can be performed.
    Type: Application
    Filed: July 3, 2014
    Publication date: January 7, 2016
    Inventors: Shishir Sharma, Ankit Asthana, Terry Jack Mahaffey, Ten H. Tzen
  • Publication number: 20150347103
    Abstract: Multiphased profile guided optimization optimizes executable code based on data collected during multiple training runs of a training executable. In multiphased profile guided optimization, multiple sets of profiling data are collected where each set of profiling data is associated with a program phase and a particular training run. Program phases include but are not limited to different program features, startup, steady state and shutdown. The program features can run concurrently. Priority of the phases can be specified.
    Type: Application
    Filed: May 30, 2014
    Publication date: December 3, 2015
    Applicant: Microsoft Corporation
    Inventors: Terry Jack Mahaffey, Ten H. Tzen, Pratap Chandar Joseph
  • Patent number: 6596132
    Abstract: A method for producing thin film deposits of ternary shape-memory alloys using an ion sputtering deposition process comprising using a hot pressed metal powder composition target.
    Type: Grant
    Filed: September 22, 1999
    Date of Patent: July 22, 2003
    Assignee: Delphi Technologies, Inc.
    Inventors: Gregory Keller Rasmussen, Fenglian Chang, Jinping Zhang, Terry Jack Gold
  • Patent number: 6592724
    Abstract: Disclosed is a method for producing ternary shape-memory alloy films employing sputtering process techniques using krypton as a process gas.
    Type: Grant
    Filed: September 22, 1999
    Date of Patent: July 15, 2003
    Assignee: Delphi Technologies, Inc.
    Inventors: Gregory Keller Rasmussen, Fenglian Chang, Jinping Zhang, Terry Jack Gold
  • Patent number: 6460810
    Abstract: A device for programming industry standard autopilots by unskilled pilots. The effect of the invention is such that when the invention is employed in a flying body comprising an industry standard autopilot with a digital flight control system, the invention provides for the safe operation of any aircraft by an unskilled pilot. The device additionally affords skilled pilots a more rapid and simplified means of programming autopilots while in flight thus reducing a skilled pilot's cockpit workload for all aircraft flight and directional steering, way points, and aircraft flight functions reducing the possibility of pilot error so as to effect safer flight operations of an aircraft by affording a skilled pilot to direct aircraft steering and function while under continuous autopilot control.
    Type: Grant
    Filed: January 22, 2001
    Date of Patent: October 8, 2002
    Inventor: Terry Jack James
  • Patent number: 6358380
    Abstract: A method for producing thin film deposits of binary shape-memory alloys using an ion sputtering deposition process comprising using a hot pressed metal powder composition target.
    Type: Grant
    Filed: September 22, 1999
    Date of Patent: March 19, 2002
    Assignee: Delphi Technologies, Inc.
    Inventors: Gamdur Singh Mann, Carlos Augusto Valdes, Terry Jack Gold, Jinping Zhang, Fenglian Chang, Gregory Keller Rasmussen
  • Publication number: 20020030142
    Abstract: A device for programming industry standard autopilots by unskilled pilots. The effect of the invention is such that when the invention is employed in a flying body comprising an industry standard autopilot with a digital flight control system, the invention provides for the safe operation of any aircraft by an unskilled pilot. The device additionally affords skilled pilots a more rapid and simplified means of programming autopilots while in flight thus reducing a skilled pilot's cockpit workload for all aircraft flight and directional steering, way points, and aircraft flight functions reducing the possibility of pilot error so as to effect safer flight operations of an aircraft by affording a skilled pilot to direct aircraft steering and function while under continuous autopilot control.
    Type: Application
    Filed: January 22, 2001
    Publication date: March 14, 2002
    Inventor: Terry Jack James
  • Patent number: 5690918
    Abstract: A long wearing, durable, non-smearing type wax based pigmented lipstick product including volatile solvents, non-volatile silicone polymer, oil soluble liquid phase and dry powder phase, is made to have improved moisturizing properties by incorporating a mixture of moisturizers which includes essential fatty acids provided by diisoarachidyl dilinoleate, fatty acid ester of .alpha.-tocopherol, a cholesteryl/behenyl/octyldodecyl/lauroyl glutamate complex, and lauryl pyrrolidone carboxylic acid ester.
    Type: Grant
    Filed: May 24, 1996
    Date of Patent: November 25, 1997
    Assignee: Maybelline, Inc.
    Inventors: Terry Jacks, Brian Mattox
  • Patent number: 5279830
    Abstract: A cosmetic composition free of mineral oil and free of lanolin includes effective amounts of the following cosmetically acceptable ingredients (components): (A) at least one wax; (B) at least one triglyceride; (C) a mixture of esters including (i) a mixture of esters with a first mixture (i) having a maximum acid value 0.5 and a saponification value of 268-288; and a second mixture (ii) having a maximum acid value of 0.5 and a saponification value of 206-226; (D) distarch phosphate; (E) at least one bulking agent; (F) at least one colorant; and (G) optionally, at least one preservative. The composition is preferably formed into a cosmetic stick shape.
    Type: Grant
    Filed: October 24, 1991
    Date of Patent: January 18, 1994
    Assignee: Intellectual Property Holding Co.
    Inventors: Robert J. Edmundson, Brian K. Mattox, Terry Jacks
  • Patent number: RE38441
    Abstract: A long wearing, durable, non-smearing type wax based pigmented lipstick product including volatile solvents, non-volatile silicone polymer, oil soluble liquid phase and dry powder phase, is made to have improved moisturizing properties by incorporating a mixture of moisturizers which includes essential fatty acids provided by diisoarachidyl dilinoleate, fatty acid ester of &agr;-tocopherol, a cholesteryl/behenyl/octyldodecyl/lauroyl glutamate complex, and lauryl pyrrolidone carboxylic acid ester.
    Type: Grant
    Filed: March 22, 1999
    Date of Patent: February 24, 2004
    Assignee: Maybelline, Inc.
    Inventors: Terry Jacks, Brian Mattox