Abstract:
The present invention discloses a method, apparatus and program storage device for providing non-blocking, minimum threaded two-way messaging. A Performance Monitor Daemon provides one non-blocked thread pair per processor to support a large number of connections. The thread pair includes an outbound thread for outbound communication and an inbound thread for inbound communication. The outbound thread and the inbound thread operate asynchronously.
Abstract:
A method and system for dynamically allocating cache space in a storage system among multiple workload classes each having a unique set of quality-of-service (QoS) requirements. The invention dynamically adapts the space allocated to each class depending upon the observed response time for each class and the observed temporal locality in each class. The dynamic allocation is achieved by maintaining a history of recently evicted pages for each class, determining a future cache size for the class based on the history and the QoS requirements where the future cache size might be different than a current cache size for the class, determining whether the QoS requirements for the class are being met, and adjusting the future cache size to maximize the number of classes in which the QoS requirements are met. The future cache sizes are increased for the classes whose QoS requirements are not met while they are decreased for those whose QoS requirements are met.
Abstract:
A method and structure for a multi-workload storage system is disclosed that is adapted to determine if an additional workload can be placed on the storage system. The invention has storage elements and a proxy load generator connected to the storage elements. The proxy load generator is adapted to create a proxy workload based on an additional workload from a potential client. The proxy workload has a reduced duty cycle when compared to a duty cycle of said additional workload. A control server is connected to the storage elements and the proxy load generator. The control server applies the proxy workload to the storage elements during discontinuous time slices.
Abstract:
A method and structure for a multi-workload storage system is disclosed that is adapted to determine if an additional workload can be placed on the storage system. The invention has storage elements and a proxy load generator connected to the storage elements. The proxy load generator is adapted to create a proxy workload based on an additional workload from a potential client. The proxy workload has a reduced duty cycle when compared to a duty cycle of said additional workload. A control server is connected to the storage elements and the proxy load generator. The control server applies the proxy workload to the storage elements during discontinuous time slices.
Abstract:
A method and structure for a multi-workload storage system is disclosed that is adapted to determine if an additional workload can be placed on the storage system. The invention has storage elements and a proxy load generator connected to the storage elements. The proxy load generator is adapted to create a proxy workload based on an additional workload from a potential client. The proxy workload has a reduced duty cycle when compared to a duty cycle of said additional workload. A control server is connected to the storage elements and the proxy load generator. The control server applies the proxy workload to the storage elements during discontinuous time slices.
Abstract:
Disclosed is a system for altering the structure of parity groups, e.g., altering the RAID level or number of storage devices included in the RAID array. A parity group consists of a set of data blocks and parity data for the data blocks. The data and parity data are stored in at least two storage devices. The first processing unit alters the parity structure of an Nth set of parity groups, wherein N is an integer value greater than or equal to zero. A set of parity groups includes at least one parity group. The second processing unit determines an Nth range of parity groups including the Nth set of parity groups. After detecting the failure of the first processing unit while altering the parity structure of the parity groups in the Nth set, the second processing unit processes the parity groups in the determined Nth range to determine a parity group whose parity structure was being altered when the first processing unit failed.
Abstract:
Embodiments of the invention relate to evaluation and storage of data in a computer system configured with a shared pool of resources. A multi-level adaptive compression technique is employed to minimize the cost of data storage based upon the type of data being stored and their access pattern. The costs of data storage include capacity, bandwidth, and compute cycles. Data is transformed local to a client in communication with the shared pool, local to the shared pool, or as a combination with a partial transformation local to the client and a partial transformation local to the shared pool.
Abstract:
An apparatus, system, and method are disclosed for reporting on enterprise data processing system configurations. A collection module records a plurality of entity configurations for a DPS in a history database. In one embodiment, a selection module selects a subset of entities of the DPS. A report module generates a historical report of the plurality of entity configurations. In addition, the report module may generate the historical report for the selected subset of the entities.
Abstract:
Embodiments of the invention relate to evaluation and storage of data in a computer system configured with a shared pool of resources. A multi-level adaptive compression technique is employed to minimize the cost of data storage based upon the type of data being stored and their access pattern. The costs of data storage include capacity, bandwidth, and compute cycles. Data is transformed local to a client in communication with the shared pool, local to the shared pool, or as a combination with a partial transformation local to the client and a partial transformation local to the shared pool.
Abstract:
In one embodiment, a method comprises, using at least one processor, controlling communication between Service Level Agreement (SLA) processes of an SLA services module and at least one I/O performance gateway; and using a thread pair associated with each of the at least one processors, processing inbound signals from the at least one I/O erformance atewa being sent to the SLA services module via an inbound thread, and processing outbound signals to the at least one I/O performance gateway received from the SLA services module via an outbound thread, wherein the inbound thread and the outbound thread operate asynchronously to provide non-blocking messaging.