G3258 vs i3-4160 for NON-gaming budget build?

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

Zorba Greekthe

Reputable
Oct 8, 2014
85
0
4,640
Zero gaming, and I do not edit video, music, or sound.

My use is 90% heavy Chrome browsing (hence will probably get 16GB of memory) and multi-tasking with various Office apps. Some light multi-media usage like music listening and movie watching as well.

Would I see ANY noticeable difference in paying the extra $40 for the i3-4160? It doesn't seem like hyper-threading is something that has any relevance to a user with my needs at all...or am I missing something?
 
Laptops are optimized for low-power/low heat, not speed. Yes, a desktop PC will be faster. Your current CPU is hyperthreaded, much like the i3 on the Desktop; with as much "stuff" as you've got running, I'm more comfortable recommending the i3 than the Pentium, since you'd lose two threads with the Pentium. You'd have two faster ones, but I think losing the threads might be noticed. If you got the Pentium and didn't like it, you could easily replace it with an i3 (or better), but you would have wasted some money. If it fits in your budget, I'd just start with the i3.
 
A very good indicator of combined execution performance in multi-threaded workloads can be found in a passmark score:

http://www.cpubenchmark.net/cpu.php?cpu=Intel+Pentium+G3420+%40+3.20GHz&id=2028
http://www.cpubenchmark.net/cpu.php?cpu=Intel+Core+i5-2450M+%40+2.50GHz&id=800

I'm showing results for the G3420 instead of the G3258, because the G3258's score on passmark has been influenced by performance tuning heavily.

How does that make you feel about the Pentium?

---------

Expect no improvement whatsoever. To make matters worse, The iGPU in the Pentium is pretty similar to the performance of the HD3000 in your i5, so no improvement there either. Total waste.

----------

If you want to see some compute headroom open up, an i5-4440 or FX-8320+GPU would be worthwhile. The FX-8320 has the exact same performance as your i5-2450M in single and lightly threaded workloads, but offers more than double the combined execution throughput available as you scale out to 8 threads. What this means is that performance will remain more consistent as you scale up to more and more stuff going on, but will never be better than the "best" performance you get from your current i5 from any single task (like rendering a web page).

On the other hand, something like an i5-4440 offers an improvement both in lightly threaded, and heavily threaded conditions over the i5-2450M, though not quite as much to scale into as the 8320 in parallel workloads, it does offer a 35% speed up in any single task.

Both approaches are good. Considering how much of a build is more or less a static price, with the major variables in implementation cost being the CPU/GPU, there isn't much value in implementing low end CPUs anyway. You're going to spend a few hundred bucks on case, PSU, storage, monitor, keyboard, mouse, motherboard, RAM etc anyway, whether you use a $60 CPU or a $160 CPU will typically only effect the cost of a budget build by ~15%.
 


Wow! Those are sobering numbers indeed.

My decision has been complicated mainly by Microcenter offering that damned attractive $100 combo deal for the MSI Z97 board with the G3258. They do have the i5-4590 for a market-leading $160, which could easily run on that mobo though.

I guess if I just had to know for sure, I could buy the G3258 combo and then, if I am totally disgusted at the lack of improvement, add the i5 while keeping the same MSI mobo and perhaps ebaying the G3258 for say, $30 which would make it only a $30 loss. :)

If only there were a way to magically stick the G3258 into my 5 year old Intel Atom netbook, lol.
 
btw, this is a more general related question: do apps still use CPU resources when they are open but idle? For instance, even when I have multiple apps open including my Chrome 20-30 tabs, when I look at my desktop CPU Usage bar graphs, they are only showing Core 1 and Core 2 each at around 20-30%, and cores 3 and 4 are either zero or maybe very occasionally 10%.

Doesn't that indicate that even with a 4-threaded CPU, 90% of the time I'm still only actually using 2 anyhow?

If I had four true cores would those readings change to show wider distribution of CPU workload, or would the nature of the apps I'm using still take up only 2 threads almost all of the time? Does a CPU with extra cores automatically redistribute the load as evenly as possible, or is that more of the software's doing?

I mean, if I bought the G3258 and saw no improvement, I wouldn't be nearly as annoyed as if I bought the i5-4590 and saw no improvement over my i5-2450M despite it having double the Passmark score. 😀
 
At any given time, you probably have at least a hundred or more "apps" (system services, hardware driver/modules, start-up applications, desktop environment services etc) already running, before you even open your first tab. Most of them remain pretty much idle, leveraging no execution resources until they are called on to provide whatever function they are needed for.

When you start opening tabs in chrome, each one generates a new thread. Initially, when a page is loaded on that tab, the compute workload on that thread is very high as the data for that page is loaded, decompressed, interpreted, compiled, and executed. After the page has been "rendered," the compute workload for that page will typically drop to a pretty low level, but this varies from page to page. A wiki page for example, will have almost no ongoing compute overhead, as there is typically nothing on that page that would call for any execution resources once the page has been rendered (animations, automatic reloading/updates, effects etc). In other cases, like say, a page displaying your email, that tab will probably check with the server every few seconds to see if you have any new emails. This will require the attention of some execution resources, though not many. When we have dozens of threads open, usually at least a few of them have some form of continuous or repeating workload. Examples of websites that will demand execution resources either continuously or in short blips every few seconds, would be "live" news feeds, stock information pages, weather, etc... Of course then there's advertising. If you're like me, you probably run an ad-blocking plugin, which stops the vast majority of this stuff. However, if you don't run one, or you visit sites for which it does not work, or for which you have disabled the block, then advertising can potentially show up as a continuous workload (often animated, often on a revolving policy of sorts snagging new adverts every few seconds or minutes).

Short version: A bunch of open tabs could have a compute overhead of nearly nothing, or lots of overhead, depending on what is loaded and running (or not running) within those tabs.

--------------

All modern operating systems have the ability to manage these threads and assign them to different physical or logical cores according to adjustable policies. The task scheduler can be optimized to schedule with maximum compute efficiency goals, or with maximum performance goals. Most threads can be moved around from core to core on a CPU by the scheduler without restriction, though software can be written to prevent this (or application can be launched with flags to prevent it), it is generally only beneficial to do so for real-time workloads that would be negatively effected by the latency introduced by the transition from core to core (example: a computer used for running a CNC milling operation).

In your case, the reason you are seeing more of the workload appear on only 2 "cores" is because of the performance/power policy of the scheduler and how it works on a hyperthreaded system.
For simplicity sake think of hyper-threading as an additional inlet pipe leading to the same CPU core, and think of an Intel CPU core as a multi-port execution engine with 8 internal "execution ports." For best performance, the scheduler will prioritize balancing the work on the 2 physical cores first, until those inlet pipes are saturated, at which point, it will move on to attempt to increase the saturation of the cores by scheduling work on the extra pipes (hyperthread) leading to those same cores. This order of scheduler prioritizing will result in you only seeing "2" of those 4 "cores" getting work scheduled to them in many cases, even if the workload generates many more than 2 threads. The Intel core is internally very parallel, so it is often possible to achieve higher execution port saturation if multiple inlet ports are leveraged simultaneously (that's hyperthreading), but from a performance perspective, it doesn't make sense to start doing this until we have exhausted all of the opportunities to schedule work on all available physical cores first. So in a CPU with threads 0, 1, 2, 3. With threads 0 and 1 belong to the first core, and threads 2 and 3 belonging to the second core, the scheduler will saturate "threads" 0 and 2 before assigning work to 1 and 3.
The same thing happens on an AMD platform, which has CPU "modules," each containing a pair of multi-port (4 port) execution engines, but sharing numerous other resources, like L2 cache, instruction decoders, instruction fetch, branch prediction, FPU and some schedulers. In an 8 core AMD CPU, there are 4 "modules." Performance in unrelated workloads scales best when the work is assigned to separate modules first, then to the remaining cores on each module once saturation on the first 4 "cores" is reached.

When the system scheduler is in power saving mode, it will prioritize on the saturation of entire cores or modules first, so that more of the CPU can remain gated off (low power dissipation modes). Thus, in the example above with a 4 threaded CPU with threads 0 and 1 sharing a core or module, and threads 2 and 3 sharing a core or module, the scheduler would prioritize on scheduling to "thread" 0 and 1 first, until saturation is reached, before scheduling on the second physical core/module (2/3). This scheduling policy maximizes compute efficiancy at the expensive of achieving the best performance scaling.

In both cases (power saving or performance scheduling policies), it is normal to see favoritism in scheduling towards half of the "threads" on Intel hyperthreaded CPUs and on AMD construction architecture CPUs. This doesn't mean your workload can't leverage more threads/cores/modules, it just means your workload at the time you are observing it is "fitting" within the ideal parameters of one of these power policies.

If you move to a non-hyperthreaded i5, you'll undoubtedly see CPU usage "balanced" out on the 4 cores more evenly when multi-tasking heavily. When using an FX-83XX, the effect that you are observing now with hyperthreading will be in effect but not with the same strictness, as there are cases where sharing multiple threads on a module results in better performance than splitting them up onto separate modules (especially if they are sharing work on the same dataset which can fit within the L2 cache of a module). I see all sorts of scheduling behaviors on my FX-8350 for different workloads, but rest assured, multi-tasking in chrome scales just fine to 8-core and/or 8 threaded CPUs.

----------

Confused yet?
 

So what degree do you have?
 


Damn. Do you teach this stuff for a living or something? :)
Thanks for the education, though. You are speaking to a former English major, so while I don't mind reading a huge quantity of text, how much of that I will actually retain is a different matter.

So if I understand you correctly, what my current dual core i5 is showing with the 3 threads really doesn't have much bearing on the question of whether a G3258 would be horribly worse than blowing the extra $160 for an i5-4590?

Speaking of which, is there any significant qualitative difference between an Asus 97-ME vs. the MSI z97 Mate?
Just asking in case I gamble on the $100 G3258/MSI combo, it fails miserably, and I eventually get the 4590 anyhow...if I were getting the 4590 to begin with I would probably pair it with the Asus board. The total expenditure would be the same in either case, it would just result in having a different mobo.



 
Maybe I could get an honorary degree from somewhere... LOL..

I'm just a geek, who hasn't found his niche in the world yet. I've probably studied and tinkered and learned my way through enough computer related information to be worth at least a few certs but unfortunately I have strong rebellious tendencies which make it pretty much impossible for me to take the obvious road to anywhere. School, Certs, work for a corp, get a 401K, Health, etc.. I know this sounds stupid, as much as I would love to have the benefits and the income associated with that, I would feel like I cheated or copped out doing it that way. Probably because it feels like "copying" what someone has already done, which to me feels like violating some sacred code that I can't put a finger on. I guess I am held back by my own stubbornness to do everything my way, and not someone else's. If you tell me that school is the best path to success, then I'll interpret that as meaning "get in line." I don't do well with that. I should register myself as a private education firm, and make up certifications that apply to my knowledge, heh. Every time I have ever engaged in the process of checking out school/cert options I have been faced with what feels like a very gimmicky, sleazy tactic to "sell" me proof that I am an intelligent individual with useful knowledge. I can't help but feel degraded by the whole workings of it.

My goal, is to create a name for myself locally as a specialized professional computer hardware consultant and implementer. I'm still piecing together how to go about that. In the interim, I share my philosophies and knowledge on forums because it helps me keep the information "alive" in my mind. Being able to articulate a complex subject on the spot, requires practice. Written word is a good way to fine tune that particular banjo 😉

-----------


Back on topic....

Assuming you mean the Asus H97M-E, there are some minor differences:

The H97M-E is a microATX board (smaller), the Z97 Mate is an ATX board.
The Asus is leveraging the H97 chipset, while the Z97 Mate leverages the Z97 chipset. The primary difference here is overclocking support.
The Mate series, in my experience, is MSIs "low bid" class of motherboards. I would not be surprised to find lesser quality components/connectors.

I suspect that for your application they would be largely indistinguishable in use, and you could pick based on the one you like the look of better without consequence.
 
Just get this imo xD

PCPartPicker part list / Price breakdown by merchant

CPU: Intel Core i3-4160 3.6GHz Dual-Core Processor ($119.98 @ SuperBiiz)
Motherboard: ASRock H97M PRO4 Micro ATX LGA1150 Motherboard ($71.98 @ Newegg)
Memory: Patriot Viper 3 Low Profile Blue 8GB (2 x 4GB) DDR3-1600 Memory ($84.99 @ Newegg)
Case: Silverstone PS08B (Black) MicroATX Mid Tower Case ($29.99 @ Newegg)
Power Supply: Corsair Builder 430W 80+ Bronze Certified ATX Power Supply ($19.99 @ Newegg)
Optical Drive: Asus DRW-24B1ST/BLK/B/AS DVD/CD Writer ($16.99 @ Newegg)
Total: $343.92
Prices include shipping, taxes, and discounts when available
Generated by PCPartPicker 2014-11-08 19:28 EST-0500
 
I've already ordered the $50 bundle (AR) from TigerDirect that includes a case w/PSU, fans, and 8GB DDR (see thread "$150 build, wtf am I getting myself into now?") ... so now it's down to a question of:

a) experiment with the $100 G3258 + MSI Z97 Mate combo, then add an i3 or i5 later if I hate it,
b) get the i5-4590 that Microcenter had on sale for $160 but is now sold out of (at least mine is) with an Asus, Asrock or Gigabyte mobo in the $70-100 range, or
c) get the i5-4430 that Newegg has on sale for $175 with an open-box Asus Z87-C (30 day return policy and with all accessories) for $38 at Microcenter

I think option (c) is about the same price or only a tiny bit more than current prices for a 4130/4160 plus new mobo, so am leaning that way right now.
 


oh I already have an extra SSD lying around, that's what prompted this whole BYO impulse... 😀
 


Wish I had noticed your i5-4460 suggestion before ordering the i5-4430 from Newegg for that price! Oh well, the slight difference (700 on Passmark) in benchmark speeds is probably not going to be noticeable at all given my usage.

Now comes the hard part: actually putting everything together! I am guessing putting aside at least half a day for it would be a realistic time estimate?
 


yep, it's my first time...so 3 hours sounds rather optimistic. 😀
 
Don't both the i3 and G3258 come with Intel HD 4400 Graphics? That's what I've seen from researching.
Also, is there a significant difference in streaming on Youtube with the G3258 vs the i3?
 
1. Don't bump 14 month old threads. Start a new one.

2. No. The G3258 just has "Intel HD graphics". The i3 41xx models have HD4400 and the i3 43xx models have HD4600.

3. Yes there is a significant difference in streaming between a 4th gen i3 and the G3258.
 
Thanks....I was sorely mistaken. Kinda disappointed because I planned to be using my G3258's iGPU for a little bit while I saved up for a dedicated GPU. But the G3258 is very much 4th Generation though. Quite sure of that much. You think I'll be able to watch 1080p60 in Chrome?

 


This.
 
Status
Not open for further replies.