Results 1 to 6 of 6

Thread: POEM: SIMONA Source Code released

Threaded View

Previous Post Previous Post   Next Post Next Post
  1. #6
    Platinum Member
    John P. Myers's Avatar
    Join Date
    January 13th, 2011
    Location
    Jackson, TN
    Posts
    4,502

    Re: POEM: SIMONA Source Code released

    Quote Originally Posted by Slicker View Post
    ...just downloaded the source. There are some easy minor optimizations to be made, things like:

    float c = a * b;
    float d = c * c;
    float e = d * c;

    That's really the same as a*b * a*b * a * b, or the same as (a*b)^3 which can be done like:

    float e = pow(a*b,3);

    The big optimizations would come from getting rid of all the loops in the GPU code. Loops, especially ones that branch in logic internally, cause stream processors to sit idle. POEM has multiple nested loops. I'm sure that's why the utiliization is so low.
    Back when i used to do Assembly programming, i did things similar to what Poem did there, because the number of clocks it took to compute (a*b)^3 was far higher than the number of clocks it took to compute it by multiplying 3 lines of code. I would also, at times, use addition instead of multiplication to optimize it, or simply left-shifting the bits of a number instead of using powers of 2. Exponents were real killers of clock ticks, especially float exponents.
    Last edited by John P. Myers; 11-15-12 at 09:09 PM.


Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •