MMM
Results 1 to 25 of 175

Thread: AMD Tapes Out First "Bulldozer" Microprocessors.

Threaded View

  1. #10
    Banned
    Join Date
    Jan 2010
    Posts
    263
    Quote Originally Posted by savantu View Post
    Now this is an interesting point : what if being dependent on shared resources isn't a liability, but actually a desirable feature ?

    SMT allows me to increase the utilization of an underutilized core. CMT duplicates the core or part of it, thus duplicating the lack of utilization also.

    Example : we take a 4 issues wide core with 4 ALU units. Let's say, most of the time only 1 or 2 of those units are used.
    -with SMT, we have 2 threads running in parallel on that core, the second thread being dispatched to the idle units. Thus we now have 3 or even all of the units in use.
    -with CMT, I add another cluster of 4 ALUs for a total of 8. I have 2 threads, but I also have 2x as many resources available and each thread uses most of the time 1 or 2 ALUs. Thus, out of 8 in the module, I'm constantly using 3-4 units.
    I get your point completely; that's why I said: The key to all the confusion is workload. Once you start running a very efficient code (like linpack) that fills the pipeline, you render SMT useless (even hurting performance in some cases as it probably steals resources that are needed for a more efficient execution of a thread). So we effectively go back to the fundamental reason behind SMT; which is what you already highlighted.

    In this regard, CMT is not necessarily a direct competitor of SMT because it is more about raw processing power (while maximizing die space due to the design) than eliminating thread-level waste, which is the real strength of SMT. SMT is not a substitute for a real core.
    Last edited by OhNoes!; 07-19-2010 at 09:33 AM.

Bookmarks

Bookmarks

Posting Permissions

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