ALT Linux Sisyphus discussions
 help / color / mirror / Atom feed
From: "Michael A. Kangin" <mak@rsmu.ru>
To: ALT Linux Sisyphus discussions <sisyphus@lists.altlinux.org>
Subject: [sisyphus] subfs, когда вытаскивать , замеры таймингов.
Date: Tue, 8 Jul 2008 18:19:18 +0400
Message-ID: <200807081819.18333.mak@rsmu.ru> (raw)

Добрый день.

Вот результаты замера скорости записи на флешку и сброса данных из буфера по 
окончании копирования.
Флешка с vfat, система - почти последний сизиф, 2.6.25-std-def.

Самое лучшее, что смог придумать для мониторинга буфера данных, это смотреть в 
поле in_flight файла /sys/block/<dev>/stat 
(http://www.mjmwired.net/kernel/Documentation/block/stat.txt).
Для чего применялся скрипт такого содержания:
-----------------------------
$ cat bin/sync_detect
#! /bin/bash

while [ "$sched_io" != "0" ]; do
        sched_io=`cat /sys/block/sdb/stat | tr -s ' ' | cut -f10 -d ' '`
        sleep 0.1
done
----------------------------
который работает до того, как все данные из буфера не сброшены на флешку.

Производилась запись на флешку файла 75 мб (3.5 для -o sync, чтоб не уснуть) 
посредством dd, который меряет скорость записи, и учитывалось последующее 
время сброса буфера.

Результаты: 
1. Монтирование без дополнительных опций:
------------------------
$ dd if=bigfile of=/media/liveFlash/testfile; time sync_detect
146968+1 записей считано
146968+1 записей написано
 скопировано 75247743 байта (75 MB), 6,8702 c, 11,0 MB/c
0.20user 0.19system 0:07.51elapsed 5%CPU (0avgtext+0avgdata 0maxresident)k
0inputs+0outputs (0major+83226minor)pagefaults 0swaps
----------------------
итак, округленно 7 секунд работает dd, и еще почти 8 секунд сбрасываем данные 
из буфера. Таким образом, можно считать среднюю скорость записи за 5-5,5 
мб/сек.

2. Монтирование с -o sync
-----------------------
$ dd if=smallfile of=/media/liveFlash/testfile; time sync_detect
6806+1 записей считано
6806+1 записей написано
 скопировано 3484848 байт (3,5 MB), 80,6949 c, 43,2 kB/c
0.00user 0.01system 0:00.10elapsed 11%CPU (0avgtext+0avgdata 0maxresident)k
0inputs+0outputs (0major+1579minor)pagefaults 0swaps
------------------------
катастрофическое падение скорости записи, ну и после синкать нечего. Что и 
ожидалось.

3.  Монтирование с -o flush
--------------------------
$ dd if=bigfile of=/media/liveFlash/testfile; time sync_detect
146968+1 записей считано
146968+1 записей написано
 скопировано 75247743 байта (75 MB), 11,7459 c, 6,4 MB/c
0.02user 0.03system 0:00.86elapsed 6%CPU (0avgtext+0avgdata 0maxresident)k
0inputs+0outputs (0major+9731minor)pagefaults 0swaps
--------------------------
11.7 секунд пишет dd, меньше секунды сброс жалких остатков данных. Получается 
даже быстрее первого варианта.


2led: а flush можно прикрутить к -led-tc?

-- 
wbr, Michael A. Kangin

             reply	other threads:[~2008-07-08 14:19 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-07-08 14:19 Michael A. Kangin [this message]
2008-07-08 14:46 ` Led
2008-07-08 15:00   ` Michael A. Kangin
2008-07-08 15:05     ` Led

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=200807081819.18333.mak@rsmu.ru \
    --to=mak@rsmu.ru \
    --cc=sisyphus@lists.altlinux.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link

ALT Linux Sisyphus discussions

This inbox may be cloned and mirrored by anyone:

	git clone --mirror http://lore.altlinux.org/sisyphus/0 sisyphus/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 sisyphus sisyphus/ http://lore.altlinux.org/sisyphus \
		sisyphus@altlinux.ru sisyphus@altlinux.org sisyphus@lists.altlinux.org sisyphus@lists.altlinux.ru sisyphus@lists.altlinux.com sisyphus@linuxteam.iplabs.ru sisyphus@list.linux-os.ru
	public-inbox-index sisyphus

Example config snippet for mirrors.
Newsgroup available over NNTP:
	nntp://lore.altlinux.org/org.altlinux.lists.sisyphus


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git