By: Ricardo B (ricardo.b.delete@this.xxxxx.xx), May 15, 2013 9:16 am
Room: Moderated Discussions
RichardC (tich.delete@this.pobox.com) on May 15, 2013 7:29 am wrote:
> Parallel programming isn't "too hard". Parallel programming that scales well
> with number of threads when running on hardware with limited memory bandwidth and
> with SMT threads that actually slow each other down in unpredictable ways by the
> sharing of core execution resources and cache space ? Harder.
Except when it comes "for free".
It's not common for developers to put much effort into optimizing for SMT, beyond making sure the software works with more threads.
By far, the most common case for software that benfits from SMT is multi-threaded software which has low IPC, despite the developers' best efforts to increase it.
> Parallel programming isn't "too hard". Parallel programming that scales well
> with number of threads when running on hardware with limited memory bandwidth and
> with SMT threads that actually slow each other down in unpredictable ways by the
> sharing of core execution resources and cache space ? Harder.
Except when it comes "for free".
It's not common for developers to put much effort into optimizing for SMT, beyond making sure the software works with more threads.
By far, the most common case for software that benfits from SMT is multi-threaded software which has low IPC, despite the developers' best efforts to increase it.