Jump to content
Sign in to follow this  
Allurai

So.. hyperthreading...

Recommended Posts

Gents,

 

before hitting reply, please consider I have a low tolerance for bullcrap, fanboyism and opinions of those that googled the topic for 3 minutes

 

I've been putting off upgrading my PC by selectively buying parts and upgrades at various points. Initially I was waiting for Ivybridge to be released before I upgraded from my Phenom X6 1055T in order to stream but during that wait my interest in streaming waned and I kinda forgot about it. Recently my friend has upgraded to some i5 based computer built 12 months ago and playing around with Tanks on maximum settings while streaming 1080p has resulted in sudden and dire epeen envy. Given climate of where I'm at I have a large air cooler which will let me overclock well during winter and stick with stock clock rates when it's warmer.

 

A little bit of research later and I'm pretty much settled on the i7-4790K when it becomes available from my local hardware vendor "shortly". I do a lot of CPU bottlenecked (but thread optimized) work crap at home so the i7 seems a logical choice for me. That being said, the i5-4670K is also a contender up for consideration but to make an educated decision between them requires knowledge i don't posses.

 

I know that in the case of a single threaded cpu application with few/no other threads of significance, the i7 will perform reasonably equally to the i5 given the other logical processor will be essentially idle. If I am to be streaming WoT while running a few instances of sql server and visual studio in the background then it is likely that the 2nd logical processor will be under load, and that performance will be drained from the WoT logical processor. If I went with the i5, then WoT is going to dominate a single core and my other services will be left to fight over the other 3, though I do appreciate some threads will get some time on the "wot core".

 

So my question is, is the hardware and/or os smart enough to avoid using the 2nd logical core of a hyper-threaded cpu if the first logical core is getting slammed, and will I get any performance gain (in theory) in Tanks by going for the i5 instead (assuming all performance losses/gains outside of tanks have negligible care for me).

 

Other components are 9790, 16gb of decent ram, a raid of solid states etc - everything outside of the cpu/mobo combo is less than 18 months old.

Share this post


Link to post
Share on other sites

If you are running VS and MSSQL you should go for an i7.

If you want to do any work with virtual machines the K versions generally remove the virtual hardware capabilities but I would have to double check that on the latest iterations.

The i7 will perform better in single and mutli threaded applications when running stock clocks and when OC'd

For the i5 did you mean the 4690K?

If you are that concerned about core load balancing set the affinity for SQL to your least used core(s). Though high CPU time for SQL is only if you are running very complex or very poorly written queries.

Share this post


Link to post
Share on other sites

If you are that concerned about core load balancing set the affinity for SQL to your least used core(s). Though high CPU time for SQL is only if you are running very complex or very poorly written queries.

 

Something I do a lot of is taking poorly written complex queries and making them better while ranting about indexes and pulling hair out by the fistful when I see people needlessly sorting tens of millions of rows that they table scanned using a nested loop join they googled.

 

And yes, I meant the 4690K.

Share this post


Link to post
Share on other sites

i5 4690K and i7-4790K support VTd

 

 

http://www.computerbase.de/2014-06/intel-core-i7-4790k-test-overclocking-kuehler-devils-canyon/

 

That aside can't you set just the affinity of WoT to one specific physical core (make it exclusive - wouldnt use Core0) and let the rest of your cores and the OS do what they want in the background?!

 

 

An other option is to wait till fall and get X99 and 6 Cores + HT + DDR4. That will be more expensive ofc ... .

Share this post


Link to post
Share on other sites

Something I do a lot of is taking poorly written complex queries and making them better while ranting about indexes and pulling hair out by the fistful when I see people needlessly sorting tens of millions of rows that they table scanned using a nested loop join they googled.

Well...sucks to be you.

And yes, I meant the 4690K.

Gap is closer but the i7 will still out perform it as it should.

i5 4690K and i7-4790K support VTd

VT-d and VT-x, had to be included at some point. It was stupid to disable them on previous K versions.

Share this post


Link to post
Share on other sites

Unless you live in the south island or mid north island your computer will probably get too hot without proper cooling when overclocked regardless of season. nothing catastrophic but it will cause long term wear and tear.

Also just a query, where in NZ do you live and what's your ping?

Share this post


Link to post
Share on other sites

An other option is to wait till fall and get X99 and 6 Cores + HT + DDR4. That will be more expensive ofc ... .

 

tbh this is pretty tempting, but im not a fan of the reliability or price point of 1st gen new stuff.

Share this post


Link to post
Share on other sites

If you make what I imagine you make, I'd go with a 5960X.

 

Regarding "stay away from first gen stuff"... My dad says the same thing, so I'm quite acquainted with the argument. And Haswell-E isn't 1st gen anyways, it's 4th (?). Issues that crop up with being an early adopted of consumer PC hardware generally apply to enthusiasts, not power users. Enthusiast = asks hardware to do stuff not written on the box. Power User = buys top end hardware, but uses it within specs.

 

Your time/money tho :P

Share this post


Link to post
Share on other sites

Quake HQ, ~270 on VDSL2.

 

It seems I was trying to justify spending an extra $100 on beer instead of CPUs, so yes the i7 is likely in my future.

I fail to see why you need to justify spending money on beer.

Share this post


Link to post
Share on other sites

the only bit of worry about a 7790K is that because that range of CPUs is so new, they are currently largely unstested for performance. but chances are with that thing is that it will be fine. 

 

if you want to stream/video render/etc then that pretty much counts the 4670K out, since thats what the i7 series is made for over the i5 series.

 

I recently talked to an expert on these things, between the 4670K and 4690, and he basically said the 4670K was a better choice because of the ability to overclock. although that doesn't help you much seeing as the 7790K is unlocked anyway. 

 

past that, cant help you. 

 

TL:DR for what you want to do, the 4670K would not be your best bet, and I can't help with much else.

Share this post


Link to post
Share on other sites

4770K is what i'm running OC'd to 4.6GHz, no complaints, full load gives around 80 degrees. Also in Quake HQ

 

The price difference between the 4670K and the 4770K isn't much anyway. (Around $120NZD)

Share this post


Link to post
Share on other sites

4770K is what i'm running OC'd to 4.6GHz, no complaints, full load gives around 80 degrees. Also in Quake HQ

 

The price difference between the 4670K and the 4770K isn't much anyway. (Around $120NZD)

is it? IIRC the 4670K up here in Auckland is $300 while the cheapest i7 is around $600

Share this post


Link to post
Share on other sites

Specifically on the hyperthreading aspect:  I run an old i7 (870) at home and a new hex-core one at work.  Once in a blue moon do I see either of them load up any more than the physical core count.  I do see processes jumping between all eight (or twelve) virtual cores, but if you really look at what's going on there's rarely more than four (or six) concurrent threads actually executing.  So my feeling is that the hyperthreading isn't doing a whole lot in this scenario.

 

I run assorted VMs (Linux and Windows running things like SQL Server, various web servers etc) - probably a max of six virtual CPUs with everything going.  I have played WOT at home with all VMs up and running and you'd never know they were there.  I've never done so with anything really heavy happening on the VMs, but Windows in particular is never really idle.

 

The thing that does make a huge impact is disk throughput.  Short of a true pure CPU load (like folding@home, or synthetic benchmarks) it's just not possible to max even the old 870 with rotational media.  Running a heavy integration test load (web server + database) from SSD gets it up to 30% CPU - which, given that it thinks it has 8 cores but really only uses 4 at a time, I assume means about 60% capacity.  That's still enough to play WOT at the same time.  Hmmm, must try that some time...

Share this post


Link to post
Share on other sites

So my question is, is the hardware and/or os smart enough to avoid using the 2nd logical core of a hyper-threaded cpu if the first logical core is getting slammed, and will I get any performance gain (in theory) in Tanks by going for the i5 instead (assuming all performance losses/gains outside of tanks have negligible care for me).

 

In general, no, the OS is stupid and will fuck up scheduling pretty often.  If you want to guarantee good performance while doing other things in the background, you need to set core affinity on the background processes and/or increase the priority of the foreground process.

 

Hyperthreading would be +20% for the heaviest DB and VS work, which as a developer, sounds like wasted money.  Buy this instead:

 

20140430_JohnnyWalkerSmall.jpg

Share this post


Link to post
Share on other sites

is it? IIRC the 4670K up here in Auckland is $300 while the cheapest i7 is around $600

 

I paid $450 for my i7 here in Christchurch (From DTS Systems in Auckland), got the prices then negotiated via Price Spy. Also $199 for the Corsair Hydro H100i.

 

Invoice for if you want to see what I paid (I got a completley new build) http://s22.postimg.org/90jhw89v5/Invoice.jpg

Share this post


Link to post
Share on other sites

i seem to recall something from long ago about SQL being completely fubar on OCed systems, you may want to look into if that issue has been resolved, otherwise the K series chip is useless to you.

I personally do a lot of multitasking at work, my biggest issue is disk bandwidth followed by I/O overhead contention. i5/i7 means nothing to me, the issues appear on both. since your workload is more specific and focused, the extra cores for SQL may be of use, i assume you already know how to configure SQL to use multiple cores and how to configure the extra temp DB instances per core, etc.

my recommendations for a work at home system would have cpu choice be a fairly low priority. simply get the fastest single thread performance you can get, since 90% of your operations will be single threaded.

i prefer multiple desktops. stupid shit like flash gets out of whack and its I/O contention, even with low CPU load causes all the VMs to run like crap and anything else as well. not to mention slow/sluggish UI responses due to CPU context switches.

3 machines and a really fucking good switchbox.

 

 

edit, i mentioned 3 systems, not why. 

 

1. ESXi hypervisor. run all your VMs here.

2. "work" computer. leave it running vcenter all the time. 

3. "play" computer. all your personal crap and toys. at work, this is my machine thats running email, web browsers, etc. 

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this  

  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...