|
|
|
Оптимальный размер блока при записи файла на флэшку
|
|||
|---|---|---|---|
|
#18+
С дисками еще посложнее. У них - нелинейных эффектов больше. Механика головок. И различные умные кеши. Но самое главное - класс устройства. Старый IDE, который стоит на бабушкиных компах. SATA1/2/3. Размер блинчика. 2.5 или 3.5. И скорость кручения. 5 тыщ. 7 тыщ. 12 тыщ (для серверных). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.03.2019, 11:05 |
|
||
|
Оптимальный размер блока при записи файла на флэшку
|
|||
|---|---|---|---|
|
#18+
maytonС дисками еще посложнее. У них - нелинейных эффектов больше. Механика головок. И различные умные кеши. Но самое главное - класс устройства. Старый IDE, который стоит на бабушкиных компах. SATA1/2/3. Размер блинчика. 2.5 или 3.5. И скорость кручения. 5 тыщ. 7 тыщ. 12 тыщ (для серверных). Да я вот начинаю вникать и офигеваю. Вот чтение с достаточно распространенного WD Black, 500 GB Смешанные файлы. Фотки, Музыка, пара видео. Прирост скорости на маленьких размерах блока - за счет маленьких файлов. На больших - за счет больших файлов. Предположу, что винчестер при поступлении на него большой очереди запросов на чтение маленькими блоками, оптимизирует порядок их выполнения и выигрывает на чтении фрагментированных файлов. А с большими файлами есть еще один момент. У меня они, скорее всего фрагментированы минимально. Поэтому так заметен прирост скорости при чтении большими блоками. Где бы достать много больших фрагментированных файлов для опытов? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.03.2019, 13:49 |
|
||
|
Оптимальный размер блока при записи файла на флэшку
|
|||
|---|---|---|---|
|
#18+
Flying-homeПредположу, что винчестер при поступлении на него большой очереди запросов на чтение маленькими блоками, оптимизирует порядок их выполнения и выигрывает на чтении фрагментированных файлов. Вот может это даст какое-то прояснение https://en.wikipedia.org/wiki/Native_Command_Queuing Я тоже почитаю. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.03.2019, 13:52 |
|
||
|
Оптимальный размер блока при записи файла на флэшку
|
|||
|---|---|---|---|
|
#18+
Не, соврал. Это была старая 320-ка. 500-ка вот ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.03.2019, 14:02 |
|
||
|
Оптимальный размер блока при записи файла на флэшку
|
|||
|---|---|---|---|
|
#18+
maytonFlying-homeПредположу, что винчестер при поступлении на него большой очереди запросов на чтение маленькими блоками, оптимизирует порядок их выполнения и выигрывает на чтении фрагментированных файлов. Вот может это даст какое-то прояснение https://en.wikipedia.org/wiki/Native_Command_Queuing Я тоже почитаю. Очень похоже на правду, но. Вот две ситуации: 1. Я отправляю на винт серию команд на чтение по 64 КБ 2. Я отправляю на винт одну команду на чтение 32 МБ Почему мы должны думать, что во втором случае NCQ не работает? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.03.2019, 17:28 |
|
||
|
Оптимальный размер блока при записи файла на флэшку
|
|||
|---|---|---|---|
|
#18+
Flying-homemaytonпропущено... Вот может это даст какое-то прояснение https://en.wikipedia.org/wiki/Native_Command_Queuing Я тоже почитаю. Очень похоже на правду, но. Вот две ситуации: 1. Я отправляю на винт серию команд на чтение по 64 КБ 2. Я отправляю на винт одну команду на чтение 32 МБ Почему мы должны думать, что во втором случае NCQ не работает? В смысле, кучу команд он оптимизирует (как следует из названия технологии), а одну большую команду оптимизировать не будет? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.03.2019, 17:37 |
|
||
|
Оптимальный размер блока при записи файла на флэшку
|
|||
|---|---|---|---|
|
#18+
Flying-homeFlying-homeпропущено... Очень похоже на правду, но. Вот две ситуации: 1. Я отправляю на винт серию команд на чтение по 64 КБ 2. Я отправляю на винт одну команду на чтение 32 МБ Почему мы должны думать, что во втором случае NCQ не работает? В смысле, кучу команд он оптимизирует (как следует из названия технологии), а одну большую команду оптимизировать не будет? Смотри. В твоём кейсе (копирование большого толстого файла (БТФ)) я считаю что NCQ - бесполезен. Его основное назначение - соптимизировать хаос команд которые летят на диск когда он под современной операционкой с кучей фоновых задач бомбит бедный диск операциями (типичная ситуация - прогрев Windows-7 или старт антивируса или индексатора файлов). В этом случае без NCQ блок головок (БГ) будет двигатся хаотично обслуживая сиюсекундные хотелки всех-всех запущенных процессов. Типичная картинка. Мощный проц. Много памяти а ОС стартует 15 минут. В случае с NCQ (теоретически это все SATA-шники) движения БГ от рандомного шума должны подойти к "лесенке вверх" и лесенке вниз (это идеал). В реальности скорее всего NCQ просто сортирует команды в монотонном порядке cylinders и исполняет их следя за консистенстностью. Ну чтоб запись не сбила чтение. Тоесть копированию БТФ - пофиг на NCQ, но если параллельно с этим копированием периодически прилетают шумящие команды от других процессов то NCQ полезен. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.03.2019, 19:45 |
|
||
|
Оптимальный размер блока при записи файла на флэшку
|
|||
|---|---|---|---|
|
#18+
maytonFlying-homeпропущено... В смысле, кучу команд он оптимизирует (как следует из названия технологии), а одну большую команду оптимизировать не будет? Смотри. В твоём кейсе (копирование большого толстого файла (БТФ)) я считаю что NCQ - бесполезен. Его основное назначение - соптимизировать хаос команд которые летят на диск когда он под современной операционкой с кучей фоновых задач бомбит бедный диск операциями (типичная ситуация - прогрев Windows-7 или старт антивируса или индексатора файлов). В этом случае без NCQ блок головок (БГ) будет двигатся хаотично обслуживая сиюсекундные хотелки всех-всех запущенных процессов. Типичная картинка. Мощный проц. Много памяти а ОС стартует 15 минут. В случае с NCQ (теоретически это все SATA-шники) движения БГ от рандомного шума должны подойти к "лесенке вверх" и лесенке вниз (это идеал). В реальности скорее всего NCQ просто сортирует команды в монотонном порядке cylinders и исполняет их следя за консистенстностью. Ну чтоб запись не сбила чтение. Тоесть копированию БТФ - пофиг на NCQ, но если параллельно с этим копированием периодически прилетают шумящие команды от других процессов то NCQ полезен. Получается, надо разбить файлы на две группы, например, меньше 8 МБ и больше. Первую группу читать блоками по 64 КБ в надежде на NCQ, вторую - большими блоками в надежде на их нефрагментированность. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.03.2019, 20:10 |
|
||
|
Оптимальный размер блока при записи файла на флэшку
|
|||
|---|---|---|---|
|
#18+
Еще из моих наблюдений на рэйдах этот NCQ то-ли не работает, то-ли работает как-то не так. С маленькими файлами прироста скорости с уменьшением блока нет. Но там вообще фиг разберешься, что оптимизирует винт, а что - рэйд-контроллер. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.03.2019, 20:14 |
|
||
|
Оптимальный размер блока при записи файла на флэшку
|
|||
|---|---|---|---|
|
#18+
И по сабжу. Сегодня держал в руках флэшку USB 2.0 На FILE_FLAG_NO_BUFFERING она вообще не реагирует, имеет на борту буфер в 8 МБ. При записи на нее больших файлов она просто принимала в буфер порцию, потом записывала его, как сама считала нужным. И так далее. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.03.2019, 20:20 |
|
||
|
Оптимальный размер блока при записи файла на флэшку
|
|||
|---|---|---|---|
|
#18+
https://habr.com/ru/post/95384/ В далеком 2010 году человек пытался собирать бенчмарки по флэшкам. Но видно, что-то пошло не так. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.03.2019, 20:30 |
|
||
|
Оптимальный размер блока при записи файла на флэшку
|
|||
|---|---|---|---|
|
#18+
Flying-homeИ по сабжу. Сегодня держал в руках флэшку USB 2.0 Уже год не держал флэшку в руках. Отмирают они как дисководы. Сейчас проще через облака всякие перегнать данные, чем использовать флэшку. Мне кажется ты занимаешься тюнингом паровоза в эпоху электромобилей. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.03.2019, 20:36 |
|
||
|
Оптимальный размер блока при записи файла на флэшку
|
|||
|---|---|---|---|
|
#18+
Flying-homemaytonпропущено... Смотри. В твоём кейсе (копирование большого толстого файла (БТФ)) я считаю что NCQ - бесполезен. Его основное назначение - соптимизировать хаос команд которые летят на диск когда он под современной операционкой с кучей фоновых задач бомбит бедный диск операциями (типичная ситуация - прогрев Windows-7 или старт антивируса или индексатора файлов). В этом случае без NCQ блок головок (БГ) будет двигатся хаотично обслуживая сиюсекундные хотелки всех-всех запущенных процессов. Типичная картинка. Мощный проц. Много памяти а ОС стартует 15 минут. В случае с NCQ (теоретически это все SATA-шники) движения БГ от рандомного шума должны подойти к "лесенке вверх" и лесенке вниз (это идеал). В реальности скорее всего NCQ просто сортирует команды в монотонном порядке cylinders и исполняет их следя за консистенстностью. Ну чтоб запись не сбила чтение. Тоесть копированию БТФ - пофиг на NCQ, но если параллельно с этим копированием периодически прилетают шумящие команды от других процессов то NCQ полезен. Получается, надо разбить файлы на две группы, например, меньше 8 МБ и больше. Первую группу читать блоками по 64 КБ в надежде на NCQ, вторую - большими блоками в надежде на их нефрагментированность. Делить файлы на 2 категории - мысль здравая. Плюсую. По поводу NCQ. Надо курить документацию по дискам и понять какой смысл вкладывается в NCQ-command. Если это 1 сектор то это одно. Если это цепочка секторов - тогда надо думать по другому. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.03.2019, 20:38 |
|
||
|
Оптимальный размер блока при записи файла на флэшку
|
|||
|---|---|---|---|
|
#18+
Flying-homeЕще из моих наблюдений на рэйдах этот NCQ то-ли не работает, то-ли работает как-то не так. С маленькими файлами прироста скорости с уменьшением блока нет. Но там вообще фиг разберешься, что оптимизирует винт, а что - рэйд-контроллер. Я-ж говорю. Сложное это дело. Если в стеке у нас еще и стоит к примеру RAID-контроллер в зеркале (это кажется режим десятка) тогда у нас на чтение контроллер будет разбрасывать транзакции на 2 диска равномерно по их готовности. Это вообще путает все карты! Мы уже тюним 3 устройства в стеке! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.03.2019, 20:41 |
|
||
|
Оптимальный размер блока при записи файла на флэшку
|
|||
|---|---|---|---|
|
#18+
Flying-homeИ по сабжу. Сегодня держал в руках флэшку USB 2.0 На FILE_FLAG_NO_BUFFERING она вообще не реагирует, имеет на борту буфер в 8 МБ. При записи на нее больших файлов она просто принимала в буфер порцию, потом записывала его, как сама считала нужным. И так далее. Ты обращал внимание что когда втыкаешь новую флешку - то операционка ставит для нее драйвер? Причем для каждого вендора флешки может быть новый драйвер. Рискну предположить что флешка - это не просто матрица памяти. Ну... наше понимание в этом вопросе будет поверхностным если мы флешку будем опускать на такой уровень. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.03.2019, 20:44 |
|
||
|
Оптимальный размер блока при записи файла на флэшку
|
|||
|---|---|---|---|
|
#18+
Dima TFlying-homeИ по сабжу. Сегодня держал в руках флэшку USB 2.0 Уже год не держал флэшку в руках. Отмирают они как дисководы. Сейчас проще через облака всякие перегнать данные, чем использовать флэшку. Мне кажется ты занимаешься тюнингом паровоза в эпоху электромобилей. Через неделю я буду заниматься тюнингом своего нового AMD. В основном в части дележа дисков. Куда чё положить. Короче дисковый пасьянс. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.03.2019, 20:46 |
|
||
|
Оптимальный размер блока при записи файла на флэшку
|
|||
|---|---|---|---|
|
#18+
maytonЧерез неделю я буду заниматься тюнингом своего нового AMD. В основном в части дележа дисков. Куда чё положить. Короче дисковый пасьянс. SSD там будет? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.03.2019, 20:56 |
|
||
|
Оптимальный размер блока при записи файла на флэшку
|
|||
|---|---|---|---|
|
#18+
Пока нет. Куплю позже. Щас у меня идея фикс - собрать программное зеркало для хранения домашних семейных фото-архивов. Почему зеркало? Да достало копии делать. Всё равно забываешь. И что с..ка характерно. Все винты разного размера. Двушка. единичка. и 0.5 терабайт. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.03.2019, 21:00 |
|
||
|
Оптимальный размер блока при записи файла на флэшку
|
|||
|---|---|---|---|
|
#18+
maytonFlying-homeЕще из моих наблюдений на рэйдах этот NCQ то-ли не работает, то-ли работает как-то не так. С маленькими файлами прироста скорости с уменьшением блока нет. Но там вообще фиг разберешься, что оптимизирует винт, а что - рэйд-контроллер. Я-ж говорю. Сложное это дело. Если в стеке у нас еще и стоит к примеру RAID-контроллер в зеркале (это кажется режим десятка) тогда у нас на чтение контроллер будет разбрасывать транзакции на 2 диска равномерно по их готовности. Это вообще путает все карты! Мы уже тюним 3 устройства в стеке! Да, кстати, надо будет поплотнее потестить это "разбрасывание". Кажется, при безбуферных операциях его нет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.03.2019, 21:34 |
|
||
|
Оптимальный размер блока при записи файла на флэшку
|
|||
|---|---|---|---|
|
#18+
maytonПока нет. Куплю позже. Щас у меня идея фикс - собрать программное зеркало для хранения домашних семейных фото-архивов. Почему зеркало? Да достало копии делать. Всё равно забываешь. И что с..ка характерно. Все винты разного размера. Двушка. единичка. и 0.5 терабайт. Ну вот, приехали :) Бекап и зеркало это - разные вещи. Оно не защитит ни от усер эррор, ни от шифровальщиков. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.03.2019, 03:43 |
|
||
|
Оптимальный размер блока при записи файла на флэшку
|
|||
|---|---|---|---|
|
#18+
maytonПока нет. Куплю позже. Щас у меня идея фикс - собрать программное зеркало для хранения домашних семейных фото-архивов. Почему зеркало? Да достало копии делать. Всё равно забываешь. И что с..ка характерно. Все винты разного размера. Двушка. единичка. и 0.5 терабайт. SSD недорогие нынче, достаточно 240 Гб под системный диск. Комп летать будет. Для бэкапа лучше роутер с HDD и туда сливать. А чтобы не забывать можно по заданию запускать батник, а в нем xcopy или robocopy только новых файлов. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.03.2019, 07:27 |
|
||
|
Оптимальный размер блока при записи файла на флэшку
|
|||
|---|---|---|---|
|
#18+
Проснулся и понял. Понял, что ничего не понятно. Я не использую технологию IOCP, я читаю последовательно. При таком подходе NCQ не должно давать этого самого "эффекта маленьких файлов", при котором мелкие файлы читаются быстрее при маленьких размерах блока. Зато если задействовать IOCP... Интересно будет посмотреть на результаты. В общем, вопрос остается открытым. Сформулирую его еще раз: При последовательном чтении больших файлов на безбуферных операциях наблюдается стабильный прирост скорости чтения с увеличением размера блока. Вплоть до 16 и 32 МБ. При последовательном чтении сравнительно маленьких файлов (размером до 8 МБ) на SATA винчестерах наблюдается обратный эффект: скорость чтения растет с уменьшением блока вплоть до 132 КБ. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.03.2019, 08:12 |
|
||
|
Оптимальный размер блока при записи файла на флэшку
|
|||
|---|---|---|---|
|
#18+
Flying-homeВ общем, вопрос остается открытым.Попробуйте uni_ata . В нём есть какое-то логгирование . Вдруг, поможет. Вопрос с количеством потоков- интересный. Неясно, как его решить в общем случае. На RAID или некоторых SSD это может ускорить, но определить конфигурацию в общем смысле, видимо- непросто. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.03.2019, 09:28 |
|
||
|
Оптимальный размер блока при записи файла на флэшку
|
|||
|---|---|---|---|
|
#18+
Relic HuntermaytonПока нет. Куплю позже. Щас у меня идея фикс - собрать программное зеркало для хранения домашних семейных фото-архивов. Почему зеркало? Да достало копии делать. Всё равно забываешь. И что с..ка характерно. Все винты разного размера. Двушка. единичка. и 0.5 терабайт. Ну вот, приехали :) Бекап и зеркало это - разные вещи. Оно не защитит ни от усер эррор, ни от шифровальщиков. У меня узер один. Это я. И шифровать не буду. Кому нужны мои домашние фотки? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.03.2019, 11:07 |
|
||
|
Оптимальный размер блока при записи файла на флэшку
|
|||
|---|---|---|---|
|
#18+
Dima TmaytonПока нет. Куплю позже. Щас у меня идея фикс - собрать программное зеркало для хранения домашних семейных фото-архивов. Почему зеркало? Да достало копии делать. Всё равно забываешь. И что с..ка характерно. Все винты разного размера. Двушка. единичка. и 0.5 терабайт. SSD недорогие нынче, достаточно 240 Гб под системный диск. Комп летать будет. Для бэкапа лучше роутер с HDD и туда сливать. А чтобы не забывать можно по заданию запускать батник, а в нем xcopy или robocopy только новых файлов. xcopy только новых файлов это не метод. Это я уже проходил. Потом после восстановления жена тебе скажет - "я же тебя просила удалить эту фотку где я - толстая/больная/или в некрасивом платье" Удаление и переименовывание файлов должно накатываться на бэкап именно так-же как и транзакции в БД. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.03.2019, 11:10 |
|
||
|
|

start [/forum/topic.php?fid=26&msg=39791084&tid=1492230]: |
0ms |
get settings: |
9ms |
get forum list: |
13ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
172ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
57ms |
get tp. blocked users: |
1ms |
| others: | 13ms |
| total: | 283ms |

| 0 / 0 |

Извините, этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
... ля, ля, ля ...