Skip to content

Commit b407aac

Browse files
committed
acrolinx
1 parent 1c197cf commit b407aac

File tree

1 file changed

+12
-12
lines changed

1 file changed

+12
-12
lines changed

articles/azure-netapp-files/performance-linux-concurrency-session-slots.md

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -29,8 +29,8 @@ These slot table entries define the limits of concurrency. Values this high are
2929

3030
A concurrency level as low as 155 is sufficient to achieve 155,000 Oracle DB NFS operations per second using Oracle Direct NFS, which is a technology similar in concept to the `nconnect` mount option:
3131

32-
* Considering a latency of 0.5 ms, a concurrency of 55 is needed to achieve 110,000 IOPS.
33-
* Considering a latency of 1 ms, a concurrency of 155 is needed to achieve 155,000 IOPS.
32+
* Considering a latency of 0.5 ms, a concurrency of 55 is needed to achieve 110,000 I/OPS.
33+
* Considering a latency of 1 ms, a concurrency of 155 is needed to achieve 155,000 I/OPS.
3434

3535
![Oracle DNFS latency curve](./media/shared/performance-oracle-dnfs-latency-curve.png)
3636

@@ -62,20 +62,20 @@ Example 2 is based on a single client workload with a `sunrpc.tcp_max_slot_table
6262

6363
#### Example 3 – One NFS client, 100 `sunrpc.tcp_max_slot_table_entries`, and `nconnect=8` for a maximum concurrency of 800
6464

65-
Example 3 is based on a single client workload, but with a lower `sunrpc.tcp_max_slot_table_entry` value of 100. This time, the `nconnect=8` mount option used spreading the workload across 8 connection. With this setting, a concurrency of 800 is achievable spread across the 8 connections. This amount is the concurrency needed to achieve 400,000 IOPS.
65+
Example 3 is based on a single client workload, but with a lower `sunrpc.tcp_max_slot_table_entry` value of 100. This time, the `nconnect=8` mount option used spreading the workload across 8 connection. With this setting, a concurrency of 800 is achievable spread across the 8 connections. This amount is the concurrency needed to achieve 400,000 I/OPS.
6666

6767
* `NFS_Server=10.10.10.10, NFS_Client=10.10.10.11`
6868
* `Connection 1 (10.10.10.10:2049, 10.10.10.11:6543,TCP), Connection 2 (10.10.10.10:2049, 10.10.10.11:6454,TCP)… Connection 8 (10.10.10.10:2049, 10.10.10.11:7321,TCP)`
6969
* Connection 1
70-
* The client will issue no more than 100 requests in flight to the server from this connection.
70+
* The client issues no more than 100 requests in flight to the server from this connection.
7171
* The server is expected to accept no more than 128 requests in flight from the client for this connection.
7272
* Connection 2
73-
* The client will issue no more than 100 requests in flight to the server from this connection.
73+
* The client issues no more than 100 requests in flight to the server from this connection.
7474
* The server is expected to accept no more than 128 requests in flight from the client for this connection.
7575
* ``
7676
* ``
7777
* Connection 8
78-
* The client will issue no more than 100 requests in flight to the server from this connection.
78+
* The client issues no more than 100 requests in flight to the server from this connection.
7979
* The server is expected to accept no more than 128 requests in flight from the client for this connection.
8080

8181
#### Example 4 – 250 NFS clients, 8 `sunrpc.tcp_max_slot_table_entries`, and no `nconnect` for a maximum concurrency of 2000
@@ -104,16 +104,16 @@ When using NFSv3, *you should collectively keep the storage endpoint slot count
104104
Using *Littles Law*, you can calculate the total required slot table entry count. In general, consider the following factors:
105105

106106
* Scale-out workloads are often dominantly large sequential in nature.
107-
* Database workloads, especially OLTP, are often random in nature.
107+
* Database workloads, especially online transaction processing, are often random in nature.
108108

109109
The following table shows a sample study of concurrency with arbitrary latencies provided:
110110

111111
| I/O size | Latency | I/O or throughput | Concurrency |
112112
|-|-|-|-|
113-
| 8 KiB | 0.5 ms | 110,000 IOPS \| 859 MiB/s | 55 |
114-
| 8 KiB | 2 ms | 400,000 IOPS \| 3,125 MiB/s | 800 |
115-
| 256 KiB | 2 ms | 16,000 IOPS \| 4,000 MiB/s | 32 |
116-
| 256 KiB | 4 ms | 32,000 IOPS \| 8,000 MiB/s | 128 |
113+
| 8 KiB | 0.5 ms | 110,000 I/OPS \| 859 MiB/s | 55 |
114+
| 8 KiB | 2 ms | 400,000 I/OPS \| 3,125 MiB/s | 800 |
115+
| 256 KiB | 2 ms | 16,000 I/OPS \| 4,000 MiB/s | 32 |
116+
| 256 KiB | 4 ms | 32,000 I/OPS \| 8,000 MiB/s | 128 |
117117

118118
### How to calculate concurrency settings by connection count
119119

@@ -258,5 +258,5 @@ The following example shows Packet 14 (server maximum requests):
258258
* [Linux filesystem cache best practices for Azure NetApp Files](performance-linux-filesystem-cache.md)
259259
* [Linux NFS mount options best practices for Azure NetApp Files](performance-linux-mount-options.md)
260260
* [Linux NFS read-ahead best practices](performance-linux-nfs-read-ahead.md)
261-
* [Azure virtual machine SKUs best practices](performance-virtual-machine-sku.md)
261+
* [Azure virtual machine stock keeping unit SKU best practices](performance-virtual-machine-sku.md)
262262
* [Performance benchmarks for Linux](performance-benchmarks-linux.md)

0 commit comments

Comments
 (0)