Patents by Inventor Satish K. Sadasivam

Satish K. Sadasivam 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: 10929184
    Abstract: An application workload is scheduled for execution by each of one or more processing cores operating in a first mode. Performance metrics for the each of the one or more processing cores and a memory component are monitored, wherein the memory component stores data necessary for the one or more processing cores to carry out instructions to complete the scheduled workload. If performance metrics are greater than a specified threshold, a number of the one or more processing cores handling the scheduled workload is reduced. If the performance metrics are not greater than the specified threshold, whether each of the processing cores of the processor is currently handling a scheduled workload is determined. If each of the processing cores of the processor is currently handling the scheduled workload, the processor is configured to operate in a second mode.
    Type: Grant
    Filed: March 25, 2019
    Date of Patent: February 23, 2021
    Assignee: International Business Machines Corporation
    Inventors: Sangram Alapati, Hima B. Nimmagadda, Satish K. Sadasivam
  • Patent number: 10838871
    Abstract: Aspects of the disclosure relate to a hardware processor architecture. The hardware processor architecture may include a processor cache to manage a set of instructions. The hardware processor architecture may include a hint cache to manage a set of hints associated with the set of instructions. Disclosed aspects relate to establishing a hint cache which has a set of hints associated with the set of instructions. The hint cache may be established with respect to the processor cache which has a set of instructions. The set of instructions may be accessed from the processor cache. From the hint cache, the set of hints associated with the set of instructions may be communicated. The set of instructions may be processed by the hardware processor using the set of hints associated with the set of instructions. In embodiments, static or dynamic hint cache bits can be utilized.
    Type: Grant
    Filed: November 7, 2016
    Date of Patent: November 17, 2020
    Assignee: International Business Machines Corporation
    Inventor: Satish K. Sadasivam
  • Patent number: 10528349
    Abstract: Branch sequences for branch prediction performance test are generated by performing the following steps: (i) generating a branch node graph, by a branch node graph generator machine logic set, based, at least in part, upon a set of branch traces of a workload or benchmark code; (ii) generating a first assembly pattern file, for use with a first instruction set architecture (ISA)/microarchitecture set, by an assembly pattern generator machine logic set, based, at least in part, upon the branch node graph so as to mimic the control-flow pattern of the workload or benchmark code; and (iii) running the assembly pattern file on the first ISA/microarchitecture set to obtain first execution results.
    Type: Grant
    Filed: October 14, 2016
    Date of Patent: January 7, 2020
    Assignee: International Business Machines Corporation
    Inventors: Prathiba Kumar, Satish K. Sadasivam
  • Publication number: 20190220312
    Abstract: An application workload is scheduled for execution by each of one or more processing cores operating in a first mode. Performance metrics for the each of the one or more processing cores and a memory component are monitored, wherein the memory component stores data necessary for the one or more processing cores to carry out instructions to complete the scheduled workload. If performance metrics are greater than a specified threshold, a number of the one or more processing cores handling the scheduled workload is reduced. If the performance metrics are not greater than the specified threshold, whether each of the processing cores of the processor is currently handling a scheduled workload is determined. If each of the processing cores of the processor is currently handling the scheduled workload, the processor is configured to operate in a second mode.
    Type: Application
    Filed: March 25, 2019
    Publication date: July 18, 2019
    Inventors: Sangram Alapati, Hima B. Nimmagadda, Satish K. Sadasivam
  • Patent number: 10241834
    Abstract: An application workload is scheduled for execution by each of one or more processing cores operating in a first mode. Performance metrics for the each of the one or more processing cores and a memory component are monitored, wherein the memory component stores data necessary for the one or more processing cores to carry out instructions to complete the scheduled workload. If performance metrics are greater than a specified threshold, a number of the one or more processing cores handling the scheduled workload is reduced. If the performance metrics are not greater than the specified threshold, whether each of the processing cores of the processor is currently handling a scheduled workload is determined. If each of the processing cores of the processor is currently handling the scheduled workload, the processor is configured to operate in a second mode.
    Type: Grant
    Filed: November 29, 2016
    Date of Patent: March 26, 2019
    Assignee: International Business Machines Corporation
    Inventors: Sangram Alapati, Hima B. Nimmagadda, Satish K. Sadasivam
  • Publication number: 20180150333
    Abstract: An application workload is scheduled for execution by each of one or more processing cores operating in a first mode. Performance metrics for the each of the one or more processing cores and a memory component are monitored, wherein the memory component stores data necessary for the one or more processing cores to carry out instructions to complete the scheduled workload. If performance metrics are greater than a specified threshold, a number of the one or more processing cores handling the scheduled workload is reduced. If the performance metrics are not greater than the specified threshold, whether each of the processing cores of the processor is currently handling a scheduled workload is determined. If each of the processing cores of the processor is currently handling the scheduled workload, the processor is configured to operate in a second mode.
    Type: Application
    Filed: November 29, 2016
    Publication date: May 31, 2018
    Inventors: Sangram Alapati, Hima B. Nimmagadda, Satish K. Sadasivam
  • Publication number: 20180129629
    Abstract: Aspects of the disclosure relate to a hardware processor architecture. The hardware processor architecture may include a processor cache to manage a set of instructions. The hardware processor architecture may include a hint cache to manage a set of hints associated with the set of instructions. Disclosed aspects relate to establishing a hint cache which has a set of hints associated with the set of instructions. The hint cache may be established with respect to the processor cache which has a set of instructions. The set of instructions may be accessed from the processor cache. From the hint cache, the set of hints associated with the set of instructions may be communicated. The set of instructions may be processed by the hardware processor using the set of hints associated with the set of instructions. In embodiments, static or dynamic hint cache bits can be utilized.
    Type: Application
    Filed: November 7, 2016
    Publication date: May 10, 2018
    Inventor: Satish K. Sadasivam
  • Patent number: 9928068
    Abstract: A system may include a memory to store an enhancer to identify a branch instruction, having a miss-prediction rate above a threshold, in an executing thread. The system may additionally include an instruction update unit to modify an operation code (opcode) of the branch instruction, where a modified opcode of a branch instruction indicates an instruction fetch priority for an executing thread. The system may further include a processor, having an instruction decode unit to set a modified instruction fetch priority of the first executing thread based on the modified opcode of the branch instruction, and an instruction fetch unit to retrieve instructions for the first executing thread from the instruction cache at a first rate, the first rate indicated by the modified instruction fetch priority of the first executing thread.
    Type: Grant
    Filed: December 7, 2015
    Date of Patent: March 27, 2018
    Assignee: International Business Machines Corporation
    Inventors: Sangram Alapati, Puneeth A. Bhat, Satish K. Sadasivam
  • Patent number: 9921836
    Abstract: Branch sequences for branch prediction performance test are generated by performing the following steps: (i) generating a branch node graph, by a branch node graph generator machine logic set, based, at least in part, upon a set of branch traces of a workload or benchmark code; (ii) generating a first assembly pattern file, for use with a first instruction set architecture (ISA)/microarchitecture set, by an assembly pattern generator machine logic set, based, at least in part, upon the branch node graph so as to mimic the control-flow pattern of the workload or benchmark code; and (iii) running the assembly pattern file on the first ISA/microarchitecture set to obtain first execution results.
    Type: Grant
    Filed: November 2, 2016
    Date of Patent: March 20, 2018
    Assignee: International Business Machines Corporation
    Inventors: Prathiba Kumar, Satish K. Sadasivam
  • Patent number: 9886274
    Abstract: Branch sequences for branch prediction performance test are generated by performing the following steps: (i) generating a branch node graph, by a branch node graph generator machine logic set, based, at least in part, upon a set of branch traces of a workload or benchmark code; (ii) generating a first assembly pattern file, for use with a first instruction set architecture (ISA)/microarchitecture set, by an assembly pattern generator machine logic set, based, at least in part, upon the branch node graph so as to mimic the control-flow pattern of the workload or benchmark code; and (iii) running the assembly pattern file on the first ISA/microarchitecture set to obtain first execution results.
    Type: Grant
    Filed: November 2, 2016
    Date of Patent: February 6, 2018
    Assignee: International Business Machines Corporation
    Inventors: Prathiba Kumar, Satish K. Sadasivam
  • Patent number: 9753776
    Abstract: A computer system may determine a mode for a processor. The processor may support SMT, and it may have a first hardware thread with a first architected resource and a second hardware thread with a second architected resource. The computer system may determine that the processor is in a reduced-thread mode. The computer system may determine that the first hardware thread is a primary hardware thread that is active in the reduced-thread mode, and that the second hardware thread is a secondary hardware thread that is inactive in the reduced-thread mode. The computer system may disable the second hardware thread. The computer system may enable the first hardware thread to access the second architected resources.
    Type: Grant
    Filed: December 1, 2015
    Date of Patent: September 5, 2017
    Assignee: International Business Machines Corporation
    Inventors: Sangram Alapati, Puneeth A. Bhat, Satish K. Sadasivam
  • Publication number: 20170161076
    Abstract: A system may include a memory to store an enhancer to identify a branch instruction, having a miss-prediction rate above a threshold, in an executing thread. The system may additionally include an instruction update unit to modify an operation code (opcode) of the branch instruction, where a modified opcode of a branch instruction indicates an instruction fetch priority for an executing thread. The system may further include a processor, having an instruction decode unit to set a modified instruction fetch priority of the first executing thread based on the modified opcode of the branch instruction, and an instruction fetch unit to retrieve instructions for the first executing thread from the instruction cache at a first rate, the first rate indicated by the modified instruction fetch priority of the first executing thread.
    Type: Application
    Filed: December 7, 2015
    Publication date: June 8, 2017
    Inventors: Sangram Alapati, Puneeth A. Bhat, Satish K. Sadasivam
  • Publication number: 20170153922
    Abstract: A computer system may determine a mode for a processor. The processor may support SMT, and it may have a first hardware thread with a first architected resource and a second hardware thread with a second architected resource. The computer system may determine that the processor is in a reduced-thread mode. The computer system may determine that the first hardware thread is a primary hardware thread that is active in the reduced-thread mode, and that the second hardware thread is a secondary hardware thread that is inactive in the reduced-thread mode. The computer system may disable the second hardware thread. The computer system may enable the first hardware thread to access the second architected resources.
    Type: Application
    Filed: December 1, 2015
    Publication date: June 1, 2017
    Inventors: Sangram Alapati, Puneeth A. Bhat, Satish K. Sadasivam
  • Publication number: 20170060590
    Abstract: Branch sequences for branch prediction performance test are generated by performing the following steps: (i) generating a branch node graph, by a branch node graph generator machine logic set, based, at least in part, upon a set of branch traces of a workload or benchmark code; (ii) generating a first assembly pattern file, for use with a first instruction set architecture (ISA)/microarchitecture set, by an assembly pattern generator machine logic set, based, at least in part, upon the branch node graph so as to mimic the control-flow pattern of the workload or benchmark code; and (iii) running the assembly pattern file on the first ISA/microarchitecture set to obtain first execution results.
    Type: Application
    Filed: November 2, 2016
    Publication date: March 2, 2017
    Inventors: Prathiba Kumar, Satish K. Sadasivam
  • Publication number: 20170046166
    Abstract: Branch sequences for branch prediction performance test are generated by performing the following steps: (i) generating a branch node graph, by a branch node graph generator machine logic set, based, at least in part, upon a set of branch traces of a workload or benchmark code; (ii) generating a first assembly pattern file, for use with a first instruction set architecture (ISA)/microarchitecture set, by an assembly pattern generator machine logic set, based, at least in part, upon the branch node graph so as to mimic the control-flow pattern of the workload or benchmark code; and (iii) running the assembly pattern file on the first ISA/microarchitecture set to obtain first execution results.
    Type: Application
    Filed: November 2, 2016
    Publication date: February 16, 2017
    Inventors: Prathiba Kumar, Satish K. Sadasivam
  • Publication number: 20170031684
    Abstract: Branch sequences for branch prediction performance test are generated by performing the following steps: (i) generating a branch node graph, by a branch node graph generator machine logic set, based, at least in part, upon a set of branch traces of a workload or benchmark code; (ii) generating a first assembly pattern file, for use with a first instruction set architecture (ISA)/microarchitecture set, by an assembly pattern generator machine logic set, based, at least in part, upon the branch node graph so as to mimic the control-flow pattern of the workload or benchmark code; and (iii) running the assembly pattern file on the first ISA/microarchitecture set to obtain first execution results.
    Type: Application
    Filed: October 14, 2016
    Publication date: February 2, 2017
    Inventors: Prathiba Kumar, Satish K. Sadasivam
  • Patent number: 9542183
    Abstract: Branch sequences for branch prediction performance test are generated by performing the following steps: (i) generating a branch node graph, by a branch node graph generator machine logic set, based, at least in part, upon a set of branch traces of a workload or benchmark code; (ii) generating a first assembly pattern file, for use with a first instruction set architecture (ISA)/microarchitecture set, by an assembly pattern generator machine logic set, based, at least in part, upon the branch node graph so as to mimic the control-flow pattern of the workload or benchmark code; and (iii) running the assembly pattern file on the first ISA/microarchitecture set to obtain first execution results.
    Type: Grant
    Filed: March 4, 2016
    Date of Patent: January 10, 2017
    Assignee: International Business Machines Corporation
    Inventors: Prathiba Kumar, Satish K. Sadasivam
  • Patent number: 9519481
    Abstract: Branch sequences for branch prediction performance test are generated by performing the following steps: (i) generating a branch node graph, by a branch node graph generator machine logic set, based, at least in part, upon a set of branch traces of a workload or benchmark code; (ii) generating a first assembly pattern file, for use with a first instruction set architecture (ISA)/microarchitecture set, by an assembly pattern generator machine logic set, based, at least in part, upon the branch node graph so as to mimic the control-flow pattern of the workload or benchmark code; and (iii) running the assembly pattern file on the first ISA/microarchitecture set to obtain first execution results.
    Type: Grant
    Filed: June 27, 2014
    Date of Patent: December 13, 2016
    Assignee: International Business Machines Corporation
    Inventors: Prathiba Kumar, Satish K. Sadasivam
  • Publication number: 20160170750
    Abstract: Branch sequences for branch prediction performance test are generated by performing the following steps: (i) generating a branch node graph, by a branch node graph generator machine logic set, based, at least in part, upon a set of branch traces of a workload or benchmark code; (ii) generating a first assembly pattern file, for use with a first instruction set architecture (ISA)/microarchitecture set, by an assembly pattern generator machine logic set, based, at least in part, upon the branch node graph so as to mimic the control-flow pattern of the workload or benchmark code; and (iii) running the assembly pattern file on the first ISA/microarchitecture set to obtain first execution results.
    Type: Application
    Filed: March 4, 2016
    Publication date: June 16, 2016
    Inventors: Prathiba Kumar, Satish K. Sadasivam
  • Patent number: 9298630
    Abstract: A computer processor collects information for a dominant data access loop and reference code patterns based on data reference pattern analysis, and for pointer aliasing and data shape based on pointer escape analysis. The computer processor selects a candidate array for data splitting wherein the candidate array is referenced by a dominant data access loop. The computer processor determines a data splitting mode by which to split the data of the candidate array, based on the reference code patterns, the pointer aliasing, and the data shape information, and splits the data into two or more split arrays. The computer processor creates a software cache that includes a portion of the data of the two or more split arrays in a transposed format, and maintains the portion of the transposed data within the software cache and consults the software cache during an access of the split arrays.
    Type: Grant
    Filed: June 13, 2014
    Date of Patent: March 29, 2016
    Assignee: GLOBALFOUNDRIES INC.
    Inventors: Christopher M. Barton, Shimin Cui, Satish K. Sadasivam, Raul E. Silvera, Madhavi G. Valluri, Steven W White