14
Overview of the SNIA CIFS Benchmark Client Richard Sharpe Panasas, Inc & Samba Team

Overview of the SNIA CIFS Benchmark Client Richard Sharpe Panasas, Inc & Samba Team

Embed Size (px)

Citation preview

Overview of the SNIA CIFS

Benchmark Client

Overview of the SNIA CIFS

Benchmark ClientRichard Sharpe

Panasas, Inc & Samba Team

2SNIA CIFS Benchmark Client, 2002

CIFS Client Program GoalsCIFS Client Program Goals

Avoids NetBench Problems– Not affected by client differences– Not affected by client caches

Customize Performance Analysis– You can develop your own scripts

Focus on issues important to you

Produces Quality Output– Min, max, and mean latency– Accumulates sum-of-squares

Jain’s Fairness Index and Std Dev

3SNIA CIFS Benchmark Client, 2002

CIFS Client Program Goals, contCIFS Client Program Goals, cont

Drive multiple interfaces– 5 to 8 GigE adapters not hard

Simple to run Source available from:

– cvs.samba.org– xxx.netapp.com

4SNIA CIFS Benchmark Client, 2002

Based on Samba code Based on Samba code

Samba consists of several parts– Server, everyone knows of this– MSRPC Library, client and server– Client Library

Used by a number of parts of Samba

– libsmbclient Took the client library and underlying

code– Completely separate from Samba– Can still benefit from improvements in

Samba

5SNIA CIFS Benchmark Client, 2002

Speed IssuesSpeed Issues

Slow driver biases the test I use 2 GHz P4 with Plumas chip-set

– Speed more important than memory

Read data thrown away as soon as read from socket

Send data made up at lowest layer– Mean’s you can’t verify server preserves

data

Make sure you have free CPU when running tests

6SNIA CIFS Benchmark Client, 2002

CIFS Load Gen LicenceCIFS Load Gen Licence

The source code falls under the GPL– Developed from GPL’d code

Any workload scripts can be licensed in whatever way the developer of the script wishes– Similar to the concept of editing files with

Emacs or compiling code with GCC

7SNIA CIFS Benchmark Client, 2002

CapabilitiesCapabilities

Initialize, warm-up and measurement phases possible

Specify multiple interfaces Disconnect between initialize/warm-

up and measurement phase– Avoid server-cache effects from init

Only one workload script file so far

8SNIA CIFS Benchmark Client, 2002

How to Run CIFS Load GenHow to Run CIFS Load Gen

cifs_bm [options] //srvr/share– -c <workload script file>– -W <workgroup/domain>– -U <user%pass>– -I <IP-1[,IP-2…]>

For multiple interfaces

– -N <client-instance-count>– -p <path-to-prefix-files-with>– -v– -d <operation-defeat-list>

9SNIA CIFS Benchmark Client, 2002

Sample Workload ScriptSample Workload Script

BM_MEASURE

NTcreateX \clients\client1\xxx 0x40 0x2 12119

WriteX 12119 0 65471 65471

WriteX 12110 65471 65471 65471

Close 12119

NTcreateX \clients\client1\xxx 0x40 0x1 12120

ReadX 12120 0 65471 65471

QUERY_FILE_INFORMATION 12120

Close

Unlink \clients\client1\xxx.yyy

10SNIA CIFS Benchmark Client, 2002

Output – 15 ClientsOutput – 15 ClientsThroughput 35.1498 MB/secTotal bytes read : 3072228525Total bytes written: 2044882365Total RO file opens: 84735Total WO file opens: 56640Total RW file opens: 9630 Command: Count Min Latency Max Latency Tot Latency Ave Latncy (micro sec) (micro sec) (micro sec)Close 149985 96 263064 168180313 1121DelTree 0 0 0 0 0Find First 44700 167 242110 82544919 1846Flush 0 0 0 0 0Locking & X 0 0 0 0 0NT Create & X 182820 127 211551 249020098 1362Query File Info 106890 102 219127 132250404 1237Query FS Info 21060 380 263509 56523135 2683Query Path Info 93990 128 196838 147776443 1572Read & X 988995 75 264153 866324679 875Rename 5370 243 223809 10720453 1996Rmdir 0 0 0 0 0Unlink 25245 166 271213 44684454 1770Write & X 201225 80 272350 301845693 1500

11SNIA CIFS Benchmark Client, 2002

Problems to resolve Problems to resolve

Early termination of some clients– Biases the results towards the end

A scripting language to ease test set development– Perl, TCL, Python?

Credible set of benchmark scripts– Realistic workload– Heavy workload– Best read/write throughput– Prevent everything being in cache

12SNIA CIFS Benchmark Client, 2002

Future WorkFuture Work

Add distributed Load Generation– More driver machines for greater load

Add Standard Deviation– What does this mean when latency

distributions are bimodal/multimodal

Add Jain’s Fairness Index– How well the server serves clients equally

Add NFS functions– Measure interference of one protocol by

the other

13SNIA CIFS Benchmark Client, 2002

Future Work, contFuture Work, cont

Ability to measure connection rate Ability to measure authentication rate Ability to measure TCON/TDIS rate Set up 10Gbps test driver this year

– Multiple dual-GigE adapters in Plumas- based system

Set up 50Gbps test driver next year– Multiple drivers using something like

PVM toolkit

14SNIA CIFS Benchmark Client, 2002

AcknowledgmentsAcknowledgments

Andrew Tridgell Samba Team Steve French Swami Ramany Dan Oldman Jim Norton Tamir Ram Rakesh Sharma John Terpstra