Are intels CPUS with integrated graphics and hyperthreading really a big deal? AMD equivalent?

Page 3 - Seeking answers? Join the Tom's Hardware community: where nearly two million members share solutions and discuss the latest tech.

nickspc4116

Distinguished
Aug 12, 2013
15
0
18,510
I Have been reading up on hyper threading and integrated graphics on Intel cpus and am wondering if its really all its cracked up to be? I know im late to the party on this subject but some clarifacation would be excellent. Currently using an amd fx 6300.

Is it worth the money to upgrade to an intel core w/e processor? Or is there an amd equivalent to the hyper threading/ integrated gpu that intel has. I am willing to spend the money on a good cpu being it intel or amd. I just want to run next gen games flawless.
 


The ID for the logical processor, which is the device on which threads are actually scheduled, is unique. However, the physical processor ID can be extracted from this and checked against another logical processor to see if they share the same physical processor. If that is the case, then those two virtual processors correspond to the two hardware threads exposed by a single core (assuming hyperthreading is enabled; if hyperthreading is not enabled, then each physical processor ID will be unique rather than each virtual processor ID).

This information is visible to the application, but that does not automatically mean that the application can make use of it. The operating system controls thread scheduling, not the application. Most modern operating systems provide a huge amount of leeway in how each process can configure its own threads and desired execution attributes but few guarantees are actually made.

A process may be able to deduce that out of 16 logical processors, numbers 0/1, 2/3, 4/5, and 6/7 are pairs exposed by 4 physical cores sitting in one processor package in socket 0, and numbers 8/9, 10/11, 12/13, and 14/15 are pairs exposed by 4 physical cores sitting in a second processor package sitting in socket 1. As such, it may wish to create 4 threads with affinity set to cores 0, 2, 4, and 6 respectively. This ensures that threads do not share core resources with each other (effectively disabling hyperthreading from the perspective of the application), and that threads do not cross socket boundaries.

This configuration is simply a request made by the process to the kernel. It is entirely up to the kernel designer's to decide to what degree they wish to honour the process's request (all will, but that's through proper design).

Setting up processes like this is awfully difficult, and in many cases awfully unnecessary. Kernel schedulers are very well developed and very mature. In the above example the scheduler may schedule the threads in the exact same way by default without any additional prompting on behalf of the application.

As for why some people assume that games will utilize all 8 threads on an 8 thread FX-8000 series microprocessor, but only 4 threads on an 8 thread i7-4000 series microprocessor... there are several possible explanations.

1. As I mentioned above, many PC applications will spawn worker threads based on the number of physical processors rather than logical processors. Intel's HT has been around for more than a decade, so application developers have gotten used to it.
One of the biggest benefits of HT over AMD's CMT is that HT balances two threads on one big back end. When one of the threads is idle, or HT is disabled, the complementary thread can monopolize the entire core including all of the core's backend execution capability.
AMD's FX series microprocessors cannot do this, disabling one of the cores per module disables both the frontend and backend of that core. This frees up some of the shared L1 and L2 cache capacity and bandwidth, but it also cuts the combined backend capacity in half.
With proper optimization, there's little difference between running 4 workers on an i7-4000 series microprocessor, and running 8 workers. Without proper optimization, 8 workers will win out with a 15%-30% margin as HT takes care of inefficiencies in the code.

2. AMD's FX series microprocessors appear as 8 physical cores with one thread each. AMD introduced a new layer of organization with the "module" that wasn't taken into consideration by any operating system or application. As such, with #1 above in mind an application that spawns threads on the basis of physical processors rather than virtual processors will spawn twice as many on an FX-8000 series microprocessor as it will on an i7-4000 series microprocessor. The threads that are spawned on the i7 will execute approximately twice as fast though.

3. They're full of crap. Many games over the past 8 years have been ported over from the PS3 and XBox 360. While the PS3 used a process model similar to some mainframes (don't ask), the 360 at least used a process model similar to the PC and was used as the basis for a large number of ports. As such, many games were designed with somewhere between 3 and 6 logical processors in mind. When the OS bounces these around to load balance, it may appear as if 8 threads are heavily loaded. This is partly an illusion caused by threads waiting for shared resources.

4. They're speculating. Both the PS4 and XBone are based off of AMD's FX series microarchitecture. Given the similarities between them, it stands to reason that developers wishing to squeeze performance out of the consoles would follow a similar model on the PC.
 


One little correction.. PS4 is not based on the FX series microarchitecture. The underlying microarchitecture for FX-series was Bulldozer and Piledriver. The APUs uses the same, plus the Steamroller in the latest Kaveri APU. But the Playstation CPU will be based on AMD's Jaguar microarchitecture, which is optimized for low cost and low power consumption.

 

ummm... I don't think so... it really depends on which one you get!

I am more of an intel guy. so ill through some intel cpus out there for ya and let you see there ratings and what games they can play... suprizingly the intel HD 4600 graphics is better than an NVidia GeForce GTX765m is...

ill show you!

The Core i7-4770K’s built-in HD Graphics 4600 graphics processor
to see what games on what settings it will play look here: http://

The processor die shows just how big the graphics core is on 4th Generation chips:
jje21xp


http://


 
Wow theres alot of mixed opinions. It seems like youve started a war 😛
So heck why not chuck my opinion in.

Ive had a 6300 paired with a 7770 gpu. My game play was stable as anything, no frame drops unless the cpu got hot. Im assuming your using the stock cooler, which my self is using on my new 8320 and 270x. Now on my 8320 im having temp spikes all over the place and game play is only as good as my temp at the time. I find with intel they can get hot and are still stable while amd looses alot of performance when hot, that being said ive got an amd based computer.

Amd sued intel a while ago about hyperthreading. Honestly there are alot of debate about intel vs amd but the intel had better "Architecture" Which in turn lets it run better at lower temps, do things better etc. But amd has the price point.

I hate the built on apu with amd. It doesnt add any fsp or benifit for high end computers. Its only really good mobo without on borard graphics. Now to the end. If your getting bottle necks, start rulling things out. First of its not your ram but check the speed its running at while its running. Your gfx should be an issue. Now your cpu. Check your temps in and out of game using something like speed fan. If its still running fine at anything under lets say 55c then id put my money on either the cpu cooler or case ventilation
 
Pardon me. Im certain there was speculation around it including a friend of mine convinced that they did. But my research cant find anything supporting this. So either it didnt happen or they didn't win.

Amd had muilti core threading and intel has hyper. Either way intel high end out strips amd. But the amd 8 core if amazing at its price point also including the six cores as awesome at a cheaper price
 




AMD and Intel have been involved in several lawsuits, but none over HT. HT is just Intel's implementation of Simultaneous Multithreading (SMT) which was developed and first used by IBM in the mid 1960s. It's not a new or novel idea.
 


I do understand your answer, about Intel's graphics 4600 being better than the NVidia GeForce GTX765m, but if the answer bought a proper graphics card that was made within 6 months ago, it [strike]may[/strike] WILL be better than on-board graphics. Remember, it will cost a lot.
 
A program is represented as processes in the OS. A process is a container of threads. Threads are what the CPU process. A thread is a 'sequential code'(not sure of the proper term). Therefore a thread cannot be run simultaneously on multiple cores. HOWEVER, using a scheduling process the OS can use thread-switching to split up a core's processing power allowing it to process several threads, at virtually the same time, though not simultaneously. The purpose of this is so that say you don't have to wait until your mp3-player finishes playing the song until you can open explorer. A CPU core is either processing something or not doing anything at all, ie working at 100% or 0%. The load on a core is thus measured by measuring how many percent per minuit it is doing something. How much load a process uses is thus measured in how much time it needs from the core. Since many processes (for example explorer, or an mp3-player) do not need to use a core 100% of the time, that means there are resources available that can be used. To enable this the OS uses thread switching.

But the example I gave was with two different prgrams sharing the core resources. There is no problem for the OS to run these two different programs in parallel. The OS could either use thread-switching and run the programs on the same core, or it could run the program's threads on two different cores. None of the threads that program A runs is dependent on something that program B does. However, when a single program or process runs things parallel some bottlenecks are created. The reason being that sometimes a thread cannot be processed until the result of another thread is finished. That means that sometimes threads will be idle waiting for other threads to finish.

Example of bottleneck:
A+B+C+D = E
t0=A+B
t1=C+D
E=t0+t1
t0 and t1 can be calculated in parallel, E has to wait. The calculation of E cannot be split up between multiple cores.

There will therfore be times when running a process when only one thread can be processed. This is a bottleneck for the process. How quickly this thread can be processed depends on how fast the core is, meaning only the CPU's single-threaded performance is important. The CPU doesn't use any of the other cores for this calculation.

The AMD-FX6300 has 6 cores. It's single-threaded performance is about 75% of the Intel Haswell Pentium G3220's single-threaded performance (no overclock). So in single-threaded performance it is slower than the slowest 4-th gen Intel CPU.

The reason to buy Intel is not for Intel's Hyperthreading technology. The reason for buying Intel is that their cores are faster than AMD's modules.

I don't know if your problem is caused by some CPU bottleneck. I'm completely just guessing, but perhaps a reason for your game running well in some places of the game could be that those parts pf the game could better utilize several threads, allowing the FX to shine. While in other parts perhaps the game is more bound to single-threaded processing. Or maybe that's not how it works at all, i'm just guessing. I have heard the FX-6300 performs very well in BF4, so I don't know. More likely perhaps there is some other problem, like throttling because not enough cooling, or perhaps a GTX 760 is not strong enough to run BF4 at 1080p on ultra, i don't know.

Multiplayer is more demanding of CPU power. It could also be a problem with the internet connection.
 
Hyper-threading isn't very useful for games since games are more gpu than cpu based. Integrated graphics just mean that you don't need a discrete (separate GPU) to play games but these integrated graphics tend to not live up to their "older" siblings. Between AMD and Intel there is only a 10% to 20% difference in performance while being a considerable amount cheaper. Comparing two very well respected CPU's from both sides, AMD's FX-8320 and Intel's i5-3570k, CPUBOSS says the intel is better, but that is only because it has better single core performance, you want to look at overall and differences. They are same overall with a solid 7.8 out of 10. the FX-8320 has overall better passmark and cinebench scores. Both are able to overclock but AMD has been known to better benefit in this field. Correctly doing so brings the stock 3.5ghz to a decent 4.0ghz core clock. I am not too sure about the i5 because I have not done work with it yet. I am using neutral sites for this. Even though 4 cores is good for gaming you can't run as many applications, most games already demand two which cuts you in half. Next the 8320 has better l2 and l3 cache which allows faster access at later dates. The kicker? The FX-8320 is $60. Dollars. Cheaper.
 
Think about it this way, Hyper-Threading allows for two threads for each core. So if you had two cores, four threads would be present utilizing resources the cores are giving to them. Since the device manager reads the thread count instead of the core count it would like like four cores would be active, even though only two are there. AMD doesn't have hyper-threading, but they do have something that COULD be referred to as "hyper-coring". AMD cpu's use modules, and within those modules lie cores that utilize the resources the modules give to them. So say you had a quad core processor, only two modules would be present but in the device manager would read 4 cores, because the thread count has not changed. This sounds less impressive then it actually is because it doesn't make a quad core cpu appear as if it is an octa core cpu as shown with hyper-threading.