Claims
- 1. A method of performing resource usage accounting in an information management environment in which multiple information management tasks are performed, comprising:
characterizing resource consumption for each of said multiple information manipulation tasks performed in said information management environment based on an individual resource utilization value that is reflective of the resource consumption required to perform each of said multiple information manipulation tasks; and tracking total resource consumption to perform said multiple information manipulation tasks in said information management environment based on said individual resource utilization values.
- 2. The method of claim 1, further comprising generating at least a portion of said individual resource utilization values in real time based on performance testing.
- 3. The method of claim 1, wherein said information management environment comprises a heterogeneous information management system environment.
- 4. The method of claim 3, wherein said method comprises performing said resource usage accounting in a network connectable information management system comprising multiple processing engines assigned separate information manipulation tasks in an asymmetrical multiprocessor configuration, said plurality of processing engines being coupled together with a distributed interconnect.
- 5. The method of claim 4, wherein said distributed interconnect comprises a virtual distributed interconnect.
- 6. The method of claim 4, wherein said distributed interconnect comprises a switch fabric.
- 7. The method of claim 5, wherein said information management system comprises a content delivery system.
- 8. The method of claim 7, wherein said method comprises performing said resource usage accounting for each processing engine of said multiple processing engines.
- 9. The method of claim 8, wherein said method comprises performing said resource usage accounting for each processing engine in the data processing path implemented by a given request to perform new requested information manipulation tasks in said information management environment.
- 10. The method of claim 8, wherein each of said multiple processing engines comprises one or more resource principals; and wherein said method further comprises quantifying one or more of said resource principals for each of said multiple processing engines to determine said resource utilization values.
- 11. The method of claim 10, wherein said resource utilization values are expressed in terms of a number of resource capacity utilization units to support delivery of content at a designated rate.
- 12. The method of claim 10, wherein said determining of said resource utilization values comprises combining the values of two or more of said resource principals for each of said multiple processing engines into a single resource utilization value.
- 13. The method of claim 12, wherein said combining comprises differentially weighting the value of at least a first one of said resource principals relative to the value of at least a second one of said resource principals, and combining said differentially weighted values of said first and second resource principals to determine said single resource utilization value.
- 14. The method of claim 13, wherein said first one of said resource principals comprises a resource principal of a first category; and wherein said second one of said resource principals comprises a resource principal of a second category; and wherein said differential weighting of the respective values of said first and second resource is based the respective identities of said first and second categories.
- 15. The method of claim 14, wherein said first category is a critical resource principal category; and wherein said second category is an influencing resource principal category.
- 16. The method of claim 10, wherein said multiple resource principals comprise at least one of memory resources, compute resources, I/O resources, number of buffers, number of current connections, number of new connections number of dropped-out connections, number of interfaces, transaction latency, number or outstanding I/O requests, disk drive utilization, loading of applications, or a combination thereof.
- 17. The method of claim 10, wherein said multiple resource principals comprise at least one of memory resources, compute resources, I/O resources, or a combination thereof.
- 18. The method of claim 10, wherein said method comprises determining at least one of said resource utilization values based on a combination of two or more of said resource principals.
- 19. The method of claim 16, wherein said resource usage accounting comprises estimation-based resource usage accounting, and wherein said method further comprises obtaining said resource utilization values from one or more resource utilization tables to track said resource consumption in said information management system required to perform each of said one or more information manipulation tasks in said information management environment.
- 20. The method of claim 19, further comprising generating resource utilization value data for said resource utilization tables in real time.
- 21. The method of claim 19, further comprising generating resource utilization value data for said resource utilization tables using performance testing.
- 22. The method of claim 4, further comprising characterizing a relative state of resource utilization within one or more of said multiple processing engines based on a value of a total resource utilization value within said one or more of said multiple processing engines relative to one or more state thresholds.
- 23. The method of claim 22, further comprising generating a warning state threshold alarm based on said characterizing.
- 24. The method of claim 16, wherein said resource usage accounting comprises status-based resource usage accounting, and wherein said method further comprises obtaining resource utilization feedback from one or more processing engines of said information management system.
- 25. The method of claim 24, wherein said obtaining resource utilization feedback comprises receiving resource status messages from a separate module, from one or more individual subsystems of an information management system, or a combination thereof.
- 26. The method of claim 24, wherein said resource utilization feedback is at least one of unsolicited or solicited resource utilization feedback.
- 27. The method of claim 1, wherein said method comprises using estimation-based resource usage accounting to track said current total resource consumption.
- 28. The method of claim 27, wherein said method further comprises measuring a value of current total resource consumption; comparing said measured current total resource consumption with said estimated total resource consumption; and transitioning between a status-driven usage accounting and said estimation-based resource usage accounting based on the magnitude of the difference between said measured value of current total resource consumption and said estimated value of total resource consumption.
- 29. The method of claim 28, wherein said method further comprises transitioning to a transient state in an attempt to confirm said measured value of current total resource consumption; said transitioning to said transient state being based on a magnitude of the difference between said measured value of current total resource consumption and said estimated value of total resource consumption.
- 30. The method of claim 29, wherein said attempt to confirm said measured value of current total resource consumption comprises a workload poll for subsystem resource utilization feedback.
- 31. The method of claim 16, further comprising performing resource management for each of said multiple processing engines based on said resource usage accounting.
- 32. A method of performing resource usage accounting in an information management environment in which multiple information management tasks are performed, comprising:
characterizing resource consumption for each of said multiple information manipulation tasks performed in said information management environment based on an individual resource utilization value that is reflective of the resource consumption required to perform each of said multiple information manipulation tasks; and tracking total resource consumption to perform said multiple information manipulation tasks in said information management environment based on said individual resource utilization values; wherein at least one of said individual resource utilization values is associated with a particular information manipulation task using an association that is configurable.
- 33. The method of claim 32, wherein said association is configurable based on at least one of system or subsystem load, system or subsystem utilization threshold, application type, connection type, or a combination thereof.
- 34. The method of claim 32, wherein said characterizing further comprises characterizing resource consumption for each of said multiple information manipulation tasks performed in said information management environment based on an individual resource utilization value that is reflective of the resource consumption required to perform each of said multiple information manipulation tasks under specified information management performance conditions.
- 35. The method of claim 34, further comprising generating at least a portion of said individual resource utilization values in real time based on performance testing.
- 36. The method of claim 34, wherein said information management environment comprises a heterogeneous information management system environment.
- 37. The method of claim 33, wherein said method comprises performing said resource usage accounting in a network connectable information management system comprising multiple processing engines assigned separate information manipulation tasks in an asymmetrical multiprocessor configuration, said plurality of processing engines being coupled together with a distributed interconnect.
- 38. The method of claim 37, wherein said distributed interconnect comprises a virtual distributed interconnect.
- 39. The method of claim 37, wherein said distributed interconnect comprises a switch fabric.
- 40. The method of claim 39, wherein said information management system comprises a content delivery system.
- 41. The method of claim 40, wherein said method comprises performing said resource usage accounting for each processing engine of said multiple processing engines.
- 42. The method of claim 41, wherein said method comprises performing said resource usage accounting for each processing engine in the data processing path implemented by a given request to perform new requested information manipulation tasks in said information management environment.
- 43. The method of claim 41, wherein each of said multiple processing engines comprises one or more resource principals; and wherein said method further comprises quantifying one or more of said resource principals for each of said multiple processing engines to determine said resource utilization values.
- 44. The method of claim 43, wherein said resource utilization values are expressed in terms of a number of resource capacity utilization units to support delivery of content at a designated rate.
- 45. The method of claim 43, wherein said determining of said resource utilization values comprises combining the values of two or more of said resource principals for each of said multiple processing engines into a single resource utilization value.
- 46. The method of claim 43, wherein said multiple resource principals comprise at least one of memory resources, compute resources, I/O resources, number of buffers, number of current connections, number of new connections number of dropped-out connections, number of interfaces, transaction latency, number or outstanding I/O requests, disk drive utilization, loading of applications, or a combination thereof.
- 47. The method of claim 43, wherein said multiple resource principals comprise at least one of memory resources, compute resources, I/O resources, or a combination thereof.
- 48. The method of claim 43, wherein said method comprises determining at least one of said resource utilization values based on a combination of two or more of said resource principals.
- 49. The method of claim 46, wherein said resource usage accounting comprises estimation-based resource usage accounting, and wherein said method further comprises obtaining said resource utilization values from one or more resource utilization tables to track said resource consumption in said information management system required to perform each of said one or more information manipulation tasks in said information management enrvironment.
- 50. The method of claim 49, further comprising generating resource utilization value data for said resource utilization tables in real time.
- 51. The method of claim 49, further comprising generating resource utilization value data for said resource utilization tables using performance testing.
- 52. The method of claim 34, further comprising characterizing a relative state of resource utilization within one or more of said multiple processing engines based on a value of a total resource utilization value within said one or more of said multiple processing engines relative to one or more state thresholds.
- 53. The method of claim 46, wherein said resource usage accounting comprises status-based resource usage accounting, and wherein said method further comprises obtaining resource utilization feedback from one or more processing engines of said information management system.
- 54. The method of claim 34, wherein said method comprises using estimation-based resource usage accounting to track said current total resource consumption.
- 55. The method of claim 54, wherein said method further comprises measuring a value of current total resource consumption; comparing said measured current total resource consumption with said estimated total resource consumption; and transitioning between a status-driven usage accounting and said estimation-based resource usage accounting based on the magnitude of the difference between said measured value of current total resource consumption and said estimated value of total resource consumption.
- 56. The method of claim 55, wherein said method further comprises transitioning to a transient state in an attempt to confirm said measured value of current total resource consumption; said transitioning to said transient state being based on a magnitude of the difference between said measured value of current total resource consumption and said estimated value of total resource consumption.
- 57. The method of claim 56, wherein said attempt to confirm said measured value of current total resource consumption comprises a workload poll for subsystem resource utilization feedback.
- 58. The method of claim 46, further comprising performing resource management for each of said multiple processing engines based on said resource usage accounting.
- 59. A resource usage accounting system for performing resource usage accounting in an information management environment, comprising a resource usage accounting module.
- 60. The system of claim 59, further comprising a resource utilization table module, a subsystem status monitor, and a self calibration module.
- 61. The system of claim 60, wherein said subsystem status monitor is configured to receive resource status messages from at least one of a wellness/availability module in communication with said resource usage accounting system, one or more individual subsystems of an information management system that are in communication with said resource usage accounting system, or a combination thereof.
- 62. The system of claim 60, wherein said resource utilization table module is configured to make available resource utilization values to said resource usage accounting module.
- 63. The system of claim 59, wherein said resource usage accounting module is configured to track workload within said information management environment.
- 64. The system of claim 63, wherein said resource usage accounting module is configured to track current workload within said information management environment; and to track incremental workload estimated to be required to fulfill both current workload and requested workload within said information management environment.
- 65. The system of claim 63, wherein said resource usage accounting module is configured to track workload within said information management environment using individual resource utilization values that are associated with particular information manipulation tasks using an association that is configurable.
- 66. The system of claim 63, wherein said resource usage accounting module is configured to track workload within said information management environment based on individual resource utilization values that are reflective of resource consumption under specified information management performance conditions.
- 67. The system of claim 64, further comprising a subsystem status monitor configured to receive information on said current workload from at least one of a wellness/availability module in communication with said determinism module, from one or more individual subsystems of an information management system that are in communication with said determinism module, or a combination thereof.
- 68. A network connectable information management system, comprising:
a plurality of multiple processing engines coupled together by a distributed interconnect; and a resource usage accounting system coupled to said multiple processing engines via said distributed interconnect, said resource usage accounting system comprising a resource usage accounting module configured to track workload within said information management system.
- 69. The system of claim 68, wherein said distributed interconnect comprises a virtual distributed interconnect.
- 70. The system of claim 68, wherein said distributed interconnect comprises a switch fabric.
- 71. The system of claim 70, wherein said multiple processing engines comprise a system management processing engine; and wherein said resource usage accounting system is implemented on said system management processing engine.
- 72. The system of claim 71, wherein said information management system comprises a content delivery system; and wherein said multiple processing engines further comprise at least one application processing engine, at least one storage processing engine, at least one transport processing engine, and at least one network interface processing engine.
- 73. The system of claim 71, wherein said resource usage accounting system comprises a resource usage accounting module, a resource utilization table module, a subsystem status monitor, and a self calibration module.
- 74. The system of claim 73, wherein said subsystem status monitor is configured to receive resource status messages from at least one of a wellness/availability module in communication with said resource usage accounting system, one or more individual subsystems of an information management system that are in communication with said resource usage accounting system, or a combination thereof.
- 75. The system of claim 73, wherein said resource utilization table module is configured to make available resource utilization values to said resource usage accounting module.
- 76. The system of claim 73, wherein said resource utilization table module is further configured to make available resource utilization values to said resource usage accounting module, at least a portion of said resource utilization values being generated in real time by said self-calibration module based on one or more performance measurements.
- 77. The system of claim 72, wherein said resource usage accounting module is configured to track current system or subsystem workloads to fulfill current admitted requests; and to track incremental system or subsystem workloads estimated to be required to fulfill both existing requests and new request/s that are not yet admitted.
- 78. The system of claim 70, wherein said resource usage accounting module is configured to track workload within said information management system using individual resource utilization values that are associated with particular information manipulation tasks using an association that is configurable.
- 79. The system of claim 70, wherein said resource usage accounting module is configured to track workload within said information management system based on individual resource utilization values that are reflective of resource consumption under specified system performance conditions.
- 80. The system of claim 77, wherein said system further comprises a subsystem status monitor configured to receive information on said current system or subsystem workload from at least one of a wellness/availability module in communication with said resource usage accounting system, from one or more individual subsystems of an information management system that are in communication with said resource usage accounting system, or a combination thereof.
Parent Case Info
[0001] This application claims priority to co-pending Provisional Application Serial No. 60/353,104 filed on Jan. 30, 2002 which is entitled “SYSTEMS AND METHODS FOR MANAGING RESOURCE UTILIZATION IN INFORMATION MANAGEMENT ENVIRONMENTS,” the disclosure of which is incorporated herein by reference. This application is also a continuation-in-part of co-pending U.S. patent application Ser. No. 10/003,683 filed on Nov. 2, 2001 which is entitled “SYSTEMS AND METHODS FOR USING DISTRIBUTED INTERCONNECTS IN INFORMATION MANAGEMENT ENVIRONMENTS,” which itself is a continuation-in-part of co-pending U.S. patent application Ser. No. 09/879,810 filed on Jun. 12, 2001 which is entitled “SYSTEMS AND METHODS FOR PROVIDING DIFFERENTIATED SERVICE IN INFORMATION MANAGEMENT ENVIRONMENTS,” and which also claims priority from co-pending U.S. Provisional Application Serial No. 60/285,211 filed on Apr. 20, 2001 which is entitled “SYSTEMS AND METHODS FOR PROVIDING DIFFERENTIATED SERVICE IN A NETWORK ENVIRONMENT,” and which also claims priority from co-pending U.S. Provisional Application Serial No. 60/291,073 filed on May 15, 2001 which is entitled “SYSTEMS AND METHODS FOR PROVIDING DIFFERENTIATED SERVICE IN A NETWORK ENVIRONMENT,” and which also claims priority from U.S. Provisional Application Serial No. 60/246,401 filed on Nov. 7, 2000 which is entitled “SYSTEM AND METHOD FOR THE DETERMINISTIC DELIVERY OF DATA AND SERVICES,” and which is a continuation-in-part of co-pending U.S. patent application Ser. No. 09/797,200 filed on Mar. 1, 2001 which is entitled “SYSTEMS AND METHODS FOR THE DETERMINISTIC MANAGEMENT OF INFORMATION” which itself claims priority from U.S. patent application Ser. No. 60/187,211 filed on Mar. 3, 2000 which is entitled “SYSTEM AND APPARATUS FOR INCREASING FILE SERVER BANDWIDTH,” the disclosures of each being incorporated herein by reference. The above-referenced U.S. patent application Ser. No. 10/003,683 filed on Nov. 2, 2001 entitled “SYSTEMS AND METHODS FOR USING DISTRIBUTED INTERCONNECTS IN INFORMATION MANAGEMENT ENVIRONMENTS” is also a continuation-in-part of U.S. patent application Ser. No. 09/797,404 filed on Mar. 1, 2001 which is entitled “INTERPROCESS COMMUNICATIONS WITHIN A NETWORK NODE USING SWITCH FABRIC,” which itself claims priority to U.S. Provisional Application Serial No. 60/246,373 filed on Nov. 7, 2000 which is entitled “INTERPROCESS COMMUNICATIONS WITHIN A NETWORK NODE USING SWITCH FABRIC,” and which also claims priority to U.S. Provisional Application Serial No. 60/187,211 filed on Mar. 3, 2000 which is entitled “SYSTEM AND APPARATUS FOR INCREASING FILE SERVER BANDWIDTH,” the disclosures of each of the foregoing applications being incorporated herein by reference. This application is also a continuation-in-part of co-pending U.S. patent application Ser. No. 09/947,869 filed on Sep. 6, 2001 which is entitled “SYSTEMS AND METHODS FOR RESOURCE MANAGEMENT IN INFORMATION STORAGE ENVIRONMENTS,” which is a continuation-in-part of co-pending U.S. patent application Ser. No. 09/879,810 filed on Jun. 12, 2001 which is entitled “SYSTEMS AND METHODS FOR PROVIDING DIFFERENTIATED SERVICE IN INFORMATION MANAGEMENT ENVIRONMENTS,” and which also claims priority from co-pending U.S. Provisional Application Serial No. 60/285,211 filed on Apr. 20, 2001 which is entitled “SYSTEMS AND METHODS FOR PROVIDING DIFFERENTIATED SERVICE IN A NETWORK ENVIRONMENT,” and which also claims priority from co-pending U.S. Provisional Application Serial No. 60/291,073 filed on May 15, 2001 which is entitled “SYSTEMS AND METHODS FOR PROVIDING DIFFERENTIATED SERVICE IN A NETWORK ENVIRONMENT,” and which is a continuation-in-part of co-pending U.S. patent application Ser. No. 09/797,198 filed on Mar. 1, 2001 which is entitled “SYSTEMS AND METHODS FOR MANAGEMENT OF MEMORY,” and which is a continuation-in-part of co-pending U.S. patent application Ser. No. 09/797,201 filed on Mar. 1, 2001 which is entitled “SYSTEMS AND METHODS FOR MANAGEMENT OF MEMORY IN INFORMATION DELIVERY ENVIRONMENTS,” and which also claims priority from U.S. Provisional Application Serial No. 60/246,445 filed on Nov. 7, 2000 which is entitled “SYSTEMS AND METHODS FOR PROVIDING EFFICIENT USE OF MEMORY FOR NETWORK SYSTEMS,” and which also claims priority from U.S. Provisional Application Serial No. 60/246,359 filed on Nov. 7, 2000 which is entitled “CACHING ALGORITHM FOR MULTIMEDIA SERVERS,” and which is a continuation-in-part of co-pending U.S. patent application Ser. No. 09/797,200 filed on Mar. 1, 2001 which is entitled “SYSTEMS AND METHODS FOR THE DETERMINISTIC MANAGEMENT OF INFORMATION” which itself claims priority from U.S. patent application Ser. No. 60/246,401 filed on Nov. 7, 2000 which is entitled “SYSTEM AND METHOD FOR THE DETERMINISTIC DELIVERY OF DATA AND SERVICES” and Provisional Application Serial No. 60/187,211 filed on Mar. 3, 2000 which is entitled “SYSTEM AND APPARATUS FOR INCREASING FILE SERVER BANDWIDTH,” the disclosure of each of the foregoing applications being incorporated herein by reference. This application is also a continuation-in-part of U.S. patent application Ser. No. 10/003,728 filed on Nov. 2, 2001, which is entitled “SYSTEMS AND METHODS FOR INTELLIGENT INFORMATION RETRIEVAL AND DELIVERY IN AN INFORMATION MANAGEMENT ENVIRONMENT,” which is incorporated herein by reference.
Provisional Applications (13)
|
Number |
Date |
Country |
|
60353104 |
Jan 2002 |
US |
|
60285211 |
Apr 2001 |
US |
|
60291073 |
May 2001 |
US |
|
60246401 |
Nov 2000 |
US |
|
60187211 |
Mar 2000 |
US |
|
60246373 |
Nov 2000 |
US |
|
60187211 |
Mar 2000 |
US |
|
60285211 |
Apr 2001 |
US |
|
60291073 |
May 2001 |
US |
|
60246445 |
Nov 2000 |
US |
|
60246359 |
Nov 2000 |
US |
|
60246401 |
Nov 2000 |
US |
|
60187211 |
Mar 2000 |
US |
Continuation in Parts (9)
|
Number |
Date |
Country |
Parent |
10003683 |
Nov 2001 |
US |
Child |
10117413 |
Apr 2002 |
US |
Parent |
09879810 |
Jun 2001 |
US |
Child |
10117413 |
Apr 2002 |
US |
Parent |
09797200 |
Mar 2001 |
US |
Child |
10117413 |
Apr 2002 |
US |
Parent |
09947869 |
Sep 2001 |
US |
Child |
10117413 |
Apr 2002 |
US |
Parent |
09879810 |
Jun 2001 |
US |
Child |
10117413 |
Apr 2002 |
US |
Parent |
09797198 |
Mar 2001 |
US |
Child |
10117413 |
Apr 2002 |
US |
Parent |
09797201 |
Mar 2001 |
US |
Child |
10117413 |
Apr 2002 |
US |
Parent |
09797200 |
Mar 2001 |
US |
Child |
10117413 |
Apr 2002 |
US |
Parent |
10003728 |
Nov 2001 |
US |
Child |
10117413 |
Apr 2002 |
US |