NetBSD-Users archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: RAIDframe write performance below expectations on a RAID-1 of two magnetic disks on NetBSD/amd64 9.1



Hello all,

in the meantime a few days have passed and after some back and forth I have now found a parameterization in which my RAID-1 achieves very satisfactory throughput rates (ca. 90 MB/s and more). I still can't completely exclude that the hardware has a small damage, because I think that I had tested the current configuration also at the beginning, then with worse results. Anyway - for the sake of completeness, here is a short summary of what finally led to success. And of course thanks again for all the hints here in the mailing list - that was a big help.

By the way: I have read in many places - including RAIDCTL(8) - that it is not safe to create a partition or filesystem on the RAID device until initialization with "-i" is 100% complete. If someone has a link to a documentation that goes into this in more detail, I would be very interested. Especially because I would like to understand what exactly is so dangerous about it and under which circumstances - if any - certain operations may be performed already during initialization. I also think that it would be enough for me to know what exactly happens on block level at -i. For the understanding of the source code I lack the experience, and the very good paper under

    https://www.pdl.cmu.edu/RAIDframe/raidframebook.pdf

does not seem to address this.

Kind regards
Matthias


1) Create 4k aligned partitions

```
# gpt destroy wd2
# gpt destroy wd3
# gpt create wd2
# gpt create wd3
# gpt add -l raid1cmp0 -a 4k -t raid wd2
# gpt add -l raid1cmp1 -a 4k -t raid wd3
```

2) Create RAIDframe configuration file

```
# cat <<EOF > /tmp/raid1.conf
START array
1 2 0

START disks
NAME=raid1cmp0
NAME=raid1cmp1

START layout
128 1 1 1

START queue
fifo 100
EOF
```

3) Initialize RAID

```
# raidctl -C /tmp/raid1.conf raid1
# raidctl -I 2020122802 raid1
# raidctl -i raid1
# raidctl -A yes raid1
```

4) After reconstruction / parity-rewrite has finished: create partition on RAID and format filesystem

```
# gpt create raid1
# gpt add -l data -a 4k -t ffs raid1
# newfs -O 2 NAME=data
```



Home | Main Index | Thread Index | Old Index