1. A method for performing cache coherency in a computer system, comprising: selecting one of a plurality of coherency protocols for a first memory transaction to be applied to cached data stored in the computer system, each of the plurality of coherency protocols having a unique set of cache states that may be applied to cached data for the first memory transaction, wherein selection among the plurality of coherency protocols is performed for each separate memory transaction; and performing cache coherency for the first memory transaction on caches in the computer system storing the cached data by applying the set of cache states of the selected one of the plurality of coherency protocols.