ユーザ用ツール

サイト用ツール


opengl:cpucore

文書の過去の版を表示しています。


CPU core

ARM core

design core DMIPS/MHz ISA core L0 L1 L2 L3 pipe-depth order (int) order(fp/simd) dec/issue exec FPU SIMD SIMD width sp fp/clock dp/clock
ARM ARM9 (ARM926) 1.1 ARMv5TE 1 L1 L2 5 stage in-order single 1 0 0
ARM ARM11 (ARM1176) 1.25 ARMv6 1-4 L1 L2 8 stage in-order single 1 (VFPv2) 1 1
design core DMIPS/MHz ISA core L0 L1 L2 L3 pipe-depth order (int) order(fp/simd) dec/issue exec FPU SIMD SIMD width sp fp/clock dp/clock
ARM Cortex-A8 2.0 ARMv7A 1 32K/32K 0-1M 13 stage in-order in-order 2 2 VFPv3-D32 (*1) NEON 64bit 4 0.1
ARM Cortex-A9 2.5 ARMv7A 1-4 16-64K 0.5-8M 8 stage out-of-order in-order 2/4? ? (VFPv3) (NEON) 64bit 4 1
ARM Cortex-A9 R4 ? ARMv7A 1-4 16-64K 0.5-8M 8 stage out-of-order in-order 2/4? ? (VFPv3) (NEON) 64bit 4 1
ARM Cortex-A5 1.6 ARMv7A 1-4 L1 L2 8 stage in-order single 1 (VFPv4) (NEON) 32bit 2
design core DMIPS/MHz ISA core L0 L1 L2 L3 pipe-depth order (int) order(fp/simd) dec/issue exec FPU SIMD SIMD width sp fp/clock dp/clock
ARM Cortex-A15 3.5 ARMv7A 1-4X L1 L2 15 stage out-of-order out-of-order 3/8mop 8mop VFPv4-D32 NEON 64bit x2 8 1.4
ARM Cortex-A7 1.9 ARMv7A 1-4X L1 L2 8 stage in-order in-order 2 2 (VFPv4) (NEON) 32bit 2 1
ARM Cortex-A12 ARMv7A
ARM Cortex-A17 ARMv7A
ARM Cortex-A53 2.3 ARMv8A 1-4X 8-64K 0.5-2M in-order 2/? 5 AArch64 NEON A64 NEON
ARM Cortex-A57 ? ARMv8A 1-4X 48K/32K0.5-2M 3?/? 8 AArch64 NEON A64 NEON
design core DMIPS/MHz ISA core L0 L1 L2 L3 pipe-depth order (int) order(fp/simd) dec/issue exec FPU SIMD SIMD width sp fp/clock dp/clock
Qualcomm Scorpion 2.1 ARMv7A 1-2 L1 L2 out-of-order in-order 2/? ? VFPv3-D32 NEON 128bit 8 1
Qualcomm Krait 3.3 ARMv7A 1-4 4K/4K16K/16K L2 out-of-order out-of-order 3/? ? VFPv4-D32 NEON 128bit 8 2
Qualcomm Krait 200 ? ARMv7A ? 4K/4K L1 L2 out-of-order out-of-order 3/? ? VFPv4-D32 NEON 128bit 8 2
Qualcomm Krait 300 ? ARMv7A ? 4K/4K L1 L2 out-of-order out-of-order 3/? ? VFPv4-D32 NEON 128bit 8 2
Qualcomm Krait 400 ? ARMv7A ? 4K/4K L1 L2 out-of-order out-of-order 3/? ? VFPv4-D32 NEON 128bit 8 2
design core DMIPS/MHz ISA core L0 L1 L2 L3 pipe-depth order (int) order(fp/simd) dec/issue exec FPU SIMD SIMD width sp fp/clock dp/clock
Apple Swift ? ARMv7A ? L1 L2 out-of-order out-of-order 3?/? ? VFPv4-D32 NEON 128bit 8 1
Apple Cyclone ? ARMv8A ? out-of-order out-of-order AArch64 NEON A64 NEON 128bit x2 16 8
design core DMIPS/MHz ISA core L0 L1 L2 L3 pipe-depth order (int) order(fp/simd) dec/issue exec FPU SIMD SIMD width sp fp/clock dp/clock
NVIDIA Denver ? ARMv8A ? AArch64 NEON A64 NEON
  • 括弧付きの VFP/NOEN は Option であることを意味しています。
  • (*1) : Cortex-A8 の VFP は pipeline 化されておらず実行完了まで stall します。他の CPU core と比較してスループットは 1/5~1/10
  • Cortex-A7/A15/A53/A57 は 1クラスタあたり最大 4 core まで。4 core 以上のシステムも構成できます。

Cortex-A8

ARMv7A 第一世代の Cortex-A8 は Multi Core 非対応なので、採用 SoC はすべて Single Core となります。 Multi Core 対応は Cortex-A9 以降。

NEON を標準搭載しているため、single precision floating-point のピーク演算能力が高いことが特徴。 反面、トレードオフとして VFP が非常に低速です。 一世代前の ARM11 にもスコアが 1桁負けるくらいの遅さです。

NEON と違い IEEE754 準拠かつ倍精度対応なので、用途によっては VFP を使わなければなりません。

動的な型付を持つ Script 系言語では、数値型として倍精度実数 (64bit double) を用いるものがほとんどです。 例えば JavaScript はその代表といえるでしょう。 bit 演算など整数範囲で収まる場合は 32bit integier ですが、32bit を超える値や除算などの演算により double 型に変換されます。

よって Cortex-A8 は Web 系アプリケーションとの相性が極めて悪い CPU であると言えます。

x86 core

design core DMIPS/MHz ISA core L0 L1 L2 L3 pipe-depth order (int) order(fp/simd) dec/issue exec FPU SIMD SIMD width sp fp/clock dp/clock
Intel Atom Saltwell 2.4 IA32/Intel64 1-2 HT 32K/24K 0.5M in-order in-order 2 2 FPU x87 / SSE2 SSSE3 6
Intel Atom Silvermont IA32/Intel64 out-of-order FPU x87 / SSE2
AMD Bobcat ? IA32/AMD64 1-4 32K/32K 0.5M out-of-order 2/? ? FPU x87 / SSE2 SSE4A 64bit 4
AMD Jaguar ? IA32/AMD64 ? out-of-order 2/? ? FPU x87 / SSE2 SSE4A 128bit 8

参考

opengl/cpucore.1397474273.txt.gz · 最終更新: 2014/04/14 20:17 by oga

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki