Linuxシステムベンチマークテスト

Windows 平台上有鲁大师(娱乐大师),不能说数据很准,但总归有个参考,当然也有其他的专业跑分软件。到了 Linux 系统,好像一直没遇到特别合适的跑分软件。

Sysbench 是一款多功能的基准测试工具,可用于测试 CPU、内存、文件 I/O、线程性能等。您可以使用 Sysbench 来执行各种性能测试任务。

手头上刚好有三台机器用于测试:机械师 mini 本地小主机、阿里云 dev 开发云服务器、华为云开发服务器。

Sysbench のインストール

ほとんどの Linux ディストリビューションでは、パッケージマネージャを使用して Sysbench をインストールできます。例えば、CentOS 8 では、次のコマンドを使用します。

sudo dnf install sysbench

Sysbenchの使用例

  • CPU性能のテスト: sysbench --test=cpu run
  • メモリ読み取り性能のテスト: sysbench --test=memory run
  • ファイルI/O性能のテスト:
sysbench --test=fileio --file-test-mode=rndrw prepare
sysbench --test=fileio --file-test-mode=rndrw run
sysbench --test=fileio --file-test-mode=rndrw cleanup
  • マルチスレッド性能のテスト: sysbench --test=threads --num-threads=4 run
  • MySQLデータベース性能のテスト(最大接続数を調整する必要あり):
sysbench --test=oltp --db-driver=mysql --mysql-db=test --mysql-user=yourusername --mysql-password=yourpassword --oltp-table-size=1000000 prepare
sysbench --test=oltp --db-driver=mysql --mysql-db=test --mysql-user=yourusername --mysql-password=yourpassword --max-time=60 --oltp-read-only=off --oltp-test-mode=complex --max-requests=0 run
sysbench --test=oltp --db-driver=mysql --mysql-db=test --mysql-user=yourusername --mysql-password=yourpassword cleanup

ランニングデータレポート

実行データレポート

ABCD
1
ローカル機械師阿里云华为云
2
システム構成システム情報
オペレーティングシステム Ubuntu 23.04
カーネル Linux 6.2.0-36-generic x86_64
モデル Machenike Machenike DT Computer
マザーボード Machenike Machenike DT Computer
BIOS American Megatrends International, LLC.
DB19V012

CPU情報
名前 Intel Core i7-12650H
トポロジー 1 プロセッサ、10 コア、16 スレッド
識別子 GenuineIntel Family 6 Model 154 Stepping 3
ベース周波数 4.60 GHz
L1 命令キャッシュ 32.0 KB x 8
L1 データキャッシュ 48.0 KB x 8
L2 キャッシュ 1.25 MB x 2
L3 キャッシュ 24.0 MB

メモリ情報
サイズ 62.6 GB
システム情報
オペレーティングシステム CentOS Stream 8
カーネル Linux 4.18.0-513.el8.x86_64 x86_64
モデル Alibaba Cloud Alibaba Cloud ECS
マザーボード N/A
BIOS SeaBIOS 449e491

CPU情報
名前 Intel(R) Xeon(R) Platinum
トポロジー 1 プロセッサ、1 コア、2 スレッド
識別子 GenuineIntel Family 6 Model 85 Stepping 4
ベース周波数 2.50 GHz
L1 命令キャッシュ 32.0 KB
L1 データキャッシュ 32.0 KB
L2 キャッシュ 1.00 MB
L3 キャッシュ 33.0 MB

メモリ情報
サイズ 1.65 GB
システム情報
オペレーティングシステム Ubuntu 22.04.1 LTS
カーネル Linux 5. - 64 GB
  • 実行データレポート system LuaJIT 2.1.0-beta3)

    テストの実行方法:指定されたオプションで
    スレッド数: 1
    乱数ジェネレーターを現在の時間から初期化


    素数の制限: 10000

    ワーカーのスレッドの初期化…

    スレッドが開始されました!

    CPU速度:
    毎秒イベント数: 4032.48

    一般的な統計情報:
    合計時間: 10.0004秒
    イベントの総数: 40330

    遅延 (ms):
    最小値: 0.25
    平均値: 0.25
    最大値: 0.73
    95パーセンタイル: 0.25
    合計: 9997.55

    スレッドの公平性:
    イベント (平均/標準偏差): 40330.0000/0.00
    実行時間 (平均/標準偏差): 9.9975/0.00

  • データマイニング

  • ディープラーニング

  • ニューラルネットワーク - 実行データレポート system LuaJIT 2.1.0-beta3)

    テストの実行方法:指定されたオプションで
    スレッド数: 1
    乱数ジェネレーターを現在の時間から初期化


    素数の制限: 10000

    ワーカーのスレッドの初期化…

    スレッドが開始されました!

    CPU速度:
    毎秒イベント数: 4032.48

    一般的な統計情報:
    合計時間: 10.0004秒
    合計イベント数: 40330

    遅延 (ms):
    最小: 0.25
    平均: 0.25
    最大: 0.73
    95パーセンタイル: 0.25
    合計: 9997.55

    スレッドの公平性:
    イベント (平均/標準偏差): 40330.0000/0.00
    実行時間 (平均/標準偏差): 9.9975/0.00

  • sysbench 1.0.20 (system LuaJIT 2.1.0-beta3を使用)

    テストの実行方法:指定されたオプションで
    スレッド数: 1
    乱数ジェネレーターを現在の時間から初期化


    素数の制限: 10000

    ワーカーのスレッドの初期化…

    スレッドが開始されました!

    CPU速度:
    毎秒イベント数: 1062.51

    一般的な統計情報:
    合計時間: 10.0008秒
    合計イベント数: 10628

    遅延 (ms):
    最小: 0.91
    平均: 0.94
    最大: 22.84
    95パーセンタイル: 1.06
    合計: 9993.46

    スレッドの公平性:
    イベント (平均/標準偏差): 10628.0000/0.00
    実行時間 (平均/標準偏差): 9.9935/0.00

  • sysbench 1.0.20 (system LuaJIT 2.1.0-beta3を使用)

    テストの実行方法:指定されたオプションで
    スレッド数: 1
    乱数ジェネレーターを現在の時間から初期化


    素数の制限: 10000

    ワーカーのスレッドの初期化…

    スレッドが開始されました!

    CPU速度:
    毎秒イベント数: 1125.56

    一般的な統計情報:
    合計時間: 10.0005秒
    合計イベント数: 11258

    遅延 (ms):
    最小: 0.86
    平均: 0.89
    最大: 1.70
    95パーセンタイル: 0.99
    合計: 9995.40

    スレッドの公平性:
    イベント (平均/標準偏差): 11258.0000/0.00
    実行時間 (平均/標準偏差): 9.9954/0.00

  • メモリテストを実行するオプション:指定されたオプションで
    ブロックサイズ: 1KiB
    合計サイズ: 102400MiB
    操作: 書き込み
    範囲: グローバル

    ワーカーのスレッドの初期化…

    スレッドが開始されました!

    総イベント数: 101993199 (10198146.52/秒)
    <

ランダム数生成レポート

現在の時刻からの乱数ジェネレーター


次のオプションでメモリ速度テストを実行中:
ブロックサイズ:1KiB
合計サイズ:102400MiB
操作:書き込み
範囲:グローバル

ワーカースレッドの初期化…

スレッド開始!

総操作数:48418803 (1秒あたり4841004.79)

転送されたデータ:47283.99 MiB (1秒あたり4727.54 MiB)


一般的な統計:
合計時間: 10.0001s
イベント総数: 48418803

レイテンシ(ms):
最小: 0.00
平均: 0.00
最大: 25.26
95パーセンタイル: 0.00
合計: 4578.95

スレッドの公平性:
イベント(平均/標準偏差): 48418803.0000/0.00
実行時間(平均/標準偏差): 4.5789/0.00


ランニングテストで次のオプションを使用中:
スレッド数:1
現在の時刻からの乱数ジェネレーターの初期化


追加ファイルオープンフラグ:(なし)
128ファイル、各16MiB
2GiBの合計ファイルサイズ
ブロックサイズ 16KiB
IOリクエスト数:0
組み合わせてランダムIOテストの読み取り/書き込み比率:1.50
定期的なFSYNCが有効になっており、各100リクエストごとにfsync()を呼び出しています。
テストの最後にfsync()を呼び出すことが有効になっています。
同期I/Oモードを使用
ランダムな読み取り/書き込みテストを実行中
ワーカースレッドの初期化…

スレッド開始!


ファイル操作:
読み取り/秒: 3373.41
書き込み/秒: 2248.94
fsync/秒: 7201.80

スループット:
読み取り、MiB/s: 52.71
書き込み、MiB/s: 35.14

一般的な統計:
合計時間: 10.0127s
イベント総数: 128288

レイテンシ(ms):
最小: 0.00
平均: 0.08
最大: 5.14
95パーセンタイル: 0.34
合計: 9977.78

スレッドの公平性:
イベント(平均/標準偏差): 128288.0000/0.00
実行時間(平均/標準偏差): 9.9778/0.00

スループット:
読み取り、MiB/s: 52.71
書き込み、MiB/s: 35.14

一般的な統計:
合計時間: 10.0127s
イベント総数: 128288

レイテンシ(ms):
最小: 0.00
平均: 0.08
最大: 5.14
95パーセンタイル: 0.34
合計: 9977.78

スレッドの公平性:
イベント(平均/標準 ## ランダム数生成データレポート 現在の時刻からの乱数ジェネレーター


次のオプションでメモリ速度テストを実行中:
ブロックサイズ:1KiB
合計サイズ:102400MiB
操作:書き込み
範囲:グローバル

ワーカースレッドの初期化…

スレッド開始!

総操作数:48418803 (1秒あたり4841004.79)

転送されたデータ:47283.99 MiB (1秒あたり4727.54 MiB)


一般的な統計:
合計時間: 10.0001s
イベント総数: 48418803

遅延(ms):
最小: 0.00
平均: 0.00
最大: 25.26
95パーセンタイル: 0.00
合計: 4578.95

スレッドの公平性:
イベント(平均/標準偏差): 48418803.0000/0.00
実行時間(平均/標準偏差): 4.5789/0.00


テストオプションで実行中:
スレッド数:1
現在の時刻からの乱数ジェネレーターの初期化


追加ファイルオープンフラグ:(なし)
128ファイル、各16MiB
2GiBの合計ファイルサイズ
ブロックサイズ 16KiB
IOリクエスト数:0
組み合わせてランダムIOテストの読み取り/書き込み比率:1.50
定期的なFSYNCが有効になり、各100リクエストごとにfsync()が呼び出されます。
テストの終了時にfsync()を呼び出す。有効になっています。
同期I/Oモードを使用
ランダムな読み取り/書き込みテストを実行中
ワーカースレッドの初期化…

スレッド開始!


ファイル操作:
読み取り/秒: 3373.41
書き込み/秒: 2248.94
fsync/秒: 7201.80

スループット:
読み取り、MiB/s: 52.71
書き込み、MiB/s: 35.14

一般的な統計:
合計時間: 10.0127s
イベント総数: 128288

遅延(ms):
最小: 0.00
平均: 0.08
最大: 5.14
95パーセンタイル: 0.34
合計: 9977.78

スレッドの公平性:
イベント(平均/標準偏差): 128288.0000/0.00
実行時間(平均/標準偏差): 9.9778/0.00

スループット: 読み取り、MiB/s: 52.71 書き込み、MiB/s: 35.14


ディスク: 2147483648 バイトを 1.81 秒で書き込みました (1129.59 MiB/秒)。

テストオプションで実行中:
スレッド数:1
現在の時刻からの乱数ジェネレーターの初期化


追加ファイルオープンフラグ:(なし)
128ファイル、各16MiB
2GiBの合計ファイルサイズ
ブロックサイズ 16KiB
IOリクエスト数:0
組み合わせてランダムIOテストの読み取り/書き込み比率:1.

実行データレポート

enabled, 各100リクエストごとにfsync()を呼び出す。
テストの終了時にfsync()を呼び出し、有効化。
同期I/Oモードを使用中
ランダムなr/wテストを実行中
ワーカースレッドの初期化…

スレッドが開始されました!


ファイル操作:
読み込み/秒: 1593.12
書き込み/秒: 1062.08
fsync/秒: 3406.64

帯域幅:
読み取り (MiB/s): 24.89
書き込み (MiB/s): 16.60

一般的な統計:
合計時間: 10.0164秒
イベント総数: 60600

レイテンシ (ms):
最小: 0.00
平均: 0.16
最大: 31.32
95パーセンタイル: 0.54
合計: 9956.30

スレッドの公平性:
イベント (平均/標準偏差): 60600.0000/0.00
実行時間 (平均/標準偏差): 9.9563/0.00


2147483648 バイトを 18.29 秒で書き込みました (111.98 MiB/秒)。

以下のオプションでテストを実行中:
スレッド数: 1
現在の時刻から乱数ジェネレーターを初期化


追加のファイルオープンフラグ:(なし)
128 ファイル、各 16MiB
2GiB の合計ファイルサイズ
ブロックサイズ 16KiB
IO リクエスト数: 0
ランダムな IO テストの読み取り/書き込み比率: 1.50
定期的な FS INC を有効にし、各 100 リクエストごとに fsync() を呼び出す。
テストの終了時に fsync() を呼び出し、有効化。
同期 I/O モードを使用中
ランダムな r/w テストを実行中
ワーカースレッドの初期化…

スレッドが開始されました!


ファイル操作:
読み込み/秒: 1665.88
書き込み/秒: 1110.59
fsync/秒: 3563.77

帯域幅:
読み取り (MiB/s): 26.03
書き込み (MiB/s): 17.35

一般的な統計:
合計時間: 10.0112秒
イベント総数: 63355

レイテンシ (ms):
最小: 0.00
平均: 0.16
最大: 205.01
95パーセンタイル: 0.78
合計: 9972.64

スレッドの公平性:
イベント (平均/標準偏差): 63355.0000/0.00
実行時間 (平均/標準偏差): 9.9726/0.00


スレッド数: 4 初期化されたランダムな数値ジェネレーターから現在の時刻を初期化…

ワーカースレッドが開始されました!


一般的な統計:
合計時間: 10.0002秒
イベント総数: 197956

レイテンシ (ms):
最小: 0.16
平均: 0.20

実行結果レポート

合計: 40050.41

スレッド公平性:
イベント (平均/標準偏差): 4590.0000/94.36
実行時間 (平均/標準偏差): 10.0126/0.00

テスト実行時のオプション: スレッド数: 4 現在の時刻から乱数生成器を初期化


ワーカースレッドの初期化…

スレッド起動!


一般統計: 合計時間: 10.0004秒 合計イベント数: 28536

遅延 (ms): 最小: 0.23 平均: 1.40 最大: 3.56 95パーセンタイル: 1.47 合計: 39975.16

スレッド公平性: イベント (平均/標準偏差): 7134.0000/39.87 実行時間 (平均/標準偏差): 9.9938/0.01

追記

ChatGPTは依然として優れたものですが、以前習得していたMarkdownで完全にテーブルを作成できず、テーブルとして表示すると効果が著しく低下します。カスタムテーマによってページの最大幅が制限されるため、幅を百分率制に調整しました。

  • 簡単な方法としては、TablesGeneratorのようなオンラインツールを使用してHTMLテーブルを生成する方法がありますが(内容が複雑だと不向きです)。
  • または、Googleドキュメントで作成し、HTMLドキュメントとしてダウンロードして保存し、ブログに直接コピーする方法を採用しました(シンプルかつ直接的です)。

configの設定でunsafeな設定項目を有効にし、ページごとの幅設定を個別に指定するようにしてください。Hugoでは、ページごとに個別に幅を設定できます。これは、ページのFront Matterにカスタムパラメータを追加することで実現できます。以下はその例です。

  1. MarkdownファイルのFront Matterセクション(通常はファイルの冒頭部分)にカスタムパラメータ(例えばcustom_width)を追加します:
---
title: "私のページ"
date: 2024-01-09
custom_width: "800px"  # 幅を800ピクセルに設定
---

本文内容...
  1. Hugoのテーマで、対応する単一ページテンプレートファイル(例えばlayouts/_default/single.html)を見つけてください。
  2. 単一ページテンプレート内で、Front Matterにcustom_widthパラメータが存在するか確認し、それを適切なHTML要素(例えばdiv)に適用します:
{{ define "main" }}
  <div style="max-width: {{ with .Params.custom_width }}{{ . }}{{ else }}100%{{ end }}; margin: 0 auto;">
    {{ .Content }}
  </div>
{{ end }}

この例では、内联スタイル(style属性)を使用してdiv要素のmax-width属性を設定し、custom_widthパラメータが指定されていない場合、幅をデフォルトで100%にしています。margin: 0 auto;div要素を中央揃えにします。

実際のアプリケーションでは、テーマの構造やCSSスタイルの詳細に応じて、上記の例を調整する必要がある場合があります。スタイルを調整する際には、テーマの一貫性と可読性を維持するようにしてください。

最後に、使用しているテーマが若干異なるため、サイト全体でカスタムCSSの設定も調整しました。

Licensed under CC BY-NC-SA 4.0
最終更新 2025年06月02日 20:54
金融ITプログラマーのいじくり回しと日常のつぶやき
Hugo で構築されています。
テーマ StackJimmy によって設計されています。