No speedups for CPUs for the general programming populace

Article: Computational Efficiency in Modern Processors
By: MoTheG (better.delete@this.not.tell), November 10, 2009 5:26 am
Room: Moderated Discussions
David Kanter (dkanter@realworldtech.com) on 11/10/09 wrote:
---------------------------
>Here's the catch. An Opteron can execute 8 FLOP/s cycle, so the SW isn't really tuned that well.

>And note the sensitivity of Nehalem to tuning - 25X speed up from tuning.

>The algorithm matters,
>tuning matters, hardware matters and most importantly - don't believe what
>you read until you can see the fine print.
>
>David

That's right CPUs don't optimise all by themselves (although they try to do it in hardware at runtime), here it takes just the same considerations.
One of the presentations concluded: "Much of GPU algorithm optimization revolves around efficient use of multiple memory systems."
Now ofcause in CPUs you don't have global, shared, constant, ... memory but still you have to know how much cache you can expect on the target HW and think about how to use every number as often as possible befor overwriting it.


today we are being forced to write sequential code by languages like 'C'.
you can't write something like
int A[N], B[N], Z[N]; // 'N' being some actual number
Z[ ] = A[ ] + B[ ];
not even
A[ ] = 0;
you are being forced to write something useless like:
for(int i = 0, i < N, i++) A[i] = 0;
then the compiler needs to check if 'i' is ever assigned in the "for" and if 'i' covers all 'N' befor it can parallize the code to what you ment to write.
I don't call that easy
intN A, B, Z;
Z = A + B;
that would be easy and straight forward.

The problem is somewhere else: there is no such thing as the x86 standart for GPUs.
and the hardware might be very different even for a given company.
this could only be solved by ByteCode, RTE, JIT-Compiler and such.
The driver then would need to rewrite the code to fit the memory sizes an alignment. I don't know if this is possible.
I'm not sure how far this is being done in Direct3D and OpenGL today, the way I understood it, HLSL and OGSL are not compiled to ByteCode but directly to machinecode befor execution or delivered with new drivers.
< Previous Post in ThreadNext Post in Thread >
TopicPosted ByDate
Article: Computational Efficiency in Modern Processors by DKMoTheG2009/11/08 07:02 AM
  Article: Computational Efficiency in Modern Processors by DKnone2009/11/08 07:15 AM
  Silverthorne and OoO vs. InOrdMoTheG2009/11/08 07:22 AM
    Silverthorne and OoO vs. InOrdDavid Kanter2009/11/08 04:11 PM
      Magical 100x speedupsAM2009/11/09 09:03 AM
        Magical 100x speedupsDavid Kanter2009/11/09 12:41 PM
          Magical 100x speedupsnone2009/11/09 01:36 PM
            Magical speedupsDavid Kanter2009/11/09 03:24 PM
              Magical speedupsnone2009/11/09 03:40 PM
              Hardware SpecsMS2009/11/09 05:49 PM
                44x faster than a single cpu coreVincent Diepeveen2009/11/10 08:17 AM
              Magical speedupsVincent Diepeveen2009/11/10 08:02 AM
          Xeon 130x speedup vs XeonEric Bron2009/11/10 08:20 AM
          Magical 100x speedupsAM2009/11/10 10:42 AM
            Magical 100x speedupsLinus Torvalds2009/11/10 01:19 PM
              Mega speedupsAM2009/11/11 06:21 AM
        Bogus 100x speedupsDavid Kanter2009/11/10 01:26 AM
          No speedups for CPUs for the general programming populaceMoTheG2009/11/10 05:26 AM
          Bogus 100x speedups?2009/11/10 05:45 AM
          Bogus 100x speedupshobold2009/11/10 07:31 AM
          Bogus 100x speedupsVincent Diepeveen2009/11/10 08:26 AM
          Bogus 100x speedupssylt2009/11/10 10:00 AM
          Bogus 100x speedupsAM2009/11/10 10:47 AM
      GPU vs. CPUMoTheG2009/11/09 11:30 AM
        GPU vs. CPUa reader2009/11/09 07:58 PM
          ease of programmingMoTheG2009/11/09 11:45 PM
            yes for GPU programming you need non-public infoVincent Diepeveen2009/11/10 08:36 AM
              yes for GPU programming you need non-public infoPotatoswatter2009/11/11 08:06 AM
                yes for GPU programming you need non-public infoVincent Diepeveen2009/11/11 11:23 AM
                  yes for GPU programming you need non-public infoPotatoswatter2009/11/11 01:26 PM
                  Real businesses use GPGPU.Jouni Osmala2009/11/11 11:00 PM
        GPU vs. CPU?2009/11/10 06:01 AM
          2. try but most is said, just clarifyingMoTheG2009/11/10 10:24 AM
            2. try but most is said, just clarifying?2009/11/11 01:11 AM
              you missread meMoTheG2009/11/12 12:33 AM
                you missread me?2009/11/12 01:18 AM
            2. try but most is said, just clarifyingPotatoswatter2009/11/11 08:22 AM
              2. try but most is said, just clarifying?2009/11/12 01:22 AM
                loose, not so orderlyMoTheG2009/11/12 12:47 PM
                  loose, not so orderlyPotatoswatter2009/11/12 06:50 PM
                2. try but most is said, just clarifyingrwessel2009/11/12 01:01 PM
                  2. try but most is said, just clarifyingGabriele Svelto2009/11/13 12:39 AM
                    2. try but most is said, just clarifying?2009/11/13 01:14 AM
                      2. try but most is said, just clarifyingGabriele Svelto2009/11/13 01:30 AM
                      2. try but most is said, just clarifyingrwessel2009/11/13 01:24 PM
                  2. try but most is said, just clarifyingMichael S2009/11/14 01:08 PM
                    2. try but most is said, just clarifyingGabriele Svelto2009/11/14 11:38 PM
                      2. try but most is said, just clarifyingAndi Kleen2009/11/15 01:19 AM
                      2. try but most is said, just clarifyingMichael S2009/11/15 01:58 AM
                        2. try but most is said, just clarifyingEric Bron2009/11/15 02:25 AM
                          /MP optionEric Bron2009/11/15 02:33 AM
                            /MP optionPaul2009/11/15 09:42 AM
                              /MP optionEric Bron2009/11/15 01:22 PM
                        2. try but most is said, just clarifying?2009/11/15 03:13 AM
                          2. try but most is said, just clarifyingMichael S2009/11/15 05:14 AM
                  2. try but most is said, just clarifyingEugene Nalimov2009/11/14 09:24 PM
    Atom pointAM2009/11/09 09:00 AM
      Atom TDPDavid Kanter2009/11/09 12:48 PM
        Atom TDPhobold2009/11/10 07:41 AM
        Atom TDPAM2009/11/10 10:49 AM
Reply to this Topic
Name:
Email:
Topic:
Body: No Text
How do you spell avocado?