Patent ID: 8813080
Filing Date: 2014-08-19
Classification: G06F,Y02D

Abstract:
1. A system for optimizing scheduling of a ready thread, comprising: a processor comprising a plurality of logical processors, coupled to memory; an operating system (OS) to execute on the processor, the OS to make scheduling decisions for a plurality of ready threads; logic to monitor and store historical temporal characteristics of system utilization in the memory; logic to monitor and store in the memory historical temporal characteristics of a plurality of threads that have run on at least one logical processor of the system; and logic to select a logical processor of the plurality of logical processors on which to run a ready thread, the selection being based on, at least in part, a platform policy criteria, and one or more of the historical temporal characteristics of the system utilization or one or more of the historical temporal characteristics of the plurality of threads that have run; wherein the platform policy criteria defines when to use one of a performance-centric policy, a power-savings-centric policy, or a balanced policy, the criteria utilizing the historical temporal characteristics of at least one of the system utilization and the plurality threads that have run; wherein the historical temporal characteristics of the plurality of threads that have run include whether a thread is one of a short-running thread or a long-running thread; and wherein the logical processor selected for a short-running thread is executing other short-running threads.