Patent ID: 8495650

Claim:
A method for determining a number of threads to maximize utilization of a system, the method comprising: determining a first value as being equal to a percentage of time in which said system is not waiting for instructions from at least one application; determining a second value as being equal to a number of threads interacting with said system, said threads having been created by said at least one application; determining a third value as being equal to a number of processor cores residing within said system; receiving from an end user a fourth value that represents a desired percentage of time in which said system is not waiting for instructions from said at least one application; determining, by a processor of a computer system, a fifth value V 5 as being equal to V 5 =(ln(1−V 4 )/ln(1−V 1 /V 3 )) V 2 , wherein V 1 is the determined first value, wherein V 2 is the determined second value, wherein V 3 is the determined third value, and wherein V 4 is the received fourth value, such that the determined fifth value V 5 represents a number of threads which if a total number of threads interacting with said system were equal to the determined fifth value V 5 would result in said percentage of time in which said system is not waiting for instructions from at least one application being equal to the received fourth value V 4 ; and after said determining said fifth value V 5 , sending said fifth value V 5 to said at least one application.