すべてのプロダクト
Search
ドキュメントセンター

Elastic Compute Service:i4pインスタンスのローカルディスクのパフォーマンスをテストする

最終更新日:Oct 23, 2024

ローカルSSDを搭載したi4pパフォーマンス強化インスタンスファミリーは、第2世代Intelベースの超高性能ローカルディスクを提供します。®Optane永続メモリ。 このトピックでは、IOPS、スループット、レイテンシなどのローカルディスクのパフォーマンスメトリックをi4pインスタンスでテストする方法について説明します。

i4pインスタンスファミリーの詳細については、「ローカルSSDを使用したインスタンスファミリー」トピックのi4p、パフォーマンス強化型インスタンスファミリーをご参照ください。

テスト条件

  • テストツール: フレキシブルI/Oテスター (fio) 。

    説明

    fioはオープンソースの強力なI/Oパフォーマンスベンチマークツールで、ランダムな読み書き操作やシーケンシャルな読み書き操作など、ブロックストレージデバイスのパフォーマンス指標をテストできます。

  • インスタンスタイプ: i4pインスタンスタイプ。 i4pインスタンスタイプのインスタンスを使用し、インスタンス上のローカルディスクを初期化します。 ローカルディスクの初期化方法については、「永続メモリの使用モードの設定」トピックの「永続メモリをローカルディスクとして設定する」セクションをご参照ください。

  • イメージ: Alibaba Cloudが提供する最新バージョンのLinuxパブリックイメージを使用します。 この例では、Alibaba Cloud Linux 3が使用されています。

    説明

    テスト結果によると、ESSDは特定のLinuxディストリビューションイメージで期待されるIOPSパフォーマンスを達成できない可能性があります。 Alibaba Cloudによって管理されているAlibaba Cloud Linux 3イメージを使用することを推奨します。

手順

  1. ECS インスタンスに接続します。

    詳細については、「パスワードまたはキーを使用したLinuxインスタンスへの接続」をご参照ください。

  2. 次のコマンドを実行してfioをインストールします。

    sudo yum install -y ndctl daxctl ipmctl libpmem librpmem libpmemblk libpmemlog libpmemobj libpmempool pmempool fio
  3. コマンドを実行して、ローカルディスクのパフォーマンスをテストします。

    サンプルコマンドの詳細については、このトピックの「テストIOPS」、「テストスループット」、および「テストレイテンシ」のセクションをご参照ください。

    重要

    テストを連続して実行する場合は、各テストの後にsudo rm /mnt/sdb/* -rfコマンドを実行して、ローカルディスク上の以前のテストの残りの結果を削除し、次のテストのためにクリーンな環境を準備します。

テストIOPS

  • ローカルディスクのシーケンシャル読み取りIOPSのテスト

    sudo fio --name=test --directory=/mnt/sdb --ioengine=libpmem --direct=1 --thread=8 --numjobs=8 --iodepth=1 --rw=read --bs=4k --size=8GB --norandommap=1 --randrepeat=0 --invalidate=1 --iodepth_batch=1 --sync=1 --scramble_buffers=0 --numa_cpu_nodes=0 --numa_mem_policy=bind:0 --cpus_allowed_policy=split
  • ローカルディスクのシーケンシャル書き込みIOPSのテスト

    sudo fio --name=test --directory=/mnt/sdb --ioengine=libpmem --direct=1 --thread=8 --numjobs=8 --iodepth=1 --rw=write --bs=4k --size=1GB --norandommap=1 --randrepeat=0 --invalidate=1 --iodepth_batch=1 --sync=1 --scramble_buffers=0 --numa_cpu_nodes=0 --numa_mem_policy=bind:0 --cpus_allowed_policy=split
  • ローカルディスクのランダム読み取りIOPSのテスト

    sudo fio --name=test --directory=/mnt/sdb --ioengine=libpmem --direct=1 --thread=8 --numjobs=8 --iodepth=1 --rw=randread --bs=4k --size=8GB --norandommap=1 --randrepeat=0 --invalidate=1 --iodepth_batch=1 --sync=1 --scramble_buffers=0 --numa_cpu_nodes=0 --numa_mem_policy=bind:0 --cpus_allowed_policy=split
  • ローカルディスクのランダム書き込みIOPSのテスト

    sudo fio --name=test --directory=/mnt/sdb --ioengine=libpmem --direct=1 --thread=8 --numjobs=8 --iodepth=1 --rw=randwrite --bs=4k --size=1GB --norandommap=1 --randrepeat=0 --invalidate=1 --iodepth_batch=1 --sync=1 --scramble_buffers=0 --numa_cpu_nodes=0 --numa_mem_policy=bind:0 --cpus_allowed_policy=split

テストスループット

  • ローカルディスクのシーケンシャル読み取りスループットのテスト

    sudo fio --name=test --directory=/mnt/sdb --ioengine=libpmem --direct=1 --thread=8 --numjobs=96 --iodepth=1 --rw=read --bs=64k --size=1GB --norandommap=1 --randrepeat=0 --invalidate=1 --iodepth_batch=1 --sync=1 --scramble_buffers=0 --numa_cpu_nodes=0 --numa_mem_policy=bind:0 --cpus_allowed_policy=split
  • ローカルディスクのシーケンシャル書き込みスループットのテスト

    sudo fio --name=test --directory=/mnt/sdb --ioengine=libpmem --direct=1 --thread=1 --numjobs=8 --iodepth=1 --rw=write --bs=64k --size=1GB --norandommap=1 --randrepeat=0 --invalidate=1 --iodepth_batch=1 --sync=1 --scramble_buffers=0 --numa_cpu_nodes=0 --numa_mem_policy=bind:0 --cpus_allowed_policy=split
  • ローカルディスクのランダム読み取りスループットのテスト

    sudo fio --name=test --directory=/mnt/sdb --ioengine=libpmem --direct=1 --thread=8 --numjobs=96 --iodepth=1 --rw=randread --bs=64k --size=1GB --norandommap=1 --randrepeat=0 --invalidate=1 --iodepth_batch=1 --sync=1 --scramble_buffers=0 --numa_cpu_nodes=0 --numa_mem_policy=bind:0 --cpus_allowed_policy=split
  • ローカルディスクのランダム書き込みスループットのテスト

    sudo fio --name=test --directory=/mnt/sdb --ioengine=libpmem --direct=1 --thread=8 --numjobs=96 --iodepth=1 --rw=randwrite --bs=64k --size=1GB --norandommap=1 --randrepeat=0 --invalidate=1 --iodepth_batch=1 --sync=1 --scramble_buffers=0 --numa_cpu_nodes=0 --numa_mem_policy=bind:0 --cpus_allowed_policy=split

テストの待ち時間

  • ローカルディスクのシーケンシャル読み取りレイテンシのテスト

    sudo fio --name=test --directory=/mnt/sdb --ioengine=libpmem --direct=1 --thread=1 --numjobs=1 --iodepth=1 --rw=read --bs=4k --size=8GB --norandommap=1 --randrepeat=0 --invalidate=1 --iodepth_batch=1 --sync=1 --scramble_buffers=0 --numa_cpu_nodes=0 --numa_mem_policy=bind:0 --cpus_allowed_policy=split
  • ローカルディスクのシーケンシャル書き込みレイテンシのテスト

    sudo fio --name=test --directory=/mnt/sdb --ioengine=libpmem --direct=1 --thread=1 --numjobs=1 --iodepth=1 --rw=write --bs=4k --size=8GB --norandommap=1 --randrepeat=0 --invalidate=1 --iodepth_batch=1 --sync=1 --scramble_buffers=0 --numa_cpu_nodes=0 --numa_mem_policy=bind:0 --cpus_allowed_policy=split