HP P2000 HP P2000 G3 MSA System SMU Reference Guide - Page 25

Optimizing read-ahead caching, Related topics

Page 25 highlights

Optimizing read-ahead caching CAUTION: Only change read-ahead cache settings if you fully understand how the host operating system, application, and adapter move data so that you can adjust the settings accordingly. You can optimize a volume for sequential reads or streaming data by changing its read-ahead cache settings. Read ahead is triggered by two back-to-back accesses to consecutive LBA ranges, whether forward (increasing LBAs) or reverse (decreasing LBAs). You can change the amount of data read in advance after two back-to-back reads are made. Increasing the read-ahead cache size can greatly improve performance for multiple sequential read streams; however, increasing read-ahead size will likely decrease random read performance. • The Default option works well for most applications: it sets one chunk for the first access in a sequential read and one stripe for all subsequent accesses. The size of the chunk is based on the chunk size used when you created the vdisk (the default is 64 KB). Non-RAID and RAID-1 vdisks are considered to have a stripe size of 64 KB. • Specific size options let you select an amount of data for all accesses. • The Maximum option lets the controller dynamically calculate the maximum read-ahead cache size for the volume. For example, if a single volume exists, this setting enables the controller to use nearly half the memory for read-ahead cache. Only use Maximum when disk latencies must be absorbed by cache. For example, for read-intensive applications, you will want data that is most often read to be in cache so that the response to the read request is very fast; otherwise, the controller has to locate which disks the data is on, move it up to cache, and then send it to the host. Do not use Maximum if more than two volumes are owned by the controller on which the read-ahead setting is being made. If there are more than two volumes, there is contention on the cache as to which volume's read data should be held and which has the priority; each volume constantly overwrites the other volume's data in cache, which could result in taking a lot of the controller's processing power. • The Disabled option turns off read-ahead cache. This is useful if the host is triggering read ahead for what are random accesses. This can happen if the host breaks up the random I/O into two smaller reads, triggering read ahead. You can also change the optimization mode. • The standard read-ahead caching mode works well for typical applications where accesses are a combination of sequential and random; this method is the default. For example, use this mode for transaction-based and database update applications that write small files in random order. • For an application that is strictly sequential and requires extremely low latency, you can use Super Sequential mode. This mode makes more room for read-ahead data by allowing the controller to discard cache contents that have been accessed by the host. For example, use this mode for video playback and multimedia post-production video- and audio-editing applications that read and write large files in sequential order. Related topics • Changing a volume's cache settings on page 55 • Changing system cache settings on page 49 • Viewing information about a volume on page 95 HP P2000 G3 MSA System SMU Reference Guide 25

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37
  • 38
  • 39
  • 40
  • 41
  • 42
  • 43
  • 44
  • 45
  • 46
  • 47
  • 48
  • 49
  • 50
  • 51
  • 52
  • 53
  • 54
  • 55
  • 56
  • 57
  • 58
  • 59
  • 60
  • 61
  • 62
  • 63
  • 64
  • 65
  • 66
  • 67
  • 68
  • 69
  • 70
  • 71
  • 72
  • 73
  • 74
  • 75
  • 76
  • 77
  • 78
  • 79
  • 80
  • 81
  • 82
  • 83
  • 84
  • 85
  • 86
  • 87
  • 88
  • 89
  • 90
  • 91
  • 92
  • 93
  • 94
  • 95
  • 96
  • 97
  • 98
  • 99
  • 100
  • 101
  • 102
  • 103
  • 104
  • 105
  • 106
  • 107
  • 108
  • 109
  • 110
  • 111
  • 112
  • 113
  • 114
  • 115
  • 116
  • 117
  • 118
  • 119
  • 120
  • 121
  • 122
  • 123
  • 124
  • 125
  • 126
  • 127
  • 128
  • 129
  • 130
  • 131
  • 132
  • 133
  • 134
  • 135
  • 136
  • 137
  • 138
  • 139
  • 140
  • 141
  • 142
  • 143
  • 144
  • 145
  • 146
  • 147
  • 148
  • 149
  • 150
  • 151
  • 152
  • 153
  • 154
  • 155
  • 156
  • 157
  • 158
  • 159
  • 160

HP P2000 G3 MSA System SMU Reference Guide
25
Optimizing read-ahead caching
CAUTION:
Only change read-ahead cache settings if you fully understand how the host operating
system, application, and adapter move data so that you can adjust the settings accordingly.
You can optimize a volume for sequential reads or streaming data by changing its read-ahead cache
settings. Read ahead is triggered by two back-to-back accesses to consecutive LBA ranges, whether
forward (increasing LBAs) or reverse (decreasing LBAs).
You can change the amount of data read in advance after two back-to-back reads are made. Increasing
the read-ahead cache size can greatly improve performance for multiple sequential read streams; however,
increasing read-ahead size will likely decrease random read performance.
The Default option works well for most applications: it sets one chunk for the first access in a sequential
read and one stripe for all subsequent accesses. The size of the chunk is based on the chunk size used
when you created the vdisk (the default is 64 KB). Non-RAID and RAID-1 vdisks are considered to have
a stripe size of 64 KB.
Specific size options let you select an amount of data for all accesses.
The Maximum option lets the controller dynamically calculate the maximum read-ahead cache size for
the volume. For example, if a single volume exists, this setting enables the controller to use nearly half
the memory for read-ahead cache.
Only use Maximum when disk latencies must be absorbed by cache. For example, for read-intensive
applications, you will want data that is most often read to be in cache so that the response to the read
request is very fast; otherwise, the controller has to locate which disks the data is on, move it up to
cache, and then send it to the host. Do not use Maximum if more than two volumes are owned by the
controller on which the read-ahead setting is being made. If there are more than two volumes, there is
contention on the cache as to which volume’s read data should be held and which has the priority;
each volume constantly overwrites the other volume’s data in cache, which could result in taking a lot of
the controller’s processing power.
The Disabled option turns off read-ahead cache. This is useful if the host is triggering read ahead for
what are random accesses. This can happen if the host breaks up the random I/O into two smaller
reads, triggering read ahead.
You can also change the optimization mode.
The standard read-ahead caching mode works well for typical applications where accesses are a
combination of sequential and random; this method is the default. For example, use this mode for
transaction-based and database update applications that write small files in random order.
For an application that is strictly sequential and requires extremely low latency, you can use Super
Sequential mode. This mode makes more room for read-ahead data by allowing the controller to
discard cache contents that have been accessed by the host. For example, use this mode for video
playback and multimedia post-production video- and audio-editing applications that read and write
large files in sequential order.
Related topics
Changing a volume’s cache settings
on page 55
Changing system cache settings
on page 49
Viewing information about a volume
on page 95