Patents by Inventor Derek R. Kumar

Derek R. Kumar 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).

  • Publication number: 20170060743
    Abstract: A method and apparatus of a device that manages virtual memory for a graphics processing unit is described. In an exemplary embodiment, the device manages a graphics processing unit working set of pages. In this embodiment, the device determines the set of pages of the device to be analyzed, where the device includes a central processing unit and the graphics processing unit. The device additionally classifies the set of pages based on a graphics processing unit activity associated with the set of pages and evicts a page of the set of pages based on the classifying.
    Type: Application
    Filed: October 28, 2016
    Publication date: March 2, 2017
    Inventor: Derek R. Kumar
  • Patent number: 9563571
    Abstract: A method and apparatus of a device that manages virtual memory for a graphics processing unit is described. In an exemplary embodiment, the device performs translation lookaside buffer coherency for a translation lookaside buffer of the graphics processing unit of the device. In this embodiment, the device receives a request to remove an entry of the translation lookaside buffer of the graphics processing unit, where the device includes a central processing unit and the graphics processing unit. In addition, the entry includes a translation of virtual memory address of a process to a physical memory address of system memory of a central processing unit and the graphics processing unit is executing a compute task of the process. The device locates the entry in the translation lookaside buffer and removes the entry.
    Type: Grant
    Filed: April 25, 2014
    Date of Patent: February 7, 2017
    Assignee: Apple Inc.
    Inventor: Derek R. Kumar
  • Patent number: 9542230
    Abstract: A method and apparatus of a device that coalesces the execution of several timers by scheduling the timers using a scheduling window is described. The device determines a scheduling window for each of several timers. The device selects a coalesced execution time that is within the scheduling window of the timers. The device coalesces the execution of the timers by scheduling the timers to execute at the coalesced execution time. The device can further coalesce multiple timers by opportunistic execution of the timers. In response to a detection of an opportunistic execution trigger event, the device receives multiple timers. The device selects a subset of the timers to execute based on an initial execution time and a latency time for each of the timers. The device schedules each of the subset of timers to execute during or before the opportunistic execution trigger event.
    Type: Grant
    Filed: May 15, 2013
    Date of Patent: January 10, 2017
    Assignee: Apple Inc.
    Inventor: Derek R. Kumar
  • Patent number: 9530174
    Abstract: A method and apparatus of a device that manages a thermal profile of a device by selectively throttling graphics processing unit operations of the device is described. In an exemplary embodiment, the device monitors the thermal profile of the device, where the device executes a plurality of processes that utilizes a graphics processing unit of the device. In addition, the plurality of processes include a high priority process and a low priority process. If the thermal profile of the device exceeds a thermal threshold, the device decreases a first GPU utilization for the low priority process and maintains a second GPU utilization for the high priority process. The device further executes the low priority process using the first GPU utilization with the GPU and executes the high priority process using the second GPU utilization with the GPU.
    Type: Grant
    Filed: September 30, 2014
    Date of Patent: December 27, 2016
    Assignee: Apple Inc.
    Inventors: Umesh Suresh Vaishampayan, Derek R. Kumar, Cecile Marie Foret, Anthony Graham Sumpter, Harshavardhan P. Gopalakrishnan, William E. Damon, III
  • Patent number: 9507726
    Abstract: A method and apparatus of a device that manages virtual memory for a graphics processing unit is described. In an exemplary embodiment, the device manages a graphics processing unit working set of pages. In this embodiment, the device determines the set of pages of the device to be analyzed, where the device includes a central processing unit and the graphics processing unit. The device additionally classifies the set of pages based on a graphics processing unit activity associated with the set of pages and evicts a page of the set of pages based on the classifying.
    Type: Grant
    Filed: April 25, 2014
    Date of Patent: November 29, 2016
    Assignee: Apple Inc.
    Inventor: Derek R. Kumar
  • Patent number: 9436628
    Abstract: A method and apparatus of a device that manages a thermal profile of a device by selectively throttling input/output operations of the device is described. In an exemplary embodiment, the device monitors the thermal profile of the device, where the device executes a plurality of processes that utilize storage of the device. In addition, the plurality of processes include a high priority process and a low priority process. If the thermal profile of the device exceeds a thermal threshold, the device decreases a first bandwidth range for the low priority process and maintains a second bandwidth range for the high priority process. The device further processes a storage request of the low priority process using the first bandwidth range and processing a storage request of the high priority process using the second bandwidth range.
    Type: Grant
    Filed: September 30, 2014
    Date of Patent: September 6, 2016
    Assignee: Apple Inc.
    Inventors: Umesh Suresh Vaishampayan, Derek R. Kumar, Christopher John Sarcone, Russell Alexader Blaine, Tejas Arun Bahulkar, Shachar Katz, Joseph Sokol, Jr., Matthew John Byom
  • Publication number: 20160219525
    Abstract: A method and apparatus of a device that manages system performance by controlling power state based on information related to I/O operations is described. The device collects historical I/O information. The historical I/O information may include the number of I/O operations over a sample period of time and the inter-arrival time between I/O operations. The device further receives information related to a current I/O operation. The information of the current I/O operation may include direction, size, quality of service, and media type of the I/O operation. The device determines a power state based on the historical I/O information and the information relative to the current I/O operation to reduce power consumption while improving system efficiency and maintaining an acceptable level of system performance. The device further applies the determined power state. Other embodiments are also described and claimed.
    Type: Application
    Filed: January 21, 2016
    Publication date: July 28, 2016
    Inventor: Derek R. Kumar
  • Publication number: 20160077987
    Abstract: A data processing system includes, in one embodiment, at least a first processor and a second processor and an interrupt controller, and the system provides a deferred inter-processor interrupt (IPI) that can be used to wake up the second processor from a low power sleep state. The deferred IPI is, in one embodiment, delayed by a timer in the interrupt controller, and the deferred WI can be cancelled by the first processor if the first processor becomes available to execute a thread that was made runnable by an interrupt which triggered the deferred IPI.
    Type: Application
    Filed: September 28, 2015
    Publication date: March 17, 2016
    Inventors: Derek R. Kumar, Joshua Phillips de Cesare
  • Patent number: 9208113
    Abstract: A data processing system includes, in one embodiment, at least a first processor and a second processor and an interrupt controller, and the system provides a deferred inter-processor interrupt (IPI) that can be used to wake up the second processor from a low power sleep state. The deferred IPI is, in one embodiment, delayed by a timer in the interrupt controller, and the deferred IPI can be cancelled by the first processor if the first processor becomes available to execute a thread that was made runnable by an interrupt which triggered the deferred IPI.
    Type: Grant
    Filed: January 15, 2013
    Date of Patent: December 8, 2015
    Assignee: Apple Inc.
    Inventors: Derek R. Kumar, Joshua Phillips de Cesare
  • Publication number: 20150346800
    Abstract: A method and apparatus of a device that manages a thermal profile of a device by selectively throttling central processing unit operations of the device is described. The device manages a thermal profile of the device by adjusting a throttling a central processing unit execution of a historically high energy consuming task. In this embodiment, the device monitors thermal level of the thermal profile of the device, the device is executing a plurality of tasks that utilize a plurality of processing cores of the device. If the thermal level of the device exceeds a thermal threshold, the device identifies one of the plurality tasks as a historically high energy consuming task, and throttles this historically high energy consuming task by setting a force idle execution time for the historically high energy consuming task. The device further executes the plurality of tasks.
    Type: Application
    Filed: September 30, 2014
    Publication date: December 3, 2015
    Inventor: Derek R. Kumar
  • Publication number: 20150347330
    Abstract: A method and apparatus of a device that manages a thermal profile of a device by selectively throttling input/output operations of the device is described. In an exemplary embodiment, the device monitors the thermal profile of the device, where the device executes a plurality of processes that utilize storage of the device. In addition, the plurality of processes include a high priority process and a low priority process. If the thermal profile of the device exceeds a thermal threshold, the device decreases a first bandwidth range for the low priority process and maintains a second bandwidth range for the high priority process. The device further processes a storage request of the low priority process using the first bandwidth range and processing a storage request of the high priority process using the second bandwidth range.
    Type: Application
    Filed: September 30, 2014
    Publication date: December 3, 2015
    Inventors: Umesh Suresh Vaishampayan, Derek R. Kumar, Christopher John Sarcone, Russell Alexader Blaine, Tejas Arun Bahulkar, Shachar Katz, Joseph Sokol, JR., Matthew John Byom
  • Publication number: 20150348226
    Abstract: A method and apparatus of a device that manages a thermal profile of a device by selectively throttling graphics processing unit operations of the device is described. In an exemplary embodiment, the device monitors the thermal profile of the device, where the device executes a plurality of processes that utilizes a graphics processing unit of the device. In addition, the plurality of processes include a high priority process and a low priority process. If the thermal profile of the device exceeds a thermal threshold, the device decreases a first GPU utilization for the low priority process and maintains a second GPU utilization for the high priority process. The device further executes the low priority process using the first GPU utilization with the GPU and executes the high priority process using the second GPU utilization with the GPU.
    Type: Application
    Filed: September 30, 2014
    Publication date: December 3, 2015
    Inventors: Umesh Suresh Vaishampayan, Derek R. Kumar, Cecile Marie Foret, Anthony Graham Sumpter, Harshavardhan P. Gopalakrishnan, William E. Damon, III
  • Publication number: 20150346809
    Abstract: A method and apparatus of a device that manages a thermal profile of a device by selectively throttling central processing unit operations of the device is described. The device monitors the thermal profile of the device, where the device executes a plurality of tasks that utilizes a central processing unit of the device. In addition, the plurality of tasks includes a high QoS task and a low QoS process. If the thermal profile of the device exceeds a thermal threshold, the device increases a first CPU throttling for the low QoS task and maintains a second CPU throttling for the high QoS task. The device further executes the low QoS task using the first CPU utilization with the first processing core of the CPU by selectively forcing an idle of the low QoS task during an execution window. In addition, the device executes the high QoS task using the second CPU throttling with a second processing core of the CPU.
    Type: Application
    Filed: September 30, 2014
    Publication date: December 3, 2015
    Inventor: Derek R. Kumar
  • Publication number: 20150310580
    Abstract: A method and apparatus of a device that manages virtual memory for a graphics processing unit is described. In an exemplary embodiment, the device performs translation lookaside buffer coherency for a translation lookaside buffer of the graphics processing unit of the device. In this embodiment, the device receives a request to remove an entry of the translation lookaside buffer of the graphics processing unit, where the device includes a central processing unit and the graphics processing unit. In addition, the entry includes a translation of virtual memory address of a process to a physical memory address of system memory of a central processing unit and the graphics processing unit is executing a compute task of the process. The device locates the entry in the translation lookaside buffer and removes the entry.
    Type: Application
    Filed: April 25, 2014
    Publication date: October 29, 2015
    Applicant: Apple Inc.
    Inventor: Derek R. Kumar
  • Publication number: 20150309940
    Abstract: A method and apparatus of a device that manages virtual memory for a graphics processing unit is described. In an exemplary embodiment, the device manages a graphics processing unit working set of pages. In this embodiment, the device determines the set of pages of the device to be analyzed, where the device includes a central processing unit and the graphics processing unit. The device additionally classifies the set of pages based on a graphics processing unit activity associated with the set of pages and evicts a page of the set of pages based on the classifying.
    Type: Application
    Filed: April 25, 2014
    Publication date: October 29, 2015
    Applicant: Apple Inc.
    Inventor: Derek R. Kumar
  • Publication number: 20140344819
    Abstract: A method and apparatus of a device that coalesces the execution of several timers by scheduling the timers using a scheduling window is described. The device determines a scheduling window for each of several timers. The device selects a coalesced execution time that is within the scheduling window of the timers. The device coalesces the execution of the timers by scheduling the timers to execute at the coalesced execution time. The device can further coalesce multiple timers by opportunistic execution of the timers. In response to a detection of an opportunistic execution trigger event, the device receives multiple timers. The device selects a subset of the timers to execute based on an initial execution time and a latency time for each of the timers. The device schedules each of the subset of timers to execute during or before the opportunistic execution trigger event.
    Type: Application
    Filed: May 15, 2013
    Publication date: November 20, 2014
    Applicant: APPLE, INC.
    Inventor: DEREK R. KUMAR
  • Publication number: 20140344820
    Abstract: A method and apparatus of a device that rate-limits the execution of a timer is described. The device receives a timer that includes an initial execution timer and a timer priority. If the timer priority is low, the device rate-limits the execution of the timer based on a suppression period associated with the timer priority. In order to rate-limit the execution of the timer, the device determines the suppression period based on the timer priority and schedules the timer to execute at the end of the suppression period. The device further schedules the timer to execute at the initial exertion time when the timer priority is high.
    Type: Application
    Filed: May 15, 2013
    Publication date: November 20, 2014
    Applicant: APPLE, INC.
    Inventor: Derek R. Kumar
  • Publication number: 20140201411
    Abstract: A data processing system includes, in one embodiment, at least a first processor and a second processor and an interrupt controller, and the system provides a deferred inter-processor interrupt (IPI) that can be used to wake up the second processor from a low power sleep state. The deferred IPI is, in one embodiment, delayed by a timer in the interrupt controller, and the deferred IPI can be cancelled by the first processor if the first processor becomes available to execute a thread that was made runnable by an interrupt which triggered the deferred IPI.
    Type: Application
    Filed: January 15, 2013
    Publication date: July 17, 2014
    Applicant: Apple Inc.
    Inventors: Derek R. Kumar, Joshua Phillips de Cesare