Linux/Benchmarks: Difference between revisions

From Wiki
mNo edit summary
 
(33 intermediate revisions by the same user not shown)
Line 1: Line 1:
== Install ==
<pre>
sudo apt install bonnie++
sudo apt install fio
sudo apt install sysbench
sudo apt install stress-ng
</pre>
== HDD & SSD ==
== HDD & SSD ==
* bonnie++
* bonnie++
<pre>
<pre>
apt install bonnie++
sudo bonnie -d /mnt/hdd -s 4000 -u root
sudo bonnie -d /mnt/hdd -s 4000 -u root
</pre>
</pre>


* fio
* fio
:* Read Throughput
:* Read 4k Throughput
<pre>
sudo fio --name=read_throughput --directory=fiotest --numjobs=16 --size=1G --time_based \
--runtime=30s --ramp_time=2s --ioengine=libaio --direct=1 --verify=0 --bs=4k --iodepth=64 --rw=read \
--group_reporting=1 --iodepth_batch_submit=64 --iodepth_batch_complete_max=64 --unlink=1
</pre>
 
:* Read 1M Throughput
<pre>
<pre>
sudo fio --name=read_throughput --directory=fiotest --numjobs=16 --size=1G --time_based \
sudo fio --name=read_throughput --directory=fiotest --numjobs=16 --size=1G --time_based \
--runtime=30s --ramp_time=2s --ioengine=libaio --direct=1 --verify=0 --bs=1M --iodepth=64 --rw=read \
--runtime=30s --ramp_time=2s --ioengine=libaio --direct=1 --verify=0 --bs=1M --iodepth=64 --rw=read \
--group_reporting=1 --iodepth_batch_submit=64 --iodepth_batch_complete_max=64
--group_reporting=1 --iodepth_batch_submit=64 --iodepth_batch_complete_max=64 --unlink=1
</pre>
</pre>


:* Write Throughput
:* Write 4k Throughput
<pre>
sudo fio --name=write_throughput --directory=fiotest --numjobs=16 --size=1G --time_based \
--runtime=30s --ramp_time=2s --ioengine=libaio --direct=1 --verify=0 --bs=4k --iodepth=64 --rw=write \
--group_reporting=1 --iodepth_batch_submit=64 --iodepth_batch_complete_max=64 --unlink=1
</pre>
 
:* Write 1M Throughput
<pre>
<pre>
sudo fio --name=write_throughput --directory=fiotest --numjobs=16 --size=1G --time_based \
sudo fio --name=write_throughput --directory=fiotest --numjobs=16 --size=1G --time_based \
--runtime=30s --ramp_time=2s --ioengine=libaio --direct=1 --verify=0 --bs=1M --iodepth=64 --rw=write \
--runtime=30s --ramp_time=2s --ioengine=libaio --direct=1 --verify=0 --bs=1M --iodepth=64 --rw=write \
--group_reporting=1 --iodepth_batch_submit=64 --iodepth_batch_complete_max=64
--group_reporting=1 --iodepth_batch_submit=64 --iodepth_batch_complete_max=64 --unlink=1
</pre>
</pre>


Line 25: Line 46:
sudo fio --name=read_iops --directory=fiotest --size=1G --time_based --runtime=30s --ramp_time=2s \
sudo fio --name=read_iops --directory=fiotest --size=1G --time_based --runtime=30s --ramp_time=2s \
--ioengine=libaio --direct=1 --verify=0 --bs=4K --iodepth=256 --rw=randread --group_reporting=1 \
--ioengine=libaio --direct=1 --verify=0 --bs=4K --iodepth=256 --rw=randread --group_reporting=1 \
--iodepth_batch_submit=256  --iodepth_batch_complete_max=256
--iodepth_batch_submit=256  --iodepth_batch_complete_max=256 --unlink=1
</pre>
</pre>


Line 32: Line 53:
sudo fio --name=write_iops --directory=fiotest --size=1G --time_based --runtime=30s --ramp_time=2s \
sudo fio --name=write_iops --directory=fiotest --size=1G --time_based --runtime=30s --ramp_time=2s \
--ioengine=libaio --direct=1 --verify=0 --bs=4K --iodepth=256 --rw=randwrite --group_reporting=1 \
--ioengine=libaio --direct=1 --verify=0 --bs=4K --iodepth=256 --rw=randwrite --group_reporting=1 \
--iodepth_batch_submit=256  --iodepth_batch_complete_max=256
--iodepth_batch_submit=256  --iodepth_batch_complete_max=256 --unlink=1
</pre>
</pre>


Line 38: Line 59:


== CPU ==
== CPU ==
* sysbench (generals systembenchmark) [http://www.howtoforge.de/anleitung/benchmark-ihres-systems-cpu-daten-io-mysql-durchfuhren-mit-sysbench/]
* Sysbench Singlecore
<pre>
sysbench cpu --cpu-max-prime=24576 --num-threads=1 run
</pre>


* sysbench
* Sysbench RAM bandwidth
<pre>
<pre>
sudo apt install sysbench
sysbench memory --memory-total-size=20000M run
 
sysbench cpu run
sysbench --cpu-max-prime=20000 --threads=6 cpu run
</pre>
</pre>


* stress-ng
* stress-ng
<pre>
<pre>
sudo apt install stress-ng
stress-ng --cpu 1 --cpu-method matrixprod --metrics-brief --perf -t 60
stress-ng --cpu 1 --cpu-method matrixprod --metrics-brief --perf -t 60
</pre>
</pre>
* sysbench (generals systembenchmark) [http://www.howtoforge.de/anleitung/benchmark-ihres-systems-cpu-daten-io-mysql-durchfuhren-mit-sysbench/]


== Mysql ==
== Mysql ==
<pre>
<pre>
apt install sysbench
prepare (ca. 2GB data):
prepare (ca. 2GB data):
sysbench --db-driver=mysql --mysql-host='vm-docker' --mysql-db=maria --mysql-user=maria --mysql-password=maria --tables=16 --table-size=1000000 /usr/share/sysbench/oltp_read_write.lua prepare
sysbench --db-driver=mysql --mysql-host='vm-docker' --mysql-db=maria --mysql-user=maria --mysql-password=maria --tables=16 --table-size=1000000 /usr/share/sysbench/oltp_read_write.lua prepare


benchmark:
benchmark:
sysbench --db-driver=mysql --mysql-host='vm-docker' --mysql-db=maria --mysql-user=maria --mysql-password=maria --tables=16 --table-size=1000000 --threads=8 --time=60 --events=0 --report-interval=2 /usr/share/sysbench/oltp_read_write.lua run
sysbench --db-driver=mysql --mysql-host='vm-docker' --mysql-db=maria --mysql-user=maria --mysql-password=maria --tables=16 --table-size=1000000 --threads=8 --time=60 --events=0 --report-interval=2 /usr/share/sysbench/oltp_read_write.lua run
</pre>
</pre>


== Benchmarks ==
== Links ==
{| class="wikitable"
 
|+
* https://techjunkies.blog/code/hetzner-oder-netcup-vserver-benchmark-und-erfahrungen-vps/
!
 
!ml-nuc i7
!nucserver i3
!netcup RS 1000 G9.5
!
|-
|fio write throughput BW
|6341 MB/s
|443 MB/s
|1474 MB/s
|
|-
|fio read throughput BW
|5272 MB/s
|539 MB/s
|2935 MB/s
|
|-
|fio read iops
|309k
|91.0k
|23.7k
|
|-
|fio write iops
|204k
|73.2k
|37.2k
|
|}
[[Category:Linux/System]]
[[Category:Linux/System]]
[[Category:Linux]]
[[Category:Linux]]

Latest revision as of 19:34, 26 October 2024

Install

sudo apt install bonnie++
sudo apt install fio
sudo apt install sysbench
sudo apt install stress-ng

HDD & SSD

  • bonnie++
sudo bonnie -d /mnt/hdd -s 4000 -u root
  • fio
  • Read 4k Throughput
sudo fio --name=read_throughput --directory=fiotest --numjobs=16 --size=1G --time_based \
--runtime=30s --ramp_time=2s --ioengine=libaio --direct=1 --verify=0 --bs=4k --iodepth=64 --rw=read \
--group_reporting=1 --iodepth_batch_submit=64 --iodepth_batch_complete_max=64 --unlink=1
  • Read 1M Throughput
sudo fio --name=read_throughput --directory=fiotest --numjobs=16 --size=1G --time_based \
--runtime=30s --ramp_time=2s --ioengine=libaio --direct=1 --verify=0 --bs=1M --iodepth=64 --rw=read \
--group_reporting=1 --iodepth_batch_submit=64 --iodepth_batch_complete_max=64 --unlink=1
  • Write 4k Throughput
sudo fio --name=write_throughput --directory=fiotest --numjobs=16 --size=1G --time_based \
--runtime=30s --ramp_time=2s --ioengine=libaio --direct=1 --verify=0 --bs=4k --iodepth=64 --rw=write \
--group_reporting=1 --iodepth_batch_submit=64 --iodepth_batch_complete_max=64 --unlink=1
  • Write 1M Throughput
sudo fio --name=write_throughput --directory=fiotest --numjobs=16 --size=1G --time_based \
--runtime=30s --ramp_time=2s --ioengine=libaio --direct=1 --verify=0 --bs=1M --iodepth=64 --rw=write \
--group_reporting=1 --iodepth_batch_submit=64 --iodepth_batch_complete_max=64 --unlink=1
  • Read IOPS
sudo fio --name=read_iops --directory=fiotest --size=1G --time_based --runtime=30s --ramp_time=2s \
--ioengine=libaio --direct=1 --verify=0 --bs=4K --iodepth=256 --rw=randread --group_reporting=1 \
--iodepth_batch_submit=256  --iodepth_batch_complete_max=256 --unlink=1
  • Write IOPS
sudo fio --name=write_iops --directory=fiotest --size=1G --time_based --runtime=30s --ramp_time=2s \
--ioengine=libaio --direct=1 --verify=0 --bs=4K --iodepth=256 --rw=randwrite --group_reporting=1 \
--iodepth_batch_submit=256  --iodepth_batch_complete_max=256 --unlink=1


CPU

  • Sysbench Singlecore
sysbench cpu --cpu-max-prime=24576 --num-threads=1 run
  • Sysbench RAM bandwidth
sysbench memory --memory-total-size=20000M run
  • stress-ng
stress-ng --cpu 1 --cpu-method matrixprod --metrics-brief --perf -t 60
  • sysbench (generals systembenchmark) [1]

Mysql

prepare (ca. 2GB data):
sysbench --db-driver=mysql --mysql-host='vm-docker' --mysql-db=maria --mysql-user=maria --mysql-password=maria --tables=16 --table-size=1000000 /usr/share/sysbench/oltp_read_write.lua prepare

benchmark:
sysbench --db-driver=mysql --mysql-host='vm-docker' --mysql-db=maria --mysql-user=maria --mysql-password=maria --tables=16 --table-size=1000000 --threads=8 --time=60 --events=0 --report-interval=2 /usr/share/sysbench/oltp_read_write.lua run

Links