View Issue Details

IDProjectCategoryView StatusLast Update
0001002bareos-corestorage daemonpublic2023-12-12 11:31
Reportermschmidone Assigned Tobruno-at-bareos  
PrioritynormalSeverityminorReproducibilityalways
Status closedResolutionno change required 
PlatformLinuxOSDebianOS Version9
Product Version17.2.4 
Summary0001002: despooling/writing to disk is inefficient
DescriptionI have several backup to disk targets, most of them are on RAID devices (mdadm or LVM) where the backup speed is acceptable, mostly above 10MB/s. But writing on single disks ends in poor writing speed below 1MB/s, sometimes below 100kB/s.

I've tested with several configurations on several servers, and all of them show the same slow write speed.

The best performance so far was to use XFS as file system formatted with the native block size of 4k. The the write speed is about 1.4MB/s.

This all was tested with the default settings and focussing only on the write speed. And this write speed did not change when the spooling was active.

It seems that the despooling is as inefficient as writing without spooling. I'd expect the dispooling to be almost as fast as a file copy which runs with more than 45MB/s on that types of disk (45MB/s on a 5400rpm disk, more on faster disks).
Writing to an SSD increases the write speed to some 25MB/s which then could be limited by the fd.

I've then tested by increasing the maximum block size, and this improved the write speed to an acceptable throughput of some 10MB/s.

Without having seen the code, it seems to me that the writes to the disk suffer from repositioning, frequent buffer flushes or re-reads. All of them seem to have less impact on RAID or SSD since there is a more powerful layer between the physical storage and the logical interface which buffer non-seqential or small-portion access.

I would expect at least the despooling run at near the device's bandwith.
Steps To Reproducesee above
TagsNo tags attached.

Activities

bruno-at-bareos

bruno-at-bareos

2023-09-12 14:18

manager   ~0005415

Hello, cleaning old reports here. Did you ever tried with recent version like 22.1.0 ?
Beware that by default Bareos is not bloc aligned (63k) which of course impact read/write performance, but the numbers given here are very low.
bruno-at-bareos

bruno-at-bareos

2023-12-12 11:31

manager   ~0005603

no feedback returned

Issue History

Date Modified Username Field Change
2018-08-29 08:31 mschmidone New Issue
2023-09-12 14:18 bruno-at-bareos Assigned To => bruno-at-bareos
2023-09-12 14:18 bruno-at-bareos Status new => feedback
2023-09-12 14:18 bruno-at-bareos Note Added: 0005415
2023-12-12 11:31 bruno-at-bareos Status feedback => closed
2023-12-12 11:31 bruno-at-bareos Resolution open => no change required
2023-12-12 11:31 bruno-at-bareos Note Added: 0005603