From WikiChip
Editing intel/microarchitectures/goldmont

Warning: You are not logged in. Your IP address will be publicly visible if you make any edits. If you log in or create an account, your edits will be attributed to your username, along with other benefits.

The edit can be undone. Please check the comparison below to verify that this is what you want to do, and then save the changes below to finish undoing the edit.

This page supports semantic in-text annotations (e.g. "[[Is specified as::World Heritage Site]]") to build structured and queryable content provided by Semantic MediaWiki. For a comprehensive description on how to use annotations or the #ask parser function, please have a look at the getting started, in-text annotation, or inline queries help pages.

Latest revision Your text
Line 76: Line 76:
 
* Pipeline
 
* Pipeline
 
** Compared to Airmont, Goldmont is a 3-issue core.
 
** Compared to Airmont, Goldmont is a 3-issue core.
** NOPs, MOVs and many ALU operations have 3 op/cycle throughput for 16, 32 and 64-bit registers. (8-bit ALU ops throughput is 2, 1.5 or 1 op per cycle).
+
** Throughput
** ADC, SBB have 0.5 op/cycle throughput, unchanged from Airmont.
+
*** NOPs, MOVs and many ALU operations have 3 op/cycle throughput for 16, 32 and 64-bit registers. (8-bit ALU ops throughput is 2, 1.5 or 1 op per cycle).
** INC, DEC, BTx, shift ops are not faster than on Airmont, 8-bit shifts are slightly slower (0.66 op/cycle instead of 1).
+
*** ADC, SBB have 0.5 op/cycle throughput, unchanged from Airmont.
** Rotate-through-carry (RCL, RCR) throughput continues to be slow and is slightly slower (used to be ~10 cycles per op, now ~12).
+
*** INC, DEC, BTx, shift ops are not faster than on Airmont, 8-bit shifts are slightly slower (0.66 op/cycle instead of 1).
** 16- and 64-bit shift-double (SHLD, SHRD) throughput continues to be slow and is slightly slower (used to be ~10 cycles per op, now ~14) than on Airmont. (32-bit SHLD, SHRD are fast: 2-4 cycles).
+
*** Rotate-through-carry (RCL, RCR) throughput continues to be slow and is slightly slower (used to be ~10 cycles per op, now ~12).
** Variable shifts and rotates (SHL r32, CL etc) latency increased from 1 cycle to 2 cycles.
+
*** 16- and 64-bit shift-double (SHLD, SHRD) throughput continues to be slow and is slightly slower (used to be ~10 cycles per op, now ~14) than on Airmont. (32-bit SHLD, SHRD are fast: 2-4 cycles).
** Bit scan (BSF, BSR) throughput improved from 10 to 8 cycles per op.
+
*** Variable shifts and rotates (SHL r32, CL etc) latency increased from 1 cycle to 2 cycles.
** MUL throughput is better by 1 cycle (used to be 5/7 cycles for 32/64-bit mul, now 4/6).
+
*** Bit scan (BSF, BSR) throughput improved from 10 to 8 cycles per op.
** DIV is more than twice as fast as Airmont, 13 cycles for most divides, 128-bit/64-bit are ~42 cycles.
+
*** MUL throughput is better by 1 cycle (used to be 5/7 cycles for 32/64-bit mul, now 4/6).
** PUSH to POP forwarding is improved.
+
*** DIV is more than twice as fast as Airmont, 13 cycles for most divides, 128-bit/64-bit are ~42 cycles.
** REP MOVS streaming copy is twice as fast: now ~26 bytes/cycle.
+
*** PUSH to POP forwarding is improved.
** REP STOS fill is not improved: ~9 bytes/cycle.
+
*** REP MOVS streaming copy is twice as fast: now ~26 bytes/cycle.
** Some vector instructions are faster, but like on {{\\|Airmont}}, none have throughput >2 op/cycle. This includes often used ops like adds and multiplies:
+
*** REP STOS fill is not improved: ~9 bytes/cycle.
*** MULPS and MULPD have 4 cycle latency and 1 op/cycle throughput (used to have L5 and T0.5).
+
*** Some vector instructions are faster, but like on {{\\|Airmont}}, none have throughput >2 op/cycle. This includes often used ops like adds and multiplies:
*** ADDPD has 3 cycle latency and 1 op/cycle throughput (used to have L4 and T0.5).
+
**** MULPS and MULPD have 4 cycle latency and 1 op/cycle throughput (used to have L5 and T0.5).
** CRC32 instruction throughput improved from 6 cycles/op to 1 cycle/op, latency is halved from 6 to 3.
+
**** ADDPD has 3 cycle latency and 1 op/cycle throughput (used to have L4 and T0.5).
 +
*** CRC32 instruction throughput improved from 6 cycles/op to 1 cycle/op, latency is halved from 6 to 3.
 
* Gen 9 GPUs
 
* Gen 9 GPUs
 
** {{intel|HD Graphics 400}} '''→''' {{intel|HD Graphics 500}} (12 Execution Units, no change)
 
** {{intel|HD Graphics 400}} '''→''' {{intel|HD Graphics 500}} (12 Execution Units, no change)

Please note that all contributions to WikiChip may be edited, altered, or removed by other contributors. If you do not want your writing to be edited mercilessly, then do not submit it here.
You are also promising us that you wrote this yourself, or copied it from a public domain or similar free resource (see WikiChip:Copyrights for details). Do not submit copyrighted work without permission!

Cancel | Editing help (opens in new window)
codenameGoldmont +
core count2 +, 4 +, 8 +, 12 + and 16 +
designerIntel +
first launchedAugust 30, 2016 +
full page nameintel/microarchitectures/goldmont +
instance ofmicroarchitecture +
instruction set architecturex86-64 +
manufacturerIntel +
microarchitecture typeCPU +
nameGoldmont +
pipeline stages (max)14 +
pipeline stages (min)12 +
process14 nm (0.014 μm, 1.4e-5 mm) +