ユーザ用ツール

サイト用ツール


opengl:cpucore

差分

このページの2つのバージョン間の差分を表示します。

この比較画面へのリンク

両方とも前のリビジョン前のリビジョン
次のリビジョン
前のリビジョン
opengl:cpucore [2014/04/14 21:23] – [Group 1] ogaopengl:cpucore [2018/06/08 21:57] (現在) – [Mobile CPU core] oga
行 1: 行 1:
- 
 ====== CPU core ====== ====== CPU core ======
  
行 7: 行 6:
  
  
-===== ARM core =====+ 
 +===== Mobile CPU 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 ^ +^ 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 |        |     | L1    |  L2  |    |   5 stage   | in-order      |              |  single    1    |                           |              0          |  0       | +| ARM      | ARM9 (ARM926)    |       1.1 | ARMv5TE       |        |     | L1    |  L2  |    |   5 stage    | in-order      |              |  single    1    |  (VFP9-S)          --     |              0          |  0       | 
-| ARM      | ARM11 (ARM1176)  |      1.25 | ARMv6   |  1-4         | L1    |  L2  |    |   8 stage   | in-order      |              |  single    1    |  (VFPv2)                  |              1          |  1       | +| ARM      | ARM11 (ARM1176)  |      1.25 | ARMv6         |  1-4         | L1    |  L2  |    |   8 stage    | in-order      |              |  single    1    |  (VFPv2)          (NEON)  |              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 ^ +^ 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  |        |     |32K/32K| 0-1M |    |  13 stage   | in-order      | in-order              2    |  VFPv3-D32 (*1)  |  NEON    |  64bit      |  4          |  0.1     | +| ARM      | Cortex-A8        |       2.0 | ARMv7A        |        |     |32K/32K| 0-1M |    |  13 stage    | in-order      | in-order              2    |  VFPv3 (*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        |       2.5 | ARMv7A        |  1-4         |16-64K |0.5-8M|    |  8-11 stage  | out-of-order  | in-order       2/2     |  ?    |  (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-A9 R4             ? | ARMv7A        |  1-4         |16-64K |0.5-8M|    |  8-11 stage  | out-of-order  | in-order       2/2     |  ?    |  (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          |          | +| ARM      | Cortex-A5        |       1.6 | ARMv7A        |  1-4         | L1    |  L2  |    |   8 stage    | in-order      | 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 ^ +^ 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-A15             3.5 | ARMv7A        |  1-4X    |     | L1    |  L2  |    |   15 stage   | out-of-order  | out-of-order |   3/8mop  |  8mop |  VFPv4           |  NEON    |  64bit x2    8          |  1.4     | 
-| ARM      | Cortex-A7        |       1.9 | ARMv7A  |  1-4X    |     | L1    |  L2  |    |   8 stage   | in-order      | in-order              2    |  (VFPv4)         |  (NEON)  |  32bit      |  2          |  1       | +| ARM      | Cortex-A7        |       1.9 | ARMv7A        |  1-4X    |     | L1    |  L2  |    |   8 stage    | in-order      | in-order              2    |  VFPv4           |  NEON    |  32bit      |  2          |  1       | 
-| ARM      | Cortex-A12       |           | ARMv7A  |          |                |    |                                        |                                           |                                  | +| ARM      | Cortex-A17       |           | ARMv7A        |          |                |    |  11+ stage   out-of-order  out-of-order |                  VFPv4           |  NEON                                     | 
-| ARM      | Cortex-A17                 | ARMv7A  |          |                |    |                                        |                                  |          |                                  | +| ARM      | Cortex-A53             2.3 | ARMv8A        |  1-4X    |     |8-64K  |0.5-2M|    |   8 stage    | in-order      | in-order     |   2/?      5    |  AArch64 NEON    | A64 NEON |  64bit x2             |  4       
-| 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/32K|0.5-2M|    |              out-of-order  out-of-order |   3?/?    |  8    |  AArch64 NEON    | A64 NEON |  64bit x2                    | 
-| ARM      | Cortex-A57               ? | ARMv8A  |  1-4X    |     |48K/32K|0.5-2M|    |                                        |   3?/?    |  8    |  AArch64 NEON    | A64 NEON |                         |          | +| ARM      | Cortex-A72                 | ARMv8A        |  1-4X    |                |    |              | out-of-order  | out-of-order |                  AArch64 NEON    | A64 NEON |  64bit x2            |  4       
-^ 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 ^ +^ 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 | Scorpion               2.1 | ARMv7A        |  1-2         | L1    |  L2  |    |              | out-of-order  | in-order       2/?      ?    |  VFPv3           |  NEON    |  128bit      8          |  1       | 
-| Qualcomm | Krait            |       3.3 | ARMv7A  |  1-4     |4K/4K|16K/16K|  L2  |    |             | out-of-order  | out-of-order |   3/?      ?    |  VFPv4-D32       |  NEON    |  128bit      8          |  2       | +| Qualcomm | Krait            |       3.3 | ARMv7A        |  1-4     |4K/4K|16K/16K|  L2  |    |              | out-of-order  | out-of-order |   3/?      ?    |  VFPv4           |  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 200        |         ? | ARMv7A        |   ?      |4K/4K| L1    |  L2  |    |              | out-of-order  | out-of-order |   3/?      ?    |  VFPv4           |  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 300        |         ? | ARMv7A        |   ?      |4K/4K| L1    |  L2  |    |              | out-of-order  | out-of-order |   3/?      ?    |  VFPv4           |  NEON    |  128bit      8          |  2       | 
-| Qualcomm | Krait 400        |         ? | ARMv7A  |   ?      |4K/4K| L1    |  L2  |    |             | out-of-order  | out-of-order |   3/?      ?    |  VFPv4-D32       |  NEON    |  128bit      8          |        | +| Qualcomm | Krait 400        |         ? | ARMv7A        |   ?      |4K/4K| L1    |  L2  |    |              | out-of-order  | out-of-order |   3/?      ?    |  VFPv4           |  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 ^ +| Qualcomm | Kryo                       | ARMv8A        |          |                |    |              | out-of-order  | out-of-order |                 |  AArch64 NEON    | A64 NEON |  128bit      8          |        | 
-| Apple    | Swift            |         ? | ARMv7A  |   ?      |     | L1    |  L2  |    |             | out-of-order  | out-of-order |   3?/?    |  ?    |  VFPv4-D32       |  NEON    |  128bit      8          |  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 ^ 
-| Apple    | Cyclone          |         ? | ARMv8A  |   ?      |                |    |             | out-of-order  | out-of-order |                  AArch64 NEON    | A64 NEON |  128bit x2  |  16          8       | +| Apple    | Swift            |         ? | ARMv7A        |   ?      |     | L1    |  L2  |    |              | out-of-order  | out-of-order |   3?/?    |  ?    |  VFPv4           |  NEON    |  128bit      8          |  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 ^ +| Apple    | Cyclone          |         ? | ARMv8A        |   ?      |                |    |              | out-of-order  | out-of-order |                  AArch64 NEON    | A64 NEON |  128bit x2  |  16          8       
-| NVIDIA   | Denver                   ? | ARMv8A  |   ?      |                |    |             |                            |                  AArch64 NEON    | A64 NEON |                                  |+| Apple    | Twister          |           | ARMv8A        |          |                |    |              | out-of-order  | out-of-order |                  AArch64 NEON    | A64 NEON |  128bit x3  |  24          12      
 +^ 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 |                                  
 +^ 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    |  FPU x87 / SSE2  |  SSSE3                6          |  0.5     | 
 +| 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          |  3       |
  
  
行 80: 行 87:
  
 ただし NEON が Option 扱いとなっており、SoC の構成によっては NEON 命令が使えないものがあります。 ただし NEON が Option 扱いとなっており、SoC の構成によっては NEON 命令が使えないものがあります。
-NEON 無しの Cortex-A9 で一番メジャーなのが Tegra 2 です。+NEON 無しの Cortex-A9 で一番有名なのが Tegra 2 です。
  
 Cortex-A8 の VFP が遅いので、浮動小数点演算はすべて NEON を使いたいが、Tegra 2 のために NEON を使えないというジレンマがありました。 Cortex-A8 の VFP が遅いので、浮動小数点演算はすべて NEON を使いたいが、Tegra 2 のために NEON を使えないというジレンマがありました。
行 140: 行 147:
 2013-2014 現在のハイエンド Smartphone 向け CPU はほとんど全部 Krait が用いられており、 2013-2014 現在のハイエンド Smartphone 向け CPU はほとんど全部 Krait が用いられており、
 Group 2 で最もメジャーな CPU core となっています。 Group 2 で最もメジャーな CPU core となっています。
 +
 +反面、64bit 化で遅れており Qualcomm 独自の 64bit core はまだ発表されていません。
 +
  
  
行 172: 行 182:
 === Cyclone === === Cyclone ===
  
-Apple の独自 CPU core で初の ARM 64bit (ARMv8, AArch64) 対応 CPU。 +Apple の独自 CPU core の 2世代目す。 
-64bit 対応だけでなく性能的にも大きく向上しています。+市場に投入された初の ARM 64bit (ARMv8, AArch64) 対応 CPU core でもあります。 
 +64bit だけでなく性能的にも大きく向上しています。
  
-Swift 同様、低い動作クロックながら高い IPC が特徴。+Swift 同様、低い動作クロックながら高い IPC が特徴。
 演算ユニットは更に増えて、FP/NEON も実行 2~3pipe 有していることがわかっています。 演算ユニットは更に増えて、FP/NEON も実行 2~3pipe 有していることがわかっています。
 NEON の single precision fp ピーク性能は他の CPU core の 2倍。 NEON の single precision fp ピーク性能は他の CPU core の 2倍。
  
 ARMv8 のお陰で倍精度演算も強化されており、倍精度演算は他の ARM CPU core の 4~8倍 (64bit mode のみ)。 ARMv8 のお陰で倍精度演算も強化されており、倍精度演算は他の ARM CPU core の 4~8倍 (64bit mode のみ)。
-新しい命令セットによるメリットが大きく、ARM の 64bit 化が効果的であることを知らしめてくれた CPU 。+新しい命令セットによるメリットが大きく、ARM の 64bit 化が非常に効果的であることを知らしめてくれた CPU 。
  
 +もちろん上位互換性があるので、ARMv7A 32bit 命令もそのまま走ります。
  
  
  
- 
- 
- 
- 
- 
- 
- 
- 
- 
- 
- 
- 
- 
- 
- 
- 
- 
-===== 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    |  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          |          | 
  
 ===== 参考 ===== ===== 参考 =====
行 215: 行 203:
     * [[http://pc.watch.impress.co.jp/docs/news/event/20091116_329293.html]]     * [[http://pc.watch.impress.co.jp/docs/news/event/20091116_329293.html]]
     * [[http://www.arm.com/ja/products/processors/cortex-a50/cortex-a53-processor.php]]     * [[http://www.arm.com/ja/products/processors/cortex-a50/cortex-a53-processor.php]]
 +
  
  
  
  
opengl/cpucore.1397478201.txt.gz · 最終更新: 2014/04/14 21:23 (外部編集)

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki