Results 1 to 2 of 2

Thread: Performance question!

  1. #1

    Thread Starter
    Hyperactive Member voidflux's Avatar
    Join Date
    Jun 2003
    Location
    Brockway, PA
    Posts
    290

    Arrow Performance question!

    Hello everyone we were given this question to think about, and I wasn't sure if my reasoning was right or not, what are your thoughts?

    #1. It is obvious that using more hardware results in better
    performance, but that the performance increase is not linear in the amount of hardware added.
    Why is this?

    #2.If adding extra execution units (Fetch, ALUs, multipliers) adds cost linearly but
    adding extra dependency-handling hardware (issue, RUU) adds cost quadratically, where would
    your money be best spent? What other conclusions and observations can you draw from the data
    that you’ve collected?


    For the first question:
    I thought, The more hardware you add doesn't necessarily mean an increase in performance linearly because you still have to deal with all the problems assosicated with more complex designs such as: True dependences, Anti-dependences, and output dependences. To help reduce the amount of these resource conflicts you can add dependency-handling hardware but law of diminising returns will also set in where you can keep adding hardware but the performance gain will be less and less significant.


    For the second question I said:
    If adding extra execution units (Fetch, ALUs, multipliers) adds cost linearly but adding extra dependency-handling hardware (issue, RUU) adds cost quadratically, your money would be best spent in adding extra execution units.

    You can create a very powerful machine with tons of dependency-handling hardware but who would have the resources to buy it from you? You have to find an equilibrium where performance and cost make sense for implementing a design marketable to a large amount of industries if you want to make a profit.
    C¤ry Sanchez
    Computer Science/Engineering
    @ Penn State
    IBM.zSeries Intern
    Mandriva 2007

  2. #2
    Hyperactive Member Maven's Avatar
    Join Date
    Feb 2003
    Location
    Greeneville, TN
    Posts
    322

    Re: Performance question!

    Quote Originally Posted by voidflux
    Hello everyone we were given this question to think about, and I wasn't sure if my reasoning was right or not, what are your thoughts?

    #1. It is obvious that using more hardware results in better
    performance, but that the performance increase is not linear in the amount of hardware added.
    Why is this?

    #2.If adding extra execution units (Fetch, ALUs, multipliers) adds cost linearly but
    adding extra dependency-handling hardware (issue, RUU) adds cost quadratically, where would
    your money be best spent? What other conclusions and observations can you draw from the data
    that you’ve collected?


    For the first question:
    I thought, The more hardware you add doesn't necessarily mean an increase in performance linearly because you still have to deal with all the problems assosicated with more complex designs such as: True dependences, Anti-dependences, and output dependences. To help reduce the amount of these resource conflicts you can add dependency-handling hardware but law of diminising returns will also set in where you can keep adding hardware but the performance gain will be less and less significant.


    For the second question I said:
    If adding extra execution units (Fetch, ALUs, multipliers) adds cost linearly but adding extra dependency-handling hardware (issue, RUU) adds cost quadratically, your money would be best spent in adding extra execution units.

    You can create a very powerful machine with tons of dependency-handling hardware but who would have the resources to buy it from you? You have to find an equilibrium where performance and cost make sense for implementing a design marketable to a large amount of industries if you want to make a profit.
    For question #1,

    I would assume its due to branching.

    For question #2.

    This seems to be more of an electronics question, Well so did #1 for that matter.

    The best bang may be a little bit of both and not exclusively one direction. Obviously intel, amd, and other hardware vendors like to use ALU's, multipliers, etc. So just by what I know of their designs, they mostly went with execution units. I would assume they went the cheapest possible route.

    Dependencies can be avoided to a degree in code, at least for the most part.
    Education is an admirable thing, but it is well to remember from time to time that nothing that is worth knowing can be taught. - Oscar Wilde

Posting Permissions

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



Click Here to Expand Forum to Full Width