[Battlemesh] Atheros chips
Jonathan Morton
chromatix99 at gmail.com
Fri Feb 26 09:31:38 UTC 2016
> On 26 Feb, 2016, at 10:13, Juliusz Chroboczek <jch at pps.univ-paris-diderot.fr> wrote:
>
>> When you can target a single core type, the difference between in-order
>> and OoO is much less important than on the desktop
>
> Not sure I believe that, given memory latencies, but then if the memory
> subsystem is better, perhaps it compensates. (Routing in software is not
> a cache-friendly endeavour.)
The A7 can do hit-under-miss and similar tricks, which are fairly standard nowadays. This also implies that it can continue to issue instructions while waiting for a load or a long-latency instruction, as long as none of them depend on a result that hasn’t yet completed. It’ll also do branch prediction.
The advantage of OoO over this is simply that instructions coming *after* a dependent instruction, but which aren’t themselves dependent, can also be issued before that result completes.
If you know you’ve got an in-order CPU, you (or more likely the compiler) can schedule instructions to minimise the latter situation and maximise the former. An OoO CPU doesn’t care either way.
- Jonathan Morton
More information about the Battlemesh
mailing list