mem-cache: Fix priority of multi compressor
The priority queue comparator orders such that false gives the
entry a higher priority. Therefore, if it is desired to make
the entry with lowest decompression latency have higher priority,
the comparison must be inverted.
Can be tested with:
MultiCompressor(compressors=[
PerfectCompressor(decompression_latency=1),
PerfectCompressor(decompression_latency=2)])
Where it is expected that compressor0 (the one with decomp lat
of 1) is always chosen.
Change-Id: I44acbf5f51c6e47efdd2a16fba9596935cf2eb69
Signed-off-by: Daniel R. Carvalho <odanrc@yahoo.com.br>
Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/28367
Reviewed-by: Nikos Nikoleris <nikos.nikoleris@arm.com>
Maintainer: Nikos Nikoleris <nikos.nikoleris@arm.com>
Tested-by: kokoro <noreply+kokoro@google.com>
This commit is contained in:
committed by
Daniel Carvalho
parent
81c359b50f
commit
73c8c72e40
2
src/mem/cache/compressors/multi.cc
vendored
2
src/mem/cache/compressors/multi.cc
vendored
@@ -103,7 +103,7 @@ MultiCompressor::compress(const uint64_t* cache_line, Cycles& comp_lat,
|
||||
if (lhs_cf == rhs_cf) {
|
||||
// When they have similar compressed sizes, give the one
|
||||
// with fastest decompression privilege
|
||||
return lhs->decompLat < rhs->decompLat;
|
||||
return lhs->decompLat > rhs->decompLat;
|
||||
}
|
||||
return lhs_cf < rhs_cf;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user