By: rwessel (robertwessel.delete@this.yahoo.com), June 30, 2013 10:11 pm
Room: Moderated Discussions
Linus Torvalds (torvalds.delete@this.linux-foundation.org) on June 29, 2013 12:22 pm wrote:
> Michael S (already5chosen.delete@this.yahoo.com) on June 28, 2013 4:52 am wrote:
> > anon (anon.delete@this.anon.com) on June 28, 2013 3:27 am wrote:
> > > GCC has some latency hints of silvermont microarchitecture:
> > > http://gcc.gnu.org/viewcvs/gcc/trunk/gcc/config/i386/slm.md?view=markup
> > >
> > > The comment says: "Silvermont has 2 out-of-order IEC, 2 in-order FEC and 1 in-order MEC."
> >
> > No AVX, in-order...
> > Coding anything fp intensive with Silvermont in mind sounds like a challenging* task.
>
> Why anybody would ever care about FP performance is beyond me.
>
> Just look at history. FP has never ever mattered commercially. Ever. Intel laughed all
> the way to the bank in the old i387 days when the RISC camp was beating it silly. Intel beat
> them where it mattered: on random integer code. Nobody ever complained about the FP performance,
> although the RISC people were beating their chests purple about their lead.
>
> Fast-forward ten years, and the FP laughingstock was ARM, with its crazy variations on FPU's,
> and most chips sold not having one at all. Again, nobody actually cared, except the different
> variations just annoying people endlessly (and often caused people to use software FP - or
> at least library calls - even when there was hardware), and ARM sold like hotcakes.
>
> The only market use for FP is for graphics, and only a tiny amount of that
> gets done on the CPU, mainly setting things up for the GPU. Yeah, yeah, games
> do FP on the CPU too, but it's dwarfed by the non-FP parts they do.
>
> I realize this forum has people who do fluid dynamics and stuff like that,
> but sorry guys, you're not a market for anybody, you're an afterthought.
>
> Even now, FP seems to matter only for benchmarks, not for any actual real load that sells
> machines. And even there, if the benchmark is actually worth anything at all, it's not
> about the actual FP capabilities most of the time, but about the memory subsystem.
>
> AVX? Who could possibly care in the kind of space Atom is designed for? Really?
Certainly my personal experience would lead me to agree. I'd hazard that none of the code I've written in the last couple of decades would be slowed down more than a few percent (and most probably less than a single percent) if all of the FP resources were dropped from the CPU, and all the FP was all done via emulation. Full disclosure, back in the 80s I did do a bit of HPC work, although that was clearly rather niche (How many Cray-1s were sold? Something like 90? At a time when IBM was selling ~10,000 S/370 boxes per year?).
Now I suspect that some of the system stuff we use might be more impacted (I think most font scaling code, for example, uses FP), but again, I think it's fairly modest.
So *I'd* happily trade all the FP hardware for an extra 5% integer performance. Or perhaps you could spend a very small amount of hardware resources (tiny compared to current FPUs) on a much slower FPU that would still be an order of magnitude faster than emulation.
That being said, the CPU is intended to be general purpose, and I certainly don't begrudge hardware dedicated to other people's applications, as the economies of scale that have been demonstrated by the general purpose approach, and the resulting performance *and* price/performance, particularly with x86, are a *huge* win for almost every user. So I've always kind of assumed that *someone* is using that stuff, but I've never really managed to put my finger on what it actually was. Sure you can find some HPC-ish applications which make heavy use of FP, but as a first, second or third order approximation, these constitute none of the market. You see a few graphics things (many Photoshop filters, for example), but it's not clear that those could not mostly be implemented in fixed point with only a modest performance impact. Games? Maybe, but I've been out of that world since the Apple II, and people keep claiming that all the real FP work in games has been punted to the GPUs anyway.
Still, I'm assuming that the CPU designers are doing this for *some* reason that causes sales to increase.
> Michael S (already5chosen.delete@this.yahoo.com) on June 28, 2013 4:52 am wrote:
> > anon (anon.delete@this.anon.com) on June 28, 2013 3:27 am wrote:
> > > GCC has some latency hints of silvermont microarchitecture:
> > > http://gcc.gnu.org/viewcvs/gcc/trunk/gcc/config/i386/slm.md?view=markup
> > >
> > > The comment says: "Silvermont has 2 out-of-order IEC, 2 in-order FEC and 1 in-order MEC."
> >
> > No AVX, in-order...
> > Coding anything fp intensive with Silvermont in mind sounds like a challenging* task.
>
> Why anybody would ever care about FP performance is beyond me.
>
> Just look at history. FP has never ever mattered commercially. Ever. Intel laughed all
> the way to the bank in the old i387 days when the RISC camp was beating it silly. Intel beat
> them where it mattered: on random integer code. Nobody ever complained about the FP performance,
> although the RISC people were beating their chests purple about their lead.
>
> Fast-forward ten years, and the FP laughingstock was ARM, with its crazy variations on FPU's,
> and most chips sold not having one at all. Again, nobody actually cared, except the different
> variations just annoying people endlessly (and often caused people to use software FP - or
> at least library calls - even when there was hardware), and ARM sold like hotcakes.
>
> The only market use for FP is for graphics, and only a tiny amount of that
> gets done on the CPU, mainly setting things up for the GPU. Yeah, yeah, games
> do FP on the CPU too, but it's dwarfed by the non-FP parts they do.
>
> I realize this forum has people who do fluid dynamics and stuff like that,
> but sorry guys, you're not a market for anybody, you're an afterthought.
>
> Even now, FP seems to matter only for benchmarks, not for any actual real load that sells
> machines. And even there, if the benchmark is actually worth anything at all, it's not
> about the actual FP capabilities most of the time, but about the memory subsystem.
>
> AVX? Who could possibly care in the kind of space Atom is designed for? Really?
Certainly my personal experience would lead me to agree. I'd hazard that none of the code I've written in the last couple of decades would be slowed down more than a few percent (and most probably less than a single percent) if all of the FP resources were dropped from the CPU, and all the FP was all done via emulation. Full disclosure, back in the 80s I did do a bit of HPC work, although that was clearly rather niche (How many Cray-1s were sold? Something like 90? At a time when IBM was selling ~10,000 S/370 boxes per year?).
Now I suspect that some of the system stuff we use might be more impacted (I think most font scaling code, for example, uses FP), but again, I think it's fairly modest.
So *I'd* happily trade all the FP hardware for an extra 5% integer performance. Or perhaps you could spend a very small amount of hardware resources (tiny compared to current FPUs) on a much slower FPU that would still be an order of magnitude faster than emulation.
That being said, the CPU is intended to be general purpose, and I certainly don't begrudge hardware dedicated to other people's applications, as the economies of scale that have been demonstrated by the general purpose approach, and the resulting performance *and* price/performance, particularly with x86, are a *huge* win for almost every user. So I've always kind of assumed that *someone* is using that stuff, but I've never really managed to put my finger on what it actually was. Sure you can find some HPC-ish applications which make heavy use of FP, but as a first, second or third order approximation, these constitute none of the market. You see a few graphics things (many Photoshop filters, for example), but it's not clear that those could not mostly be implemented in fixed point with only a modest performance impact. Games? Maybe, but I've been out of that world since the Apple II, and people keep claiming that all the real FP work in games has been punted to the GPUs anyway.
Still, I'm assuming that the CPU designers are doing this for *some* reason that causes sales to increase.