Показаны сообщения с ярлыком ssd. Показать все сообщения
Показаны сообщения с ярлыком ssd. Показать все сообщения

пятница, 24 января 2020 г.

Твердотельные накопители для ЦОД

Твердотельные накопители для ЦОД
Обзор твердотельных накопителей Samsung SM863 и PM863: из сервера – в десктоп
Samsung PM983
SSD диск Samsung PM983 960Gb MZ1LB960HAJQ-00007
Диск SSD Samsung PM983, M.2 2280, 960GB, PCI-E 3.0x4, 1100W/3000R, TLC
MZ1LB960HAJQ
pci_nvme_ssd  

 


Сравним
Накопитель SSD Intel  D3-S4610 Series (480GB) SSDSC2KG480G8
Накопитель SSD Samsung EVO 850

sudo su postgres
psql -c "CREATE DATABASE example;"
pgbench -i -s 2000 example
pgbench -U postgres -j 32 -c 32 -T 120 -v -P 5 example

Накопитель SSD Intel D3-S4610 Series (480GB) SSDSC2KG480G8
 


Накопитель SSD Samsung EVO 850



Синтетический тест скриптом от сюда

Накопитель SSD Intel D3-S4610 Series (480GB) SSDSC2KG480G8 


 Накопитель SSD Samsung EVO 850 1Tb




понедельник, 1 апреля 2019 г.

SAMSUNG EVO 850 TRIM

Причиной потери данных в накопителях Samsung оказалась ошибка в Linux
AS SSD Benchmark 2.0.6821.41776
How To Configure Periodic TRIM for SSD Storage on Linux Servers 

До конца не понял проблему SAMSUNG EVO 850 c TRIM :
$ dmesg | grep ata1
...
[    2.903916] ata1.00: disabling queued TRIM support
...

$ sudo hdparm -I /dev/sda | grep -i trim
[sudo] пароль для user:
Попробуйте ещё раз.
[sudo] пароль для user:
           *    Data Set Management TRIM supported (limit 8 blocks)


$ cat /etc/fstab

Т.е. автоматически через fstab с флагом монтирования discard не поддерживается,
но может запускаться через cron или вручную:

$ sudo fstrim -v ./



$ cat /etc/cron.weekly/fstrim
#!/bin/sh
# trim all mounted file systems which support it
/sbin/fstrim --all || true


суббота, 30 марта 2019 г.

Проверка TRIM

HOWTO: Check If TRIM On Ext4 Is Enabled And Working On Ubuntu And Other Distributions
Trim with LVM and dm-crypt
Тестирование TRIM из SSD
Включение TRIM на SSD


$ sudo -i

# dd if=/dev/urandom of=tempfilez count=100 bs=512k oflag=direct
100+0 записей получено
100+0 записей отправлено
52428800 байт (52 MB, 50 MiB) скопирован, 0,485889 s, 108 MB/s


# sync

# hdparm --fibmap tempfilez





# hdparm --read-sector 44194816 /dev/sda





#  rm tempfilez

# sync



$ wget -O /tmp/test_trim.sh "https://sites.google.com/site/lightrush/random-1/checkiftrimonext4isenabledandworking/test_trim.sh?attredirects=0&d=1"


 $ sudo nano /tmp/test_trim.sh


#!/bin/bash
#
# Test if TRIM is working on your SSD. Tested only with EXT4 filesystems
# in Ubuntu 11.10 and Fedora 16. This script is simply an automation of
# the procedures described by Nicolay Doytchev here:
#
# https://sites.google.com/site/lightrush/random-1/checkiftrimonext4isenabledandworking
#
# Author: Dorian Bolivar <dbolivar@gmail.com>
# Date: 20120129
#

if [ $# -ne 3 ]; then
        echo
        echo "Usage: $0 <filename> <size> <device>"
        echo
        echo "<filename> is a temporary file for the test"
        echo "<size> is the file size in MB"
        echo "<device> is the device being tested, e.g. /dev/sda"
        echo
        echo "Example: $0 tempfile 5 /dev/sda"
        echo
        echo "This would run the test for /dev/sda creating a"
        echo "temporary file named \"tempfile\" with 5 MB"
        echo
        exit 1
fi

FILE="$1"
SIZE=$2
DEVICE="$3"

# Create the temporary file
dd if=/dev/urandom of="$FILE" count=1 bs=${SIZE}M oflag=direct
sync

# Get the address of the first sector
hdparm --fibmap "$FILE"
SECTOR=`hdparm --fibmap "$FILE" | tail -n1 | awk '{ print $2; }'`

# Read the first sector prior to deletion
hdparm --read-sector $SECTOR "$DEVICE"
echo
echo "This is a sector of the file. It should have been successfully read"
echo "and show a bunch of random data."
echo
read -n 1 -p "Press any key to continue..."

# Delete the file and re-read the sector
rm -f $FILE
sync
echo
echo "File deleted. Sleeping for 120 seconds before re-reading the sector."
echo "If TRIM is working, you should see all 0s now."
sleep 120
hdparm --read-sector $SECTOR "$DEVICE"
echo
echo "If the sector isn't filled with 0s, something is wrong with your"
echo "configuration. Try googling for \"TRIM SSD Linux\"."
echo

exit 0

$ chmod +x /tmp/test_trim.sh

пятница, 29 марта 2019 г.

fio для Windows 64

Microsoft Windows binaries for fio

c:\Temp\fio-3.13-x64>fio --name=randwrite --ioengine=windowsaio --iodepth=1 --rw=randwrite --bs=8k --direct=1 --size=10G  --runtime=240 --group_reporting -directory /Temp -buffered=0 --numjobs=1

 write: IOPS=11.3k, BW=88.2MiB/s (92.5MB/s)(10.0GiB/116108msec)


c:\Temp\fio-3.13-x64>fio --name=randwrite --ioengine=windowsaio --iodepth=1 --rw=randwrite --bs=8k --direct=1 --size=10G  --runtime=240 --group_reporting -directory /Temp -buffered=0 --numjobs=2

write: IOPS=28.4k, BW=222MiB/s (233MB/s)(20.0GiB/92324msec)

c:\Temp\fio-3.13-x64>fio --name=randwrite --ioengine=windowsaio --iodepth=1 --rw=randwrite --bs=8k --direct=1 --size=10G  --runtime=240 --group_reporting -directory /Temp -buffered=0 --numjobs=3

write: IOPS=26.0k, BW=211MiB/s (221MB/s)(30.0GiB/145776msec)

Измерение производительности дисковой подсистемы с помощью утилиты FIO

Инструкция по измерению производительности дисковой подсистемы для unix-OS с помощью утилиты FIO.

Benchmarking SSDs with Flexible IO tester(fio)


$ sudo apt install fio

=================================================================
дальше запускаете с различными ключиками:
./fio -name iops -rw=randwrite -bs=4096 -size=10G -iodepth=20 -runtime=100 -directory /testfio -ioengine libaio -direct=1
randwrite -- рандомная запись,
bs -- blocksize -- посмотрите сколько у вас в оракле 4 или 8 или 16
size-- рекомендую побольше, чтобы превысить размер RAM-кеша массива

в результате видим в выводе массу цифр, но нас интересует iops
write: io=49732KB, bw=507666 B/s, iops=123 , runt=100313msec
т.е. 123 рандомных записи за секунду, 123*4096=503808, целых пол-мегабайта в секунду.

=================================================================
В PostgreSQL размер блока  8192

$ sudo fio --name=randwrite --ioengine=libaio --iodepth=1 --rw=randwrite --bs=8k --direct=1 --size=10G  --runtime=240 --group_reporting -directory /tmp/iotest -buffered=0 --numjobs=1


write: io=10240MB, bw=168983KB/s, iops=21122, runt= 62052msec



$ sudo fio --name=randwrite --ioengine=libaio --iodepth=1 --rw=randwrite --bs=8k --direct=1 --size=10G  --runtime=240 --group_reporting -directory /tmp/iotest -buffered=0 --numjobs=2


 write: io=20480MB, bw=283598KB/s, iops=35449, runt= 73948msec

$ sudo fio --name=randwrite --ioengine=libaio --iodepth=1 --rw=randwrite --bs=8k --direct=1 --size=10G  --runtime=240 --group_reporting -directory /tmp/iotest -buffered=0 --numjobs=3

write: io=30720MB, bw=221730KB/s, iops=27716, runt=141872msec

TRIM

How To Configure Periodic TRIM for SSD Storage on Linux Servers
Настройка Ubuntu для работы с SSD
Все о SSD TRIM
Деградация производительности SSD и методы борьбы с ней.
Как правильно мерять производительность диска
Samsung SSD HBA TRIM
Почему по мере заполнения SSD падает скорость записи в RAID, или зачем нужен TRIM




Проверка поддержки TRIM, для диска sda
$ sudo hdparm -I /dev/sda | grep -i trim

$ sudo hdparm -I /dev/sda | grep -i trim
           *    Data Set Management TRIM supported (limit 8 blocks)

Почему может тупить на запись RAID1 из двух SSD дисков?
$ sudo apt install pv
$ dd if=/dev/zero bs=110K count=60000 | pv | dd of=./zero.dd
60000+0 записей получено/s] [                                      <=>                                           ]
60000+0 записей отправлено
6758400000 байт (6,8 GB, 6,3 GiB) скопирован, 24,7248 s, 273 MB/s
6,29GiB 0:00:24 [ 260MiB/s] [                                        <=>                                         ]
13200000+0 записей получено
13200000+0 записей отправлено
6758400000 байт (6,8 GB, 6,3 GiB) скопирован, 25,987 s, 260 MB/s


Скорость Диска (Чтения/Записи): Тест HDD, SSD в Linux

$ sync; dd if=/dev/zero of=tempfile bs=1M count=10240; sync
10240+0 записей получено
10240+0 записей отправлено
10737418240 байт (11 GB, 10 GiB) скопирован, 42,0694 s, 255 MB/s

$ dd if=/dev/zero of=output.img bs=8k count=512k


$ sudo hdparm -t /dev/sda

Как измерить скорость жесткого диска


вторник, 21 августа 2018 г.

SSD Total Bytes Written

SSD Total Bytes Written Calculator
Обзор SSD Samsung 850 EVO на базе 3D NAND: быстрый, долговечный, массовый
Обзор SSD Samsung 850 Pro: рождение новой звезды?
Надёжность SSD: результаты ресурсных испытаний [обновлено 21.08.18]
Samsung 850 EVO v2
Обзор SSD-накопителя Samsung 860 EVO: и нашим и вашим


Твердотельные диски становятся все более распространенными. Проблема, связанная с SSD, - ограниченное время жизни. В зависимости от их технологии изготовления каждая ячейка может быть перезаписана с 1000 раз в пользовательских TLC SSD до 100 000 раз на корпоративных SSD-устройствах на базе SLC.

Ценность, на которую следует обратить внимание, - это гарантированное TBW (Total Bytes Written или Terabytes Written), которое обычно предоставляется поставщиком в их спецификациях. Это значение описывает, сколько терабайт может быть записано на устройство до истечения срока гарантии. Значение TBW можно считывать с помощью SMART в поле Total_LBAs_Written . Значение находится в LBA, которое необходимо умножить на размер сектора и соответственно разделить для получения результата:
на 1024 в Kb
на 1024*1024 в Mb
на 1024*1024*1024 в Gb

$ sudo apt install smartmontools
$ find /dev -name 'sd*'
/dev/sda

$ sudo smartctl -i /dev/sda


$ sudo smartctl -A /dev/sda


$ sudo smartctl /dev/sda --all |grep "Sector Size"


$ sudo smartctl /dev/sda --all | grep Total_LBAs_Written


Паспортное значение  Samsung SSD 850 EVO 1TB - 150 TB
Паспортное значение  Samsung SSD 850 EVO 250GB - 75 TB
Делаем выводы.

Другой диск 22.08.2018 10:00



пятница, 4 ноября 2016 г.

Ubuntu 12.04.5 и SSD

http://www.linuxrussia.com/2013/11/ssd-ubuntu-hdd.html

Так вот, проверяется диск на выравнивание выполнением следующей команды в консоле:
$ sudo parted /dev/sda align-check opt 1

Если будет выдано следующее сообщение
"aligned", то значит ваш диск выравнен.

Если TRIM не работает, накопитель узнает об удалении файла только в тот момент, когда ОС прикажет ему перезаписать LBA, покрывающий ставший ненужным файл.

Вся суть сводится к тому, чтобы включить это.
Для начала нужно проверить, поддерживает ли ваш ssd Trim, делается это выполнение следующей команды в терминале:

$ sudo hdparm -I /dev/sda | grep "TRIM supported"

Если в результате будет сообщение "Trim supported",
можно запускать вручную командой:

$ sudo fstrim / -v

Можно заточить, как предложено в статье:
http://www.linuxrussia.com/2013/11/ssd-ubuntu-hdd.html