By: , May 30, 2013 6:52 pm
Room: Moderated Discussions
Ricardo B (ricardo.b.delete@this.xxxxx.xx) on May 30, 2013 4:43 pm wrote:
> Sebastian Soeiro (sebastian_2896.delete@this.hotmail.com) on May 30, 2013 3:39 pm wrote:
> > Sebastian Soeiro (sebastian_2896.delete@this.hotmail.com) on May 30, 2013 1:13 pm
> >
> > It may be a bit unrelated, so I apologize for it, but simply; what fors Hyperthreading do?
>
> Hyperthreading (SMT in a more general term) makes the CPU core apear as two logical
> CPU cores which can run two different programs/threads as the same time.
> It is useful because, often, one single program/thread does not keep the execution units completely busy.
> By allowing the CPU to process two independent instruction streams at the same
> time, you can get work done without making your CPU much more complex.
>
Going to combine my answers to both replies to save some space. Wow, your replies are getting really fast! You're really quite active!
- Okay, thanks for explaining what is known about the prefetcher, I appreciate it.
- Ah, yes, your explanation of writes going down the memory hierarchy makes more sense than going up from the bottom. Definitely makes more sense to keep something that may be used soon in the L1 data cache rather than all the way in RAM. Say, does the Store Buffer handle this eviction as well, or is it something else?
- Oh, that complicates my understanding of the AGU... Why would the virtual address need to be kept in a mathematical equation at all? Wouldn't it be much simpler to simply keep them all organized by number? Or is there some applications that operate off doing math with virtual addresses? I cant imagine any personally...
- So virtual addresses are basically used to keep everything organized and in it's own space of memory? Is the benefit caused by the organization worth the extra clks it takes to generate and use the virtual address?
- So to my understanding, HyperThreading simply allows one program to use the core primarily, but also allows another program to "mooch" off unused execution units? If this is the case, how come games don't get a big boost from HyperThreading? Is it because all their calculations are primarily ALU anyways, so even adding HT will simply keep the unused FP units unused?
Thanks for the very quick replies!
> Sebastian Soeiro (sebastian_2896.delete@this.hotmail.com) on May 30, 2013 3:39 pm wrote:
> > Sebastian Soeiro (sebastian_2896.delete@this.hotmail.com) on May 30, 2013 1:13 pm
> >
> > It may be a bit unrelated, so I apologize for it, but simply; what fors Hyperthreading do?
>
> Hyperthreading (SMT in a more general term) makes the CPU core apear as two logical
> CPU cores which can run two different programs/threads as the same time.
> It is useful because, often, one single program/thread does not keep the execution units completely busy.
> By allowing the CPU to process two independent instruction streams at the same
> time, you can get work done without making your CPU much more complex.
>
Going to combine my answers to both replies to save some space. Wow, your replies are getting really fast! You're really quite active!
- Okay, thanks for explaining what is known about the prefetcher, I appreciate it.
- Ah, yes, your explanation of writes going down the memory hierarchy makes more sense than going up from the bottom. Definitely makes more sense to keep something that may be used soon in the L1 data cache rather than all the way in RAM. Say, does the Store Buffer handle this eviction as well, or is it something else?
- Oh, that complicates my understanding of the AGU... Why would the virtual address need to be kept in a mathematical equation at all? Wouldn't it be much simpler to simply keep them all organized by number? Or is there some applications that operate off doing math with virtual addresses? I cant imagine any personally...
- So virtual addresses are basically used to keep everything organized and in it's own space of memory? Is the benefit caused by the organization worth the extra clks it takes to generate and use the virtual address?
- So to my understanding, HyperThreading simply allows one program to use the core primarily, but also allows another program to "mooch" off unused execution units? If this is the case, how come games don't get a big boost from HyperThreading? Is it because all their calculations are primarily ALU anyways, so even adding HT will simply keep the unused FP units unused?
Thanks for the very quick replies!