Macに搭載されてるメモリのRead/Writeパフォーマンスを計測できるベンチマークアプリ「AmorphousMemoryMark v1.0」がリリース。

スポンサーリンク

 Macに搭載されてるメモリのRead/Writeパフォーマンスを計測できるベンチマークアプリ「AmorphousMemoryMark」がリリースされています。詳細は以下から。

AmorphousMemoryMark

 AmorphousMemoryMarkはPCのストレージ性能をMB/sとIOPSで計測してくれるWindowsアプリCrystalDiskMarkのMac版となる「AmorphousDiskMark」を開発&公開しているKatsura SharewareのKatsura Hidetomoさんが新たに公開したMac用メモリ性能測定アプリで、Macに搭載されているメモリのRead/Writeパフォーマンスを測定することが出来ます。

AmorphousMemoryMark v1.0がリリース

AmorphousMemoryMark measures memory module read/write performance in GB/s.[…]A permission was given by the author of CrystalDiskMark to use an identical or similar user interface in this app.

AmorphousMemoryMark – Mac App Store

 KatsuraさんはCrystalDiskMarkのhiyohiyoさんの許可を得てCrystalDiskMarkに類似したユーザーインターフェースをAmorphousDisk/MemoryMark採用しているそうで、どちらも公式サイトおよびMac App Storeから無料でダウンロード&利用することが出来ます。

CrystalDiskMarkとAmorphousMemoryMark

CrystalDiskMarkとAmorphousMemoryMark

 AmorphousMemoryMarkのシステム要件は64-bitプロセッサを搭載したOS X 10.8 Mountain Lion以降のMacで、Mac mini (2018)iMac (Retina 5K, 27インチ, 2019)Mac Pro (2019)などユーザーがメモリへアクセス可能なMacでメモリを交換した際に、購入したメモリのAmazonレビューなど利用することができるよう、Control + Sでのスクリーンショットの保存やツールチップからシステムの情報を表示できるようになっています。

AmorphousMemoryMarkの結果をテキスト形式で保存

 テストはシーケンシャル128KiB(SEQ128KTx)とランダムシーケンシャル4KiB(RND4KTx)、シーケンシャル1MiB(SEQ1MTx)、ランダムシーケンシャル4KiB(RAND4KTx)のRead/Write MB/s値がメインウィンドウに表示されるほか、各スコアのツールチップにはmemmove, rep movsb, temporal, non-temporalとシステム/メモリ情報が表示され、計測したスコアをテキスト形式でコピー&ペーストできるので、新しいMacを購入した方やメモリの換装を行なった方は新しいメモリの性能をチェックしてみてください。

テキスト形式での保存はControl + Cで以下のようにクリップボードにコピーされるので、それをテキストエディタなどにペーストして保存してください。
-----------------------------------------------------------------------
AmorphousMemoryMark 1.0 (C) 2019-2020 Katsura Shareware
                       Katsura Shareware : http://katsurashareware.com/
-----------------------------------------------------------------------
* GB/s = 1,000,000,000 bytes per second
* MB = 1,000,000 bytes, MiB = 1,024 x 1,024 bytes
* KB = 1,000 bytes, KiB = 1,024 bytes

  Sequential Read 128KiB (T= 8) :   17.96 GB/s (memmove)
 Sequential Write 128KiB (T= 8) :   23.50 GB/s (bzero)
        Random Read 4KiB (T= 8) :   18.96 GB/s (memmove)
       Random Write 4KiB (T= 8) :   10.70 GB/s (bzero)
     Sequential Read 1MiB (T=1) :   11.43 GB/s (memmove)
    Sequential Write 1MiB (T=1) :   15.80 GB/s (bzero)
         Random Read 4KiB (T=1) :   10.90 GB/s (memmove)
        Random Write 4KiB (T=1) :    7.89 GB/s (bzero)

  Sequential Read 128KiB (T= 8) :   17.93 GB/s (rep movsb)
 Sequential Write 128KiB (T= 8) :   23.27 GB/s (rep stosb)
        Random Read 4KiB (T= 8) :   18.66 GB/s (rep movsb)
       Random Write 4KiB (T= 8) :   19.45 GB/s (rep stosb)
     Sequential Read 1MiB (T=1) :   11.39 GB/s (rep movsb)
    Sequential Write 1MiB (T=1) :   15.70 GB/s (rep stosb)
         Random Read 4KiB (T=1) :   10.50 GB/s (rep movsb)
        Random Write 4KiB (T=1) :    9.66 GB/s (rep stosb)

  Sequential Read 128KiB (T= 8) :   20.20 GB/s (temporal)
 Sequential Write 128KiB (T= 8) :    9.96 GB/s (temporal)
        Random Read 4KiB (T= 8) :   18.66 GB/s (temporal)
       Random Write 4KiB (T= 8) :   10.02 GB/s (temporal)
     Sequential Read 1MiB (T=1) :   15.59 GB/s (temporal)
    Sequential Write 1MiB (T=1) :    9.00 GB/s (temporal)
         Random Read 4KiB (T=1) :   10.45 GB/s (temporal)
        Random Write 4KiB (T=1) :    7.64 GB/s (temporal)

  Sequential Read 128KiB (T= 8) :   21.32 GB/s (non-temporal)
 Sequential Write 128KiB (T= 8) :   26.96 GB/s (non-temporal)
        Random Read 4KiB (T= 8) :   19.48 GB/s (non-temporal)
       Random Write 4KiB (T= 8) :   27.13 GB/s (non-temporal)
     Sequential Read 1MiB (T=1) :   16.32 GB/s (non-temporal)
    Sequential Write 1MiB (T=1) :   17.79 GB/s (non-temporal)
         Random Read 4KiB (T=1) :   10.97 GB/s (non-temporal)
        Random Write 4KiB (T=1) :   13.13 GB/s (non-temporal)

    Test : 512 MiB  (x5)  [Interval=0 sec]
  Device : DDR3-1867 SK Hynix H9CCNNNBLTALAR-NUD
    Date : 2020-01-24T23:33:21Z
      OS : macOS 10.14.6 18G2022

各テストとデータサイズの詳細

  • Sequential 128 KiB block read/write tests with Threads=1, 2, 4, 8, 16, 32, or 64
  • Random sequence 4 KiB block read/write tests with Threads=1, 2, 4, 8, 16, 32, or 64
  • Sequential 1 MiB block read/write tests
  • Random sequence 4 KiB block read/write tests
  • Read/write GB/s scores using memmove()/bzero() functions, “rep movsb/stosb” instructions, temporal load/store instructions, and non-temporal load/store instructions.
  • Test data: random or zero (Only applies to read tests. Write tests will always use zeros)
  • Test size: 128 MiB, 256 MiB, 512 MiB, 1 GiB, 2 GiB, 4 GiB, 8 GiB, 16 GiB, 32 GiB, or 64 GiB
  • Test interval: 0 seconds, …, 10 seconds