Claims
- 1. A method of distributing work to processors in a multi-processor system, the method comprising the steps of:
during bind-time,
determining a scaling factor for each processor, wherein the scaling factor represents relative processing power in relation to each other processor; and distributing portions of a total amount of work to each processor based on the determined scaling factor of that processor and a determined amount of work for an average processor.
- 2. The method of claim 1, farther comprising the step of, before determining a scaling factor, determining an average processing power for each processor.
- 3. The method of claim 2, wherein each processor has an associated processing power and the average processing power is the sum of the processing powers of the processors divided by the number of processors.
- 4. The method of claim 3, Wherein the scaling factor is determined by the processing power of a processor divided by the average processing power.
- 5. The method of claim 1, wherein the step of distributing portions of a total amount of work to each processor based on the determined scaling factor of that processor, further comprises the steps of:
determining an amount of work that can be handled by an average processor; and distributing portions of a total amount of work to each processor based on the determined scaling factor of that processor and a determined amount of work for an average processor.
- 6. The method of claim 5, wherein the step of determining an amount of work that can be handled by an average processor, further comprises the steps of:
determining whether the work is I/O bound or CPU bound; and determining the amount of work for an average processor based on a selected number of processors and a value based on the determination as to how the work is bound.
- 7. The method of claim 1, further comprising, during run-time, redetermining the portions of work to be distributed to each processor based on a change in resources.
- 8. The method of claim 7, wherein the change in resources is a change in the number of processors.
- 9. The method of claim 7, wherein the change in resources is a change in an amount of storage to be used by the processors.
- 10. The method of claim 1, wherein the multiple processors are on different systems connected by a network.
- 11. The method of claim 1, wherein the multiple processors are part of one system.
- 12. An apparatus for distributing work to processors in a multi-processor system, comprising:
a computer having a data storage device connected thereto, wherein the data storage device stores a database containing the partitioned data; one or more computer programs, performed by the computer, for, during bindtime, determining a scaling factor for each processor, wherein the scaling factor represents relative processing power in relation to each other processor, and distributing portions of a total amount of work to each processor based on the determined scaling factor of that processor.
- 13. The apparatus of claim 12, further comprising the means for, before determining a scaling factor, determining an average processing power for each processor.
- 14. The apparatus of claim 12, wherein each processor has an associated processing power and the average processing power is the sum of the processing powers of the processors divided by the number of processors.
- 15. The apparatus of claim 14, wherein the scaling factor is determined by the processing power of a processor divided by the average processing power.
- 16. The apparatus of claim 12, wherein the means for distributing portions of a total amount of work to each processor based on the determined scaling factor of that processor, further comprises:
means for determining an amount of work that can be handled by an average processor; and means for distributing portions of a total amount of work to each processor based on the determined scaling factor of that processor and a determined amount of work for an average processor.
- 17. The apparatus of claim 16, wherein the means for determining an amount of work that can be handled by an average processor, further comprises:
means for determining whether the work is I/O bound or CPU bound; and means for determining the amount of work for an average processor based on a selected number of processors and a value based on the determination as to how the work is bound.
- 18. The apparatus of claim 12, further comprising, during run-time, means for re-determining the portions of work to be distributed to each processor based on a change in resources.
- 19. The apparatus of claim 18, wherein the change in resources is a change in the number of processors.
- 20. The apparatus of claim 18, wherein the change in resources is a change in an amount of storage to be used by the processors.
- 21. The apparatus of claim 12, wherein the multiple processors are on different systems connected by a network.
- 22. The apparatus of claim 12, wherein the multiple processors are part of one system.
- 23. An article of manufacture comprising a computer program carrier readable by a computer and embodying one or more instructions executable by the computer to perform method steps for distributing work to processors in a multi-processor system, in a database stored in a data storage device connected to the computer, the method comprising the steps of:
during bind-time,
determining a scaling factor for each processor, wherein the scaling factor represents relative processing power in relation to each other processor; and distributing portions of a total amount of work to each processor based on the determined scaling factor of that processor.
- 24. The article of manufacture of claim 23, further comprising the step of, before determining a scaling factor, determining an average processing power for each processor.
- 25. The article of manufacture of claim 24, wherein each processor has an associated processing power and the average processing power is the sum of the processing powers of the processors divided by the number of processors.
- 26. The article of manufacture of claim 25, wherein the scaling factor is determined by the processing power of a processor divided by the average processing power.
- 27. The article of manufacture of claim 23, wherein the step of distributing portions of a total amount of work to each processor based on the determined scaling factor of that processor, further comprises the steps of:
determining an amount of work that can be handled by an average processor; and distributing portions of a total amount of work to each processor based on the determined scaling factor of that processor and a determined amount of work for an average processor.
- 28. The article of manufacture of claim 27, wherein the step of determining an amount of work that can be handled by an average processor, further comprises the steps of:
determining whether the work is I/O bound or CPU bound; and determining the amount of work for an average processor based on a selected number of processors and a value based on the determination as to how the work is bound.
- 29. The article of manufacture of claim 23, further comprising, during runtime, re-determining the portions of work to be distributed to each processor based on a change in resources.
- 30. The article of manufacture of claim 23, wherein the change in resources is a change in the number of processors.
- 31. The article of manufacture of claim 23, wherein the change in resources is a change in an amount of storage to be used by the processors.
- 32. The article of manufacture of claim 23, wherein the multiple processors are on different systems connected by a network.
- 33. The article of manufacture of claim 23, wherein the multiple processors are part of one system.
PROVISIONAL APPLICATION
[0001] This application claims the benefit of U.S. Provisional Application No. 60/064,753, entitled “METHOD FOR APPORTIONING A WORK UNIT TO EXECUTE IN PARALLEL IN A HETEROGENEOUS ENVIRONMENT,” filed on Nov. 7, 1997, by Ted E. Blank, et al., attorney's reference number ST9-97-050, which is incorporated by reference herein.
Provisional Applications (1)
|
Number |
Date |
Country |
|
60064753 |
Nov 1997 |
US |