NERSC logo National Energy Research Scientific Computing Center
  A DOE Office of Science User Facility
  at Lawrence Berkeley National Laboratory
  2

DRAFT Cisco MDS 9509 Performance 7

Cisco MDS 9509 iSCSI Performance Results



1. Overview

The purpose of this report is to document the performance results of the I/O tests done on the Cisco MDS 9509 Multilayer Director Switch. The primary focus of the I/O performance test was to measure the end-to-end iSCSI performance, in terms of I/O bandwidth in MB/second, and the scalability of the MDS 9509 switch. The tests included single-thread and multi-thread I/O tests with different file sizes and I/O sizes. The evaluation period was from January 2004 to March 2004.



2. Test Configuration

We used NERSC PIORAW benchmarks to measure the performance. To measure the end-to-end (host-to-storage controller) performance, PIORAW generates sequential I/O requests (reads and writes) to a small file. All the tests were performed using the raw device interface (e.g., /dev/raw/raw1) to avoid any caching effect on the host system.

The block sizes used in the tests include: 1 KB, 4 KB, 16 KB, 64 KB, 256 KB, 1 MB, 4 MB, and 16 MB.

For multi-stream parallel I/O tests, the aggregate bandwidth was calculated as the total number of bytes read or written divided by the longest elapsed time.

All tests were run on a quite system. No other activities were present on either the clients or the storage when the tests were running.

2.1 Linux Host Configuration

Two types of hosts were used during the tests: P3 nodes and P4 nodes:

  • P3 Node Configuration:

  • Dual 1 GHz Pentium III CPUs, Intel Server Board STL2 motherboards

  • 1 GB 133 MHz ECC memory

  • RedHat 7.3 with 2.4.18-10smp kernel

  • Intel PRO/1000 XT 133 MHz PCI-X Gigabit Ethernet NIC



  • P4 Node Configuration:

  • Dual 2.2 GHz Xeon Pentium IV CPUs, SuperMicro mother board

  • 2 GB 133 MHz ECC memory

  • RedHat 7.3 with 2.4.18-10smp kernel

  • Intel PRO/1000 XT 133 MHz PCI-X Gigabit Ethernet NIC

2.2 Storage Configuration

Two storage systems were used in the tests: the Yotta Yotta NetStorager GSX 2400 system and the DataDirect Networks (DDN) S2A 8500 system.

Yotta Yotta NetStorager GSX 2400

  • 4 control blades, each has 4 GB memory

  • Each control blade has 4 2Gb/s FC ports, two for the front-end host connections and two for the backend disk connections

  • 2 disk enclosures, each disk enclosure is split into two set of 8 disks

  • 8 4-way RAID-0 LUNs, with each LUN exported to one front-end host port

DataDirect Networks (DDN) S2A 8500

  • Two controllers, each has separate 2560 MB memory (only one controller was used in the test)

  • Each controller has 4 2Gb/s FC ports for host connectivity

  • 20 back-end Fibre-Channel loops with 74 FC disks (64 data disks, 8 parity disks, and 2 spares)

  • 8 8+1 RAID-3 LUNs, with each LUN exported to one front-end host port
















2.3 Testbed Configuration



3. TEST RESULTS

3.1 SingleiSCSI Target Performance (One iSCSI initiator, One iSCSI Target)

Objective: To measure iSCSI single target end-to-end performance (a single host accessing a single iSCSI target device)


Test Setup:

  • Clients: P4 nodes, Linux 2.4.18-10smp

  • Switches: Extreme 7i

  • Switch Topology: client and iSCSI GigE port are on the same 7i switch

  • Storage: Yotta Yotta GSX 2400

  • # of FC Ports and Speed: 1 2Gb/s FC port

  • LUN Configuration: 1 4-way Yotta Yotta RAID-0 LUN (accessed as /dev/raw/raw1)

  • I/O Size: 1 KB - 16 MB

  • # of Client: 1

  • # of I/O Processes per Client: 1 to 10

  • Benchmark: PIORAW


Two Tests:


Test 1 was to measure iSCSI performance with increased number of I/O processes on a single host, using an I/O size of 256 KB, to see if we would saturate a single iSCSI interface with a single host.


Test 2 was to measure iSCSI performance of different I/O sizes.


Test Result 1 (Varying # of I/O processes on the host):










Detail Results: 1-Client iSCSI Performance

(I/O Size=256 KB)

# of PEs

Write

Read

1

42.37 MB/s

33.42 MB/s

4

54.41 MB/s

46.00 MB/s

8

68.07 MB/s

45.11 MB/s

10

69.80 MB/s

45.22 MB/s



Test 1 results show the iSCSI performance of a single iSCSI target device accessing from a single host using different number of I/O processes, using an I/O size of 256 KB.


Test 1 results indicate that, on a single host, the performance of a single iSCSI target did not increase very much after 8 I/O processes. These results show that, for the I/O size of 256 KB, the best iSCSI performance of a single iSCSI target device on a single host is about 70 MB/s for writes and 45 MB/s for reads. These numbers are lower than what we saw before with similar tests run on the Cisco SN5428 switch for the read/write performance was close to 90 MB/s.


Test 2 Result (Varying I/O Size):










Detail Results: 1-Client iSCSI Performance (# of procs=8)

I/O Size

Write

Read

1KB

4.91 MB/s

6.23 MB/s

4KB

30.51 MB/s

33.78 MB/s

64KB

83.22 MB/s

42.61 MB/s

256KB

69.68 MB/s

45.02 MB/s

1MB

55.68 MB/s

45.40 MB/s

4MB

55.59 MB/s

45.34 MB/s

16MB

55.04 MB/s

45.41 MB/s


Test 2 Results show the performance of a single iSCSI target device, accessing from a single host using different I/O Sizes. The results show the best write performance was 83 MB/s, and was achieved at the I/O size of 64 KB and the best read performance was 45 MB/s for I/O sizes larger than 256 KB.


Test 2 results indicate that there was a sweet spot for writes at 64 KB and 256 KB (or about 30% performance drop for I/O sizes that are larger than 1MB). The reason for these sweet spots (or performance drop for larger I/O sizes) is not clear. This behavior does not seem to be related to the underlying storage device though. In earlier tests we did with the same storage device, the Yotta Yotta GSX 2400, we constantly saw better performance for larger I/O sizes.


For I/O sizes that are larger than 1 MB, the performance of a single iSCSI target device on a single Linux host is about 55 MB/s for writes and 45 MB/s for reads. Both the read performance and the write performance were much lower than the GigE line speed (which is about 125 MB/s). From talking to Cisco, it seems that we need to have more than one iSCSI target devices to achieve a better performance over a single GigE interface.


3.2 iSCSI Performance (One iSCSI initiator, Multiple iSCSI Target Devices)

Objective: To measure multi-LUN iSCSI performance, with a single host accessing multiple iSCSI target devices


Test Setup:

  • Clients: P4 nodes, Linux 2.4.18-10smp

  • Switches: Extreme 7i

  • Switch Topology: client and iSCSI GigE port are on the same 7i switch

  • Storage: DDN S2A 8500

  • # of FC Ports and Speed: 4 2Gb/s FC port

  • LUN Configuration: 4 DDN RAID-3 LUNs

  • I/O Size: 1 KB - 16 MB

  • # of Client: 1

  • # of I/O Processes per Client: 16

  • Benchmark: PIORAW


Test Result:













Multi-LUN iSCSI Performance


I/O Size

1-LUN

2-LUN

3-LUN

4-LUN

write

16 MB

64.54

69.58

76.15

80.19

4 MB

63.79

68.12

75.26

79.42

1 MB

64.07

69.11

75.85

79.79

256 KB

61.94

70.50

79.28

82.76

64 KB

63.14

80.36

84.09

84.29

16 KB

52.04

71.06

76.27

76.25

4 KB

45.03

48.03

47.81

46.69

1 KB

14.68

17.58

17.62

17.41

read

16 MB

41.91

55.73

64.13

71.33

4 MB

41.78

55.28

62.13

70.39

1 MB

41.52

55.55

62.73

69.64

256 KB

42.18

56.27

64.31

71.85

64 KB

42.89

59.60

60.38

58.50

16 KB

49.09

62.25

72.08

74.55

4 KB

45.67

52.08

51.35

50.73

1 KB

15.80

18.95

19.08

18.86



Test Summary:


The results show that, on a single host, the iSCSI performance did increase when more iSCSI target devices were accessed from the same GigE interface. The best iSCSI performance achieved by a single host with four iSCSI target devices was about 80.29 MB/s for writes (with 64 KB I/O size) and 72.08 MB/s for reads (with 16 KB I/O size).


These results clearly indicate that a host needs more than a few iSCSI target devices to saturate a single GigE interface with the MDS 9509 switch. Even with four LUNs, these numbers are still lower than what we saw on the Cisco SN5428 switch with only a single iSCSI target, and the performance was close to 90 MB/s for both reads and writes.



3.3 Cisco MDS 9505 iSCSI I/O Scalability (Multiple iSCSI initiators and targets)

Objective: To measure the iSCSI performance scalability with increased number of iSCSI initiators (clients)


Test Setup:

  • Clients: P4 nodes, Linux 2.4.18-10smp

  • Switches: Extreme 7i

  • Switch Topology: client and iSCSI GigE port are on the same 7i switch

  • Storage: DataDirect Networks S2A 8500

  • # of FC Ports and Speed: 4 2Gb/s ports

  • LUN Configuration: 4 8+1 RAID-3 LUNs

  • # of GigE Ports and Speed: 4 1Gb/s ports

  • I/O Size: 1 KB - 16 MB

  • # of Client: 1 to 8

  • # of I/O Processes per Client: 8

  • Benchmark: PIORAW


Test Result:












MDS 9509 iSCSI Scalability Detailed Results ( with 4 GigE Ports)

Write

I/O Size

# of Clients

1

2

3

4

5

6

7

8

16 MB

80.17

139.07

175.12

248.37

217.80

229.41

238.11

264.44

4 MB

79.83

139.87

174.49

249.44

218.03

229.12

238.02

259.93

1 MB

79.91

139.16

176.10

249.80

219.94

230.70

238.88

264.67

256 KB

83.82

144.48

185.48

247.56

215.28

255.40

216.14

273.60

64 KB

84.33

157.73

230.07

251.63

223.44

231.41

220.48

273.48

16 KB

71.72

110.65

115.34

144.53

93.10

111.40

87.98

160.68

4 KB

37.03

53.50

48.52

55.54

43.26

41.08

41.15

52.67

1 KB

12.73

18.33

18.66

20.19

16.97

17.46

16.25

17.66

Read

I/O Size

# of Clients

1

2

3

4

5

6

7

8

16 MB

71.43

112.06

216.18

190.93

370.61

353.41

467.40

310.88

4 MB

71.30

112.28

217.17

190.70

370.13

350.95

466.43

309.07

1 MB

71.05

111.77

216.45

191.16

371.59

353.93

465.81

308.97

256 KB

62.37

114.63

196.99

191.86

350.48

358.44

437.33

308.39

64 KB

51.65

94.65

179.38

198.53

345.87

324.95

305.20

316.66

16 KB

67.01

117.86

173.03

201.17

122.80

136.57

112.66

201.95

4 KB

43.26

62.14

57.10

71.50

52.65

54.86

50.80

66.54

1 KB

14.68

19.17

19.47

21.61

17.89

18.17

17.37

19.04

Result Summary:


The results show the MDS 9509 iSCSI scalability when the number of iSCSI initiators (client) increased. The aggregate iSCSI performance did increase when more iSCSI initiators were added. However, the aggeregate write performance stopped to increase after four initiators and remained at around 250 MB/s. The best aggregate performance was achieved with 7 iSCSI initiators. The best aggregate performance was about 467 MB/s which was very close to the aggregate bandwidth of 4 GigE interfaces. However, there were some performance drops in the cases of 4, 6 and 8 initiators. The reason for these performance drops is not clear.



3.4 iSCSI Test with Multiple GigE Switches (Bridging Overhead)

Objective: To measure the switch bridging overhead when multiple switches are used


Test Setup:

  • Clients: P4 nodes, Linux 2.4.18-10smp

  • Switches: 2 Extreme 7i and a Dell PowerConnect 6024

  • Inter-switch links: 4-port trunk between two 7i switch and between a 7i and the Dell switch

  • Switch Topology: 4 clients on one 7i switch, 4 iSCSI GigE ports on the Dell Switch, and these two switches were connected by a second 7i switch

  • Storage: DDN S2A 8500

  • # of FC Ports and Speed: 4 2Gb/s FC ports

  • LUN Configuration: 4 8+1 RAID-3 LUNs (/dev/raw/raw1 - /dev/raw/raw4)

  • Zone Configuration: no zones – each host sees 4 LUNs

  • I/O Size: 1 KB to 16 MB

  • # of Client: 4

  • # of I/O Processes per Client: 8 (2 processes per raw device)

  • Benchmark: PIORAW


Test Result:










Multi-switch iSCSI Performance

I/O Size

Write

Read

1KB

21.31 MB/s

22.14 MB/s

4KB

81.54 MB/s

85.00 MB/s

16KB

237.77 MB/s

226.00 MB/s

64KB

274.64 MB/s

226.97 MB/s

256KB

267.58 MB/s

149.73 MB/s

1MB

258.70 MB/s

168.91 MB/s

4MB

257.30 MB/s

170.30 MB/s

16MB

250.55 MB/s

171.73 MB/s



Result Summary:

When iSCSI is deployed in a large cluster, it is expected to have more than just one switch. The iSCSI traffic may need to hop through several switches. The purpose of the test was to better understand how bridging may affect iSCSI performance for sequential I/O’s. Comparing these results against the results in Section 3.3, the write performance was about the same but the read performance was lower for I/O sizes that are larger than 256 KB. More investigation is needed to understand whether the performance drop was caused by any of the switches or by the overhead of hopping through several switches.

3.5 MDS 9509 FC Performance Baseline

Objective: To measure MDS 9509 FC performance as a baseline for the iSCSI performance


Test Setup:

  • Client: Linux 2.4.18-10smp, Dual 2.2 GHz Xeon P4

  • FC HBA: QLA2340

  • # of FC Ports and Speed: 3 2Gb/s FC port

  • LUN Configuration: 4 DDN 8+1 RAID-3 LUNs, all LUNs exported to all hosts

  • I/O Size: 1 KB to 16 MB

  • File Size: 32 MB

  • # of Client: 1 - 3

  • # of I/O Processes per Client: 16

  • Benchmark: PIORAW












MDS 9509 Fibre Channel Performance

I/O Size

Write

Read

1

2

3

1

2

3

1KB

9.91

16.86

17.85

10.87

17.62

19.10

4KB

73.00

81.29

82.53

80.01

87.27

88.62

16KB

157.18

264.68

256.95

203.50

271.50

290.70

64KB

191.96

383.57

564.93

205.94

411.83

593.18

256KB

194.07

387.05

557.78

205.87

411.58

454.59

1MB

194.47

389.21

554.85

206.04

412.16

505.94

4MB

194.43

389.52

554.87

206.02

412.06

505.28

16MB

194.56

389.11

554.01

206.61

413.87

507.08


Result Summary:

The above results show the MDS 9509 end-to-end FC performance, with each host accessing (reading and writing) 4 DDN RAID-3 LUNs simultaneously. These results were the sequential I/O performance, for reading and writing of a 32 MB file, using different I/O sizes. Since the memory cache on the controller is 2 GB, the content of the 32 MB file can be cached entirely in the controller cache. With the file content cached, the performance would show the best possible transfer rate of the FC connections between the hosts and the FC ports on the storage controller.

The results indicate that both read and write performance increased when the I/O size increased. Once the I/O size reached 1 MB, the performance stayed at the same level. The results show a near linear scalability for writes with I/O sizes larger than 256 MB. However, for reads, only the test with the I/O size of 64 KB showed a near linear scalability. For three clients, the read performance reached to 593 MB/s at 64 KB and then dropped to 507 MB/s for I/O sizes larger than 256 KB.

This was the first time we used the MDS 9509 switch and the DDN S2A8500 storage system, we had no prior experience on their performance. In order to understand whether the performance drop a MDS 9509 switch issue or a problem with the DDN S2A8500 storage, more tests need to be run using a different switch or a different storage system.

These numbers provide the baseline FC performance for the iSCSI performance test.




7 4/21/2004


LBNL Home
Page last modified: Wed, 19 May 2004 22:42:46 GMT
Page URL: http://www.nersc.gov/projects/GUPFS/results/network/cisco/index.php
Web contact: webmaster@nersc.gov
Computing questions: consult@nersc.gov

Privacy and Security Notice
DOE Office of Science