Hi,
I never messed with this options and don't have that bad results.
You have so low write performance withr 16 spindles. You should try to
change your controller, I have better write performance with half of the
spindles. Try areca controller, that's what we use.
Regarding to Infiniband, in the next cluster setup, I will mess up with
this options and share my results.
Thanks,
On 29-07-2011 12:50, Cédric Dufour - Idiap Research Institute wrote:
Hello DRBD users,
I wanted to share my experience with DRBD being used over (Infiniband)
SDP, for I obtained results that may be interesting to some of you.
I first started very frustated by the fact that while SDP
(re-)synching performances were better than TCP's (~5%), general write
operations (e.g. bonnie++ or dd if=/dev/zero ...) were horrible -
~50MB/s (SDP) vs. ~170MB/s (TCP) - the relevant DRBD configuration being:
net {
max-buffers 8192;
max-epoch-size 8192;
sndbuf-size 1024k;
}
After much playing around, I found that two parameters affect write
performances drastically:
1. DRBD's 'sdnbuf-size' parameter
While 'sdnbuf-size' does not affect TCP performances when set above a
value of 1024k, it does so sensibly for SDP connections.
The more you increase the 'sndbuf-size' value, the more SDP
performances increase: write (cf. dd if=/dev/zero ...) jumping from
~50MB/s (sndbuf-size=1024k) to ~120MB/s (sndbuf-size=10240k; the
maximum allowed).
Fortunately, increasing this parameter does not affect small writes
performances (cf. bonnie++ -n ... ), neither when using TCP or SDP.
2. SDP module's (ib_sdp) 'recv_poll' parameter
The 'recv_poll' parameter (default: 700usec) also affects SDP
performances sensibly.
I lowered it (step-by-step) down to 100usec and finally got ~230MB/s
raw write performances (cf. dd if=/dev/zero ...) and bonnie++ write
performances that are 10-15% above TCP performances.
Fortunately again, lowering this parameter does not affect small
writes performances (cf. bonnie++ -n ... ) nor general TCP-via-SDP
performances (iperf being stable at 9.1GBit/s via SDP vs. 3.2GBit/s
via TCP).
Also, CPU usage remains the same.
Finally, nothing amiss shows up in the kernel log.
In the end, I obtained performances that are consistent with what the
backing RAID array allows me to expect.
I hope this may be of interest to some of you.
If someone knowledgeable of DRBD and/or Infiniband modules parameters
were to read this post, I would happily have a feedback about why
those parameters affect DRBD (write) performances (but not (re-)synch's).
Eventually, maybe those results are only valid for the particular
hardware and/or software versions I have been playing with.
Speaking of...
Software version:
- Debian Squeeze 6.0.2 64-bit (kernel 2.6.32)
- Custom-built OFED 1.5.3.2 kernel modules (including patch related
to http://bugs.openfabrics.org/bugzilla/show_bug.cgi?id=2240)
- Custom-built DRBD 8.3.11 kernel module (along with re-packaged DRBD
8.3.11 user-space utilities)
Hardware:
- Motherboard: Supermicro X7DWN+
- CPU: Intel Xeon L5410 (2x) [HT disabled, VT enabled]
- RAM: 32GB DDR2-667 (16x2GB)
- NIC: Mellanox MT25204 [InfiniHost III Lx HCA] (ib_rdma_bw ~1.5GB/s;
ib_rdma_lat ~2usec)
- HD/RAID: ICP 5165BR with 16x1TB HDs (RAID-6 - LVM2 - DRBD)
Cheers
--
Cédric Dufour @ Idiap Research Institute
"No complaint is enough praise"
_______________________________________________
drbd-user mailing list
[email protected]
http://lists.linbit.com/mailman/listinfo/drbd-user
--
Igor Neves<[email protected]>
3GNTW - Tecnologias de Informação, Lda
SIP: [email protected]
MSN: [email protected]
JID: [email protected]
PSTN: 00351 252377120
_______________________________________________
drbd-user mailing list
[email protected]
http://lists.linbit.com/mailman/listinfo/drbd-user