|
gem5
v21.1.0.2
|
#include <array>#include <cstdint>#include <map>#include <memory>#include <string>#include <type_traits>#include <vector>#include "base/bitfield.hh"#include "base/statistics.hh"#include "base/types.hh"#include "mem/cache/compressors/base.hh"Go to the source code of this file.
Classes | |
| class | gem5::compression::BaseDictionaryCompressor |
| struct | gem5::compression::BaseDictionaryCompressor::DictionaryStats |
| class | gem5::compression::DictionaryCompressor< T > |
| A template version of the dictionary compressor that allows to choose the dictionary size. More... | |
| class | gem5::compression::DictionaryCompressor< T >::MaskedPattern< mask > |
| A pattern that compares masked values against dictionary entries. More... | |
| class | gem5::compression::DictionaryCompressor< T >::MaskedValuePattern< value, mask > |
| A pattern that compares masked values to a masked portion of a fixed value. More... | |
| class | gem5::compression::DictionaryCompressor< T >::LocatedMaskedPattern< mask, location > |
| A pattern that narrows the MaskedPattern by allowing a only single possible dictionary entry to be matched against. More... | |
| class | gem5::compression::DictionaryCompressor< T >::RepeatedValuePattern< RepT > |
| A pattern that checks if dictionary entry sized values are solely composed of multiple copies of a single value. More... | |
| class | gem5::compression::DictionaryCompressor< T >::DeltaPattern< DeltaSizeBits > |
| A pattern that checks whether the difference of the value and the dictionary entries' is below a certain threshold. More... | |
| class | gem5::compression::DictionaryCompressor< T >::SignExtendedPattern< N > |
| A pattern that checks whether the value is an N bits sign-extended value, that is, all the MSB starting from the Nth are equal to the (N-1)th bit. More... | |
| struct | gem5::compression::DictionaryCompressor< T >::Factory< Head, Tail > |
| Create a factory to determine if input matches a pattern. More... | |
| struct | gem5::compression::DictionaryCompressor< T >::Factory< Head > |
| Specialization to end the recursion. More... | |
| class | gem5::compression::DictionaryCompressor< T >::Pattern |
| The compressed data is composed of multiple pattern entries. More... | |
| class | gem5::compression::DictionaryCompressor< T >::CompData |
| class | gem5::compression::DictionaryCompressor< T >::UncompressedPattern |
| A pattern containing the original uncompressed data. More... | |
| class | gem5::compression::DictionaryCompressor< T >::MaskedPattern< mask > |
| A pattern that compares masked values against dictionary entries. More... | |
| class | gem5::compression::DictionaryCompressor< T >::MaskedValuePattern< value, mask > |
| A pattern that compares masked values to a masked portion of a fixed value. More... | |
| class | gem5::compression::DictionaryCompressor< T >::LocatedMaskedPattern< mask, location > |
| A pattern that narrows the MaskedPattern by allowing a only single possible dictionary entry to be matched against. More... | |
| class | gem5::compression::DictionaryCompressor< T >::RepeatedValuePattern< RepT > |
| A pattern that checks if dictionary entry sized values are solely composed of multiple copies of a single value. More... | |
| class | gem5::compression::DictionaryCompressor< T >::DeltaPattern< DeltaSizeBits > |
| A pattern that checks whether the difference of the value and the dictionary entries' is below a certain threshold. More... | |
| class | gem5::compression::DictionaryCompressor< T >::SignExtendedPattern< N > |
| A pattern that checks whether the value is an N bits sign-extended value, that is, all the MSB starting from the Nth are equal to the (N-1)th bit. More... | |
Namespaces | |
| gem5 | |
| Reference material can be found at the JEDEC website: UFS standard http://www.jedec.org/standards-documents/results/jesd220 UFS HCI specification http://www.jedec.org/standards-documents/results/jesd223. | |
| gem5::compression | |
Functions | |
| gem5::GEM5_DEPRECATED_NAMESPACE (Compressor, compression) | |
Definition of a dictionary based cache compressor. Each entry is compared against a dictionary to search for matches.
The dictionary is composed of 32-bit entries, and the comparison is done byte per byte.
The patterns are implemented as individual classes that have a checking function isPattern(), to determine if the data fits the pattern, and a decompress() function, which decompresses the contents of a pattern. Every new pattern must inherit from the Pattern class and be added to the patternFactory.
Definition in file dictionary_compressor.hh.