Abstract:
A communications system having a first data subsystem; a data transmission controller coupled to the first data subsystem; a data line coupled to the data transmission controller having a bandwidth with a first portion and a second portion; and, a second data subsystem coupled to the data transmission controller. A method for dynamically estimating and allocating the bandwidth between the first data subsystem and the second data subsystem having the steps of measuring a utilization level of the first portion of the bandwidth by a first application; detecting whether the utilization level is outside of a predetermined range; and, changing an allocation of the first portion and the second portion of the bandwidth.
Abstract:
Durable atomic transactions for non-volatile media are described. A processor includes an interface to a non-volatile storage medium and a functional unit to perform instructions associated with an atomic transaction. The instructions are to update data at a set of addresses in the non-volatile storage medium atomically. The functional unit is operable to perform a first instruction to create the atomic transaction that declares a size of the data to be updated atomically. The functional unit is also operable to perform a second instruction to start execution of the atomic transaction. The functional unit is further operable to perform a third instruction to commit the atomic transaction to the set of addresses in the non-volatile storage medium, wherein the updated data is not visible to other functional units of the processing device until the atomic transaction is complete.
Abstract:
Durable atomic transactions for non-volatile media are described. A processor includes an interface to a non-volatile storage medium and a functional unit to perform instructions associated with an atomic transaction. The instructions are to update data at a set of addresses in the non-volatile storage medium atomically. The functional unit is operable to perform a first instruction to create the atomic transaction that declares a size of the data to be updated atomically. The functional unit is also operable to perform a second instruction to start execution of the atomic transaction. The functional unit is further operable to perform a third instruction to commit the atomic transaction to the set of addresses in the non-volatile storage medium, wherein the updated data is not visible to other functional units of the processing device until the atomic transaction is complete.