もう一人のY君

読者です 読者をやめる 読者になる 読者になる

もう一人のY君

iPhoneアプリのレビューやアップデートレビューなどを書いています. たまに数学の記事も書きます.

もう一人のY君 MENU

Geekbench 3が測定しているもの

 160524_26

 結構前から検索ワードに多数挙がっていたので書くべきだとは思ってました…

 専門じゃないので間違ってる可能性があるのでご了承を.

 

Geekbench 3

Geekbench 3

  • Primate Labs Inc.
  • ユーティリティ
  • ¥120(記事執筆時点)

 記事執筆時点のバージョン : v3.4.1

 

[Contents]
 

 

ベンチマーク測定の代表格

 iPhoneに限らずMacでも名の知れた便利マーク測定アプリですが, 僕を含め取り上げられるのは大抵総合スコアのみです.

 実際には細かい内容に従ってスコアが出ているんですが, それを含めて簡単に紹介しましょう.

 今回はプロセッサのベンチマークスコアを測定する「Run Processor Benchmark」についてです.

 

 

160524_26a

 よく見るのはこの画面ですね.

 実際にはこの下に詳細がずっと続いています.

 

 

System Infromation

160524_27

 まずはベンチマークスコアでなく対象デバイスの情報であるSystem Informationです.

 

Operating System

 Operating System(OS)とはコンピュータプログラムの一つで, ユーザーが使用するアプリケーション(ソフトウェア)のためにハードウェアを提供するために存在します.

 基本的に対象となる任意のソフトウェアはこのOSを介して利用することができます.

 特にAppleが提供するOSの一つが「iOS」であり, 記事執筆時点での最新は iOS 9.3.2となっています(記事執筆時点では開発者向けに iOS 9.3.3βがリリースされたところです).

 

Model

 デバイスのモデル名で, 一般に呼称されるものです.

 

Model ID

 デバイスの「品番」のようなものです.

 Modelと違い, Model IDでは例えばiPadのWi-fi+LTE, Wi-Fi, SIMフリーなどは区別され別呼称となります.

 

Motherboard

 デバイスの電子装置を配置するための主要な回路基盤のことです.

 意味合いとしては「基盤」の方だと思うんですが, 大抵はそこにはめ込むCPUの方が注目されます.

 先日のサムスン製か台湾製か…みたいに.

 

Processor

 デバイスにおける処理の中心的存在がプロセッサーです.

 タップ操作などの情報を受け取って演算を行うのはここになります.

 プロセッサーとCPUはおおよそ同じ意味ですが, 例えばグラフィック描画に特化したGPUなどの存在を考えると, プロセッサーはCPUよりも広い概念と言えます.

 

Processor ID

 プロセッサーには各メーカーによって「様式(アーキテクチャ)」が決まっており, この名前がProcessor IDに相当します.

 ARMというのはARMという半導体メーカーが決めたアーキテクチャの規格…というか設計のライセンスです.

 

L1 Instruction Cache

 Cache(キャッシュ)というのは, ネットワークにおいて一つの領域ともう一つの領域の間で一部のデータを一時的に保存し, 再利用することで通信の遅延を極力抑えるための手段であり, その領域を指します.

 ここではそのうちメモリに関するキャッシュで, CPUとメモリとの間の性能アクセスの範囲拡大に応じて多数構造となっているそうです.

 どれを使うかは方式によって異なり, 各々に応じてCPUに近い順からL1, L2, L3とされています.

 

 (少なくとも)iPhone 6の場合は L1 キャッシュは更に2つに分かれ

  • 命令キャッシュ(Instruction Cache):仕様頻度の高いプログラムを一時記憶する領域
  • データキャッシュ(Data Cache):仕様頻度の高いデータを一時記憶する領域

となっています.

 画像の通りiPhone 6にL3は入っていないみたいですね.

 

L1 Data Cache

 上記参照.

 

L2 Cache

 同上.

 

L3 Cache

 同上.

 

Memory

 Random Access Memoryと呼ばれ, CPUで行うデータを記憶するための部分です.

 対してストレージなどをInternal Memoryと呼びます.

 メモリは電源が落ちるとデータは消去されます.

 よく, メモリは「作業台」, ストレージ(またはHDD)は「倉庫」に例えられます.

 「作業台」は作業を素早く行えますが, 「倉庫」に対して広くはありません.

 一方「倉庫」は作業を行うためにデータを取ってきたり戻したりするのに時間はかかりますが, 「作業台」に対してスペースはたっぷりあります.

 また基本的に「倉庫」で作業することはできません(例外はあります).

 

 

Integer

160524_28

 ここからがベンチマークスコアの詳細になります.

 画像はSHA1という項目までになっていますが実際はもっと先まであります.

 詳細ではシングルコア, マルチコアそれぞれについてスコアを表示しているため, いずれも2つずつになっています.

 

 (以降は僕が誤解してる可能性があります, 悪しからず…)

 

AES

 Advanced Encryption Standardの略で, セキュリティにおける暗号化規格です.

 暗号化規格なので安全性や実装のしやすさ, 消費電力などの要素はもちろんのこと, ここでは「処理速度」を評価しています.

Advanced Encryption Standard - WikipediaAdvanced Encryption Standard - Wikipedia

 

Twofish

 こちらも暗号化規格の一つです.

 先程のAESは世界から応募された暗号で選考されたもので, Twofishは最終選考に選ばれたものの惜しくも敗れたそうですが, 性能に関しては評価されているそうです.

 こちらも処理速度がスコアとして評価されています.

Twofish - WikipediaTwofish - Wikipedia

 

SHA1

 Secure Hash Algorithmの略で, 検索の高速化やデータ比較処理, データ改ざんの検証などに使われる関数, アルゴリズムです.

 こちらは脆弱性の改訂や改良, 公募などによってナンバリングが入っており, SHA-0からSHA-3まであるようです.

 こちらもスコアの評価は処理速度によります.

Secure Hash Algorithm - WikipediaSecure Hash Algorithm - Wikipedia

 

SHA2

 上記参照

 

BZip2 Compress

 BZip2とはデータ圧縮方式, またはフォーマットの一つです.

 gzipやZIPの仲間で, これらよりも圧縮率が高いんだとか.

 ただし処理速度が相対的にイマイチ.

 こちらは圧縮する際の処理速度によるスコアです

bzip2 - Wikipediabzip2 - Wikipedia

 

BZip2 Decompress

 こちらは上記の解凍側.

 

JPEG Compress

 JPEGファイル, 例えばカメラで撮影した写真の圧縮速度によるスコアです.

 

JPEG Decompress

 上記の解凍側.

 

PNG Compress

 PNGファイル, 例えばスクリーンショットの圧縮速度によるスコアです.

 

PNG Decompress

 上記の解凍側.

 

Sobel

 画像の輪郭を検出するためのフィルタ処理の一つにSobelというオペレータがあるそうです.

 その処理速度によるスコアです.

edge detection (Sobel filter/Prewitt filter)edge detection (Sobel filter/Prewitt filter)

 

Lua

 多分ですがブラジル産のスクリプト言語Luaのことでしょうかね?

 その処理速度によるスコアと思われます.

Lua - WikipediaLua - Wikipedia

 

Dijkstra

 プログラミングへの関わりの深いグラフ理論の最短経路探索アルゴリズムです.

 いかなる処理にしても最短経路で済めばそれに越したことはありません.

 ここではその処理速度がスコアになっています.

ダイクストラ法 - Wikipediaダイクストラ法 - Wikipedia

 

 

Floating Point

 浮動小数点演算の処理能力についてのようです.

 

BlackScholes

 債権や証券, 株, ローンといったリスクを伴う資産, 商品の収益性を高める手法をデリバティブと呼びます(金融商品自体をデリバティと言ったりします).

 蛇足ですが「どの銀行にお金を預ければ良いか」なんてことでもそう言えるので一応身近な考え方ではあります.

 金融商品は様々な要因で価格が揺れ動きますが, それをある程度特徴づけるのがブラック-ショールズ方程式と呼ばれる偏微分方程式です.

 ここでは単位時間当たりの, 期間の分割数(ノード(node)と言います)の処理の速度がスコアになっているようです.

ブラック–ショールズ方程式 - Wikipediaブラック–ショールズ方程式 - Wikipedia

 

Mandelbrot

 マンデルブロ集合とはフラクタルの一種で, 然るべき定義を満たした複素数をガウス平面(複素数平面)にプロットしたものです.

 

 ちょっとパラメータを変えるだけで多様に姿を変えるんですが, 上の画像が有名でしょう.

 ここでは1秒あたりの浮動小数点演算の回数(flops)がスコアになっています.

 

 今更ですがこういう微分方程式や集合の描画などの処理速度を以て, 指標としているんでしょうかね?

 

Sharpen Filter

 画像のシャープをかける処理の速度をスコアにしているようです.

 

Blur Filter

 ぼかしフィルターの処理速度がスコアになっているようです.

 

SGEMM

 例えば行列 { \displaystyle A, B, C }, スカラー { \displaystyle \alpha , \beta } に対して

{ \displaystyle \alpha AB + \beta C }

を計算すること, 或いはその計算能力のことをGEMMと言います.

 SGEMMは単精度(4バイト=32ビット), DGEMMは倍精度(8バイト=64ビット)になります.

 

DGEMM

 上記参照.

 

SFFT

 デジタル処理や画像処理など多くに使われているフーリエ変換に関するもので, それまで主流だった離散高速フーリエ変換アルゴリズム(FFT, Fast Fourier Transform)に, 無駄な処理をできるだけ減らすことを実現したSFFT(Sparse Fast Fourier Transform)というものだそうです.

 記事を見てもさっぱりです...

groups.csail.mit.edu

 

DFFT

 上記SFFTに絡むものだとはおもうんですが分かりませんでした…

 Dは離散(discrete)のDかな?

 

N-Body

 任意の数値(対象)同士を相互作用させるシステム, シミュレーション処理のようです.

 自分も書いておいてさっぱり分かってません(汗)

 ゲーム何かで複数のキャラクタの相互反応を与えるものでしょうかね?GPUに絡んでるようですし.

 

Ray Trace

 波の伝播を追跡することで, 音や光のグラフィックを実現する計算手法だそうです.

 ゲームは勿論, CGグラフィックスでの代表的な存在みたいですね.

レイトレーシング - Wikipediaレイトレーシング - Wikipedia

 

 

Memory

160524_29

 ここからはメモリ周りの処理に関する項目のようです.

 ここも画像より下に続いてます.

 

Stream Copy

 送受信するデータのバッファのように, 連続して流れるようなデータ, 或いはデータを流れるものとみなすとき, そのデータをストリームと言うそうです.

 そういったデータの格納先をそう呼ぶ場合があるようです.

 その際, 優先順位(割り込みなど)で手元のストリームを別のストリームにコピーして処理したいときがあるんだとか.

 ここではその処理の速度がスコアになっているようです.

 

Stream Scale

 よく分かりませんね…

 scaleは例えば「大きさ」なわけですが, 短期間(一定期間)での処理速度か何かでしょうかね?

 

Stream Triad

 こちらも分かりませんでした.

 triadは「3つ組」とか「三人組」といった意味ですね.

 

 

 難しい単語ばかりで専門でなければさっぱりですね^^;

 そのためのスコアによる評価ですね, 大抵はそれでも分かったようで結局分かってないので総合スコアだけ見る事になるんですが^^;

 (記事下の余白消すの忘れてました...)