A system comprising: a probe filter (335, 435) configured to track cache lines currently in use by the system; and a cache; wherein the system is configured to: monitor a recall probe rate of the probe filter (335, 435) wherein the recall probe rate corresponds to a number of recall probes that are generated over a given interval, with a recall probe being a message sent from the probe filter to the cache that causes the cache to evict a cache line; responsive to the recall probe rate being greater than a first threshold partition the cache into two portions including a first portion and a second portion; apply a first insertion policy for the first portion of the cache and monitor a hit rate of the first portion, wherein the first insertion policy is a non-bypass policy that allocates at least a portion of requests in a given portion of the cache when a request misses on the given portion of the cache; and apply a second insertion policy for the second portion of the cache, wherein the second insertion policy is: the non-bypass policy, if the hit rate of the first portion is greater than a second threshold; and a bypass policy, if the hit rate is not greater than the second threshold, wherein the bypass policy does not allocate in the given portion of the cache when the request misses on the given portion of the cache. a probe filter (335, 435) configured to track cache lines currently in use by the system; and a cache; wherein the system is configured to: monitor a recall probe rate of the probe filter (335, 435) wherein the recall probe rate corresponds to a number of recall probes that are generated over a given interval, with a recall probe being a message sent from the probe filter to the cache that causes the cache to evict a cache line; responsive to the recall probe rate being greater than a first threshold partition the cache into two portions including a first portion and a second portion; apply a first insertion policy for the first portion of the cache and monitor a hit rate of the first portion, wherein the first insertion policy is a non-bypass policy that allocates at least a portion of requests in a given portion of the cache when a request misses on the given portion of the cache; and apply a second insertion policy for the second portion of the cache, wherein the second insertion policy is: the non-bypass policy, if the hit rate of the first portion is greater than a second threshold; and a bypass policy, if the hit rate is not greater than the second threshold, wherein the bypass policy does not allocate in the given portion of the cache when the request misses on the given portion of the cache. monitor a recall probe rate of the probe filter (335, 435) wherein the recall probe rate corresponds to a number of recall probes that are generated over a given interval, with a recall probe being a message sent from the probe filter to the cache that causes the cache to evict a cache line; responsive to the recall probe rate being greater than a first threshold partition the cache into two portions including a first portion and a second portion; apply a first insertion policy for the first portion of the cache and monitor a hit rate of the first portion, wherein the first insertion policy is a non-bypass policy that allocates at least a portion of requests in a given portion of the cache when a request misses on the given portion of the cache; and apply a second insertion policy for the second portion of the cache, wherein the second insertion policy is: the non-bypass policy, if the hit rate of the first portion is greater than a second threshold; and a bypass policy, if the hit rate is not greater than the second threshold, wherein the bypass policy does not allocate in the given portion of the cache when the request misses on the given portion of the cache. partition the cache into two portions including a first portion and a second portion; apply a first insertion policy for the first portion of the cache and monitor a hit rate of the first portion, wherein the first insertion policy is a non-bypass policy that allocates at least a portion of requests in a given portion of the cache when a request misses on the given portion of the cache; and apply a second insertion policy for the second portion of the cache, wherein the second insertion policy is: the non-bypass policy, if the hit rate of the first portion is greater than a second threshold; and a bypass policy, if the hit rate is not greater than the second threshold, wherein the bypass policy does not allocate in the given portion of the cache when the request misses on the given portion of the cache. the non-bypass policy, if the hit rate of the first portion is greater than a second threshold; and a bypass policy, if the hit rate is not greater than the second threshold, wherein the bypass policy does not allocate in the given portion of the cache when the request misses on the given portion of the cache.