Це команда regorge, яку можна запустити у безкоштовного хостинг-провайдера OnWorks за допомогою однієї з наших безкоштовних онлайн-робочих станцій, таких як Ubuntu Online, Fedora Online, онлайн-емулятор Windows або онлайн-емулятор MAC OS
ПРОГРАМА:
ІМ'Я
spew - вимірює продуктивність введення-виводу та/або створює навантаження введення-виводу
СИНТАКСИС
виплюнути --write|--read|--read-after-write [ВАРІАНТ]... TRANSFER_SIZE[kKmMgG] Фото
ОПИС
Інструмент вимірювання продуктивності введення-виводу та створення навантаження. Згенеровано запис та/або читання
дані до або з символьного пристрою, блокового пристрою або звичайного файлу.
-B, --max-buffer-size=BUFFER_SIZE
Кожен зчитування(2) /запис(2) виклик використовує максимальний буфер розміром BUFFER_SIZE.
-b, --min-buffer-size=BUFFER_SIZE
Кожен зчитування(2) /запис(2) виклик використовує мінімальний буфер розміром BUFFER_SIZE.
-c, --продовження після помилки
Продовжити після помилок цілісності даних.
-d, --прямий
Використовуйте прямий ввод-вивод. Слід використовувати лише для файлів блочного пристрою. Не всі діючі
системи підтримують прямий ввод-вивод
-g, --generate-load
Дорівнює: -v -t -P -p випадковий -i 0.
-i, --ітерації=COUNT
Запис/читання даних COUNT разів. Якщо count дорівнює 0, повторюється вічно.
-l, --файл журналу=LOGFILE
Надсилати повідомлення журналу до LOGFILE.
--без прогресу
Не показувати прогрес (за замовчуванням).
--no-rcfiles
Не використовуйте стандартні rc-файли.
-q, -- немає статистики
Не виводьте статистику.
--ні-туй
Не використовуйте інтерфейс TUI.
-o, --зміщення=OFFSET
Перейдіть до OFFSET перед запуском введення-виведення.
-P, -- прогрес
Показати прогрес.
-p, -- візерунок=ПАТЕРН
Використовуйте шаблон даних PATTERN під час читання або запису даних.
-r, --випадковий
Буфери читання/запису до випадкових зміщень.
-сирий Псевдонім для --читання-після-запис.
--rcfile=RCFILE
Прочитайте параметри командного рядка з RCFILE.
--прочитати Прочитати дату з FILE.
--читання-після-запис
Зчитування даних після запису до FILE.
-S, --насіння=SEED
Використовуйте SEED для початку випадкових чисел.
-s, --синхронізація
Використовуйте синхронний ввод-вивод.
--статистика
Вивести статистику (за замовчуванням).
-t, --туй
Використовуйте термінальний інтерфейс користувача на основі curses.
-u, --одиниці=ОДИНИЦЬ
Показати швидкість передачі в UNITS одиницях.
--використання
Показати коротке повідомлення про використання та вийти.
-V, -- версія
Вивести інформацію про версію та вийти.
-v, --детальна статистика
Вивести детальну статистику.
--пиши
Запис даних у FILE.
-?, --допомога
Покажіть цю довідку та вийдіть.
FILE Звичайний файл або файл пристрою для запису даних.
LOGFILE
Шлях до файлу, який використовується для реєстрації.
MAX_BUFFER_SIZE
Мінімальний розмір буфера, що використовується в кожному зчитування(2) /запис(2) виклик (за умовчанням MIN_BUFFER_SIZE
байтів). MAX_BUFFER_SIZE. Має бути парним кратним 512 байтам і може бути
вказано в байтах, кібібайтах (k), кілобайтах (K), мебібайт(м), мегабайти (М),
гібібайти (g), гігабайти (G). тебібайт (t) або терабайт (T). MAX_BUFFER_SIZE
за замовчуванням MIN_BUFFER_SIZE. Якщо MAX_BUFFER_SIZE > MIN_BUFFER_SIZE, випадкові буфери
використовуються розміри між двома межами. MAX_BUFFER_SIZE має бути парним кратним
MIN_BUFFER_SIZE.
MIN_BUFFER_SIZE
Мінімальний розмір буфера, що використовується в кожному зчитування(2) /запис(2) виклик (за замовчуванням 512 байт).
MIN_BUFFER_SIZE. Має бути парним кратним 512 байтам і може бути вказано в
байти, кібібайти (k), кілобайти (K), мебібайт(м), мегабайти (М), гібібайти (г),
гігабайт (G). тебібайт (t) або терабайт (T).
OFFSET Позиція для пошуку у файлі перед запуском введення-виводу (за замовчуванням 0). OFFSET має бути
парне кратне 512 байтам і може бути вказано в байтах, кібібайтах (k),
кілобайти (К), мебібайт(m), мегабайти (M), гібібайти (g), гігабайти (G).
тебібайт (t) або терабайт (T).
ПАТЕРН
Шаблон даних, який використовується під час запису/читання даних. Доступні шаблони: немає, нулі,
одиниці, alt, random, числа та «#» (де «#» — число від 0 до 255). The
шаблон за замовчуванням — «немає».
RCFILE Читання додаткових параметрів командного рядка з RCFILE. Інші варіанти на
командний рядок замінить параметри в RCFILE.
SEED Використовується для заповнення генератора випадкових чисел Має бути >= 1 і <= 2^32.
TRANSFER_SIZE
Загальна кількість байтів для передачі (повинна бути парною кратною MIN_BUFFER_SIZE
і MAX_BUFFER)SIZE). TRANSFER_SIZE можна вказати в байтах, кілобайтах,
мегабайти або гігабайти.
UNITS Кібібайти (к), кілобайти (К), мебібайт(m), мегабайти (M), гібібайти (g), гігабайти (G).
тебібайт (t) або терабайт (T).
ПРИКЛАДИ
виплюнути --пиши -b 16k 1m /tmp/bigfile
or
виплюнути -b 16k 1m /tmp/bigfile
Записує 1 мебібайт (1 мебібайт = 1024*1024 байт), використовуючи 16 кібібайт (1 кібібайт = 1024
байт) запити до файлу /tmp/bigfile використовуючи шаблон за замовчуванням (випадковий). Відображає
швидкість передачі запису в кібібайтах в секунду і час передачі запису в секундах.
виплюнути --пиши -u m -i 10 -b 1k 256k / dev / sda1
or
виплюнути -u m -i 10 -b 1k 256k / dev / sda1
Записує 256 кібібайт за допомогою запитів 1 кібібайт у файл блокового пристрою / dev / sda1 10 раз
використовуючи шаблон за замовчуванням (випадковий). Ітерації та кумулятивні швидкості передачі запису є
відображається в мебібайтах на секунду, а також час ітерації та сукупний час передачі запису
відображаються в секундах.
виплюнути -сирий -d -o 1m -b 16m 1g /tmp/bigfile
or
поповнюватись -s -o 1m -b 16m 1g /tmp/bigfile
Запишіть 1 гібібайт (1 гібібайт = 1024*1024*1024 байт), починаючи зі зміщення в 1 мебібайт
використовуючи 16 мебібайтних запитів до файлу /tmp/bigfile використовуючи шаблон за замовчуванням (випадковий).
Дані записуються синхронно і очищаються при закритті файлу. Потім прочитайте ті ж дані
використовуючи той самий розмір запиту та зміщення. Дані перевіряються, щоб переконатися, що дані прочитані
у збігах зчитуються дані. Швидкості передачі запису та читання відображаються в
кібібайт/сек. Час передачі читання та запису відображається в секундах.
виплюнути --прочитати -i 0 -u M -p нулі -b 512 1m / dev / нуль
or
горло -i 0 -u M -p нулі -b 512 1m / dev / нуль
Прочитайте 1 мебібайт даних, використовуючи 512-байтні запити з файлу / dev / нуль нескінченне число
разів, використовуючи шаблон нулів (не перевіряйте дані). Ітерація і накопичувальна
Швидкість передачі читання відображається в мегабайтах (1 мегабайт = 1,000,000 XNUMX XNUMX байт) в секунду
а час ітерації та сукупний час передачі читання відображаються в секундах.
виплюнути -сирий -g -r -b 1k -B 256K 1t /dev/md1
or
поповнюватись -g -r -b 1k -B 256K 1t /dev/md1
Запишіть 1 тебібайт (1 тебібайт = 1024*1024*1024*1024 байт), використовуючи запити 1-256 кібібайт для
блоковий пристрій /dev/md1 використовуючи випадковий шаблон. Раніше виконуються випадкові пошуки
кожну передачу, але кожен блок між початком і кінцем даних записується точно
один раз. Розміри запиту вибираються випадковим чином. Потім прочитайте ті самі дані, використовуючи ті самі
розміри запитів і пошук у тій же послідовності. Повторюйте наведену вище послідовність нескінченно
кількість разів, поки не буде вказано вийти (за допомогою сигналу або команди TUI).
Дані перевіряються, щоб переконатися, що зчитовані дані збігаються з даними, що зчитуються. Прокляття -
TUI на основі відображення ітерацій та кумулятивної швидкості передачі, часу передачі та
передано байтів. Відображати детальну статистику після виходу.
АЛГОРИТМИ
Наступний алгоритм використовується для визначення розміру блоку, коли MAX_BUFFER_SIZE >
MIN_BUFFER_SIZE:
Знайдіть найбільший розмір блоку, який має ступінь 2 і становить >= MAX_BUFFER_SIZE. Зателефонуйте цим
maxbuffersize. Знайдіть найменший розмір буфера, який має ступінь 2 і дорівнює >=
MIN_BUFFER_SIZE. Назвіть це minbuffersize. Chunksize = maxbuffersize * (різниця в
кількість бітів між мінімальним і максимальним розміром буфера + 1). Кількість шматків дорівнює
TRANSFER_SIZE/розмір шматка. Назвіть це numchunk. Буде кількість numchunks
читання/записи, які мають розмір maxbuffersize, 2 * numchunks кількість читання/запису, які
розміру maxbuffersize/2, 4 * numchunks кількість читань/записів, які мають розмір
maxbuffersize/4, і так далі, поки не буде досягнуто minbuffersize. MIN_BUFFER_SIZE використовується для
будь-які передачі, що залишилися, якщо TRANSFER_SIZE не ділиться рівномірно на розмір шматків.
Приклад: використання MIN_BLOCK_SIZE 1к, MAX_BLOCK_SIZE 8к і TRANSFER_SIZE 264к
призводить до 8 8k читання/запису, 16 4k читання/запису, 32 2k читання/запису та 64 + 8 1k
читати/записувати.
ПАРТНЕРИ
Використовуйте наступне od(1) команда для перевірки згенерованих файлів, які мають цілісність даних
виникла проблема:
od -A d --format=d8 --width=32
Використовуйте regorge онлайн за допомогою сервісів onworks.net