Article: AMD's Mobile Strategy
By: Paul A. Clayton (paaronclayton.delete@this.gmail.com), January 6, 2012 5:10 pm
Room: Moderated Discussions
Alex M (adm@hotmail.com) on 1/6/12 wrote:
---------------------------
>Paul A. Clayton (paaronclayton@gmail.com) on 1/4/12 wrote:
>---------------------------
>>A more attractive alternative (which Intel seems to be
>>ignoring) would seem to be heterogeneous multicore.
>
>I think it is a good idea to have both low latency cores
>(superscalar) and high throughput cores (wide SIMD) in a
>system. I suspect Intel's version of it will involve
>weighing down the high throughput cores with all the
>baggage and complexity of the x86 instruction set, which
>is a terrible idea. If Windows gets to decide which
>threads run on which type of core, it will undoubtedly
>choose the wrong type of core half the time. If the
>programmer gets to decide which threads run on which type
>of core then there is no need for the x86 instruction set
>on the high throughput cores. The high throughput cores
>can be graphics cores that can also be used for
>floating-point vector operations.
Not all throughput-oriented workloads are SIMD-oriented.
In addition, relatively wimpy cores closely interfaced to
I/O can be used for better I/O responsiveness. Wimpy
cores can also be used for greater power efficiency under
low load.
Interestingly, for a GPU-like architecture, the decode
overhead is substantially reduced, so the x86 penalty could
be greatly reduced. If the workload targeted is also
constrained, further simplifications can be made by
harming the performance/efficiency of 'unused' operations.
(Since a GPU-like architecture would benefit from
significant changes from existing x86 and there would
probably not be a significant benefit from binary
compatibility with other cores, I do not see x86
compatibility as being useful, but I don't think it would
insanely complex [just uselessly complex].)
---------------------------
>Paul A. Clayton (paaronclayton@gmail.com) on 1/4/12 wrote:
>---------------------------
>>A more attractive alternative (which Intel seems to be
>>ignoring) would seem to be heterogeneous multicore.
>
>I think it is a good idea to have both low latency cores
>(superscalar) and high throughput cores (wide SIMD) in a
>system. I suspect Intel's version of it will involve
>weighing down the high throughput cores with all the
>baggage and complexity of the x86 instruction set, which
>is a terrible idea. If Windows gets to decide which
>threads run on which type of core, it will undoubtedly
>choose the wrong type of core half the time. If the
>programmer gets to decide which threads run on which type
>of core then there is no need for the x86 instruction set
>on the high throughput cores. The high throughput cores
>can be graphics cores that can also be used for
>floating-point vector operations.
Not all throughput-oriented workloads are SIMD-oriented.
In addition, relatively wimpy cores closely interfaced to
I/O can be used for better I/O responsiveness. Wimpy
cores can also be used for greater power efficiency under
low load.
Interestingly, for a GPU-like architecture, the decode
overhead is substantially reduced, so the x86 penalty could
be greatly reduced. If the workload targeted is also
constrained, further simplifications can be made by
harming the performance/efficiency of 'unused' operations.
(Since a GPU-like architecture would benefit from
significant changes from existing x86 and there would
probably not be a significant benefit from binary
compatibility with other cores, I do not see x86
compatibility as being useful, but I don't think it would
insanely complex [just uselessly complex].)