diff options
author | Daniel R. Carvalho <odanrc@yahoo.com.br> | 2018-06-19 17:08:35 +0200 |
---|---|---|
committer | Daniel Carvalho <odanrc@yahoo.com.br> | 2019-05-08 17:41:09 +0000 |
commit | a39af1f0ac6d324b4c206d4db18c39ea557bb931 (patch) | |
tree | d93356d5b90dbc8ff51c5f051ea9fa68356e8b95 /src/mem/cache/Cache.py | |
parent | 77a49860f98a86f467bae242e6c52f6b7150631c (diff) | |
download | gem5-a39af1f0ac6d324b4c206d4db18c39ea557bb931.tar.xz |
mem-cache: Add compression and decompression calls
Add a compressor to the base cache class and compress within
block allocation and decompress on writebacks.
This change does not implement data expansion (fat writes) yet,
nor it adds the compression latency to the block write time.
Change-Id: Ie36db65f7487c9b05ec4aedebc2c7651b4cb4821
Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/11410
Tested-by: kokoro <noreply+kokoro@google.com>
Reviewed-by: Nikos Nikoleris <nikos.nikoleris@arm.com>
Maintainer: Nikos Nikoleris <nikos.nikoleris@arm.com>
Diffstat (limited to 'src/mem/cache/Cache.py')
-rw-r--r-- | src/mem/cache/Cache.py | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/src/mem/cache/Cache.py b/src/mem/cache/Cache.py index b2f478472..7a28136b5 100644 --- a/src/mem/cache/Cache.py +++ b/src/mem/cache/Cache.py @@ -44,11 +44,11 @@ from m5.proxy import * from m5.SimObject import SimObject from m5.objects.ClockedObject import ClockedObject +from m5.objects.Compressors import BaseCacheCompressor from m5.objects.Prefetcher import BasePrefetcher from m5.objects.ReplacementPolicies import * from m5.objects.Tags import * - # Enum for cache clusivity, currently mostly inclusive or mostly # exclusive. class Clusivity(Enum): vals = ['mostly_incl', 'mostly_excl'] @@ -105,6 +105,8 @@ class BaseCache(ClockedObject): replacement_policy = Param.BaseReplacementPolicy(LRURP(), "Replacement policy") + compressor = Param.BaseCacheCompressor(NULL, "Cache compressor.") + sequential_access = Param.Bool(False, "Whether to access tags and data sequentially") |