Sponsored Content
Top Forums UNIX for Advanced & Expert Users How to test RAID10 array performance [Debian Wheezy]? Post 302918516 by gacanepa on Wednesday 24th of September 2014 12:22:59 AM
Old 09-24-2014
Hammer & Screwdriver How to test RAID10 array performance [Debian Wheezy]?

I have created a RAID10 array (near layout) with four 8 GiB virtual hard drives, making a 16 GiB array (/dev/md0 formatted as ext4). On the other hand, I have a 16 GiB RAID1 array (/dev/md1, also formatted as ext4).
The purpose of these setups is to compare the read and write performances of each array.

So far, I have used dd to perform the following tests:

dd (sequential write performance):

Code:
    dd if=/dev/zero of=/dev/md0 count=512 bs=1024k
    512+0 records in
    512+0 records out
    536870912 bytes (537 MB) copied, 6.60623 s, 81.3 MB/s

    dd if=/dev/zero of=/dev/md1 count=512 bs=1024k
    512+0 records in
    512+0 records out
    536870912 bytes (537 MB) copied, 5.74421 s, 93.5 MB/s

dd (sequential read performance):

Code:
    dd if=/dev/md0 of=/dev/null bs=4096k
    4093+1 records in
    4093+1 records out
    17168334848 bytes (17 GB) copied, 168.665 s, 102 MB/s

    dd if=/dev/md1 of=/dev/null bs=4096k
    4093+1 records in
    4093+1 records out
    17170300928 bytes (17 GB) copied, 44.6421 s, 385 MB/s

So I changed the RAID10 array layout to f2, and sequential read performance improved but the write performance decreased compared to n2 (which was the previous layout):

Code:
    dd if=/dev/md0 of=/dev/null bs=4096k
    4093+0 records in
    4093+0 records out
    17167286272 bytes (17 GB) copied, 110.424 s, 155 MB/s

    dd if=/dev/zero of=/dev/md0 count=512 bs=1024k
    512+0 records in
    512+0 records out
    536870912 bytes (537 MB) copied, 6.84386 s, 78.4 MB/s

I was expecting that the RAID10 array would have a better read performance that that of RAID1, but it isn't the case as per these tests - even when I have performed them several times to avoid outliers. I have also used iozone for benchmarking the same setups, with similar results.

I am also aware that other factors may impact performance, such as the hardware used (perhaps virtual hard drives may not provide the best scenario?) and the filesystem.

That being said, what would be the best setup for a RAID10 array that will undergo more reads than writes? (In addition, I am looking for further reasons to use RAID10 instead of RAID1 other than the fault tolerance provided by the latter).

Any tips and ideas will be more than welcome.

Thanks in advance.
 

8 More Discussions You Might Find Interesting

1. Debian

apt-get problems on Wheezy

I am having some troubles with apt-get. I did an apt-get update and an apt-get upgrade. Some dependencies did not download, and so I had to do `apt-get -f install` to fix that. The thing is I get an error about /var/lib/dpkg/available root@hayek:~# apt-get -f install Reading package lists...... (3 Replies)
Discussion started by: John Tate
3 Replies

2. Shell Programming and Scripting

How do I test the first char of each line in an array

Hi folks, I am self-learning as I can I have a script that has read a file into an array. I can read out each line in the array with the code: for INDEX in {0..$LENGTH} ## $LENGTH was determined at the read in do echo "${data}" done What I need to do is test the first char... (2 Replies)
Discussion started by: Marc G
2 Replies

3. Shell Programming and Scripting

[solved] awk: test assoc. array for content

Hi all, I am looking for a quick/short way in awk to check if an associative array has any content. I know I can split() it to an indexed array and check if the 1st element is set, or cycle through it with something like for( ele in arr ), but I want to avoid that, as I am looking for a shorter... (3 Replies)
Discussion started by: zaxxon
3 Replies

4. Linux

Unload kernel module at boot time (Debian Wheezy 7.2, 3.2.0-4-686-pae kernel)

Hi everyone, I am trying to prevent the ehci_hcd kernel module to load at boot time. Here's what I've tried so far: 1) Add the following line to /etc/modprobe.d/blacklist.conf (as suggested here): 2) Blacklisted the module by adding the following string to 3) Tried to blacklist the module... (0 Replies)
Discussion started by: gacanepa
0 Replies

5. Shell Programming and Scripting

Bash - array loop performance

Hi, another little question... "sn" is an array whose elements can vary from about 55,000 to about 150,000 elements. Each element consists of an integer between 0-255, eg: ${sn} contain the value: 103 . For a decrypt-procedure I need scroll all the elements 4 or 5 times. Here is an example of... (15 Replies)
Discussion started by: math4
15 Replies

6. HP-UX

Test cases for file system mount/umount performance in HP

Hi Folks, Could anyone please assist me with the what could be the scenarios to test the file system mount/umount performance check in HPUX. Thanks in advance, Vaishey (5 Replies)
Discussion started by: Vaishey
5 Replies

7. AIX

Power RAID10 array reconstruct fails ?

Hello, P7 machine PCI Express x8 Planar 3Gb SAS Adapter RAID10 array(2 disks)(not AIX lvm) was configured and working, then one disk failed and IBM support replaced that. Now raid array is degraded, data is not lost. I see new disk model(same as original) serial and etc. What I did trying... (0 Replies)
Discussion started by: vilius
0 Replies

8. Shell Programming and Scripting

If test array element multiplication

Ya, I know, who in this day and age is mirroring rootvg...? But yes, my shop does and I need to script checking for it. I also know I could just inverse the the logic and call the LV mirrored if the LPs and PPs were not equal. But I want to do the math in the if test and also know I could... (5 Replies)
Discussion started by: gtsonoma
5 Replies
LSRAID(8)							Linus md Utilities							 LSRAID(8)

NAME
lsraid - List and query Linux md devices. SYNOPSIS
lsraid -A [-g|-s|-f] {-a <device> | -d <device>} ... lsraid -A -p lsraid -D [-l] {-a <device> | -d <device>} ... lsraid -D -p lsraid -R {-a <device> | -d <device>} ... lsraid -R -p lsraid -h lsraid -V DESCRIPTION
lsraid is a program for querying Linux md devices. It can describe the composite device and the block devices that belong to it. It can also provide a description of the md device suitable for including in the /etc/raidtab configuration file. lsraid also has the ability to operate on online and offline devices. It can read an online device via the kernel interface and provide information about it. When a device is offline, lsraid can look at any of the block devices that are a part of the md device and read the persistent md superblock for information. OPTIONS
-A Selects array-based operation. lsraid will query the given devices and output a short listing of the referenced md devices. -a <device> Adds md device <device> to the list of devices to query. If the device is online, lsraid will discover all of the block devices that belong to it via the kernel interface. Otherwise lsraid will only be able to verify that the device exists. -D Selects disk-based operation. lsraid will query the given devices and then output a description of all the member disks requested. -d <device> Adds block device <device> to the list of devices to query. lsraid will read the md superblock off of <device> and use it to discover the assocated md device and block devices. -f Displays only failed block devices in array-based mode (-A). -g Displays only good block devices in array-based mode (-A). -h, --help Displays a short usage message, then exits. -l Displays a long dump of block device superblocks in disk-based mode (-D). This output is verbatim from the on-disk md superblock, and reflects the state on the specific disk, not the state the md device currently considers authorative. -p Scans all block devices in /proc/partitions for RAID arrays. This can be slow in the presence of network block devices and the like. This option is mutually exclusive with the -a and -d options. -R Selects raidtab operation. lsraid will query all the devices specified and output a description of the referenced md devices in a for- mat suitable for placing in a raidtab(5) file. -s Displays only spare block devices in array-based mode (-A). NOTES
lsraid cannot discover the block devices that make up an offline md device. Providing one of the member devices with the -d option allows lsraid to discover the rest of the information about the offline md device. Disk-based operation only displays the block devices specified on the command line. Specify the md device on the command line to see information about all of the member disks. If the md device is offline, specify both the md device and one of the member disks. lsraid does not do any special handling of md devices composed of other md devices (eg RAID 1+0). The member devices are merely treated as block devices while in the context of the parent device. This is only an issue for raidtab-based operation. The raidtab(5) output will be printed in the order the md devices are queried. This means that a command creating a raidtab(5) for a RAID 1+0 device should list the member devices first on the command line. EXAMPLES
lsraid -A -a /dev/md0 Display a short listing of the md0 device. lsraid -A -d /dev/sda1 Display a short listing of the array that sda1 belongs to. lsraid -A -f -a /dev/md0 Display the failed devices belonging to the md0 device. lsraid -D -l -a /dev/md0 Display a long dump of the on-disk md superblock of every disk in md0. lsraid -D -a /dev/md0 -d /dev/sda1 Display a short discription of the disks in md0 as well as a short description of the disk sda1. sda1 will only be described once if it belongs to md0. lsraid -R -a /dev/md0 -a /dev/md1 -a /dev/md2 Display a description of the arrays in an output format suitable for using in raidtab(5) files. Note that if md0 and md1 are raid0 arrays and md2 is a raid1 created from md0 and md1, this command will output the information in the correct order. lsraid -R -p Scan all block devices in /proc/partitions and display all discovered md devices in a format suitable for using in raidtab(5) files. BUGS
Probably. SEE ALSO
mkraid(8), raidtab(5), raidstart(8), raidstop(8) VERSION
lsraid version 0.7.0 (26 March 2002) HISTORY
Version 0.7.0 Added scanning of active block device partitions. Version 0.4.0 Initial documented version. Functionally complete. AUTHOR
Joel Becker <joel.becker@oracle.com> COPYRIGHT
Copyright (C) Oracle Corporation, Joel Becker. All rights reserved. This program is free software; see the file COPYING in the source distribution for the terms under which it can be redistributed and/or modified. 3rd Berkeley Distribution 2002-03-26 LSRAID(8)
All times are GMT -4. The time now is 09:05 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy