digital 0 27 февраля, 2020 Опубликовано 27 февраля, 2020 · Жалоба 51 minutes ago, AVI-crak said: Ошибся, при выходе за пределы блока записываются все остальные не изменённые сектора этого блока. Если выполнять запись секторов в пределах одного блока, даже если в разнобой (но один раз) - блок будет стёрт один раз. Дорогие и быстрые флешки имеют рам память на несколько сотен блоков, что позволяет им держать открытыми для записи сразу кучу блоков. Дешевые флешки имеют рам память только на один блок (это минимум), и дико тормозят. сотня блоков по 4Мбайта это почти полгига оперативки 45 minutes ago, makc said: Про сотни блоков я такой информации не видел. Какой источник этих данных? Есть утилита для тестирования этих параметров, но я не видел чтобы она показывала описываемые Вами результаты. Хорошая утилита, только не очень понятно что она показывает, если при записи сектора, он фактически записывается сначала в ram, а только потом переноситься в nand. Кстати, как при ее помощи монжо узнать количество одновременных открытых AU ? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
makc 192 27 февраля, 2020 Опубликовано 27 февраля, 2020 · Жалоба 8 минут назад, digital сказал: Кстати, как при ее помощи монжо узнать количество одновременных открытых AU ? Там всё описано: Цитата == Finding the number of open erase blocks == ''flashbench --open-au <device> --open-au-nr=<nr> --erasesize=<size> [--random]'' Example: $ sudo ./flashbench -O --erasesize=$[4 * 1024 * 1024] \ --blocksize=$[256 * 1024] /dev/mmcblk0 --open-au-nr=2 4MiB 8.79M/s 2MiB 7.41M/s 1MiB 6.87M/s 512KiB 6.39M/s 256KiB 6.27M/s $ sudo ./flashbench -O --erasesize=$[4 * 1024 * 1024] \ --blocksize=$[256 * 1024] /dev/mmcblk0 --open-au-nr=3 4MiB 7.75M/s 2MiB 5.03M/s 1MiB 3.24M/s 512KiB 1.76M/s 256KiB 912K/s In this case, trying 2 open AUs shows fast accesses for small block sizes, but trying 3 open AUs is much slower, and degrades further at smaller sizes. Try varying numbers until hitting the cut-off point. For cards that are fast when using --random, this will find the cut-off more reliably. Some cards can do more open segments in linear mode than they can in random mode. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
digital 0 27 февраля, 2020 Опубликовано 27 февраля, 2020 · Жалоба 1 hour ago, AVI-crak said: Ошибся, при выходе за пределы блока записываются все остальные не изменённые сектора этого блока. Если выполнять запись секторов в пределах одного блока, даже если в разнобой (но один раз) - блок будет стёрт один раз. Дорогие и быстрые флешки имеют рам память на несколько сотен блоков, что позволяет им держать открытыми для записи сразу кучу блоков. Дешевые флешки имеют рам память только на один блок (это минимум), и дико тормозят. Торможения не должно быть при последовательной записи, так же не должно быть разница при случаной записи секторов, а вот если оперировать записью в 2-3 и тд. блоков, то как раз будет заметная разница 2 minutes ago, makc said: Там всё описано: О точно, теперь я допер что за параметр --open-au-nr Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
makc 192 27 февраля, 2020 Опубликовано 27 февраля, 2020 · Жалоба 2 минуты назад, digital сказал: О точно, теперь я допер что за параметр --open-au-nr Именно. :-) А где-то была страничка, на которой была статистика по картам и анализ их внутренностей на основе этой статистики. Но, к сожалению, я сейчас её уже не могу найти. Если попадётся, приведите ссылку здесь, для истории. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
digital 0 27 февраля, 2020 Опубликовано 27 февраля, 2020 · Жалоба Любопытно, у меня карточка 2гига, объем 1976565760 байт или 1885 МБайт при этом /sys/block/mmcblk0/device/preferred_erase_size равен 4194304 байт или 4Мбайта, предпологаю что AU равен это размеру и это получаеться НЕ кратно размеру карты ибо 1885 не делиться на 4 также есть спецификация на карту самсунг, там AU_SIZE 4MB при этом ERASE_SIZE 16AU Вероятно блок стирания не равен AU, и он существенно больше , тогда для нормальной работы , требуются лишние блоки которые не входят в список доступных. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
AVI-crak 0 27 февраля, 2020 Опубликовано 27 февраля, 2020 · Жалоба 1 hour ago, digital said: сотня блоков по 4Мбайта это почти полгига оперативки Ну так и самого флеша может больше терабайта быть, разговор-то про дорогие модели. Один блок для дешмана, десять для фирменного ширпотреба, сотня для топа. А для гиков изолированная память в виде многослойного кеша - очень быстрая флешь малого объёма с высоким ресурсом перезаписи. Пока на флешь карте есть мк - скорость явно зависит от цены девайса. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
mantech 35 27 февраля, 2020 Опубликовано 27 февраля, 2020 · Жалоба 6 часов назад, digital сказал: Торможения не должно быть при последовательной записи, так же не должно быть разница при случаной записи секторов, а вот если оперировать записью в 2-3 и тд. блоков, то как раз будет заметная разница Кто такое сказал? А выравнивание износа? Когда его делать тогда, если не в процессе записи, для чтения это нафиг не нужно... Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться