LinuxQuestions.org
Welcome to the most active Linux Forum on the web.
Home Forums Tutorials Articles Register
Go Back   LinuxQuestions.org > Forums > Linux Forums > Linux - Server
User Name
Password
Linux - Server This forum is for the discussion of Linux Software used in a server related context.

Notices


Reply
  Search this Thread
Old 01-13-2017, 08:16 AM   #1
usao
Member
 
Registered: Dec 2011
Location: Chandler, AZ
Posts: 286

Rep: Reputation: Disabled
Benchmarking IO performance


Ive been looking for a tool to perform LUN I/O performance testing.
I have N number of luns.
On each lun I want to start multiple parallel jobs/threads performing I/O.
The I/O should be large block, 64/128/256k and completely random, with little if any sequential.

I looked at a tool called fio, but im not sure exactly how to configure an example which meets the above conditions. The do have a "--bs" option, which I can use and I found "rw=randrw" will do the random, but I don't know how to define the number of luns and number of threads per lun.

Any clarification would be appreciated, or if there is another tool that would be helpful as well.
 
Old 01-13-2017, 05:37 PM   #2
smallpond
Senior Member
 
Registered: Feb 2011
Location: Massachusetts, USA
Distribution: Fedora
Posts: 4,140

Rep: Reputation: 1263Reputation: 1263Reputation: 1263Reputation: 1263Reputation: 1263Reputation: 1263Reputation: 1263Reputation: 1263Reputation: 1263
Do you want to benchmark filesystem access times or do you want raw disk speed? fio does file I/O. Another good filesystem benchmark is Bonnie++.

If you want to test the block device without going through the filesytem and cache, then use iometer or vdbench.
 
Old 01-14-2017, 02:16 PM   #3
usao
Member
 
Registered: Dec 2011
Location: Chandler, AZ
Posts: 286

Original Poster
Rep: Reputation: Disabled
What I have is a handfull of raw device luns, to be used for a block-oriented database. These luns could be fiber or iscsi, but in any event are backed by a fairly robust storage array.
I tried fio, and got rediculous numbers. It was telling me that I was getting about 5-10 MB/sec from a fiber mounted lun striped accross a Clariion disk array with hundreds of drives and little other workload.
I admit I don't know what the options are trying to tell me, so perhaps im using it wrong. When I tried 'dd', I got upwards of 1300 MByte/sec (1.3 GByte/sec) throughput, but fio was giving me less than 10 MByte/sec. Something not right with that program (or how im using it).
Best I could tell from reading other sites, the following options should have worked for me.
./fio --randrepeat=1 --ioengine=libaio --direct=1 --gtod_reduce=1 --name=test --filename=/pool/test --bs=4k --iodepth=64 --size=4G --readwrite=randrw --rwmixread=75
 
Old 01-15-2017, 08:20 AM   #4
smallpond
Senior Member
 
Registered: Feb 2011
Location: Massachusetts, USA
Distribution: Fedora
Posts: 4,140

Rep: Reputation: 1263Reputation: 1263Reputation: 1263Reputation: 1263Reputation: 1263Reputation: 1263Reputation: 1263Reputation: 1263Reputation: 1263
A good database layout will spread I/O equally across all devices and the database will use cache to minimize slow seeks. If you can find a copy of Orion it simulates database activity.
 
Old 01-15-2017, 09:49 AM   #5
btmiller
Senior Member
 
Registered: May 2004
Location: In the DC 'burbs
Distribution: Arch, Scientific Linux, Debian, Ubuntu
Posts: 4,290

Rep: Reputation: 378Reputation: 378Reputation: 378Reputation: 378
Try running fio without --direct=1. Using direct I/O will bypass disk and kernel buffer caches and measure only the underlying hardware performance. This likely accounts for some of the performance loss between dd and fio. Also, dd will do sequential I/O, but you've asked fio to perform a slight read heavy random I/O pattern. So you're really comparing apples to oranges here.
 
Old 01-16-2017, 10:27 AM   #6
sundialsvcs
LQ Guru
 
Registered: Feb 2004
Location: SE Tennessee, USA
Distribution: Gentoo, LFS
Posts: 10,659
Blog Entries: 4

Rep: Reputation: 3941Reputation: 3941Reputation: 3941Reputation: 3941Reputation: 3941Reputation: 3941Reputation: 3941Reputation: 3941Reputation: 3941Reputation: 3941Reputation: 3941
Actually, in my experience, the most reliable way to predict these things is through software simulation. Specifically, "discrete event simulation." There are many tools out there in open-source land which can help you do this, "sufficiently well to be meaningful."

I'm not 100% sure from your description exactly how the database system that you wish to model is set up; that is to say, what sort of request pattern it would generate and how an operating system might (if tuned in various ways) respond to it. But, that will be the most important aspect of your simulation. If you anticipate this correctly, your simulation should very quickly and correctly identify the "hot spots." (And, that's really all that you need to know ...) If you don't, the results will be garbage.
 
  


Reply



Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is Off
HTML code is Off



Similar Threads
Thread Thread Starter Forum Replies Last Post
Find vs Find2Perl and Implications on Server Performance (Benchmarking) SneakyPanda7 Linux - Server 1 08-09-2015 09:57 PM
LXer: IOzone for filesystem performance benchmarking LXer Syndicated Linux News 0 07-03-2008 11:30 AM
LXer: Using Bonnie++ for filesystem performance benchmarking LXer Syndicated Linux News 0 07-01-2008 06:30 PM
LXer: Benchmarking NFSv3 vs. NFSv4 file operation performance LXer Syndicated Linux News 0 06-20-2008 11:00 AM
Benchmarking UT2K3 performance Thetargos Linux - Games 0 02-12-2004 03:18 PM

LinuxQuestions.org > Forums > Linux Forums > Linux - Server

All times are GMT -5. The time now is 11:29 PM.

Main Menu
Advertisement
My LQ
Write for LQ
LinuxQuestions.org is looking for people interested in writing Editorials, Articles, Reviews, and more. If you'd like to contribute content, let us know.
Main Menu
Syndicate
RSS1  Latest Threads
RSS1  LQ News
Twitter: @linuxquestions
Open Source Consulting | Domain Registration