Hello,

> Gesendet: Mittwoch, 19. Juni 2013 um 21:39 Uhr
> Von: "Nicolás Alvarez" <[email protected]>

> 2013/6/18 Heinz-Bernd Eggenstein <[email protected]>:
> > Hi all,
> >
> > Interesting. I guess it would be useful to run BOINC on a dedicated
> > partition (e.g. ext hard disk/ USB stick)  to isolate BOINC's contribution
> > to the stats.
>
> Or drop iostat and use iotop instead, which gives realtime I/O stats
> per *thread*.

Many thanks for the suggestion. Done it. It is not the boinc client but the
scientific applications that make up for the IO. But that was not so much
disputed. The remaining question is about how much of that IO is due to the
 * file based shared memory
 * status updates
 * checkpointing
 * the respective app's intrinsic purpose

To help the interpretation of iotop, please feel reminded that the
average persecond rate in KB/s for an average 2GB/s is
> (2*1024*1024*1024)/(60*60*1024)
[1] 582.5422

Averaged over 10 seconds, I get typically values between 50 and 150KB/s

Total DISK READ :       0.00 B/s | Total DISK WRITE :      55.31 K/s
Actual DISK READ:       0.00 B/s | Actual DISK WRITE:      68.83 K/s
  TID  PRIO  USER     DISK READ  DISK WRITE  SWAPIN     IO>    COMMAND
 2337 be/4 root        0.00 B/s    0.00 B/s  0.00 %  0.06 % [flush-8:0]
 4095 idle boinc       0.00 B/s    7.56 K/s  0.00 %  0.05 % 
../../projects/boinc.bakerlab.org_rosetta/minirosetta_3~watchdog -run::rng 
mt19937 -constant_seed -jran 3111937
 4068 idle boinc       0.00 B/s    4.77 K/s  0.00 %  0.03 % 
../../projects/boinc.bakerlab.org_rosetta/minirosetta_3~watchdog -run::rng 
mt19937 -constant_seed -jran 3160216
 4675 idle boinc       0.00 B/s    9.15 K/s  0.00 %  0.02 % 
../../projects/boinc.bakerlab.org_rosetta/minirosetta_3~watchdog -run::rng 
mt19937 -constant_seed -jran 3030191
 3589 idle boinc       0.00 B/s    9.95 K/s  0.00 %  0.01 % 
../../projects/boinc.bakerlab.org_rosetta/minirosetta_3~watchdog -run::rng 
mt19937 -constant_seed -jran 3194037
 4401 idle boinc       0.00 B/s    4.38 K/s  0.00 %  0.01 % 
../../projects/boinc.bakerlab.org_rosetta/minirosetta_3~watchdog -run::rng 
mt19937 -constant_seed -jran 3075156
 4132 idle boinc       0.00 B/s    6.76 K/s  0.00 %  0.00 % 
../../projects/boinc.bakerlab.org_rosetta/minirosetta_3~watchdog -run::rng 
mt19937 -constant_seed -jran 3764396
 4133 idle boinc       0.00 B/s  407.43 B/s  0.00 %  0.00 % 
../../projects/boinc.bakerlab.org_rosetta/minirosetta_3~watchdog -run::rng 
mt19937 -constant_seed -jran 3764396
18744 idle boinc       0.00 B/s 1222.28 B/s  0.00 %  0.00 % boinc 
--check_all_logins --redirectio --dir /var/lib/boinc-client
 1022 idle boinc       0.00 B/s    6.37 K/s  0.00 %  0.00 % 
../../projects/boinc.bakerlab.org_rosetta/minirosetta_3~watchdog -run::rng 
mt19937 -constant_seed -jran 3231298
 3869 idle boinc       0.00 B/s    4.77 K/s  0.00 %  0.00 % 
../../projects/boinc.bakerlab.org_rosetta/minirosetta_3~watchdog -run::rng 
mt19937 -constant_seed -jran 3180570
 4096 idle boinc       0.00 B/s    0.00 B/s  0.00 %  0.00 % 
../../projects/boinc.bakerlab.org_rosetta/minirosetta_3~watchdog -run::rng 
mt19937 -constant_seed -jran 3111937

and while run over 10 minutes, iostat gives

$ date; iostat -h -m; sleep 600; date; iostat -h -m

Thu Jun 20 12:04:04 CEST 2013

Device:            tps    MB_read/s    MB_wrtn/s    MB_read    MB_wrtn
sda               3.27         0.02         0.35      29254     668009

Thu Jun 20 12:14:04 CEST 2013

Device:            tps    MB_read/s    MB_wrtn/s    MB_read    MB_wrtn
sda               3.27         0.02         0.36      29254     668359

So, over 10 minutes, we still have a 35 MB/(60s) = 597KB/s and the ever 
reported 2 GB/h.

One of my first actions after reading the initial iostat output (not shown) was 
to have the ext4 formatted root partition to receive the extra option 
"commit=60". The noatime was already set. All data presented here were taken 
after that change.

The file mapping of shared memory seems to be generally accepted as a possible 
IO trap, as seen e.g. here 
http://serverfault.com/questions/361032/high-disk-i-o-when-cache-is-used .

It seems a bit like the scientific applications have some bits here and there 
to tune their IO behaviour. Running Milkyway 0.18 for instance, I see no IO for 
the clients at all while they went from 5% to 27%.

I have locally implemented a patch for (presumed) diskless shared memory. You 
can have a look over here
http://anonscm.debian.org/gitweb/?p=pkg-boinc/boinc.git;a=blob;f=debian/patches/mmap_mem_only.patch;hb=HEAD
Again: it is not applied in Debian's regular BOINC packages but needs to be 
commented in in debian/patches/series.

I'll report if it works and about respective effects on SETI (may required a 
recompilation) next week.

Best,

Steffen

_______________________________________________
boinc_dev mailing list
[email protected]
http://lists.ssl.berkeley.edu/mailman/listinfo/boinc_dev
To unsubscribe, visit the above URL and
(near bottom of page) enter your email address.

Reply via email to