By: Doug S (foo.delete@this.bar.bar), May 11, 2013 10:49 am
Room: Moderated Discussions
mpx (mpx.delete@this.nomail.pl) on May 10, 2013 11:51 pm wrote:
> Brett (ggtgp.delete@this.yahoo.com) on May 9, 2013 8:26 pm wrote:
>
> > The last thing you want is to have
> > a critical path task slowed down
>
> SPARC T4 is 8-way SMT by default, but can dynamically switch to max-ipc threading
> mode, in which only one thread runs on a core, thus having all it's resources available.
> Such mode is available via Critical Thread API available on Solaris.
>
> So what you see as a problem is in fact a solved case. Of course Google would have to introduce something
> similar to Android in order to make 8-way SMT viable there. Right now Android is optimized for 1 thread/core
> ARM cores, so it makes sense for Intel to create similar architecture in hardware.
Why would Google have to introduce anything? Linux has good support for CPUs with >1 thread/core, and Android is Linux. Is Android really "optimized" for one thread/core like you say, or that's what it uses because that's all that is available?
Which is more likely, that they left the kernel code that deals with multiple threads per core alone, or that they made changes to it, which would not benefit the one thread/core case, but would handicap Android if Nvidia or someone else doing custom designs introduced a SMT ARM SoC?
That said, when 4 core SoCs are becoming more common, and are IMHO already overkill, I see little point in turning them into 8 thread SoCs. What the hell would people be doing on their phone that they need 8 threads? It wasn't all that long ago that we all got along just fine with a single thread on our desktop. It is amazing the number of people you see arguing for the benefit of 4 cores on a phone simply because they see multiple active processes running on it, as if every piddly background process needs its own core to achieve good responsiveness. I guess they've never seen systems with over a thousand active processes running just fine on CPUs that look a toy compared to a single core of a modern ARM SoC.
In situations where you run your CPU at 100% with a lot of different tasks, as you do on a server, or have one embarrassingly parallel task as you might with certain niche desktop uses like video recoding, one can see the potential benefit from SMT. Perhaps you can come up with a few niche cases where it would be beneficial in a smartphone, but niche cases don't justify adding it.
> Brett (ggtgp.delete@this.yahoo.com) on May 9, 2013 8:26 pm wrote:
>
> > The last thing you want is to have
> > a critical path task slowed down
>
> SPARC T4 is 8-way SMT by default, but can dynamically switch to max-ipc threading
> mode, in which only one thread runs on a core, thus having all it's resources available.
> Such mode is available via Critical Thread API available on Solaris.
>
> So what you see as a problem is in fact a solved case. Of course Google would have to introduce something
> similar to Android in order to make 8-way SMT viable there. Right now Android is optimized for 1 thread/core
> ARM cores, so it makes sense for Intel to create similar architecture in hardware.
Why would Google have to introduce anything? Linux has good support for CPUs with >1 thread/core, and Android is Linux. Is Android really "optimized" for one thread/core like you say, or that's what it uses because that's all that is available?
Which is more likely, that they left the kernel code that deals with multiple threads per core alone, or that they made changes to it, which would not benefit the one thread/core case, but would handicap Android if Nvidia or someone else doing custom designs introduced a SMT ARM SoC?
That said, when 4 core SoCs are becoming more common, and are IMHO already overkill, I see little point in turning them into 8 thread SoCs. What the hell would people be doing on their phone that they need 8 threads? It wasn't all that long ago that we all got along just fine with a single thread on our desktop. It is amazing the number of people you see arguing for the benefit of 4 cores on a phone simply because they see multiple active processes running on it, as if every piddly background process needs its own core to achieve good responsiveness. I guess they've never seen systems with over a thousand active processes running just fine on CPUs that look a toy compared to a single core of a modern ARM SoC.
In situations where you run your CPU at 100% with a lot of different tasks, as you do on a server, or have one embarrassingly parallel task as you might with certain niche desktop uses like video recoding, one can see the potential benefit from SMT. Perhaps you can come up with a few niche cases where it would be beneficial in a smartphone, but niche cases don't justify adding it.