Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Прочее";
Текущий архив: 2013.08.25;
Скачать: [xml.tar.bz2];

Вниз

Ребят, прошу потестировать файловую систему   Найти похожие ветки 

 
DevilDevil ©   (2013-03-19 18:20) [0]

Продолжаю реализовывать оптимальный доступ к диску (для задач потокового чтения/записи)

В одной из предыдущих веток выяснилось, что я предусмотрел не самые оптимальные параметры
В связи с этим я модифицировал тест файловой системы: http://zalil.ru/34362059
Проблема в том, что теперь тестируемых комбинаций значительно больше (суммарно около 3000 итераций)

Напомню, в архиве есть тест на чтение "read_test.exe" и тест на запись "write_test.exe"
Каждый из которых пишет лог: "read_test.log" и "write_test.log" соответственно
В лог пишется операционная система, размер сектора/кластера, ход событий, а так же главное - "ТОП 20"

Да, результаты конечно скачат (это же многозадачная Windows)
Поэтому каждая из комбинаций размер буфера/опций повторяется по 4 раза
Чтобы в итоге посмотреть на ТОП и сделать выводы

По моим предположениям, тесты будут выполняться пару часов (много комбинаций)
Поэтому сейчас в архиве есть файл "RUN_AND_SHUTDOWN.exe"
Закройте перед сном все лишние программы и запустите "RUN_AND_SHUTDOWN.exe"
Она выполнит оба теста, потом выключит компьютер

Логи отсылайте мне на softforyou[ГАВ-ГАВ].inbox.ru
Или выкладывайте здесь
В любом случае интересует ОС, параметры винтчестера, ТОП 20 и конечно направление: read/write

Спасибо за участие!


 
antonn ©   (2013-03-19 18:54) [1]

если запись будет с таким же кол-вом что и чтение, то запись (конкретно у меня) займет около 40-60 минут...


 
Sapersky   (2013-03-19 19:53) [2]

Честно говоря, жалко свой диск - он уже не молод, как бы не крякнулся от непрерывной 2-часовой нагрузки...
Да и не очень понятно, чего ты добиваешься. В предыдущих тестах чтения - там, где небольшая нагрузка на процессор - уже была скорость, близкая к максимально возможной (о чём я писал). Сейчас, как ни оптимизируй, дополнительно ты выжмешь максимум несколько процентов, и их ещё нужно увидеть за погрешностью измерений.

Вообще, дисковые операции - фигня. Программирование игроприставок - вот где настоящий рай для маньяка-оптимизатора!
http://ironpeter.livejournal.com/6471.html
Железо там потенциально очень мощное, но и очень капризное - вроде Пня-4, только ещё хуже. Требуется ювелирное выпиливание лобзиком - всё как ты любишь :)

Можно ещё податься в GPGPU, там схожие по сути проблемы. Даже более реальный вариант - заниматься на профессиональном уровне всё равно сразу не получится, а на любительском для GPGPU не нужно спец. железа и его можно применить для каких-то текущих задач на PC.


 
DevilDevil ©   (2013-03-19 20:18) [3]

> antonn ©   (19.03.13 18:54) [1]

эт да

> Sapersky   (19.03.13 19:53) [2]

всё-таки не всё предусмотрел
на другом форуме мерились письками - там у чувака был тест, который на одних машинах работал в два раза медленней моего, а ну других - в два раза быстрее


 
Sapersky   (2013-03-19 20:47) [4]

Условия точно равные - сброс кэшей, зависимость от CPU? У тебя в последнем тесте чтение в CPU упиралось, насколько помню.
Машина на кот. тормозит - не XP? В CachedBuffers для XP какие-то махинации с NO_BUFFERING...


 
DevilDevil ©   (2013-03-19 21:08) [5]

да всё вроде по честному было


 
antonn ©   (2013-03-19 22:09) [6]

только чтение, запись не осилил..
i7-3770t, 2008R2, adaptec 5405 (wb - on) - raid1 sas 15k (не совсем честно =))

Top 20:
374ms: 256kb, NoBuffering | Overlapped | Sequential
374ms: 256kb, SharedRead | NoBuffering | Overlapped | Sequential
374ms: 256kb, CompactDesires | SharedRead | NoBuffering | Overlapped
374ms: 256kb, NoBuffering | Overlapped | Sequential
374ms: 256kb, CompactDesires | NoBuffering | Overlapped | Sequential
375ms: 256kb, CompactDesires | SharedRead | NoBuffering | Overlapped
375ms: 256kb, CompactDesires | SharedRead | NoBuffering | Overlapped | Sequential
390ms: 256kb, SharedRead | NoBuffering | Overlapped | Sequential
390ms: 256kb, CompactDesires | SharedRead | NoBuffering | Overlapped | Sequential
390ms: 128kb, CompactDesires | SharedRead | Overlapped
390ms: 128kb, NoBuffering | Overlapped
390ms: 128kb, CompactDesires | NoBuffering | Overlapped
390ms: 128kb, SharedRead | NoBuffering | Overlapped
390ms: 128kb, CompactDesires | Sequential
390ms: 128kb, CompactDesires | SharedRead | Sequential
390ms: 128kb, SharedRead | Overlapped | Sequential
390ms: 128kb, CompactDesires | SharedRead | Overlapped | Sequential
390ms: 128kb, NoBuffering | Overlapped | Sequential
390ms: 128kb, CompactDesires | NoBuffering | Overlapped | Sequential
390ms: 256kb, CompactDesires | Default

Worse 20:
3105ms: 4kb, SharedRead | NoBuffering
3057ms: 4kb, CompactDesires | NoBuffering | Sequential
3043ms: 4kb, CompactDesires | SharedRead | NoBuffering | Sequential
2995ms: 4kb, NoBuffering
2979ms: 4kb, CompactDesires | SharedRead | NoBuffering
2964ms: 4kb, CompactDesires | SharedRead | NoBuffering
2948ms: 4kb, CompactDesires | NoBuffering
2933ms: 4kb, CompactDesires | NoBuffering
2933ms: 4kb, SharedRead | NoBuffering | Sequential
2886ms: 4kb, NoBuffering | Sequential
2840ms: 4kb, CompactDesires | SharedRead | NoBuffering | Sequential
2824ms: 4kb, NoBuffering | Sequential
2793ms: 4kb, NoBuffering
2793ms: 4kb, SharedRead | NoBuffering | Sequential
2792ms: 4kb, SharedRead | NoBuffering
2745ms: 4kb, CompactDesires | NoBuffering | Sequential
2215ms: 4kb, CompactDesires | SharedRead | NoBuffering | Overlapped
2215ms: 4kb, SharedRead | NoBuffering | Overlapped
2184ms: 4kb, CompactDesires | NoBuffering
2184ms: 4kb, SharedRead | NoBuffering | Sequential


на записи чаще всего смотрел на 3500-4500ms


 
DevilDevil ©   (2013-03-19 22:33) [7]

> antonn ©   (19.03.13 22:09) [6]

спасиб!
а какая операционка ?

ты бы запустил перед сном "RUN_AND_SHUTDOWN.exe"
комп сам выключится когда всё отработает


 
Rouse_ ©   (2013-03-19 22:35) [8]

Я так понимаю это то о чем и шла речь у нас?

374ms: 256kb, NoBuffering | Overlapped | Sequential
374ms: 256kb, SharedRead | NoBuffering | Overlapped | Sequential
374ms: 256kb, CompactDesires | SharedRead | NoBuffering | Overlapped
374ms: 256kb, NoBuffering | Overlapped | Sequential
374ms: 256kb, CompactDesires | NoBuffering | Overlapped | Sequential
375ms: 256kb, CompactDesires | SharedRead | NoBuffering | Overlapped
375ms: 256kb, CompactDesires | SharedRead | NoBuffering | Overlapped | Sequential
390ms: 256kb, SharedRead | NoBuffering | Overlapped | Sequential
390ms: 256kb, CompactDesires | SharedRead | NoBuffering | Overlapped | Sequential

ЗЫ пока не тестировал - завтра на рабочем вечером запущу без шатдауна (чейто сегодня не коннектится, упал тимвьюв видать)


 
antonn ©   (2013-03-19 22:42) [9]


> а какая операционка ?
>
> ты бы запустил перед сном "RUN_AND_SHUTDOWN.exe"
> комп сам выключится когда всё отработает

win server 2008 r2, и поэтому особо ждать не мог - для работы была нужна :)
в ночь запускать не хочется, все равно там значения больше 3000ms на запись были, уменьшил бы кол-во проходов, в чтении на ~700 остановилось, а запись за 1000 уже зашла, я обрубил ее (по завершению мог бы тоже сделать сброс текущих результатов)


 
DevilDevil ©   (2013-03-19 23:45) [10]

> Rouse_ ©   (19.03.13 22:35) [8]
> Я так понимаю это то о чем и шла речь у нас?


угу
опять 256кб :)

> ЗЫ пока не тестировал - завтра на рабочем вечером запущу
> без шатдауна (чейто сегодня не коннектится, упал тимвьюв
> видать)


отлично!

> запись за 1000 уже зашла, я обрубил ее (по завершению мог
> бы тоже сделать сброс текущих результатов)


мне кажется там до 3х тысяч должно дойти


 
Sapersky   (2013-03-20 03:47) [11]

Прогнал чтение:


Top 20:
904ms: 128kb, CompactDesires | Default
904ms: 128kb, SharedRead | NoBuffering | Overlapped
904ms: 128kb, NoBuffering | Overlapped | Sequential
905ms: 32kb, CompactDesires | SharedRead | NoBuffering | Overlapped | Sequential
905ms: 64kb, NoBuffering | Overlapped
905ms: 32kb, NoBuffering | Overlapped
905ms: 128kb, CompactDesires | SharedRead | Default
905ms: 128kb, Overlapped
905ms: 32kb, SharedRead | NoBuffering | Overlapped
905ms: 256kb, SharedRead | Default
905ms: 4kb, SharedRead | Sequential
905ms: 32kb, NoBuffering | Overlapped
905ms: 32kb, CompactDesires | NoBuffering | Overlapped | Sequential
905ms: 32kb, CompactDesires | SharedRead | NoBuffering | Overlapped | Sequential
905ms: 4kb, Overlapped | Sequential
905ms: 4kb, SharedRead | Overlapped | Sequential
905ms: 64kb, Overlapped
905ms: 32kb, CompactDesires | SharedRead | Overlapped | Sequential
920ms: 4kb, CompactDesires | SharedRead | Overlapped | Sequential
920ms: 16kb, CompactDesires | Overlapped

Worse 20:
3011ms: 4kb, SharedRead | NoBuffering
2949ms: 4kb, CompactDesires | SharedRead | NoBuffering
2948ms: 4kb, NoBuffering
2948ms: 4kb, NoBuffering | Sequential
2902ms: 4kb, SharedRead | NoBuffering
2901ms: 4kb, CompactDesires | NoBuffering
2886ms: 4kb, SharedRead | NoBuffering
2870ms: 4kb, NoBuffering
2870ms: 4kb, SharedRead | NoBuffering | Sequential
2854ms: 4kb, CompactDesires | NoBuffering | Sequential
2839ms: 4kb, CompactDesires | NoBuffering
2839ms: 4kb, CompactDesires | SharedRead | NoBuffering | Sequential
2839ms: 4kb, NoBuffering
2839ms: 4kb, CompactDesires | NoBuffering | Sequential
2808ms: 4kb, CompactDesires | NoBuffering
2808ms: 4kb, CompactDesires | NoBuffering | Sequential
2808ms: 4kb, CompactDesires | NoBuffering
2808ms: 4kb, NoBuffering | Sequential
2808ms: 4kb, SharedRead | NoBuffering | Sequential
2792ms: 4kb, CompactDesires | SharedRead | NoBuffering


В лучших результатах, кажется, нет никакой системы... потому что их гораздо больше, чем 20. У меня 500 из 768 укладываются в интервал 904-1000 мс, т.е. можно считать лучшие. Ну и какой тут вывод можно сделать?
Вывод напрашивается - "всё пофиг, лишь бы не NoBuffering с маленьким буфером".
Но если хочешь бороться до упора за 10%, надо обрабатывать статистику как-то более продвинуто. Определять, какие комбинации флагов полезны, т.е. повторяются в расширенном топе (лучшее + 10%). Какие бесполезны - результат с флагом и без него примерно одинаков. Рисовать графики, может быть.


 
DevilDevil ©   (2013-03-20 09:46) [12]

> Sapersky   (20.03.13 03:47) [11]

важно ещё писать, что за система :)
я тоже пока только reader прогнал. writer заглючил :)

Windows 7, SectorSize: 512, ClasterSize: 4kb

Top 20:
811ms: 16kb, Overlapped
811ms: 64kb, CompactDesires | Overlapped | Sequential
811ms: 128kb, CompactDesires | Default
811ms: 128kb, SharedRead | Default
811ms: 256kb, CompactDesires | NoBuffering | Overlapped | Sequential
811ms: 256kb, CompactDesires | Default
811ms: 32kb, CompactDesires | Default
811ms: 32kb, SharedRead | Default
811ms: 128kb, CompactDesires | SharedRead | Overlapped | Sequential
811ms: 128kb, NoBuffering | Overlapped | Sequential
811ms: 256kb, CompactDesires | Default
811ms: 256kb, CompactDesires | SharedRead | Default
811ms: 256kb, SharedRead | NoBuffering | Overlapped | Sequential
811ms: 4kb, CompactDesires | SharedRead | Sequential
811ms: 4kb, SharedRead | Overlapped | Sequential
811ms: 16kb, CompactDesires | Sequential
811ms: 16kb, SharedRead | Sequential
811ms: 32kb, CompactDesires | SharedRead | Default
811ms: 128kb, Sequential
811ms: 128kb, SharedRead | NoBuffering | Overlapped | Sequential

Worse 20:
4961ms: 256kb, CompactDesires | Overlapped
4244ms: 4kb, NoBuffering
4180ms: 4kb, CompactDesires | SharedRead | NoBuffering | Sequential
4119ms: 4kb, NoBuffering | Sequential
4103ms: 4kb, CompactDesires | SharedRead | NoBuffering | Sequential
4087ms: 4kb, NoBuffering
4087ms: 4kb, NoBuffering | Sequential
4087ms: 4kb, CompactDesires | SharedRead | NoBuffering
4056ms: 4kb, SharedRead | NoBuffering | Overlapped | Sequential
4025ms: 4kb, SharedRead | NoBuffering | Sequential
4009ms: 4kb, SharedRead | NoBuffering | Sequential
3994ms: 4kb, SharedRead | NoBuffering
3978ms: 4kb, CompactDesires | NoBuffering | Sequential
3962ms: 4kb, CompactDesires | SharedRead | NoBuffering | Sequential
3947ms: 4kb, CompactDesires | SharedRead | NoBuffering
3947ms: 4kb, CompactDesires | NoBuffering
3947ms: 4kb, CompactDesires | SharedRead | NoBuffering
3946ms: 4kb, NoBuffering
3932ms: 4kb, NoBuffering | Sequential
3916ms: 4kb, NoBuffering | Sequential


 
DevilDevil ©   (2013-03-20 09:51) [13]

КСТАТИ Я ПЕРЕКОМПИЛИЛ, КАЧАЙТЕ http://zalil.ru/34363890
чтобы выдача была по 50 позиций и ещё одна маленькая вещь


 
brother ©   (2013-03-20 09:59) [14]

опять час ждать? ну, нафиг! делай время тестирования приемлимое!


 
DevilDevil ©   (2013-03-20 10:30) [15]

> brother ©   (20.03.13 09:59) [14]

у меня дома на компе всю ночь работало
к сожалению другого выхода я не вижу


 
DevilDevil ©   (2013-03-20 16:39) [16]

Windows XP, SectorSize: 512, ClasterSize: 0,5kb

read_test.exe
Top 20:
1862ms: 128kb, CompactDesires | NoBuffering | Overlapped
1862ms: 128kb, CompactDesires | NoBuffering | Overlapped | Sequential
1863ms: 128kb, CompactDesires | SharedRead | NoBuffering | Overlapped | Sequential
1863ms: 128kb, CompactDesires | NoBuffering | Overlapped | Sequential
1863ms: 128kb, SharedRead | NoBuffering | Overlapped
1872ms: 128kb, SharedRead | NoBuffering | Overlapped
1873ms: 128kb, CompactDesires | NoBuffering | Overlapped
1873ms: 128kb, CompactDesires | SharedRead | NoBuffering | Overlapped
1873ms: 128kb, SharedRead | NoBuffering | Overlapped | Sequential
1873ms: 128kb, SharedRead | NoBuffering | Overlapped | Sequential
1873ms: 128kb, CompactDesires | SharedRead | NoBuffering | Overlapped | Sequential
1883ms: 128kb, CompactDesires | NoBuffering | Overlapped | Sequential
1883ms: 128kb, CompactDesires | NoBuffering | Overlapped
1883ms: 128kb, CompactDesires | SharedRead | NoBuffering | Overlapped
1892ms: 128kb, CompactDesires | SharedRead | NoBuffering | Overlapped | Sequential
1892ms: 128kb, SharedRead | NoBuffering | Overlapped
1893ms: 128kb, CompactDesires | SharedRead | NoBuffering | Overlapped | Sequential
1893ms: 128kb, SharedRead | NoBuffering | Overlapped | Sequential
1903ms: 128kb, CompactDesires | NoBuffering | Overlapped
1903ms: 128kb, NoBuffering | Overlapped
Worse 20:
7951ms: 4kb, CompactDesires | NoBuffering
7641ms: 4kb, CompactDesires | SharedRead | NoBuffering | Sequential
7210ms: 4kb, CompactDesires | NoBuffering
7151ms: 4kb, NoBuffering
7000ms: 4kb, CompactDesires | SharedRead | NoBuffering
7000ms: 4kb, CompactDesires | NoBuffering | Sequential
6940ms: 4kb, SharedRead | NoBuffering
6850ms: 4kb, SharedRead | NoBuffering
6820ms: 4kb, CompactDesires | NoBuffering | Sequential
6790ms: 4kb, CompactDesires | NoBuffering | Sequential
6790ms: 4kb, CompactDesires | SharedRead | NoBuffering | Sequential
6790ms: 4kb, CompactDesires | SharedRead | NoBuffering
6780ms: 4kb, CompactDesires | SharedRead | NoBuffering
6780ms: 4kb, NoBuffering | Sequential
6770ms: 4kb, CompactDesires | NoBuffering
6769ms: 4kb, CompactDesires | SharedRead | NoBuffering
6760ms: 4kb, SharedRead | NoBuffering | Sequential
6760ms: 4kb, SharedRead | NoBuffering | Sequential
6760ms: 4kb, NoBuffering | Sequential
6760ms: 4kb, NoBuffering | Sequential


write_test.exe
Top 20:
3555ms: 256kb, SharedRead | Overlapped | WriteThrough
3625ms: 256kb, Overlapped | WriteThrough
3625ms: 256kb, CompactDesires | Overlapped | Sequential | WriteThrough
3635ms: 256kb, CompactDesires | SharedRead | Overlapped | Sequential | WriteThrough
3645ms: 256kb, Overlapped | WriteThrough
3645ms: 256kb, Overlapped | Sequential | WriteThrough
3656ms: 256kb, CompactDesires | Overlapped | Sequential | WriteThrough
3656ms: 256kb, CompactDesires | SharedRead | Overlapped | WriteThrough
3665ms: 256kb, Overlapped | WriteThrough
3665ms: 256kb, SharedRead | Overlapped | WriteThrough
3665ms: 256kb, CompactDesires | SharedRead | Overlapped | WriteThrough
3665ms: 256kb, CompactDesires | SharedRead | Overlapped | Sequential | WriteThrough
3665ms: 256kb, CompactDesires | SharedRead | Overlapped | WriteThrough
3676ms: 256kb, SharedRead | Overlapped | WriteThrough
3685ms: 256kb, Overlapped | Sequential | WriteThrough
3685ms: 256kb, CompactDesires | Overlapped | WriteThrough
3695ms: 256kb, SharedRead | Overlapped | WriteThrough
3695ms: 256kb, Overlapped | Sequential | WriteThrough
3695ms: 256kb, CompactDesires | SharedRead | Overlapped | Sequential | WriteThrough
3696ms: 256kb, Overlapped | Sequential | WriteThrough
Worse 20:
43532ms: 4kb, SharedRead | Sequential | WriteThrough
43082ms: 4kb, SharedRead | WriteThrough
42932ms: 4kb, SharedRead | Sequential | WriteThrough
42411ms: 4kb, Sequential | WriteThrough
42361ms: 4kb, SharedRead | WriteThrough
42361ms: 4kb, SharedRead | WriteThrough
42321ms: 4kb, Sequential | WriteThrough
42261ms: 4kb, SharedRead | NoBuffering(finish) | WriteThrough
42041ms: 4kb, SharedRead | NoBuffering(finish) | Overlapped | WriteThrough
42041ms: 4kb, SharedRead | NoBuffering | Overlapped | Sequential | WriteThrough
41990ms: 4kb, CompactDesires | SharedRead | Sequential | WriteThrough
41930ms: 4kb, WriteThrough
41920ms: 4kb, SharedRead | NoBuffering | Overlapped | WriteThrough
41900ms: 4kb, SharedRead | Sequential | WriteThrough
41870ms: 4kb, CompactDesires | Sequential | WriteThrough
41850ms: 4kb, SharedRead | NoBuffering | Overlapped | WriteThrough
41790ms: 4kb, SharedRead | NoBuffering(finish) | Overlapped | WriteThrough
41790ms: 4kb, SharedRead | NoBuffering | WriteThrough
41700ms: 4kb, SharedRead | WriteThrough
41640ms: 4kb, WriteThrough


 
Rouse_ ©   (2013-03-20 17:07) [17]

Хм, плывет:

Top 50:
812ms: 128kb, NoBuffering | Overlapped | Sequential
813ms: 256kb, Default
828ms: 16kb, CompactDesires | Sequential
828ms: 16kb, CompactDesires | Overlapped | Sequential
828ms: 16kb, SharedRead | Overlapped | Sequential
828ms: 16kb, CompactDesires | Default
828ms: 16kb, CompactDesires | SharedRead | Overlapped | Sequential
828ms: 64kb, SharedRead | Overlapped
828ms: 64kb, NoBuffering | Overlapped | Sequential
828ms: 128kb, SharedRead | Default
828ms: 128kb, CompactDesires | Overlapped
829ms: 256kb, SharedRead | NoBuffering | Overlapped
829ms: 256kb, Overlapped | Sequential
829ms: 16kb, CompactDesires | SharedRead | Overlapped | Sequential
843ms: 64kb, CompactDesires | SharedRead | Overlapped | Sequential
843ms: 64kb, NoBuffering | Overlapped | Sequential
843ms: 128kb, Default
843ms: 128kb, SharedRead | Default
843ms: 16kb, Default
843ms: 16kb, CompactDesires | SharedRead | Default
843ms: 16kb, SharedRead | Overlapped
843ms: 16kb, SharedRead | Sequential
843ms: 16kb, Overlapped | Sequential
843ms: 64kb, NoBuffering | Overlapped
843ms: 16kb, CompactDesires | Overlapped | Sequential
843ms: 64kb, CompactDesires | Overlapped
843ms: 64kb, CompactDesires | SharedRead | Sequential
843ms: 128kb, Sequential
843ms: 128kb, CompactDesires | Sequential
844ms: 64kb, CompactDesires | NoBuffering | Overlapped | Sequential
844ms: 64kb, CompactDesires | SharedRead | NoBuffering | Overlapped | Sequential
844ms: 16kb, SharedRead | Default
844ms: 32kb, Default
844ms: 32kb, CompactDesires | Overlapped | Sequential
844ms: 64kb, SharedRead | Default
844ms: 64kb, CompactDesires | Overlapped
844ms: 256kb, SharedRead | NoBuffering | Overlapped | Sequential
844ms: 16kb, CompactDesires | SharedRead | Default
844ms: 16kb, Overlapped | Sequential
844ms: 16kb, CompactDesires | Overlapped | Sequential
844ms: 128kb, CompactDesires | Default
844ms: 64kb, Overlapped
844ms: 64kb, CompactDesires | Overlapped
844ms: 32kb, Overlapped
844ms: 64kb, CompactDesires | SharedRead | Default
844ms: 64kb, CompactDesires | Sequential
844ms: 64kb, Overlapped | Sequential
844ms: 64kb, CompactDesires | Overlapped | Sequential
844ms: 128kb, CompactDesires | SharedRead | Default
844ms: 128kb, Default

Worse 50:
4406ms: 4kb, SharedRead | NoBuffering
3875ms: 4kb, NoBuffering | Sequential
3296ms: 4kb, CompactDesires | NoBuffering | Sequential
3219ms: 4kb, CompactDesires | SharedRead | NoBuffering
3203ms: 4kb, CompactDesires | SharedRead | NoBuffering | Sequential
3203ms: 4kb, NoBuffering
3094ms: 4kb, CompactDesires | NoBuffering | Sequential
2891ms: 4kb, CompactDesires | NoBuffering | Sequential
2891ms: 4kb, CompactDesires | SharedRead | NoBuffering | Sequential
2890ms: 4kb, CompactDesires | NoBuffering
2828ms: 4kb, NoBuffering
2812ms: 4kb, NoBuffering
2812ms: 4kb, CompactDesires | SharedRead | NoBuffering | Sequential
2797ms: 4kb, NoBuffering
2782ms: 4kb, CompactDesires | SharedRead | NoBuffering | Sequential
2782ms: 4kb, NoBuffering | Sequential
2781ms: 4kb, CompactDesires | SharedRead | NoBuffering
2766ms: 4kb, SharedRead | NoBuffering | Sequential
2750ms: 4kb, SharedRead | NoBuffering | Overlapped | Sequential
2750ms: 4kb, SharedRead | NoBuffering | Sequential
2735ms: 4kb, NoBuffering | Sequential
2735ms: 4kb, CompactDesires | NoBuffering | Sequential
2718ms: 4kb, CompactDesires | SharedRead | NoBuffering
2687ms: 4kb, SharedRead | NoBuffering
2672ms: 4kb, SharedRead | NoBuffering | Sequential
2672ms: 4kb, CompactDesires | NoBuffering
2656ms: 4kb, SharedRead | NoBuffering | Sequential
2656ms: 4kb, NoBuffering | Sequential
2656ms: 4kb, SharedRead | NoBuffering
2641ms: 4kb, SharedRead | NoBuffering
2609ms: 4kb, CompactDesires | SharedRead | NoBuffering
2593ms: 4kb, CompactDesires | NoBuffering
2578ms: 32kb, NoBuffering
2578ms: 4kb, CompactDesires | NoBuffering
2547ms: 4kb, CompactDesires | SharedRead | NoBuffering | Overlapped | Sequential
2484ms: 4kb, CompactDesires | SharedRead | NoBuffering | Overlapped | Sequential
2484ms: 4kb, NoBuffering | Overlapped
2469ms: 4kb, CompactDesires | SharedRead | NoBuffering | Overlapped
2437ms: 4kb, NoBuffering | Overlapped
2422ms: 4kb, SharedRead | NoBuffering | Overlapped
2406ms: 4kb, CompactDesires | SharedRead | NoBuffering | Overlapped
2406ms: 4kb, CompactDesires | SharedRead | NoBuffering | Overlapped | Sequential
2390ms: 4kb, CompactDesires | NoBuffering | Overlapped
2375ms: 4kb, CompactDesires | NoBuffering | Overlapped
2360ms: 4kb, NoBuffering | Overlapped
2359ms: 4kb, NoBuffering | Overlapped | Sequential
2344ms: 4kb, SharedRead | NoBuffering | Overlapped
2343ms: 4kb, CompactDesires | NoBuffering | Overlapped
2328ms: 4kb, CompactDesires | NoBuffering | Overlapped | Sequential
2313ms: 4kb, NoBuffering | Overlapped | Sequential


смотри параметры по двум первым топам:

157) 128kb, NoBuffering | Overlapped | Sequential... 922ms
349) 128kb, NoBuffering | Overlapped | Sequential... 812ms
541) 128kb, NoBuffering | Overlapped | Sequential... 906ms
733) 128kb, NoBuffering | Overlapped | Sequential... 875ms
общее время за 4 попытки 3515ms ~ 878,75 за каждую

161) 256kb, Default... 891ms
353) 256kb, Default... 813ms
545) 256kb, Default... 969ms <<< оть тут просадка не понятная
737) 256kb, Default... 890ms
общее время за 4 попытки 3563ms ~ 890,75 за каждую
если не просадка на третьей итерации 256 Default лидировал бы.


 
DevilDevil ©   (2013-03-20 17:10) [18]

Windows XP, SectorSize: 512, ClasterSize: 4kb
read_test.exe
Top 50:
828ms: 256kb, CompactDesires | NoBuffering | Overlapped
828ms: 128kb, CompactDesires | SharedRead | NoBuffering | Overlapped
828ms: 128kb, CompactDesires | NoBuffering | Overlapped | Sequential
828ms: 256kb, CompactDesires | NoBuffering | Overlapped | Sequential
828ms: 256kb, SharedRead | NoBuffering | Overlapped | Sequential
828ms: 256kb, CompactDesires | SharedRead | NoBuffering | Overlapped | Sequential
828ms: 4kb, SharedRead | Sequential
828ms: 64kb, CompactDesires | SharedRead | NoBuffering | Overlapped
828ms: 128kb, CompactDesires | NoBuffering | Overlapped
828ms: 128kb, NoBuffering | Overlapped | Sequential
828ms: 128kb, SharedRead | NoBuffering | Overlapped | Sequential
828ms: 256kb, NoBuffering | Overlapped | Sequential
828ms: 256kb, SharedRead | NoBuffering | Overlapped | Sequential
828ms: 256kb, CompactDesires | SharedRead | NoBuffering | Overlapped | Sequential
829ms: 256kb, CompactDesires | NoBuffering | Overlapped | Sequential
829ms: 128kb, SharedRead | NoBuffering | Overlapped | Sequential
829ms: 128kb, CompactDesires | NoBuffering | Overlapped | Sequential
843ms: 64kb, NoBuffering | Overlapped
843ms: 64kb, CompactDesires | SharedRead | NoBuffering | Overlapped
843ms: 256kb, CompactDesires | Default
843ms: 128kb, CompactDesires | SharedRead | NoBuffering | Overlapped
843ms: 128kb, Overlapped | Sequential
843ms: 128kb, SharedRead | Overlapped | Sequential
843ms: 256kb, NoBuffering | Overlapped | Sequential
843ms: 16kb, CompactDesires | SharedRead | Overlapped
843ms: 64kb, SharedRead | NoBuffering | Overlapped
843ms: 4kb, CompactDesires | SharedRead | Sequential
843ms: 4kb, CompactDesires | Sequential
843ms: 16kb, CompactDesires | SharedRead | Overlapped | Sequential
843ms: 16kb, Overlapped
844ms: 128kb, Overlapped | Sequential
844ms: 128kb, CompactDesires | Overlapped | Sequential
844ms: 128kb, NoBuffering | Overlapped | Sequential
844ms: 64kb, SharedRead | NoBuffering | Overlapped
844ms: 128kb, NoBuffering | Overlapped | Sequential
844ms: 128kb, CompactDesires | SharedRead | NoBuffering | Overlapped | Sequential
844ms: 128kb, SharedRead | NoBuffering | Overlapped | Sequential
844ms: 256kb, SharedRead | Default
844ms: 256kb, CompactDesires | SharedRead | Default
844ms: 256kb, SharedRead | Default
844ms: 256kb, Overlapped
844ms: 256kb, CompactDesires | Overlapped
844ms: 256kb, SharedRead | Overlapped
844ms: 4kb, SharedRead | Default
844ms: 4kb, Overlapped
844ms: 4kb, CompactDesires | Overlapped
844ms: 4kb, CompactDesires | SharedRead | Overlapped
844ms: 4kb, Sequential
844ms: 256kb, CompactDesires | SharedRead | Overlapped
844ms: 64kb, NoBuffering | Overlapped
Worse 50:
15031ms: 16kb, CompactDesires | SharedRead | NoBuffering | Overlapped
5781ms: 4kb, SharedRead | NoBuffering | Overlapped | Sequential
4594ms: 4kb, NoBuffering | Sequential
3813ms: 4kb, CompactDesires | SharedRead | NoBuffering | Overlapped | Sequential
3593ms: 4kb, SharedRead | NoBuffering | Sequential
3562ms: 4kb, SharedRead | NoBuffering
3531ms: 4kb, CompactDesires | NoBuffering
3313ms: 16kb, NoBuffering | Sequential
...

write_test.exe
Top 50:
2297ms: 128kb, Overlapped | Sequential | WriteThrough
2297ms: 256kb, SharedRead | Overlapped | WriteThrough
2313ms: 256kb, CompactDesires | Overlapped | WriteThrough
2313ms: 256kb, CompactDesires | Overlapped | Sequential | WriteThrough
2328ms: 128kb, CompactDesires | SharedRead | Overlapped | Sequential | WriteThrough
2328ms: 128kb, SharedRead | Overlapped | Sequential | WriteThrough
2344ms: 128kb, CompactDesires | SharedRead | Overlapped | WriteThrough
2344ms: 256kb, SharedRead | Overlapped | WriteThrough
2359ms: 128kb, CompactDesires | Overlapped | Sequential | WriteThrough
2359ms: 256kb, Default
2359ms: 128kb, SharedRead | Overlapped | WriteThrough
2360ms: 128kb, CompactDesires | SharedRead | Overlapped | WriteThrough
2375ms: 256kb, CompactDesires | Sequential
2375ms: 256kb, Default
2375ms: 256kb, SharedRead | Default
2390ms: 128kb, Default
2390ms: 256kb, CompactDesires | Default
2391ms: 128kb, Default
2391ms: 256kb, CompactDesires | Default
2391ms: 128kb, CompactDesires | Sequential
2391ms: 256kb, Sequential
2391ms: 256kb, CompactDesires | SharedRead | Default
2391ms: 256kb, CompactDesires | SharedRead | Sequential
2391ms: 128kb, SharedRead | Default
2391ms: 128kb, CompactDesires | SharedRead | Default
2406ms: 256kb, SharedRead | Sequential
2406ms: 256kb, CompactDesires | SharedRead | Overlapped | WriteThrough
2406ms: 128kb, Sequential
2407ms: 128kb, Overlapped | Sequential | WriteThrough
2407ms: 256kb, Sequential
2421ms: 256kb, SharedRead | Sequential
2422ms: 128kb, CompactDesires | Default
2422ms: 128kb, SharedRead | Sequential
2422ms: 256kb, SharedRead | Default
2422ms: 256kb, CompactDesires | SharedRead | Overlapped | Sequential | WriteThrough
2437ms: 32kb, CompactDesires | SharedRead | Sequential
2437ms: 64kb, CompactDesires | SharedRead | Overlapped | Sequential | WriteThrough
2438ms: 64kb, CompactDesires | Overlapped | WriteThrough
2438ms: 256kb, CompactDesires | Sequential
2453ms: 64kb, SharedRead | Sequential
2453ms: 256kb, CompactDesires | SharedRead | Sequential
2453ms: 256kb, CompactDesires | SharedRead | Default
2453ms: 64kb, CompactDesires | Sequential
2453ms: 128kb, SharedRead | Default
2469ms: 64kb, Sequential
2469ms: 128kb, CompactDesires | SharedRead | Sequential
2484ms: 64kb, CompactDesires | SharedRead | Overlapped | WriteThrough
2485ms: 64kb, Overlapped | WriteThrough
2485ms: 256kb, Overlapped | Sequential | WriteThrough
2485ms: 16kb, CompactDesires | SharedRead | Default
Worse 50:
22594ms: 4kb, SharedRead | Sequential | WriteThrough
22344ms: 4kb, SharedRead | NoBuffering | Overlapped | Sequential | WriteThrough
21844ms: 4kb, SharedRead | NoBuffering | Sequential | WriteThrough
21656ms: 4kb, SharedRead | NoBuffering(finish) | Overlapped | Sequential | WriteThrough
21453ms: 4kb, SharedRead | NoBuffering | Overlapped | WriteThrough
21406ms: 4kb, Sequential | WriteThrough
21297ms: 4kb, NoBuffering | WriteThrough
21203ms: 4kb, SharedRead | NoBuffering | WriteThrough
21047ms: 4kb, Sequential | WriteThrough
20985ms: 4kb, SharedRead | WriteThrough
20938ms: 4kb, CompactDesires | NoBuffering(finish) | WriteThrough
20875ms: 4kb, CompactDesires | SharedRead | Sequential | WriteThrough
20859ms: 4kb, SharedRead | NoBuffering | Sequential | WriteThrough
20765ms: 4kb, SharedRead | WriteThrough
20750ms: 4kb, SharedRead | NoBuffering(finish) | Overlapped | WriteThrough
20641ms: 4kb, SharedRead | NoBuffering(finish) | Sequential | WriteThrough
20610ms: 4kb, WriteThrough
20578ms: 4kb, SharedRead | NoBuffering(finish) | WriteThrough
20563ms: 4kb, NoBuffering | Overlapped | Sequential | WriteThrough
...


 
DevilDevil ©   (2013-03-20 17:13) [19]

> Rouse_ ©   (20.03.13 17:07) [17]

выводите пожалуйста информацию об ОС и диске

> Хм, плывет:

ну так это же операционная система Windows с многопоточностью )
поэтому и сделано сразу 4 раза
чтобы лучше видеть общую картину

> если не просадка на третьей итерации 256 Default лидировал бы.

а здесь вообще не средний показатель берётся
в "рейтинге" участвуют все позиции


 
DevilDevil ©   (2013-03-20 18:03) [20]

[b]качать здесь[/b]: http://zalil.ru/34365391
должно работать быстрее раз в 6


 
Inovet ©   (2013-03-20 19:23) [21]

> [17] Rouse_ ©   (20.03.13 17:07)
> Хм, плывет:

Да это вообще неправильная постановка эксперимента. Я уже в прошлых ветках размышлял на этут тему, но автор сказал, что ему пофиг, что я там говорю.


 
DevilDevil ©   (2013-03-20 20:10) [22]

почему пофиг ?

очевидно размер буфера и опции влияют на производительность взаимодействия с диском
каким ещё образом выявить закономерности ?

ради бога - готов выслушать


 
Inovet ©   (2013-03-20 20:43) [23]

> [22] DevilDevil ©   (20.03.13 20:10)

Надо постараться свести к минимуму влияющие на измерение, но не относящиеся у цели эксперимента факторы. Как то, влияние других процессов и самой ОС, заполненость диска. Второе можно легко сделать с первым сложнее, и полностью исключить вряд ли можно, но вот снизить до приемлемой погрешности, наверное, возможно, скажем в безопасном режиме или лучше в спец конфигурации. Но кто же массово станет это делать.

Во всяуом случае нужна методика оценки погрешности влияния потусторонних сил. Хотябы вывести отклонение из имеющейся статистики для конкретного компьютера и винчестера. А вот потом уже сделать выводы о влиянии размера буфера и флагов. А то как окажется, что они утонут в отклонении.


 
brother ©   (2013-03-20 20:48) [24]

кстати, дефрагментированность ФС учитывается? иначе согласен с [23]!


 
Rouse_ ©   (2013-03-20 20:49) [25]

Кстати верное замечание - попробуй SetThreadPriority + THREAD_PRIORITY_TIME_CRITICAL
Далее нужно не забывать что хардешники бывают разные, не зря для их тестирования пишут программы наподобие этой: http://sourceforge.jp/projects/crystaldiskmark/downloads/46482/CrystalDiskMark3_0_2dSrc.zip/

Попробуй сначала замерить реальную производительность диска, таким образом получив некий коэффициэнт, который можно уже будет применить к выдаваемым тобой результатам.


 
Rouse_ ©   (2013-03-20 20:49) [26]


> brother ©   (20.03.13 20:48) [24]
> кстати, дефрагментированность ФС учитывается? иначе согласен
> с [23]!

Если ипользуется семерка, этот момент можно не учитывать, она в фоне дефраг делает и поэтому практически 90 процентов времени диск в нормальном состоянии.


 
Дмитрий С ©   (2013-03-20 20:52) [27]

Я надеюсь она SSD не дефрагментирует.


 
Inovet ©   (2013-03-20 20:53) [28]

> [26] Rouse_ ©   (20.03.13 20:49)
> она в фоне дефраг делает

Вот как раз хотел сказать и об этом. Мы же не знаем как фаза Луны влияет на измерения, может ОС в во время измерений захотела вдруг дефрагментацию устрить.


 
Rouse_ ©   (2013-03-20 20:54) [29]


>
> Дмитрий С ©   (20.03.13 20:52) [27]
> Я надеюсь она SSD не дефрагментирует.

Зависит от настроек: http://support.microsoft.com/kb/2727880


 
brother ©   (2013-03-20 21:01) [30]

ну, например, у автора XP ... это я так...
зы. для начала тестирования и сбора информации нужны лабораторные условия, похожие у всех пациентов, либо, некий коэффициент, уравновешивающий пациентов.


 
brother ©   (2013-03-20 21:03) [31]

имхо, замерять скорости работы винта под виндой и при этом требовать наиболее точных результатов - в корне не верно!
зы. опять же... есть своп... задумался...


 
Inovet ©   (2013-03-20 21:06) [32]

> [30] brother ©   (20.03.13 21:01)
> нужны лабораторные условия, похожие у всех пациентов

Это называется повторяемость. Сейчас её нет. Даже в процессе одного теста разброс вон какой. А результат должен повторяться в пределах известной погрешности, о вычислении которой автор вообще не подумал. Раз не повторяется, значит методологическая ошибка сидит в самой постановке.


 
Rouse_ ©   (2013-03-20 21:06) [33]


> brother ©   (20.03.13 21:01) [30]
> ну, например, у автора XP ... это я так...
> зы. для начала тестирования и сбора информации нужны лабораторные
> условия, похожие у всех пациентов, либо, некий коэффициент,
>  уравновешивающий пациентов.

Ну так я об чем и говорю.
Впрочем опять же повторюсь на моих тестах (расчет CRC32 папки с файлами) 256 Кб дал наиболее производительный результат. Использовался обычный TFileStream


 
Inovet ©   (2013-03-20 21:10) [34]

> [31] brother ©   (20.03.13 21:03)
> имхо, замерять скорости работы винта под виндой и при этом
> требовать наиболее точных результатов - в корне не верно!

Вот и я в прошлой ветке шутил, что надо без Винды мерять. Кстати, может, теоретически и возможно кусок ядра выдрать и на нём запускать этот тест.


 
brother ©   (2013-03-20 21:15) [35]

> кусок ядра

да даже дело не в этом, а в занятости самого винта! нужно наиболее гарантировать что головки работают над нашей областью тестовых данных и не занимаются другими делами)


 
brother ©   (2013-03-20 21:16) [36]

> 256 Кб дал наиболее производительный результат

мы говорим о среднем значении для всех пациентов (с небольшими отклонениями) и не выжимаем последние капли производительности!


 
brother ©   (2013-03-20 21:18) [37]

автору: не обижайся, но мое имхо - ты страдаешь фигней, ибо ... ну понятно?


 
brother ©   (2013-03-20 21:19) [38]

либо гарантируй реализацию условий в [30]


 
Inovet ©   (2013-03-20 21:20) [39]

Ещё вот что интересно. Будет ли Виндоус писать физически в одно и то же место диска НТФС новый экземпляр файла на н+1 прогоне, после удаления предыдущего файла н-ного прогона, при условии, естественно, что туда никто не написал уже. Это должно быть документировано по идее.


 
brother ©   (2013-03-20 21:23) [40]

> Будет ли Виндоус писать физически в одно и то же место диска
> НТФС

вопрос не к винде, а именно к ФС! и далеко не факт, что будет.


 
brother ©   (2013-03-20 21:24) [41]

либо тестировать без ФАТ, резервируюя для себя некую физическую область винта. но это отдельная песня


 
Inovet ©   (2013-03-20 21:46) [42]

> [41] brother ©   (20.03.13 21:24)
> либо тестировать без ФАТ

ДОС вот на диске ФАТ смотрела и тупо писала последовательно в свободные кластеры, про ФАТ в Виндоус фиг знает. Про НТФС даже предполагать не могу, ибо пальцем в небо, тут читать документацию на ФС надо.


 
DevilDevil ©   (2013-03-21 10:38) [43]

Ого вы понаписали !
Спасибо за внимание к вопросу

В целом - я и так уже мучаюсь с тестами не первую неделю
Если действительно есть желание докапываться до истины - ради бога меняйте исходники (или пишите свои) - они в всегда в архиве


 
DevilDevil ©   (2013-03-21 10:40) [44]

Windows 7, SectorSize: 512, ClasterSize: 4kb

read_test.exe
Top 19:
811ms: 128kb, Default
811ms: 128kb, NoBuffering | Overlapped
811ms: 256kb, Default
811ms: 256kb, Overlapped
811ms: 256kb, NoBuffering | Overlapped
826ms: 32kb, Overlapped | Sequential
827ms: 128kb, Overlapped | Sequential
827ms: 256kb, NoBuffering | Overlapped
827ms: 256kb, Overlapped | Sequential
827ms: 256kb, NoBuffering | Overlapped | Sequential
827ms: 16kb, Overlapped
827ms: 16kb, Overlapped | Sequential
827ms: 32kb, Sequential
827ms: 64kb, Overlapped | Sequential
827ms: 64kb, Default
827ms: 128kb, Overlapped
827ms: 128kb, NoBuffering | Overlapped
827ms: 128kb, Sequential
827ms: 128kb, Overlapped | Sequential

write_test.exe
Top 38:
1514ms: 256kb, Overlapped | Sequential | WriteThrough
1545ms: 256kb, Overlapped | Sequential | WriteThrough
1576ms: 128kb, Overlapped | Sequential | WriteThrough
1591ms: 256kb, Overlapped | Sequential | WriteThrough
1606ms: 128kb, Overlapped | Sequential | WriteThrough
1638ms: 128kb, Overlapped | WriteThrough
1638ms: 128kb, Overlapped | WriteThrough
1669ms: 128kb, Overlapped | Sequential | WriteThrough
1701ms: 256kb, Overlapped | WriteThrough
1701ms: 128kb, Overlapped | Sequential | WriteThrough
1716ms: 64kb, Overlapped | Sequential | WriteThrough
1716ms: 64kb, Overlapped | Sequential | WriteThrough
1747ms: 128kb, Overlapped | WriteThrough
1747ms: 256kb, Overlapped | WriteThrough
1794ms: 256kb, Overlapped | Sequential | WriteThrough
1841ms: 64kb, Overlapped | WriteThrough
1841ms: 64kb, Overlapped | Sequential | WriteThrough
1887ms: 64kb, Overlapped | WriteThrough
2013ms: 256kb, NoBuffering
2028ms: 32kb, Overlapped | Sequential | WriteThrough
2044ms: 256kb, NoBuffering | Overlapped
2044ms: 64kb, Overlapped | WriteThrough
2059ms: 64kb, Overlapped | Sequential | WriteThrough
2060ms: 256kb, NoBuffering | Sequential
2075ms: 256kb, Overlapped | WriteThrough
2090ms: 256kb, NoBuffering | Overlapped
2106ms: 128kb, Overlapped | WriteThrough
2106ms: 256kb, NoBuffering | Overlapped | Sequential
2137ms: 256kb, NoBuffering | Overlapped
2137ms: 32kb, Overlapped | WriteThrough
2137ms: 256kb, NoBuffering | Overlapped | Sequential
2138ms: 256kb, NoBuffering | Overlapped | Sequential
2153ms: 256kb, NoBuffering
2153ms: 128kb, NoBuffering | Overlapped
2153ms: 128kb, NoBuffering | Overlapped | Sequential
2153ms: 256kb, NoBuffering | Sequential
2153ms: 128kb, NoBuffering | Sequential
2169ms: 128kb, NoBuffering | Sequential


 
DevilDevil ©   (2013-03-21 10:42) [45]

Windows XP, SectorSize: 512, ClasterSize: 4kb

read_test.exe

Top 19:
843ms: 64kb, NoBuffering | Overlapped
843ms: 128kb, NoBuffering | Overlapped | Sequential
843ms: 64kb, NoBuffering | Overlapped
844ms: 32kb, Overlapped
844ms: 64kb, Default
844ms: 4kb, Overlapped
844ms: 128kb, Default
844ms: 4kb, Sequential
844ms: 256kb, Overlapped
844ms: 4kb, Default
844ms: 16kb, Overlapped | Sequential
844ms: 16kb, Overlapped | Sequential
844ms: 16kb, Sequential
844ms: 16kb, Overlapped | Sequential
844ms: 128kb, Overlapped
844ms: 16kb, Sequential
844ms: 16kb, Overlapped | Sequential
844ms: 128kb, Overlapped
859ms: 128kb, NoBuffering | Overlapped | Sequential

write_test.exe
Top 38:
2281ms: 256kb, Overlapped | Sequential | WriteThrough
2312ms: 256kb, Overlapped | Sequential | WriteThrough
2344ms: 128kb, Overlapped | Sequential | WriteThrough
2359ms: 256kb, Default
2360ms: 128kb, Overlapped | Sequential | WriteThrough
2360ms: 256kb, Sequential
2375ms: 128kb, Sequential
2375ms: 128kb, Default
2390ms: 128kb, Overlapped | WriteThrough
2390ms: 128kb, Default
2390ms: 256kb, Overlapped | WriteThrough
2390ms: 128kb, Overlapped | WriteThrough
2390ms: 64kb, Sequential
2391ms: 128kb, Default
2391ms: 256kb, Sequential
2391ms: 128kb, Overlapped | Sequential | WriteThrough
2406ms: 128kb, Overlapped | WriteThrough
2406ms: 128kb, Default
2406ms: 256kb, Default
2406ms: 256kb, Sequential
2406ms: 256kb, Default
2422ms: 128kb, Sequential
2422ms: 256kb, Sequential
2437ms: 128kb, Sequential
2438ms: 256kb, Default
2453ms: 256kb, Overlapped | WriteThrough
2453ms: 64kb, Overlapped | WriteThrough
2469ms: 128kb, Sequential
2484ms: 64kb, Overlapped | WriteThrough
2484ms: 64kb, Default
2485ms: 64kb, Sequential
2500ms: 64kb, Sequential
2515ms: 64kb, Default
2531ms: 64kb, Sequential
2532ms: 64kb, Overlapped | Sequential | WriteThrough
2578ms: 256kb, Overlapped | WriteThrough
2578ms: 64kb, Default
2593ms: 128kb, Overlapped | Sequential | WriteThrough


 
DevilDevil ©   (2013-03-21 10:43) [46]

Windows XP, SectorSize: 512, ClasterSize: 4kb

read_test.exe
Top 19:
1406ms: 16kb, Overlapped
1406ms: 4kb, Overlapped
1406ms: 32kb, Overlapped | Sequential
1406ms: 64kb, Sequential
1406ms: 64kb, NoBuffering | Overlapped | Sequential
1406ms: 128kb, Sequential
1406ms: 256kb, Default
1406ms: 256kb, Sequential
1406ms: 4kb, Overlapped
1406ms: 16kb, Default
1406ms: 32kb, Sequential
1406ms: 64kb, Sequential
1406ms: 128kb, Overlapped
1406ms: 128kb, Overlapped | Sequential
1406ms: 128kb, NoBuffering | Overlapped | Sequential
1406ms: 4kb, Overlapped
1406ms: 4kb, Sequential
1406ms: 16kb, Default
1406ms: 16kb, Overlapped

write_test.exe
Top 38:
4015ms: 256kb, Overlapped | WriteThrough
4016ms: 256kb, Overlapped | Sequential | WriteThrough
4016ms: 256kb, Overlapped | WriteThrough
4046ms: 256kb, Overlapped | Sequential | WriteThrough
4047ms: 256kb, Overlapped | WriteThrough
4047ms: 256kb, Overlapped | WriteThrough
4187ms: 256kb, Overlapped | Sequential | WriteThrough
4203ms: 128kb, Overlapped | WriteThrough
4250ms: 128kb, Overlapped | WriteThrough
4266ms: 256kb, Sequential
4281ms: 256kb, Sequential
4282ms: 256kb, Sequential
4297ms: 256kb, Sequential
4297ms: 128kb, Overlapped | Sequential | WriteThrough
4297ms: 256kb, Default
4328ms: 128kb, Sequential
4359ms: 256kb, Default
4360ms: 128kb, Overlapped | Sequential | WriteThrough
4390ms: 128kb, Overlapped | WriteThrough
4390ms: 128kb, Sequential
4422ms: 64kb, Default
4438ms: 256kb, Default
4438ms: 128kb, Sequential
4438ms: 128kb, Default
4438ms: 128kb, Overlapped | Sequential | WriteThrough
4453ms: 64kb, Sequential
4454ms: 128kb, Default
4468ms: 64kb, Sequential
4469ms: 256kb, Default
4500ms: 64kb, Sequential
4515ms: 64kb, Default
4547ms: 256kb, NoBuffering | Overlapped | Sequential
4547ms: 64kb, Sequential
4562ms: 256kb, NoBuffering
4562ms: 256kb, NoBuffering
4562ms: 256kb, NoBuffering | Sequential
4562ms: 256kb, NoBuffering | Overlapped | Sequential
4562ms: 256kb, NoBuffering | Sequential


 
DevilDevil ©   (2013-03-21 10:45) [47]

Windows XP, SectorSize: 512, ClasterSize: 0,5kb

read_test.exe
Top 19:
2414ms: 64kb, Sequential
2423ms: 128kb, Sequential
2423ms: 32kb, Default
2423ms: 32kb, Sequential
2423ms: 64kb, Sequential
2423ms: 256kb, NoBuffering | Overlapped | Sequential
2424ms: 32kb, Default
2424ms: 4kb, Sequential
2424ms: 4kb, Default
2433ms: 64kb, NoBuffering | Overlapped | Sequential
2433ms: 128kb, NoBuffering | Overlapped | Sequential
2433ms: 256kb, NoBuffering | Overlapped | Sequential
2433ms: 128kb, NoBuffering | Overlapped | Sequential
2433ms: 64kb, NoBuffering | Overlapped
2433ms: 256kb, NoBuffering | Overlapped | Sequential
2433ms: 32kb, Sequential
2434ms: 64kb, Sequential
2434ms: 256kb, NoBuffering | Overlapped
2434ms: 128kb, NoBuffering | Overlapped

write_test.exe
Top 38:
3625ms: 256kb, Overlapped | WriteThrough
3635ms: 256kb, Overlapped | Sequential | WriteThrough
3665ms: 256kb, Overlapped | WriteThrough
3675ms: 256kb, Overlapped | WriteThrough
3675ms: 256kb, Overlapped | Sequential | WriteThrough
3685ms: 256kb, Overlapped | Sequential | WriteThrough
3715ms: 256kb, Overlapped | Sequential | WriteThrough
3795ms: 256kb, Overlapped | WriteThrough
3975ms: 256kb, NoBuffering | Sequential
3976ms: 256kb, NoBuffering | Sequential
4016ms: 256kb, NoBuffering | Sequential
4046ms: 256kb, NoBuffering | Overlapped | Sequential
4046ms: 256kb, NoBuffering | Overlapped | Sequential
4046ms: 128kb, Overlapped | WriteThrough
4066ms: 256kb, NoBuffering
4066ms: 256kb, NoBuffering | Overlapped
4076ms: 256kb, NoBuffering
4086ms: 256kb, NoBuffering | Overlapped | Sequential
4105ms: 256kb, NoBuffering
4116ms: 128kb, Default
4116ms: 256kb, NoBuffering | Overlapped | Sequential
4126ms: 128kb, Overlapped | WriteThrough
4136ms: 256kb, NoBuffering
4136ms: 256kb, NoBuffering | Overlapped
4136ms: 256kb, NoBuffering | Sequential
4166ms: 16kb, Default
4166ms: 128kb, Overlapped | Sequential | WriteThrough
4166ms: 128kb, Overlapped | Sequential | WriteThrough
4176ms: 128kb, Overlapped | Sequential
4176ms: 128kb, Overlapped | WriteThrough
4176ms: 256kb, NoBuffering | Overlapped
4196ms: 128kb, NoBuffering | Sequential
4196ms: 128kb, Overlapped | WriteThrough
4197ms: 128kb, Overlapped | Sequential | WriteThrough
4206ms: 16kb, Default
4206ms: 64kb, Sequential
4206ms: 128kb, Overlapped
4216ms: 128kb, NoBuffering


 
Inovet ©   (2013-03-21 10:46) [48]

> [43] DevilDevil ©   (21.03.13 10:38)
> Если действительно есть желание докапываться до истины

А у тебя нет что ли такого желания?


 
DevilDevil ©   (2013-03-21 10:57) [49]

Windows 7, SectorSize: 512, ClasterSize: 4kb

read_test.exe
Top 19:
1170ms: 16kb, Default
1170ms: 32kb, Default
1170ms: 32kb, NoBuffering | Overlapped
1170ms: 64kb, Default
1170ms: 64kb, NoBuffering | Overlapped
1170ms: 128kb, Default
1170ms: 128kb, NoBuffering | Overlapped
1170ms: 128kb, NoBuffering | Sequential
1170ms: 4kb, Default
1170ms: 4kb, Sequential
1170ms: 4kb, Overlapped | Sequential
1170ms: 16kb, Overlapped | Sequential
1170ms: 32kb, NoBuffering | Overlapped
1170ms: 32kb, Overlapped | Sequential
1170ms: 64kb, NoBuffering | Overlapped
1170ms: 128kb, NoBuffering
1170ms: 128kb, NoBuffering | Overlapped
1170ms: 256kb, Default
1170ms: 256kb, NoBuffering | Overlapped

write_test.exe
Top 38:
1575ms: 256kb, WriteThrough
1607ms: 256kb, Overlapped | Sequential | WriteThrough
1701ms: 128kb, WriteThrough
1716ms: 256kb, NoBuffering | Overlapped | Sequential | WriteThrough
1747ms: 256kb, NoBuffering | Overlapped | Sequential | WriteThrough
1763ms: 256kb, Sequential | WriteThrough
1794ms: 128kb, WriteThrough
1809ms: 256kb, NoBuffering | Sequential | WriteThrough
1810ms: 256kb, NoBuffering | Overlapped | WriteThrough
1825ms: 256kb, Overlapped | Sequential | WriteThrough
1840ms: 256kb, Overlapped | WriteThrough
1841ms: 256kb, Sequential | WriteThrough
1841ms: 128kb, Overlapped | Sequential
1841ms: 256kb, NoBuffering | WriteThrough
1856ms: 128kb, Overlapped | WriteThrough
1857ms: 256kb, Sequential
1872ms: 256kb, Overlapped
1872ms: 256kb, Default
1872ms: 256kb, Overlapped | Sequential
1872ms: 256kb, Overlapped | WriteThrough
1887ms: 256kb, Overlapped | WriteThrough
1887ms: 256kb, Overlapped | Sequential
1887ms: 256kb, Default
1888ms: 256kb, Overlapped
1903ms: 256kb, Sequential
1903ms: 256kb, Default
1903ms: 256kb, Overlapped | Sequential
1918ms: 128kb, NoBuffering | WriteThrough
1919ms: 256kb, Sequential | WriteThrough
1934ms: 128kb, WriteThrough
1935ms: 128kb, Sequential | WriteThrough
1950ms: 256kb, NoBuffering | Sequential | WriteThrough
1950ms: 256kb, WriteThrough
1965ms: 256kb, Overlapped | WriteThrough
1966ms: 256kb, WriteThrough
1981ms: 128kb, NoBuffering | Sequential | WriteThrough
1981ms: 256kb, NoBuffering | Overlapped | WriteThrough
1996ms: 128kb, NoBuffering | Overlapped | WriteThrough


 
DevilDevil ©   (2013-03-21 10:57) [50]

> Inovet ©   (21.03.13 10:46) [48]
> > [43] DevilDevil ©   (21.03.13 10:38)
> > Если действительно есть желание докапываться до истины
>
> А у тебя нет что ли такого желания?


у меня нет сил


 
DevilDevil ©   (2013-03-21 10:58) [51]

Windows 7 64bit,  SectorSize: 512, ClasterSize: 4kb, OCZ-VERTEX4, i7-3770K, 16GB

read_test.exe
Top 20:
343ms: 256kb, CompactDesires | Default
343ms: 256kb, CompactDesires | SharedRead | Default
343ms: 256kb, SharedRead | Default
343ms: 256kb, Sequential
343ms: 256kb, CompactDesires | SharedRead | Sequential
343ms: 256kb, CompactDesires | SharedRead | Default
343ms: 256kb, SharedRead | Sequential
343ms: 256kb, Overlapped | Sequential
343ms: 256kb, CompactDesires | SharedRead | Overlapped | Sequential
343ms: 256kb, Default
343ms: 256kb, SharedRead | Default
343ms: 256kb, SharedRead | Overlapped
343ms: 256kb, SharedRead | Overlapped | Sequential
358ms: 256kb, CompactDesires | SharedRead | Sequential
358ms: 256kb, CompactDesires | SharedRead | Overlapped
358ms: 256kb, CompactDesires | SharedRead | Default
358ms: 256kb, CompactDesires | SharedRead | Overlapped | Sequential
359ms: 256kb, CompactDesires | SharedRead | Overlapped
359ms: 256kb, CompactDesires | NoBuffering | Overlapped
359ms: 256kb, SharedRead | NoBuffering | Overlapped

write_test.exe
Top 20:
1887ms: 128kb, SharedRead | Overlapped | Sequential | WriteThrough
1888ms: 256kb, Overlapped | Sequential | WriteThrough
1888ms: 256kb, SharedRead | Overlapped | WriteThrough
1888ms: 256kb, Overlapped | WriteThrough
1888ms: 256kb, CompactDesires | Overlapped | WriteThrough
1903ms: 64kb, SharedRead | Overlapped | Sequential | WriteThrough
1903ms: 128kb, CompactDesires | Overlapped | Sequential | WriteThrough
1903ms: 128kb, SharedRead | Overlapped | Sequential | WriteThrough
1903ms: 256kb, Overlapped | Sequential | WriteThrough
1903ms: 128kb, Overlapped | Sequential | WriteThrough
1904ms: 256kb, CompactDesires | SharedRead | Overlapped | Sequential | WriteThrough
1918ms: 64kb, SharedRead | Overlapped | WriteThrough
1918ms: 256kb, SharedRead | Overlapped | Sequential | WriteThrough
1919ms: 256kb, CompactDesires | Overlapped | WriteThrough
1919ms: 256kb, SharedRead | Overlapped | WriteThrough
1919ms: 256kb, CompactDesires | Overlapped | Sequential | WriteThrough
1919ms: 256kb, CompactDesires | SharedRead | Overlapped | WriteThrough
1919ms: 64kb, SharedRead | Overlapped | Sequential | WriteThrough
1919ms: 256kb, SharedRead | Overlapped | Sequential | WriteThrough
1919ms: 32kb, CompactDesires | Overlapped | Sequential | WriteThrough


 
brother ©   (2013-03-21 12:16) [52]

> у меня нет сил

тогда зачем начинал это все???


 
DevilDevil ©   (2013-03-21 16:15) [53]

> brother ©   (21.03.13 12:16) [52]

а ты как думаешь ?


 
brother ©   (2013-03-21 17:25) [54]

Удалено модератором
Примечание: не в пивной...


 
DevilDevil ©   (2013-03-21 17:31) [55]

> brother ©   (21.03.13 17:25) [54]

а тебе не видно эффективности одних наборов параметров и неэффективности других ?
раз так эдак в 5


 
brother ©   (2013-03-21 18:01) [56]

долго мусолишь одно и то-же


 
DevilDevil ©   (2013-03-21 19:17) [57]

как видишь оно того стоит
только мои ресурсы ограничены


 
Rouse_ ©   (2013-03-21 20:39) [58]

Дим я тоже думаю, что в данном случае ты не верно делаешь - тесты плывут сильно. С этими данными нельзя работать даже на этапе предварительного анализа к сожалению...


 
DevilDevil ©   (2013-03-21 21:02) [59]

> Rouse_ ©   (21.03.13 20:39) [58]

дак блин
ну давайте объединим свои усилия
сообществом разработчиков решим этот вопрос

я свой вклад внёс как смог
я ж не резиновый )


 
Rouse_ ©   (2013-03-21 21:37) [60]

Цель задачи не понятная. Сделать максимально быстрое чтение запись?
Я не уверен что стоит оптимизировать файловые операции, это всегда было узким местом. Да уж если и хочешь оптимизировать, то тогда через свой драйвер, убирая внешние воздействия как делает тот же MS SQL


 
DevilDevil ©   (2013-03-21 21:51) [61]

> Rouse_ ©   (21.03.13 21:37) [60]

идея конечно здравая
но я не обладаю информацией

я думаю этот вопрос можно решить на уровне размер буфера и файловых опций
и пока не могу понять, почему ранее выбранные мной опции не являются максимально эффективными

размер буфера: 256кб
чтение Overlapped | Sequential | (если ОС < Win7)NoBuffering
запись Overlapped | Sequential | WriteThrough


 
Rouse_ ©   (2013-03-21 22:30) [62]


> и пока не могу понять, почему ранее выбранные мной опции
> не являются максимально эффективными

Сколько миллисекунд ты хочешь выиграть на объеме от 100 Мб?
Что они тебе дадут? Пока у тебя плавает в маленьком диапазоне - что вообще монопенисюально для обычной прикладной программы, которые по сути своей крайне редко работают с таким объемом данных, на которых ты тестируешь.


 
DevilDevil ©   (2013-03-21 22:36) [63]

> Rouse_ ©   (21.03.13 22:30) [62]

тут не вопрос "сколько выиграть"
тут вопрос "как вообще надо" выставлять опции и размер буфера в таких ситуациях

да и потом, как ты видел - разница бывает в разы
не просто в разы, а в разы медленнее априори очень медленных операций


 
Rouse_ ©   (2013-03-21 22:39) [64]


> DevilDevil ©   (21.03.13 22:36) [63]

Видел - поэтому и говорю, тест сильно синтетический.


 
DevilDevil ©   (2013-03-21 23:15) [65]

> Rouse_ ©   (21.03.13 22:39) [64]

а что предлагаешь видоизменить
чтобы минимизировать синтетичность ?


 
Sapersky   (2013-03-21 23:30) [66]

Выкинуть No_Buffering без overlapped, которое всё равно в жизни никто не использует.
Тогда разница в разы уйдёт, останется разница на уровне погрешности измерений, и тест окончательно потеряет смысл :)


 
Rouse_ ©   (2013-03-21 23:32) [67]


> DevilDevil ©   (21.03.13 23:15) [65]

Ну если честно - все :)
1. Тестирование нагрузки на железо через апи третьего кольца выдаст погрешность.
2. Зачем тестировать, где использовать результат?
3. Каких скоростей ты хочешь достигнуть? Сам понимаешь, проще в некоторых случаях сменить железо чем переписать программу.
4. Используемые тобой режимы не используют 99 процентов программистов, им достаточно классики. Я не думаю что до тебя не было сделавано исследование что мол ОПА - вот с таким флагом будет читаться сверхбыстро. Сколько лет уж прошло...


 
DevilDevil ©   (2013-03-22 12:25) [68]

> Sapersky   (21.03.13 23:30) [66]
> Выкинуть No_Buffering без overlapped, которое всё равно
> в жизни никто не использует.
> Тогда разница в разы уйдёт, останется разница на уровне
> погрешности измерений, и тест окончательно потеряет смысл
> :)


ну то есть ты хочешь сказать, что от Sequential и WriteThrough нет толка ?


 
DevilDevil ©   (2013-03-22 12:30) [69]

> Rouse_ ©   (21.03.13 23:32) [67]

сейчас я отрою свою цитату из старой ветки :)

В конечном счёте задача одна - какие опции и размер буфера использовать в универсальной библиотеке для потокового чтения/записи. Чтобы раз выставить и уже не париться.


 
Inovet ©   (2013-03-22 12:46) [70]

> [69] DevilDevil ©   (22.03.13 12:30)

Как видим, в реальных условиях это сильно зависит от различных факторов. И даже, создав идеальные условия для тестирования и подобрав некие параметры, дающие максимально быстрый результат, что тоже вряд ли возможно из-за различий в аппаратуре, пользоваться ими в раеальности будет неоптимально в одних случаях, в других, может быть, и близко к оптимальному.

Что получается? Не делать же замер перед каждым использованием приложения с этой библиотекой. Получается, надо взять некие параметры, дающие наилучшие результаты на большинстве систем. Но и это при условии достоверности измерений, о чём выше говорилось уже.


 
Sapersky   (2013-03-22 19:37) [71]

ну то есть ты хочешь сказать, что от Sequential и WriteThrough нет толка ?

От Sequential - возможно, есть эффект, но его сложно заметить, в топах всё перемешано. Ты бы хоть автоматически подсчитывал, сколько (например) в топе с Sequential, сколько без.
В любом случае, какого-то значительного отрыва от Default не видно. Почему - уже была ссылка:
http://blogs.msdn.com/b/oldnewthing/archive/2012/01/20/10258690.aspx
(менеджер кэша может автоматически переключаться в Sequential-режим)
Соображения в пользу Sequential больше теоретические - "в любом случае не повредит", как я здесь писал:
http://delphimaster.net/view/15-1360736756/
Но для таких соображений тест не нужен, достаточно документации.

Про запись - опять же см. старую ветку, [139] + [142].


 
brother ©   (2013-03-23 06:04) [72]

> тут вопрос "как вообще надо" выставлять опции и размер буфера
> в таких ситуациях

еще раз: тк. не сделано одной опции и буфера, значит, зависит от железа и подгонятся под конкретну машину... золотой середины нет...



Страницы: 1 2 вся ветка

Форум: "Прочее";
Текущий архив: 2013.08.25;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.87 MB
Время: 0.006 c
4-1266740974
leonidus
2010-02-21 11:29
2013.08.25
Определение разрядности программы


1-1311150598
FosterGrand
2011-07-20 12:29
2013.08.25
Сбой кодировки в ToolBar


15-1363702826
DevilDevil
2013-03-19 18:20
2013.08.25
Ребят, прошу потестировать файловую систему


2-1355471316
Sinister
2012-12-14 11:48
2013.08.25
Долго выполняется сохранение файла


4-1266492114
Alik
2010-02-18 14:21
2013.08.25
Вызов стандратного окна даты времени





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский