Patents by Inventor Monica GUPTA
Monica GUPTA 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: 12141015Abstract: A hardware and software coordinated processor power state policy (e.g., policy for C-state) that delivers optimal power state selection by taking in to account the performance and/or responsiveness needs of thread expected to be scheduled on the core entering idle, to achieve improved IPC and performance for cores running user critical tasks. The scheme provides the ability to deliver responsiveness gains for important and/or user-critical threads running on a system-on-chip. A power management controller coupled to the plurality of processing cores, wherein the power management controller receives a hint from an operating system indicative of a bias towards a power state or performance state for at least one of the processing cores of the plurality of processing cores based on a priority of a thread in context switch.Type: GrantFiled: December 18, 2020Date of Patent: November 12, 2024Assignee: Intel CorporationInventors: Deepak S Kirubakaran, Ramakrishnan Sivakumar, Russell Fenger, Monica Gupta, Jianwei Dai, Premanand Sakarda, Guy Therien, Rajshree Chabukswar, Chad Gutierrez, Renji Thomas
-
Publication number: 20240264861Abstract: An apparatus, computer-implemented method, and system to schedule ready threads on a processor circuitry. T The apparatus includes memory circuitry, machine-readable instructions, and processor circuitry to determine a quality of a first thread of a set of threads that are ready for scheduling on the processor circuitry. Based on the quality of the first thread, the apparatus finds a set of modules of the processor circuitry that are available for scheduling. The apparatus further selects a preferred module of the set of modules for the first thread. The apparatus then schedules the first thread to run on the preferred module.Type: ApplicationFiled: March 28, 2024Publication date: August 8, 2024Inventors: Monica GUPTA, Prathviraj BILLAVA, Nachiket PATEL, Russell FENGER, Rajshree CHABUKSWAR, Stephen H. GUNTHER, Anusha RAMACHANDRAN
-
Patent number: 12008383Abstract: Systems, apparatuses and methods may provide for technology that automatically determines a runtime performance of a plurality of heterogeneous processing units based on system-level thread characteristics, wherein the runtime performance is determined on a per performance class basis. The technology may also automatically determine a runtime energy efficiency of the heterogeneous processing units, wherein the runtime energy efficiency is determined on a per efficiency class basis. In one example, technology selectively unparks one or more of the heterogeneous processing units based on the runtime performance and the runtime energy efficiency.Type: GrantFiled: September 1, 2020Date of Patent: June 11, 2024Assignee: Intel CorporationInventors: Monica Gupta, Stephen H. Gunther, Russell Fenger
-
Publication number: 20240103914Abstract: In one embodiment, a processor includes: a plurality of cores to execute instructions; at least one monitor coupled to the plurality of cores to measure at least one of power information, temperature information, or scalability information; and a control circuit coupled to the at least one monitor. Based at least in part on the at least one of the power information, the temperature information, or the scalability information, the control circuit is to notify an operating system that one or more of the plurality of cores are to transition to a forced idle state in which non-affinitized workloads are prevented from being scheduled. Other embodiments are described and claimed.Type: ApplicationFiled: September 28, 2022Publication date: March 28, 2024Inventors: Russell J. Fenger, Rajshree A. Chabukswar, Benjamin Graniello, Monica Gupta, Guy M. Therien, Michael W. Chynoweth
-
Publication number: 20230136365Abstract: Methods, apparatus, systems, and articles of manufacture are disclosed to allocate accelerator usage. An apparatus to allocate accelerator usage comprises: at least one memory, machine readable instructions, and processor circuitry to at least one of instantiate or execute the machine readable instructions to: store data identifying at least one processing unit in communication with a processing circuitry and at least one class; predict an execution of the at least one processing unit workload based on at least one capability; and schedule which processing unit the workload to run on based on at least one of (i) processor circuitry or (ii) user priority parameters.Type: ApplicationFiled: December 30, 2022Publication date: May 4, 2023Inventors: Monica Gupta, Mousumi Hazra, Javier Martinez, Stephen H. Gunther, Manuj Sabharwal, Michael Voss, Derrick Jones, Saurabh Tangri, Duncan Glendinning
-
Patent number: 11593154Abstract: The present disclosure is directed to dynamically prioritizing, selecting or ordering a plurality threads for execution by processor circuitry based on a quality of service and/or class of service value/indicia assigned to the thread by an operating system executed by the processor circuitry. As threads are executed by processor circuitry, the operating system dynamically updates/associates respective class of service data with each of the plurality of threads. The current quality of service/class of service data assigned to the thread by the operating system is stored in a manufacturer specific register (MSR) associated with the respective thread. Selection circuitry polls the MSRs on a periodic, aperiodic, intermittent, continuous, or event-driven basis and determines an execution sequence based on the current class of service value associated with each of the plurality of threads.Type: GrantFiled: December 20, 2018Date of Patent: February 28, 2023Assignee: Intel CorporationInventors: Ahmad Samih, Rajshree Chabukswar, Russell Fenger, Shadi Khasawneh, Vijay Dhanraj, Muhammad Abozaed, Mukund Ramakrishna, Atsuo Kuwahara, Guruprasad Settuvalli, Eugene Gorbatov, Monica Gupta, Christine M. Lin
-
Patent number: 11531563Abstract: A data processing system comprises a hybrid processor comprising a big TPU and a small TPU. At least one of the TPUs comprises an LP of a processing core that supports SMT. The hybrid processor further comprises hardware feedback circuitry. A machine-readable medium in the data processing system comprises instructions which, when executed, enable an OS in the data processing system to collect (a) processor topology data from the hybrid processor and (b) hardware feedback for at least one of the TPUs from the hardware feedback circuitry. The instructions also enable the OS to respond to a determination that a thread is ready to be scheduled by utilizing (a) an OP setting for the ready thread, (b) the processor topology data, and (c) the hardware feedback to make a scheduling determination for the ready thread. Other embodiments are described and claimed.Type: GrantFiled: June 26, 2020Date of Patent: December 20, 2022Assignee: Intel CorporationInventors: Monica Gupta, Eliezer Weissmann, Hisham Abu Salah, Rajshree Arun Chabukswar, Russell Jerome Fenger, Eugene Gorbatov, Guruprasad Settuvalli, Balaji Masanamuthu Chinnathurai, Sumant Tapas, Meghana Gudaram, Raj Kumar Subramaniam
-
Patent number: 11436118Abstract: An apparatus and method for intelligently scheduling threads across a plurality of logical processors.Type: GrantFiled: December 27, 2019Date of Patent: September 6, 2022Assignee: Intel CorporationInventors: Eliezer Weissmann, Omer Barak, Rajshree Chabukswar, Russell Fenger, Eugene Gorbatov, Monica Gupta, Julius Mandelblat, Nir Misgav, Efraim Rotem, Ahmad Yasin
-
Publication number: 20220206862Abstract: Embodiments of apparatuses, methods, and systems for resource control based on software priority are described. In embodiments, an apparatus includes resource sharing hardware and multiple cores. The resource sharing hardware is to share the shared resource among the cores. A first core includes first execution circuitry to execute multiple threads. The first core also includes registers programmable by software. A first register is to store a first identifier of a first thread and a first priority tag to indicate a first priority of the first thread relative to a second priority of a second thread. A second register to store a second identifier of the second thread and a second priority tag to indicate the second priority of the second thread relative to the first priority of the first thread. The resource sharing hardware is to use the first priority and the second priority to control access to the shared resource by the first thread and the second thread.Type: ApplicationFiled: December 25, 2020Publication date: June 30, 2022Applicant: Intel CorporationInventors: Monica Gupta, Russell Fenger, Andrew J. Herdrich, Rajshree Chabukswar, Jumnit Hong, Sneha Gohad
-
Publication number: 20220197367Abstract: A hardware and software coordinated processor power state policy (e.g., policy for C-state) that delivers optimal power state selection by taking in to account the performance and/or responsiveness needs of thread expected to be scheduled on the core entering idle, to achieve improved IPC and performance for cores running user critical tasks. The scheme provides the ability to deliver responsiveness gains for important and/or user-critical threads running on a system-on-chip. A power management controller coupled to the plurality of processing cores, wherein the power management controller receives a hint from an operating system indicative of a bias towards a power state or performance state for at least one of the processing cores of the plurality of processing cores based on a priority of a thread in context switch.Type: ApplicationFiled: December 18, 2020Publication date: June 23, 2022Applicant: Intel CorporationInventors: Deepak S Kirubakaran, Ramakrishnan Sivakumar, Russell Fenger, Monica Gupta, Jianwei Dai, Premanand Sakarda, Guy Therien, Rajshree Chabukswar, Chad Gutierrez, Renji Thomas
-
Publication number: 20220066788Abstract: Systems, apparatuses and methods may provide for technology that automatically determines a runtime performance of a plurality of heterogeneous processing units based on system-level thread characteristics, wherein the runtime performance is determined on a per performance class basis. The technology may also automatically determine a runtime energy efficiency of the heterogeneous processing units, wherein the runtime energy efficiency is determined on a per efficiency class basis. In one example, technology selectively unparks one or more of the heterogeneous processing units based on the runtime performance and the runtime energy efficiency.Type: ApplicationFiled: September 1, 2020Publication date: March 3, 2022Inventors: Monica Gupta, Stephen H. Gunther, Russell Fenger
-
Publication number: 20210406060Abstract: A data processing system comprises a hybrid processor comprising a big TPU and a small TPU. At least one of the TPUs comprises an LP of a processing core that supports SMT. The hybrid processor further comprises hardware feedback circuitry. A machine-readable medium in the data processing system comprises instructions which, when executed, enable an OS in the data processing system to collect (a) processor topology data from the hybrid processor and (b) hardware feedback for at least one of the TPUs from the hardware feedback circuitry. The instructions also enable the OS to respond to a determination that a thread is ready to be scheduled by utilizing (a) an OP setting for the ready thread, (b) the processor topology data, and (c) the hardware feedback to make a scheduling determination for the ready thread. Other embodiments are described and claimed.Type: ApplicationFiled: June 26, 2020Publication date: December 30, 2021Inventors: Monica Gupta, Eliezer Weissmann, Hisham Abu Salah, Rajshree Arun Chabukswar, Russell Jerome Fenger, Eugene Gorbatov, Guruprasad Settuvalli, Balaji Masanamuthu Chinnathurai, Sumant Tapas, Meghana Gudaram, Raj Kumar Subramaniam
-
Publication number: 20210200656Abstract: An apparatus and method for intelligently scheduling threads across a plurality of logical processors.Type: ApplicationFiled: December 27, 2019Publication date: July 1, 2021Inventors: ELIEZER WEISSMANN, Omer Barak, Rajshree Chabukswar, Russell Fenger, Eugene Gorbatov, Monica Gupta, Julius Mandelblat, Nir Misgav, Efraim Rotem, Ahmad Yasin
-
Publication number: 20200272513Abstract: In an embodiment, a processor includes a plurality of processing engines (PEs) to execute threads, and a guide unit. The guide unit is to: monitor execution characteristics of the plurality of PEs and the threads; generate a plurality of PE rankings, each PE ranking including the plurality of PEs in a particular order; and store the plurality of PE rankings in a memory to be provided to a scheduler, the scheduler to schedule the threads on the plurality of PEs using the plurality of PE rankings. Other embodiments are described and claimed.Type: ApplicationFiled: January 13, 2020Publication date: August 27, 2020Inventors: Avinash N. Ananthakrishnan, Vijay Dhanraj, Russell J. Fenger, Vivek Garg, Eugene Gorbatov, Stephen H. Gunther, Monica Gupta, Efraim Rotem, Krishnakanth V. Sistla, Guy M. Therien, Ankush Varma, Eliezer Weissmann
-
Publication number: 20200201671Abstract: The present disclosure is directed to dynamically prioritizing, selecting or ordering a plurality threads for execution by processor circuitry based on a quality of service and/or class of service value/indicia assigned to the thread by an operating system executed by the processor circuitry. As threads are executed by processor circuitry, the operating system dynamically updates/associates respective class of service data with each of the plurality of threads. The current quality of service/class of service data assigned to the thread by the operating system is stored in a manufacturer specific register (MSR) associated with the respective thread. Selection circuitry polls the MSRs on a periodic, aperiodic, intermittent, continuous, or event-driven basis and determines an execution sequence based on the current class of service value associated with each of the plurality of threads.Type: ApplicationFiled: December 20, 2018Publication date: June 25, 2020Applicant: Intel CorporationInventors: AHMAD SAMIH, RAJSHREE CHABUKSWAR, Russell Fenger, Shadi Khasawneh, Vijay Dhanraj, Muhammad Abozaed, Mukund Ramakrishna, Atsuo Kuwahara, Guruprasad Settuvalli, Eugene Gorbatov, MONICA GUPTA, CHRISTINE M. LIN
-
Patent number: 10545793Abstract: In an embodiment, a processor includes a plurality of processing engines (PEs) to execute threads, and a guide unit. The guide unit is to: monitor execution characteristics of the plurality of PEs and the threads; generate a plurality of PE rankings, each PE ranking including the plurality of PEs in a particular order; and store the plurality of PE rankings in a memory to be provided to a scheduler, the scheduler to schedule the threads on the plurality of PEs using the plurality of PE rankings. Other embodiments are described and claimed.Type: GrantFiled: September 29, 2017Date of Patent: January 28, 2020Assignee: Intel CorporationInventors: Avinash N. Ananthakrishnan, Vijay Dhanraj, Russell J. Fenger, Vivek Garg, Eugene Gorbatov, Stephen H. Gunther, Monica Gupta, Efraim Rotem, Krishnakanth V. Sistla, Guy M. Therien, Ankush Varma, Eliezer Weissmann
-
Patent number: 10503550Abstract: Technologies are provided in embodiments to dynamically bias performance of logical processors in a core of a processor. One embodiment includes identifying a first logical processor associated with a first thread of an application and a second logical processor associated with a second thread, obtaining first and second thread preference indicators associated with the first and second threads, respectively, computing a first relative performance bias value for the first logical processor based, at least in part, on a relativeness of the first and second thread preference indicators, and adjusting a performance bias of the first logical processor based on the first relative performance bias value. Embodiments can further include increasing the performance bias of the first logical processor based, at least in part, on the first relative performance bias value indicating a first performance preference that is higher than a second performance preference.Type: GrantFiled: September 30, 2017Date of Patent: December 10, 2019Assignee: Intel CorporationInventors: Monica Gupta, Russell J. Fenger, Vijay Dhanraj, Deepak Samuel Kirubakaran, Srividya Ambale, Israel Hirsh, Eliezer Weissmann, Hisham Abu Salah
-
Patent number: 10372493Abstract: Apparatuses, methods and storage medium associated with scheduling of threads and/or virtual machines, are disclosed herein. In embodiments, an apparatus is provided with a scheduler of an operating system and/or a virtual machine monitor. The scheduler is to retrieve or receive capabilities of the cores of one or more multi-core processors of the apparatus with diverse capabilities, and schedule a plurality of threads for execution on selected one or ones of the cores, based at least in part on the capabilities of the cores and characteristics of the plurality of threads. The virtual machine monitor is to retrieve or receive capabilities of the cores, and schedule a plurality of virtual machines for execution on selected one or ones of the cores, based at least in part on the capabilities of the cores and respective priorities of the virtual machines. Other embodiments may be described and/or claimed.Type: GrantFiled: December 22, 2015Date of Patent: August 6, 2019Assignee: Intel CorporationInventors: Vijay Dhanraj, Gaurav Khanna, Russell J. Fenger, Monica Gupta
-
Publication number: 20190102227Abstract: In an embodiment, a processor includes a plurality of processing engines (PEs) to execute threads, and a guide unit. The guide unit is to: monitor execution characteristics of the plurality of PEs and the threads; generate a plurality of PE rankings, each PE ranking including the plurality of PEs in a particular order; and store the plurality of PE rankings in a memory to be provided to a scheduler, the scheduler to schedule the threads on the plurality of PEs using the plurality of PE rankings. Other embodiments are described and claimed.Type: ApplicationFiled: September 29, 2017Publication date: April 4, 2019Inventors: Avinash Ananthakrishnan, Vijay Dhanraj, Russell Fenger, Vivek Garg, Eugene Gorbatov, Stephen Gunter, Monica Gupta, Efraim Rotem, Krishnakanth Sistla, Guy Therien, Ankush Verma, Eliezer Weissmann
-
Publication number: 20190102229Abstract: Technologies are provided in embodiments to dynamically bias performance of logical processors in a core of a processor. One embodiment includes identifying a first logical processor associated with a first thread of an application and a second logical processor associated with a second thread, obtaining first and second thread preference indicators associated with the first and second threads, respectively, computing a first relative performance bias value for the first logical processor based, at least in part, on a relativeness of the first and second thread preference indicators, and adjusting a performance bias of the first logical processor based on the first relative performance bias value. Embodiments can further include increasing the performance bias of the first logical processor based, at least in part, on the first relative performance bias value indicating a first performance preference that is higher than a second performance preference.Type: ApplicationFiled: September 30, 2017Publication date: April 4, 2019Applicant: Intel CorporationInventors: Monica Gupta, Russell J. Fenger, Vijay Dhanraj, Deepak Samuel Kirubakaran, Srividya Ambale, Israel Hirsh, Eliezer Weissmann, Hisham Abu-Salah