# Class CIM_CacheMemory
extends CIM_Memory

Capabilities and management of Cache Memory. Cache memory is dedicated or allocated RAM that a Processor searches first for data, before going to 'regular' memory. CacheMemory is used to speed up the delivery of data to a Processor. It is usually described by its closeness to the Processor (for example, Primary or Secondary Cache). If a DiskDrive includes RAM allocated for holding the disk's most recently read and/or adjacent data (in order to speed up retrieval), this also would be modeled as CacheMemory. Note that CacheMemory is NOT operating system or application level buffers but actual RAM allocated for caching data for a Processor, from a hard disk, etc.

### Table of Contents
Hierarchy
Direct Known Subclasses
Class Qualifiers
Class Properties
Class Methods

## Class Hierarchy

CIM_ManagedElement
|
+--CIM_ManagedSystemElement
|
+--CIM_LogicalElement
|
+--CIM_EnabledLogicalElement
|
+--CIM_AllocatedLogicalElement
|
+--CIM_LogicalDevice
|
+--CIM_StorageExtent
|
+--CIM_Memory
|
+--CIM_CacheMemory

## Direct Known Subclasses

## Class Qualifiers

Name | Data Type | Value
--- | --- | ---
Deprecated | string | CIM_AssociatedCacheMemory
Description | string | Capabilities and management of Cache Memory. Cache memory is dedicated or allocated RAM that a Processor searches first for data, before going to 'regular' memory. CacheMemory is used to speed up the delivery of data to a Processor. It is usually described by its closeness to the Processor (for example, Primary or Secondary Cache). If a DiskDrive includes RAM allocated for holding the disk's most recently read and/or adjacent data (in order to speed up retrieval), this also would be modeled as CacheMemory. Note that CacheMemory is NOT operating system or application level buffers but actual RAM allocated for caching data for a Processor, from a hard disk, etc.
UMLPackagePath | string | CIM::Device::Memory
Version | string | 2.8.0

## Class Properties

### Local Class Properties

Name | Data Type | Default Value | Qualifiers
--- | --- | --- | ---
Name | Data Type | Value
Associativity | uint16 |
Deprecated | string | CIM_AssociatedCacheMemory.Associativity
Description | string | An integer enumeration defining the system cache associativity. For example, 6 indicates a fully associative cache.
MappingStrings | string | MIF.DMTF|System Cache|006.15
ValueMap | string | 1, 2, 3, 4, 5, 6, 7, 8
Values | string | Other, Unknown, Direct Mapped, 2-way Set-Associative, 4-way Set-Associative, Fully Associative, 8-way Set-Associative, 16-way Set-Associative
CacheType | uint16 |
Deprecated | string | CIM_AssociatedCacheMemory.CacheType
Description | string | Defines whether this is for instruction caching (value=3), data caching (value=4) or both (value=5, "Unified"). Also, "Other" (1) and "Unknown" (2) can be defined.
MappingStrings | string | MIF.DMTF|System Cache|006.9
ValueMap | string | 1, 2, 3, 4, 5
Values | string | Other, Unknown, Instruction, Data, Unified
FlushTimer | uint32 |
Deprecated | string | CIM_AssociatedCacheMemory.FlushTimer
Description | string | Maximum amount of time, in seconds, dirty lines or buckets may remain in the Cache before they are flushed. A value of zero indicated that a cache flush is not controlled by a flushing timer.
MappingStrings | string | MIF.DMTF|System Cache|006.14
PUnit | string | second
Units | string | Seconds
Level | uint16 |
Deprecated | string | CIM_AssociatedCacheMemory.Level
Description | string | Defines whether this is the Primary (value=3), Secondary (value=4) or Tertiary (value=5) Cache. Also, "Other" (1), "Unknown" (2) and "Not Applicable" (6) can be defined.
MappingStrings | string | MIF.DMTF|System Cache|006.2
ValueMap | string | 1, 2, 3, 4, 5, 6
Values | string | Other, Unknown, Primary, Secondary, Tertiary, Not Applicable
LineSize | uint32 |
Deprecated | string | CIM_AssociatedCacheMemory.LineSize
Description | string | Size, in bytes, of a single cache bucket or line.
MappingStrings | string | MIF.DMTF|System Cache|006.10
PUnit | string | byte
Units | string | Bytes
ReadPolicy | uint16 |
Deprecated | string | CIM_AssociatedCacheMemory.ReadPolicy
Description | string | Policy that shall be employed by the Cache for handling read requests. For example, "Read", "Read-Ahead" or both can be specified using the values, 3, 4 or 5, respectively. If the read policy is determined individually (ie, for each request), then the value 6 ("Determination per I/O") should be specified. "Other" (1) and "Unknown" (2) are also valid values.
MappingStrings | string | MIF.DMTF|System Cache|006.13
ValueMap | string | 1, 2, 3, 4, 5, 6
Values | string | Other, Unknown, Read, Read-Ahead, Read and Read-Ahead, Determination Per I/O
ReplacementPolicy | uint16 |
Deprecated | string | CIM_AssociatedCacheMemory.ReplacementPolicy
Description | string | An integer enumeration describing the algorithm to determine which cache lines or buckets should be re-used.
MappingStrings | string | MIF.DMTF|System Cache|006.12
ValueMap | string | 1, 2, 3, 4, 5, 6, 7, 8
Values | string | Other, Unknown, Least Recently Used (LRU), First In First Out (FIFO), Last In First Out (LIFO), Least Frequently Used (LFU), Most Frequently Used (MFU), Data Dependent Multiple Algorithms
WritePolicy | uint16 |
Deprecated | string | CIM_AssociatedCacheMemory.WritePolicy
Description | string | Defines whether this is write-back (value=3) or write-through (value=4) Cache, or whether this information "Varies with Address" (5) or is defined individually for each I/O (6). Also, "Other" (1) and "Unknown" (2) can be specified.
MappingStrings | string | MIF.DMTF|System Cache|006.5
ValueMap | string | 1, 2, 3, 4, 5, 6
Values | string | Other, Unknown, Write Back, Write Through, Varies with Address, Determination Per I/O

### Inherited Properties

Name | Data Type | Class Origin
--- | --- | ---
Access | uint16 | CIM_StorageExtent
AllocationState | string | CIM_LogicalDevice
Availability | uint16 | CIM_LogicalDevice
BlockSize | uint64 | CIM_StorageExtent
Caption | string | CIM_ManagedElement
CommunicationStatus | uint16 | CIM_ManagedSystemElement
CompressionRate | uint16 | CIM_StorageExtent
CompressionState | uint16 | CIM_StorageExtent
ConsumableBlocks | uint64 | CIM_StorageExtent
CorrectableError | boolean | CIM_Memory
CreationClassName | string | CIM_LogicalDevice
DataOrganization | uint16 | CIM_StorageExtent
DataRedundancy | uint16 | CIM_StorageExtent
DeltaReservation | uint8 | CIM_StorageExtent
Description | string | CIM_ManagedElement
DetailedStatus | uint16 | CIM_ManagedSystemElement
DeviceID | string | CIM_LogicalDevice
ElementName | string | CIM_ManagedElement
EnabledDefault | uint16 | CIM_EnabledLogicalElement
EnabledState | uint16 | CIM_EnabledLogicalElement
EndingAddress | uint64 | CIM_Memory
ErrorAccess | uint16 | CIM_Memory
ErrorAddress | uint64 | CIM_Memory
ErrorCleared | boolean | CIM_LogicalDevice
ErrorDataOrder | uint16 | CIM_Memory
ErrorDescription | string | CIM_LogicalDevice
ErrorInfo | uint16 | CIM_Memory
ErrorMethodology | string | CIM_Memory
ErrorResolution | uint64 | CIM_Memory
ErrorTime | datetime | CIM_Memory
ErrorTransferSize | uint32 | CIM_Memory
ExtentInterleaveDepth | uint64 | CIM_StorageExtent
ExtentStripeLength | uint64 | CIM_StorageExtent
Generation | uint64 | CIM_ManagedElement
HealthState | uint16 | CIM_ManagedSystemElement
InstallDate | datetime | CIM_ManagedSystemElement
InstanceID | string | CIM_ManagedElement
IsBasedOnUnderlyingRedundancy | boolean | CIM_StorageExtent
IsComposite | boolean | CIM_StorageExtent
IsCompressed | boolean | CIM_StorageExtent
IsConcatenated | boolean | CIM_StorageExtent
LastErrorCode | uint32 | CIM_LogicalDevice
LocationIndicator | uint16 | CIM_LogicalDevice
MaxQuiesceTime | uint64 | CIM_LogicalDevice
Name | string | CIM_StorageExtent
NameFormat | uint16 | CIM_StorageExtent
NameNamespace | uint16 | CIM_StorageExtent
NoSinglePointOfFailure | boolean | CIM_StorageExtent
NumberOfBlocks | uint64 | CIM_StorageExtent
OperatingStatus | uint16 | CIM_ManagedSystemElement
OtherEnabledState | string | CIM_EnabledLogicalElement
OtherErrorDescription | string | CIM_Memory
OtherNameFormat | string | CIM_StorageExtent
OtherNameNamespace | string | CIM_StorageExtent
OtherUsageDescription | string | CIM_StorageExtent
PackageRedundancy | uint16 | CIM_StorageExtent
PowerManagementSupported | boolean | CIM_LogicalDevice
PowerOnHours | uint64 | CIM_LogicalDevice
PrimaryStatus | uint16 | CIM_ManagedSystemElement
Primordial | boolean | CIM_StorageExtent
Purpose | string | CIM_StorageExtent
RequestedState | uint16 | CIM_EnabledLogicalElement
SequentialAccess | boolean | CIM_StorageExtent
StartingAddress | uint64 | CIM_Memory
Status | string | CIM_ManagedSystemElement
StatusInfo | uint16 | CIM_LogicalDevice
SystemCreationClassName | string | CIM_LogicalDevice
SystemLevelAddress | boolean | CIM_Memory
SystemName | string | CIM_LogicalDevice
TimeOfLastStateChange | datetime | CIM_EnabledLogicalElement
TotalPowerOnHours | uint64 | CIM_LogicalDevice
TransitioningToState | uint16 | CIM_EnabledLogicalElement
Usage | uint16 | CIM_StorageExtent
Volatile | boolean | CIM_Memory
AdditionalAvailability | uint16[] | CIM_LogicalDevice
AdditionalErrorData | uint8[] | CIM_Memory
AvailableRequestedStates | uint16[] | CIM_EnabledLogicalElement
ClientSettableUsage | uint16[] | CIM_StorageExtent
ErrorData | uint8[] | CIM_Memory
ExtentDiscriminator | string[] | CIM_StorageExtent
ExtentStatus | uint16[] | CIM_StorageExtent
IdentifyingDescriptions | string[] | CIM_LogicalDevice
OperationalStatus | uint16[] | CIM_ManagedSystemElement
OtherIdentifyingInfo | string[] | CIM_LogicalDevice
PowerManagementCapabilities | uint16[] | CIM_LogicalDevice
StatusDescriptions | string[] | CIM_ManagedSystemElement

## Class Methods

### Inherited Class Methods

Name | Return Type | Class Origin
--- | --- | ---
EnableDevice | uint32 | CIM_LogicalDevice
OnlineDevice | uint32 | CIM_LogicalDevice
QuiesceDevice | uint32 | CIM_LogicalDevice
RequestStateChange | uint32 | CIM_EnabledLogicalElement
Reset | uint32 | CIM_LogicalDevice
RestoreProperties | uint32 | CIM_LogicalDevice
SaveProperties | uint32 | CIM_LogicalDevice
SetPowerState | uint32 | CIM_LogicalDevice