flat assembler
Message board for the users of flat assembler.
Index
> Main > AMD: default conditional branch prediction policy |
| Author |
|
|
macomics 30 Jul 2026, 17:02
Here. Chapter 7
|
|||
|
|
sylware 30 Jul 2026, 18:25
So it seems AMD prediction default rule is different than the one from Intel and RISC-V: 7.9, no mention of forward or backward branches, namely AMD default prediction is only forward.
Meh. 2014, still valid nowdays? |
|||
|
|
redsock 30 Jul 2026, 18:54
This is probably worth a read: https://www.agner.org/optimize/microarchitecture.pdf
|
|||
|
|
macomics 31 Jul 2026, 16:51
sulware wrote: Meh. 2014, still valid nowdays? |
|||
|
|
bitRAKE 31 Jul 2026, 18:50
|
|||
|
|
sylware 01 Aug 2026, 11:23
Everything is gated by whatwg cartel web engines.
|
|||
|
|
bitRAKE 01 Aug 2026, 13:33
https://github.com/bitRAKE/amd_zen_sogs
Now I have them all in one place. Zen4 missing from latest AMD portal. |
|||
|
|
sylware 01 Aug 2026, 15:36
bitRAKE wrote: https://github.com/bitRAKE/amd_zen_sogs This is what we call "bringing the hammer down" I skimmed 58455, and they hardly changed the conditional branch prediction: until a conditional branch is actually taken, it is always predicted not taken, without branch direction information. BUT, after being taken a first time, the second time the branch will be predicted taken. This is different than Intel and RISC-V, then machine code will have to be different for many conditional branch use cases. And yes, whatever the hardware micro-architecture, the cache line is paramount. What is still very blurry in my mind: sorta common rules to manage BTB entries per cache lines. Last edited by sylware on 02 Aug 2026, 10:57; edited 1 time in total |
|||
|
|
bitRAKE 01 Aug 2026, 16:43
The documentation reflects the complexity of the core(s).
I always have questions when I read something like: Quote: Only a limited number of targets that cross a 128GB aligned boundary relative to the branch address can be tracked in the L1 and L2 BTBs. Software should limit the number of branch targets that cross such a boundary. I told the AI to build a test case for any ambiguity or falsifiable claim. It's still working. (The testing methodology takes time to refine into something useful. Some cases will need additional tooling.) _________________ ¯\(°_o)/¯ AI may [not] have aided with the above reply. |
|||
|
|
Furs 01 Aug 2026, 20:09
How do you even cross a 16GB boundary WTF?
Other than calling into another library or whatever, which is not something you can control due to ASLR, so how can "software limit it"? Makes no fucking sense. |
|||
|
|
revolution 01 Aug 2026, 21:25
Furs wrote: How do you even cross a 16GB boundary WTF? |
|||
|
|
sylware 02 Aug 2026, 11:02
Huh? I have been thinking the BTB is actually dealing with "close code". Why do I recall something like 16MB (not GB)??
|
|||
|
|
bitRAKE 03 Aug 2026, 22:58
Of course, we can't forget this beautiful resource ...
https://kib.kiev.ua/x86docs/ |
|||
|
< Last Thread | Next Thread > |
Forum Rules:
|
Copyright © 1999-2026, Tomasz Grysztar. Also on GitHub, YouTube.
Website powered by rwasa.