Intel Core i7-7700K Kaby Lake review: Is the desktop CPU dead?
arstechnica.com
arstechnica.com
We are in an effective post-Moore's law world, and have been for a couple of years. Yes, we can still put more transistors on the chip, but we are pretty much done with single core performance, at least until some really big breakthrough.
On the other hand, as another poster pointed out, we really don't need all that much more performance, as most of the performance of current chips isn't actually put to good use, but instead squandered[1]. (My 1991 NeXT Cube with 25 MHz '40 was pretty much as good for word processing as anything I can get now, and you could easily go back further).
Most of the things that go into squandering CPU don't parallelize well, so removing the bloat is actually starting to become cheaper again than trying to combat it with more silicon. And no, I am not just saying that to promote my upcoming book[2], I've actually been saying the same thing since before I started writing it.
Interesting times.
[1] https://www.microsoft.com/en-us/research/publication/spendin...
[2] https://www.amazon.com/MACOS-PERFORMANCE-TUNING-Developers-L...
On laptops, Kaby Lake would give them the ability to add more RAM and IIRC even lower power consumption.
Lower power consumption wouldn't mean a lot when most peoples laptops are idle, or doing very little work, most of the time anyway.
I guess these are some of the trade-offs Apple chose to roll with.
> when most peoples laptops are idle
Er...RAM eats power even when the machine is idle.
As one data point, Tom's Hardware measured¹ 12W for 32 GB DDR4 in 2014, scaling linearly. According to some random guy on the Internet², the MBP's LPDDR3 power usage is similar to DDR4 when active, and much lower - 10% - in standby. I'm not sure if standby is limited to system-wide standby, or if the computer can selectively standby portions of the system RAM (that would seem desirable). For what it's worth, this³ is the tech ref of the Samsung memory used in the 2016 MBP (according to the iFixit teardown).
So we have a range of 1.2 to 12W for 32 GB (and 0.6 to 6W for 16 GB), if LPDDR3 is comparable to DDR4 and depending on active or standby usage of the memory.
¹ www.tomshardware.com/reviews/intel-core-i7-5960x-haswell-e-cpu,3918-13.html
² With references, it's a good post/thread https://www.reddit.com/r/hardware/comments/5dimal/lpddr3_vs_...
³ https://memorylink.samsung.com/ecomobile/mem/ecomobile/produ...
That's a ridiculous thing to say, especially on HN. There are many tasks that would benefit from higher performance. Not everyone limits themselves to text processing.
We're also CPU-bound for many tasks at the moment - consumer SSDs got to 2-3GB/s, RAM to 40-60GB/s. Not many useful computations can be performed on a single core at such speeds (hardware-accelerated encryption is one exception I can think of).
Yes, we need more cores, but you can scale linearly only that far - production gets expensive, electrical consumption gets expensive, cooling gets expensive, you run out of space.
In contrast, desktop computers for general-purpose needs are already adequate. Word processing, YouTube, Facebook, and non-enthusiast gaming has pretty modest needs that are easily met by a mid-range i5.
The only thing that will put pressure on that is entirely new applications that are much more demanding. VR could be one of those things, but I don't see it as a significant market maker inside of a decade. The same goes for AI.
But do we need more hardware performance or more software performance?
My main point was that things are slow mostly not because the hardware is inadequate, but instead because the software is inadequate, and the software is inadequate because developers have become lazy, because the hardware used to bail us out for free.
Hardware is continuing to improve in performance, it's just that the gains are focused on things like power efficiency rather than brute force. Likewise, software continues to improve in performance: JavaScript engines, to use but one example, are consistently getting faster.
If you want to live in some grim world where everything is shit and nothing will ever get fixed, knock yourself out, but the truth of the matter is there's relentless and significant improvements being made across the board.
JavaScript is your example for efficient software? Hmm...
The only thing happening with JavaScript is trying to optimize away all the incredible inefficiency of the original design, at tremendous expense.
And the reason we are doing this in the first place is that we are now re-implementing all sorts of desktop software in JavaScript...typically at least an order of magnitude bigger and slower.
So thanks for making my point for me.
EDIT: And I am sorry that you perceive my message as "grim". I personally find it hopeful, because we have massive untapped power lurking in the machines we already have, no Intel-provided improvements needed.
Personally, I don't see why everyone focuses on JavaScript as a massive source of inefficiency compared to, say, PHP. Not to mention the rose-colored glasses we see the past in: folks back in the '90s used to work day in and day out with VB6 (or even interpreted Java) apps.
Nope.
Now this may be that browsers just suck at graphics, or at games in general. Perhaps. Does it matter ? No. Javascript does not match Java in speed, not regular java, nor Dalvik. Comparing node.js apps with PHP apps, it doesn't match PHP performance either.
Yes, it does, because I'm talking about JavaScript. Not about the entire browser graphics stack (which, by the way, is architecturally better than that of Android).
> Javascript does not match Java in speed, not regular java, nor Dalvik.
No, Dalvik is slow compared to JS. Its trace based architecture is roughly on par with JS engines in 2009.
> Comparing node.js apps with PHP apps, it doesn't match PHP performance either.
Zend doesn't even have a JIT.
Even if it's browser APIs rather than directly the language/interpreters ...
(a) That depends hugely on what you consider "idiomatic" Objective-C and (b) yeah, that's kind of my point.
If you write Objective-C in the style that is currently popular and propagated, treating it as a unified programming language like JS, Java or Smalltalk, you're going to be slow. In my book[1], I show how easy it is to be slower not just than JS or Java, but even slower than a byte-coded Smalltalk interpreter or Ruby. And the sad part is that it's not even particularly expressive!
On the other hand, I also show how you can use the original Objective-C style, let's call it "Software-ICs", to create an XML parser faster than libxml and with a much nicer interface, or a Postscript interpreter that uses Objective-C objects as Postscript objects and is still faster than Adobe's interpreter (written in C) for most basic language stuff like arithmetic and loops (it doesn't do the graphics itself, so comparing those numbers would be pointless). In fact, said Postscript interpreter, written in Objective-C, is faster at arithmetic than the "bad" Objective-C style, while doing automatic arithmetic promotion, so being safer.
The "Software-IC" style for Objective-C involves fast components written in C connected at the architectural level by dynamic messaging. It is highly idiomatic, convenient, fun and fast as hell. Interestingly, variations of that basic style are being rediscovered these days by the people doing "imperative shell, functional core". See for example Gary Bernhard's talk[2] and then tell me that the final picture doesn't look almost exactly like the pictures Cox drew of Software-ICs (and remember that Cox also said that (a) messaging didn't have to be synchronous and (b) the implementation language for the Software ICs didn't matter much). The Unix tools are also very similar, with fast components written in C connected at the architectural level with pipes.
This is also the reason why I think my Objective-Smalltalk language[3] actually has a good chance of enabling very fast programs despite the very high level of abstraction it is aiming for. Being able to pick an appropriate interconnection style and fast components is the key to fast software.
Back to the original point, we are leaving orders of magnitude of performance on the table, quite frequently for no particular reason. And as I wrote elsewhere, I actually think this current point we have reached is good for software and for software people, because we can get that performance quite easily by writing decent code, and writing decent code is starting to matter more again. Just like I think the end of Moore's law might finally break the stranglehold Intel has had on hardware architecture, so innovative architectures (remember the Transputer[4]?) have a chance and aren't clobbered by Intel's next fab-step. Speaking of innovative hardware architecture, has there been any new news on the Mill?
Interesting times.
Anyway, I didn't bring up JavaScript, this problem is everywhere. I just thought that bringing it up as a counterpoint was...humorous.
[1] Did I mention my book? g https://www.pearsonhighered.com/program/Weiher-i-OS-and-mac-...
Yes, I am still working on it, in fact I just added the first cut of an sqlite scheme-handler 3 days ago (https://github.com/mpw/Objective-Smalltalk ). Still read-only for now and doesn't do any complex queries. On the other hand, table-name completion is kind of nice.
You are right though that I should update the site more often.
The seeming pleonasm is intentional...and not really a pleonasm. When you look more closely at the "Objective" side of Objective-C, it really is more about architectural interconnection than just adding Smalltalk to C, Smalltalk-style messaging is just one mechanism chosen.
Adding the kind of architectural promiscuity that's in Objective-C to Smalltalk is a big boon. On the other hand there is the (fro me) big idea of the Smalltalk class libraries, the fact that the machine primitives are not the conceptual primitives (Object -> Number -> SmallInteger, Collection -> Array). Taking that and applying to the "objective" part is also a big deal. I believe.
Remember the original Blackberry 950?
https://en.wikipedia.org/wiki/BlackBerry_950
It was a 80386 w/ 512KB of SRAM and 4MB of storage, and it ran on a single AA battery for days.
..or a VAX/11?
32-bits in 1997:
Sure, you can piss all over JavaScript for having been shitty and slow, but it's not like that any longer. A lot of people worked very hard to dig it out of that ditch it was born in and make it into something that performs well.
It does everything Java promised and a whole lot more. This is not the world anyone predicted would happen.
> ...we are now re-implementing all sorts of desktop software in JavaScript...
Have you stopped to ask yourself why? It's cross-platform. It's ubiquitous. It's fast enough. Name another language that's as effortless to get started with, that's as insanely portable, that can be distributed easily through innumerable delivery channels. Java? Nope. C++? Hardly. C? Not really.
It's easy to sit in an armchair and bitch about how crappy things are, how much "power" we have lurking in these machines, and yet do nothing to tap into it.
What language do you use most frequently? What improvements could be made to that? No language is at its performance peak, not even long-time performance champions like C++ or C. There's still tons of room for compiler optimizations, for new libraries that better vectorize things, for better design patterns that make use of multiple cores better.
This is all at the language level as well. What about kernel issues? Linux is far from flawless. BSD could us improvements. That's not to say there aren't people working to make these things better, to push performance.
If these things are hard, that's the answer to why things aren't improving to your satisfaction.
And yet electron apps are still shitty and slow. Funny how you only compare javascript to languages that have always performed poorly on desktops and not something apps are actually built in, like c/c++/c#.
If you want to build a cross-platform desktop application with any of C, C++ or C# knock yourself out. Someone using Electron will have good-enough prototype within weeks while you're still working on your build process.
Where you can focus on one OS you can get better results with a pure C++, Objective-C, or Swift result, but when going cross-platform it massively complicates things. Today JavaScript is a pretty good answer to that problem, and performance is adequate enough people are willing to pay the price in terms of footprint.
Software that exists but is suboptimal is better than software that doesn't exist but is hypothetically better.
If you don't like those applications and think you can knock out something better in C++, by all means, but you've got quite a hill to climb.
Microsoft Visual Code, as one example was written deliberately using Electron even though Microsoft obviously has some amazingly talented C++ people who can build cross-platform applications: Microsoft Office and a compiler. I don't think they took that decision lightly.
When was the last time you where really impressed with https://arewefastyet.com/ ? Recent improvements are looking more like stragglers catching up with the state of the art than like the state of the art improving much. This is a very good thing, but it is not consistently getting faster. More like "getting more consistently fast". Good, but not the same. Actually it seems to be the exact same pattern of approaching a wall as we see (and lament) with desktop CPUs.
For many reasons - multi device support, convenience, data harvesting, lock in. Performance isn't something we generally get now everything becomes network constrained rather than CPU or IO.
So yeah it's being fixed because it has to be, because it's a terrible experience in comparison. I don't deny that often the convenience far outweighs the loss of performance and latency.
You can't avoid the fact it's heavily skewed the market against those needing native power on the desktop. If you're doing things that need that, the last 5 years have been rather underwhelming progress wise.
That's the point. We've seen hardware improve but we've had a net loss of performance because a lot of stuff has moved to web apps and other "higher level" languages.
And now people write basic user-space tools in Javascript instead of C, with a basic 100 libraries bolted on as dependencies, where only 0.1% of the code is ever used, but you'll also need to boot the JS runtime before any of this code even runs.
Guess which tool is faster. The C one or the JS one?
I'm not saying "Do everything in C" (I'm rather in the opposite camp), but he does have a quite valid argument there.
So it seems you get to pick one. And of course, the observation is that we're mostly no longer getting faster hardware.
OK, but that has been the case for a long time. Microsoft Word users are never the market for the highest end desktop CPUs.
This falls down on the word "general purpose". What is general purpose? And what is general purpose today vs tomorrow? I put it to you that high definition VR and AR, which currently stretch the best consumer machines, are going to be part of "general purpose" as soon as people can put out affordable mass market hardware that supports it.
General purpose expands to use the hardware it has available.
This happened most dramatically with hard disks, where 8" drives lost way to 5 1/4" even though they took a hit in storage capacity. Later 3 1/2" drives nibbled away at that even further, with the same penalties. Notebook-sized drives ate away at that, too, despite their limited capacity. Every time the driving factor was not performance or capacity, but convenience. Lugging a twenty pound hard drive around in your laptop wouldn't make any sense even if it could hold 400TB of data.
Desktops yielded to notebooks, notebooks yielded to phones and tablets.
General purpose migrates to the most convenient solution that's adequate for their needs.
What people want (and have always wanted) from VR* will be out of reach for some time.
*You can't feel virtual objects or move freely in a virtual world (without being hendored by the physical world).
Also, a lot of the promise of computers is the ability to process things quickly. If a "big data" task takes 1 sec to run you can afford some trial and error. Increased performance should make software usable by more people with less training.
The single biggest performance increase I've experienced in the last decade has been due to the move to SSD.
Video editors and CGI artists need more GPU and IO performance. It's what gives them real-time feedback. Developers need fast IO (I have slow compile times, but I rarely desire a new CPU to fix that).
The CPU has largely become irrelevant, performance wise. It's great when you hit the final render button on a video, or 3D scene, or when you're compiling code. But those actions constitute a minority of our interactions with computers.
Read any HN thread full of complaints about browsers and you'll see otherwise.
Compile times are almost always CPU-bound. Put all your code and headers/libs on a ramdisk [0] and hit compile and see how much faster it is. My bet is, not much.
[0] https://www.jamescoyle.net/how-to/943-create-a-ram-disk-in-l... (just an example)
I want any data I access to appear instantly. Compilation often happens in the background and only very occasionally does it specifically block me from working. Slow IO, however, used to block me from working constantly.
You can go lower than that. When I didn't do enthusiast gaming, my desktop PC was an Intel NUC with an Ivy Bridge low-power Core i3 and its integrated Intel HD Graphics. That thing could easily do Portal 2 at 720p on acceptable niceness settings, and Minecraft at 1080p30. Video playback and browsing was perfectly smooth at 1080p, too.
It would be interesting to know how many of those who really feel strongly about this kind of things are actually buying based on their computing needs and how many have some other reasons (like getting some tangible reward for having worked hard - money on bank account is abstract, new PC is quite concrete).
Laptops that have had upgrades from Skylake to Kaby lake reported significant increases in battery life:
http://www.itworld.com/article/3154243/computers/12-things-y...
http://www.theinquirer.net/inquirer/news/3001791/lenovo-thin...
http://www.pcworld.com/article/3127250/hardware/intel-kaby-l...
The iPhone6(s)/7 camera lens is such shockingly bad design I still can't understand how Apple justified it to themselves.
If you look at the amount of battery-saving features they have been working on, it's obvious that they focus on lowering consumption instead of engaging the spec numbers game.
I guess. But i do wonder if there isn't some framework for thinking about the tradeoff in a quasi-objective way. Is it possible to make any kind of general statements about the marginal utility of improvements in weight/thickness and battery life?
One hour of battery life lets me take my laptop to a meeting, or sit on the sofa for a while. Two hours lets me watch a movie on the battery. Eight hours lets me work away from a power socket all day. Twelve hours lets me do that and read HN in the evening. Twenty-four hours is longer than i'm ever away from a power socket. It feels like there's steadily increasing utility up to that "as long as i want to be sat in front of a screen in one day" point.
A 15 inch, 2.41 cm thick, 2.54 kg laptop rests comfortably on my thighs, goes in a padded envelope, and fits in my satchel without taking up much space. A 15 inch, 2.79 cm thick, 2.5 kg laptop somehow did seem a lot more ungainly. A 15 inch, 1.55 cm thick, 1.83 kg laptop fits in a bag just as easily, and is comfortable to hold in one hand. Given that i don't often hold a laptop in one hand, that seems like a small increase in utility.
Are there other reasons why that 0.86 cm of thickness and 0.71 kg of weight are a real improvement? What does it let me do that i couldn't before?
Are you sure that's "kg" and not "pounds"? I could not imagine holding a 1.83 kg laptop in one hand for longer than a minute or so. (I assume you hold the laptop by its side while the screen is open and active, which creates a surprisingly high torque on one's fingers.)
I'm typing this on an 2012 Asus Zenbook that weighs 1.3 kg, which is quite near the sweet spot for me. The only thing I don't like about it is that it has no replaceable parts whatsoever, and the 4GB RAM is starting to feel a bit tight. So if I ever decide to get a new notebook, I might choose something a bit heftier if it offers replaceable RAM, battery, etc.
Mainstream doesn't need the fat trimmed. eg Vulkan/Metal, which halve the CPU load (not GPU) of graphics sit idle.
That's not true. We just aren't trying very hard to parallelize our code. I work on parallelizing browsers and there's a lot that can be done. For example, libpng leaves 2x potential performance on the table by not pipelining the Huffman decode with the defiltering.
That said, I do agree that a better use of our time in most cases would be to improve the sequential performance of our software, because usually you shouldn't start parallelizing until you've exhausted the potential sequential improvements.
The real benefit, in my view, is to emulation. It's extremely CPU intensive. And the more accurate you want the emulation, the more the resource demands go up. Today's CPUs are only just powerful enough for very good reproduction of a poorly optimized 16-bit gaming system emulator, or a greatly optimized 32-bit system emulator. But for PS2 and beyond, we don't have the power for highly accurate simulation yet.
It's also nice for "wasting" power by writing in higher-level abstractions that are not as efficient, but are safer and easier to understand (think always bounds-checking a vector, instead of dropping down to raw pointer arithmetic.) Something that applies to all application development, including for emulators.
http://spectrum.ieee.org/semiconductors/devices/intel-finds-...
"Sometime in 2017, Intel will ship the first processors built using the company’s new, 10-nanometer chip-manufacturing technology. Intel says transistors produced in this way will be cheaper than those that came before, continuing the decades-long trend at the heart of Moore’s Law—and contradicting widespread talk that transistor-production costs have already sunk as low as they will go"
If intel has no competition, they tweak the product enough to give it a 2017 sticker and sell it at the same price. Because why not?
Only more cores will save the performance trend. So if Intel had any competition in the enthusiast segment, the enthusiast i7's in the $350-500 range would have gone from 4C/8T to 6C/12T to 8C/16T in the years since Sandy Bridge.
The perf difference between my 2500K and my 6600K is not noticable.
CPUbench
2500k: 6400
6600k: 7921
That's a 20% improvement which doesn't sound like much on paper, but in real world testing that means about double the FPS for higher-end video cards at high res due to the older 2500k design lacking optimizations and other issues holding back those cards.
http://forums.joinsquad.com/topic/5973-my-2500k-vs-6700k-upg...
Lastly, gamers would most likely opt for the i7 6700k which benches at 11000, so almost double that of the 2500k.
On CPUbench, there's a big difference between i5 and i7 parts, and going to a i7 that's generations old gets you better scores than a current top-of-the-line i5.
In some [1] cases that can make quite a bit of difference, up to almost 2x.
[1]: Real improvement is of course anywhere between none and 2x. A lot of software (most even?) is still not using AVX2 at all. Sorting, memory block operations (strlen, memcpy, etc.) and operations that need to do integer math on big chunks of data can benefit significantly. Some real world code I wrote saw up to ~1.9x improvement on systems with sufficient memory bandwidth.
also: my 2011 sandy bridge (2600k or 2700k, at work so can't check) does fine. these days the gpu is the major arbiter of gaming performance.
While GPU is a MAJOR arbiter, CPU can bottleneck you too and it can hit you in the FPS. Years ago my gaming PC had inexplicably low FPS for the GPU it was using, and GPU utilization wasn't anywhere near 100% but CPU was... pop in a new chip+mobo and gaming was waaaay more enjoyable.
There are subtle differences in how bottlenecked GPU vs CPU acts in most games, but they're there.
In most modern games, a better CPU may yield a 10 FPS improvement, while a better GPU for the same price would yield 3x that.
But I suppose it's accurate to say, in general terms and given the kinds of games that are currently most popular, GPU bottlenecking is much more common.
I don't think it's a compelling argument for CPU being the bottleneck when your example is an unoptimized game with a sloppy codebase.
> throwing hardware at problems when you can't fix em in software
DF's problems can be fixed in software, it's just that the creator chose not to. He likes spending his time adding more features instead, performance be damned.
Not that I blame him, he can do as he pleases with his own project.
In the early 2000's, buying a new processor every year would yield noticeable returns in gaming performance. Once we entered the console port life cycle (circa 2008), where the performance of the dominant consoles defined what developers put in games, I found that from 2010-2014 I was able to use the same processor (and not a top of the line one) with no trouble, and only an intermediate graphics card upgrade.
I'm now on the core that I bought in 2014, and I honestly expect it to be good until 2020. We'll see a bit more get juiced out of graphics cards, but we're nearing a stage where the cost of making graphics good enough to overwhelm modern graphics cards will be so high that it won't make sense from a cost/benefit perspective. At that point, I expect CUDA applications to be the driving force behind graphics card R&D.
I'm running a Haswell i7 in my gaming machine and looking at the numbers I'll maybe get a ~3% bump by "upgrading" to Skylake. No thanks.
Another factor to take into consideration is that people change gpu more often than cpu (I would blame intel and their sockets policies but I dont know) so it is obvious you target the lower common denominator which is gonna be the cpu therefore games that don't use lots of cpu to begin with.
Last argument, cpu usage in games can't really be scaled like gpu usage, you can turn down shadows at best but a game is gonna always use that much cpu, being again thelowest common denominator.
Faster CPUs won't change that, same as in the last 20 years.
> Faster CPUs won't change that, same as in the last 20 years.
In the last 20 years we've been throwing more and more hardware at the problem, eventually we'll hit a wall and start conserving those precious cycles.
Really? The developers' fault? Whose time are we talking about here?
The company's time? In workplace development, it's managers putting down on the development effort that goes towards optimization / performant design - and not for crazy reasons, simply because in many market conditions and applications, it looks like throwing money away on the balance sheet.
If you're talking about open source projects, any of a developers' time we get is gratis; this would be a pretty good example of looking a gift horse in the mouth.
Would you use this argument to excuse software bugs? What about security holes and data leaks? Besides, the 80/20 rule applies, i.e., a little more effort spent on performance goes a long way towards a better user experience.
> If you're talking about open source projects [...]
Interestingly, this problem is less prevalent in the OSS world, because C and C++ is still very widespread there.
There were multiple factors of improvements in speed in the GPU inside last few generation of Intel CPU.
Unfortunately, folks who care about GPU performance likely use real graph card in their system.
In the early days of microprocessor design they could steal concepts from mainframe computers. Then later they could port features from ultra-high-end chips like those found in the Cray systems, then things like Alpha which they acquired from DEC. Lately they've packed everything they've mined from those systems and more into the current generation chip. There's not much left they haven't already done.
The only way out of this particular jam is to come up with entirely new ways of making CPUs. Maybe this is why Intel's acquisition of an FPGA manufacturer is relevant, that will open up entirely new opportunities. Maybe that's why they're exploring many-many-core designs. Maybe it's why they're investing more heavily into boosting GPU performance.
> So if Intel had any competition in the enthusiast segment...
The enthusiast segment is almost utterly irrelevant to Intel's bottom line. They're willing to pay a steep premium on certain chips, which can help when breaking in a new process, but in the long haul they're, at most, 5% of the market. Intel's missing out on way more money by not being a bigger player in the mobile space.
If Intel could've shipped a cost-effective 6C i7 design they would've done it by now. There's a version on the market for $600 which isn't too far out of your envelope, and we are talking about enthusiasts here so they're normally not as price sensitive as general consumers.
They are slacking because they can. AMD hasn't been competitive in the desktop space for over a decade.
Still, Netflix requiring DRM on 4K streams is idiotic. Big content sure does love shooting themselves in the foot.
(But then again, I'm fine with streaming at Blue-Ray resolutions or even less)
It's ridiculous how often I find myself torrenting content that I am paying for the privilege to stream (via Netflix, Hulu, HBO Go) simply because the legal option is a much worse user experience.
I'm sure someone will reply saying they canceled because of DRM - I'm just pointing this out for the parent post.
I think it's nice for Netflix, let's hope it'll be usable with Chrome, fullHD on chrome would already be a start..
The "painful" part isn't the computation any more its getting multi-gigabyte data sets into and out of DRAM or moving them around in DRAM. You can finesse some of that by adding more and more cache on chip but you end up with the 'buffer bloat' problem where you're caches are fighting each other. If you pick the 16 bytes per computation figure that is sometime bandied about then your 4.2Ghz average computation bandwidth wants something like 67 GB/second of main memory bandwidth.
I suspect that is why IBM spent a lot of time on upping the memory bandwidth in Power8, it does no good to have CPU cycles stalled waiting for memory.
Looking at the existing Intel line up, they have specialized instructions for some pretty oblique programming tasks, they have tweaked their pipeline and register pool to minimize bubbles in the pipeline path pretty effectively, and they have I/O channels that can out perform much of the gear out there. So what do you improve go after next?
Entire application classes are still CPU/RAM bound.
What we have no is one of those plateaus the industry gets stuck at every so often. It's very similar to the 8-bit days, in that it seems to be enough for most of the things user do already, if you don't mind grinding along.
But it's very much not enough for many things users might be doing, but can't - including domestic robotics, non-trivial NLP, VR (although I have doubts about that, unless someone invents less clunky hardware), and pretty much any AI-enhanced application.
Current versions of many of those run on the modern equivalent of a mainframe - i.e. one or more servers in a remote data center.
There are huge gains in usefulness to be made with AI that is personal, domestic and/or office-aware, always-on, and local.
How about moving the computation to the data? I.e. add ALUs and similar structures to DRAM, so there's nearly no need to move the data itself.
Here's an interesting paper a few years ago that dealt with memcpy() and memset() effectively without using any memory bandwidth:
https://users.ece.cmu.edu/~omutlu/pub/rowclone_micro13.pdf
The relevance here being that memcpy() and memset() are already specialised in x86 by the REP MOVS and REP STOS instructions, respectively.
CDC-6600 all the things!
(The 'talk to smart peripherals' approach, if memory serves.)
Ever tried to compute histogram efficiently on a modern CPU? Even if it's simple 256 bin. As far as I know, it's impossible to vectorize, things will need to go slow scalar path.
Or anything that needs to access memory at multiple (semi) random addresses inside one SIMD register (128/256/512 bits wide).
It might help if Intel could also add scatter vector instructions. Well, assuming they can also improve gather/scatter operations on the memory controller...
https://gcc.gnu.org/wiki/cauldron2014?action=AttachFile&do=g...
In October 2016 Intel started talking about adding more 512 bit instructions:
http://sites.utexas.edu/jdm4372/2016/11/05/intel-discloses-v...
For someone who doesn't follow Intel chip generations closely, the chart of the generations of Core I3/I5/I7 chips was informative. Two Observations:
1. Why doesn't Intel actually name the chips to make them clearer?
2. The poor Mac Mini that Apple is selling in 2017 uses 2013 era chips and is way overpriced.
Edit: fixed typos
Server: expensive, more expensive, you can't afford it
Desktop: nicely priced, expensive
Mobile: nicely priced, expensive, pretty expensive
Of course, if they made it that simple, then this would happen:
Cheap server: buy ARM
Cheap Desktop: buy an older PC
Cheap mobile: ARM
REALLY cheap mobile: buy last years' ARM
For #2, the performance isn't really much different for most people. Running office and surfing the net probably are more limited by typing speed and internet connectivity than the speed of your CPU. I think most people pay those prices because they want the simplicity (either real or imagined) that Apple has over the other options.
[0] https://forums.lenovo.com/t5/ThinkPad-T400-T500-and-newer-T/...
[1] http://pcpartpicker.com/products/memory/#t=9&Z=16384002&s=30...
Because it makes more money this way. "Cheap", "Expensive" and "Middle ground" is the optimal marketing strategy.
It feigns transparency but really it is just an opportunity to exploit a common bug in human-brain logic. Specifically, Decoy Pricing.
The i5 and i7 are both quad-core CPUs clocked at no more than 100MHz away from each other. But the i7 is $100 more to make the i5 look like a good deal. When consumers buy the i5 they "think" they got a good deal, when in reality, Intel priced the i7 to make them feel this way.
Read up on Decoy Pricing to learn about this effect: https://en.wikipedia.org/wiki/Pricing_strategies#Decoy_prici...
https://en.wikipedia.org/wiki/Decoy_effect
Also, don't complain about marketers taking advantage of human psychology. That's their freaking job. Instead, you should take advantage of it too.
Hopefully somebody who knows more about this than me can jump in and fill in the blanks here.
EDIT: I communicated my point poorly and the comments below mine explain this is much clearer terms
As a hypothetical example (I'm not 100% sure if this is how Intel does things), and i5 could just be an i7 except it couldn't handle the higher clock rate. So instead of throwing away a chip that's limited in clock... Intel will sell the chip as an i5.
Or perhaps in another chip, the hyperthreading portion got borked because of a piece of dust landed in the lithography. So instead of selling it as an i7, the hyperthreading portion is fused off and the chip is sold as an i5.
The IBM-Cell in the PS3 was a different approach to the same problem. The Cell was specified as 7-SPUs and 1-CPU, but in actuality... the manufacturing process made 8-SPUs and 1-CPU.
IBM assumed that one of the SPUs would fail during manufacturing, so they only promised to deliver 7 of them per PS3.
You can literally see the 8 SPUs: https://upload.wikimedia.org/wikipedia/commons/e/e0/Cell-Pro...
There's lots of ways to approach the problem. Manufacturing is an imperfect process: not everything is made identically. So the manufacturers have to figure out how to test for differences and... if necessary... sell the same "manufactured" chip in different bins.
Phenom.
https://en.wikipedia.org/wiki/AMD_Phenom
https://en.wikipedia.org/wiki/Phenom_II
Not all the hardware of Cell on PS3 was available if you run the official Linux port. Which was later blatantly removed.
Really it is just a way to do differential pricing. Some people will pay $500, some only $100 while the part only cost $25 to make. The way to maximize profits it sell to both, and find a way to justify the price difference.
The Core i3-6320 is about $60-70 cheaper than the i5-6600k, but on applications that don't benefit (sufficiently) from multiple cores, it can perform nearly as well. Anecdotally, friends building PCs always compare i5 and i7 and never consider the i3, but for their real world uses (many games!) it would be just perfect (and the savings could be thrown at the video card where it'd make more of a difference.)
Would i be willing to pay 35$ extra per additional core if I knew I would want to replace the hardware within two years anyway? Questionable. But when hardware lasts half a decade? The premium per core per year becomes irresistably low. The i7-2600k will soon have it's sixth birthday...
However, whether "the core is going to be fully utilized" is another question. If you only ever need 2 cores, it is wasted money, plus, if your focus is on gaming, and your budget requires you to make choices based on right now, the extra $170 can be the difference between getting a Radeon 480 or a Geforce 1070.
(Since I hope my next build lasts another 8 years, I'll probably "pad" my build with an i5... I've fallen into the trap!)
I'm not sure thats a fair comparison - clock rate isn't the only thing and the current high end i5/i7 chips (6600k and the 6700k) are 500Mhz apart, and the i7 (as always) has hyperthreading (in some applications, hyperthreading is actually very useful) while the i5's don't. And while the i7 has a 15% higher clockrate, it is ~20% faster, while being 40% more expensive. With the k-series specifically, the i7 having a higher base clock also means you can overlock it better.
FWIW, I don't find Intel's naming scheme unclear, but OTOH, I have been following CPU/GPU version numbers for over 10 years so I could be blind to the confusion.
The i5-5200U is a dual-core laptop chip under 20W TDP. Its very different from the i5-6600k that Nemothekid was talking about.
Instead of people being confused and accidentally buying a more expensive PC than they need, they just stop buying PCs altogether because there is no clearly communicated benefits for buying a new one.
Intel's marketing is due for an update. But for these past seven years, the "Decoy Pricing" of i3 vs i5 vs i7 has upgraded tons of users to i5s without those users fully appreciating the benefits of i3 vs i5 vs i7.
Its rather difficult for me to explain the difference between all three chips, and my uncles / aunts often just settle on i5... or even i7 "just in case".
Trust me on this: the decoy pricing has worked this past half-decade. That the marketing has gotten stale over the course of seven YEARS is no surprise... but how many other systems have had the same freaking name for seven years at a time?
Higher frequency, larger caches, more instructions per core, more cores per die, higher RAM bandwidth, more FLOPS per Watt consumed?
Although the author points out that single core performance hasn't improved since Sandy Bridge (2011) and multi-core performance has been largely lackluster since then.
While I agree it's shameful for Apple to be selling the current Mac Mini, the performance from 2017 chips is going to be only ~20% better than what's in the Mac Mini now. [0]
It's not a completely fair comparison because the i7-7500U is 15W, but I can't find any Intel mobile CPUs released in 2015 or 2016 which were dual core and didn't have a 15W TDP.
[0] http://www.cpubenchmark.net/compare.php?cmp%5B%5D=2345&cmp%5...
Which honestly seems pretty fair. 4K wasn't mainstream in 2013, you needed to spend a lot of money to buy a 4K display or projector. [0]
I wouldn't say that most people purchasing a Mac Mini are planning to use a 4K display with it, considering its target market is people who want to buy a Mac (without an integrated display) but don't want to shell out for a Mac Pro.
The Mac Pro not supporting 4K is a problem, one that has been brought up by many other people as an example of how Apple is ignoring the Pro market segment.
[0] http://www.alphr.com/news/382774/asus-takes-pre-orders-on-fi...
4K display prices are down, way down, and well within the normal consumer range now - you can pick up a very nice 4K monitor for $300 or less. It's not unreasonable to expect a Mac being sold new in 2017 to be able to drive it...
I have a late 2013 MBPR (NVIDIA GT750M) with an external 4K monitor in portrait mode connected via DisplayPort, plus the laptop's display. Both are running at 60Hz. I don't see any sluggishness or mouse lag at all; everything is very smooth.
I mostly run Windows 10 on this machine, but it also works fine when I boot in to OSX.
A while back I tested a 2014 MBPR with the AMD GPU vs. my late 2013 model with NVIDIA, and the AMD was a bit faster.
Which means it still won't be as powerful as the Mini they sold five years ago:
https://browser.primatelabs.com/mac-benchmarks
At the beginning of last year, I expected to be replacing a Mini and a MacBook. I ended up buying a 2012 Mini and a 2012 MacBook Pro on eBay, bumping up the memory and swapping in SSDs. I never would have imagined that a few years ago.
Intel does name their chips. ex: Intel Core i7-6700K[0], Intel Core i7-5775C[1]
They also have families (Core i7), and generations (6th Generation i7 Processors), and microarchitectures (Skylake)[2]
As for making it clearer, I think the i3/i5/i7/Xeon branding is probably as clear as they can, given that they have a few dozen processors per market (Desktop/Server/Mobile/Embedded) per generation, each targeting a different thing (low TDP, high clock speed, more cores, hyperthreading, etc).
[0] - http://ark.intel.com/products/88195/Intel-Core-i7-6700K-Proc...
[1] - http://ark.intel.com/products/88040/Intel-Core-i7-5775C-Proc...
[2] - http://ark.intel.com/products/codename/37572/Skylake#@Deskto...
[0] - http://ark.intel.com/products/family/78583/Intel-Xeon-Proces...
[1] - http://ark.intel.com/compare/?ids=85766,85765,85764,85763,85...
EX = product line
vX = generation
The clock speed omission is a bummer, but Xeons have two different clock speeds on all processors (one turbo -- which only a certain percentage of the cores can hit simultaneously), so things are a bit more complicated.
[1] https://semiaccurate.com/assets/uploads/2011/04/xeonmodels.p...
E3/E5/E7 (market segment + socket), the first digit is the socket configuration (2/4/8), the next 3 digits are a model number and the vX at the end is the CPU generation.
The Xeon E3-1220v2 in my ProLiant ML10 is a lower-end, single socket Xeon in a fairly high performance segment.
The Xeon E5-2403v2 in my ThinkServer TD340 is a mid-range, dual socket Xeon in a fairly low performance segment.
The fact that the 3 digit identifier has no relation to overall performance is the biggest shame in the Xeon chips, considering Intel does this with the Core i3/i5/i7 products.
OTOH, Xeon's can vary so wildly it's hard to give a tangible performance or configuration metric to the model identifier. Things like overall CPU cache, core count, clock speed, expansion support (namely, number of PCIe lanes) all vary so much that you really have no choice but to look at ARK since there's no way to convey this in a more efficient manner.
The i3/i5/i7 is clear as market segmentation. But you never know which generation is the current one. Also there remains to be seen a clear differentiation between models "inside" i3/i5/i7 division
x is the brand family that most everyone is familiar with.
y is the generation. 6th gens with have a 6. 7th gens will have a 7.
zzz is roughly a capability indicator. The higher the number, the more powerful the processor (generally speaking). This is only comparable within the same generation. Comparisons will be off when comparing these identifiers to other generations, so it's suggested to us benchmarks.
A is a alphabetical modifier to indicate a feature like unlocked.
So an i7-6700k is an i7 family processor from the 6th generation (Sky Lake) at the 700 "level". The chip is also unlocked for overclocking. An i7-7700k is an i7 family processor from the 7th generation (Kaby Lake) at the 700 "level". This chip is also unlocked. Take all of the goodness from the previous generation's processor, and (more-or-less) give it the new optimization from the current generation.
If I'm at a store and I see a i7-6700 and a i7-7300 which one is better? a i7-6735 or a i7-6720A? It doesn't make any sense for the general public.
Intel used to have one segment, then two segments: the Celeron and Pentium. Then it went for the Core 2, and then other lines
Especially today, that clock speeds are pretty much immaterial, they could take all those models and turn it into only a couple.
This comparison[0] shows how a 4th gen processor that has a higher over-all benchmark. It's still non-intuitive knowing the breakdown.
[0]: http://cpuboss.com/cpus/Intel-Core-i7-6700K-vs-Intel-Core-i7...
And honestly, the SKUs "level" is a fair bit more random than you imply; you wouldn't know from the model number that i7-6567U was significantly faster than a i7-6660U, for instance. Or that a i7-6700k significantly beats a i7-6700, which significantly beats a i7-6700T.
It's only within the same TDP that the level is non-random, but you aren't going to know this without going on ark.intel.com.
Because that would make it clearer which chip was better when an average non-techie person was in Best Buy. If it was clearer which chip was which, Acer and Lenovo and whatever low end computer maker is still around couldn't put a cheaper chip in without people noticing.
Picked a random Dell and see they are charging $66.30 to upgrade from a $117 i3 to a $192 i5. I'm not sure where the unique SKU idea comes from. They've always had some chips that are retail packaged and others that are only available in trays for OEMs.
It's on purpose to trick "normal" consumers into buying lower-end chips thinking they get higher-end performance. It actually tricks a lot of tech-savvy people, too.
Examples:
1) switching up the Core architecture in Celerons and Pentiums for the Atom architecture (but keeping retail/OEM prices the same)
2) making "dual-core" Core i7 chips for laptops (what's the point of all the different variants of Core i5 then ?!)
3) replacing H series in most laptops with lower-performance U series, and soon we're going to witness the switch to the even lower-end (more throttling ~1.5GHz base speed) Y-series
4) they've just started calling the Y-series-based Core M5 and Core M7, Core i5 and Core i7, also to trick consumers into thinking they're getting "Core i5/i7 performance"
I'm hoping AMD's Ryzen + Qualcomm's (fully) Windows 10 capable Qualcomm 835 chip will put some sense into Intel to stop ripping off customers like this, but I think they'll only do it kicking and screaming. In other words don't expect much better "value" from Intel chips at least until 2019-2020. They'll probably just wait for their 2020 streamlined/lower cost architecture before they drop prices too much, unless the competition is rapidly eating away at Intel's market share by then.
source (german): https://www.computerbase.de/2017-01/intel-kaby-lake-test-cor...
The 4770k didn't support VT-d, whereas the 4790k did. The 7700k has a much faster bus speed, and supports up to 64 GB of DDR4 memory.
I know these are small changes, but they make a difference. For instance, I have a 4790K because I wanted IOMMU (VT-d). I wanted an ITX build, but I went with micro-atx because I needed 4 dimms of ram to reach 32 GB. With a 7700k I could have an ITX build with IOMMU and 32 GB of ram.
Here's the ARK comparison: https://ark.intel.com/compare/75123,80807,97129
I don't know if the 7700k actually supports VT-d, but I would guess it does. I wouldn't actually buy one until I knew it supported VT-d though.
Maybe it's time to jump ship again.
false
You spend $12 billion in annual R&D (a total that's risen substantially over the past decade) and then someone accuses you of "not trying" because your chips aren't that much better than last year's models.
10 years from now, I expect that the death of Moore's law will have permeated much further into our cultural consciousness. Skeptics cried wolf for years, and they were wrong, but this time the wolf has finally arrived.
>You spend $12 billion in annual R&D (a total that's risen substantially over the past decade) and then someone accuses you of "not trying" because your chips aren't that much better than last year's models.
it isn't the end of Moore's law. The things are in full accordance with the law - Intel does pack several times more transistors (and resulting cores) than several years ago into the same silicon area.
What Intel accused of is using its de-facto monopoly - instead of selling you the new chip made with increased number of cores on the same silicon area, they cut that silicon area into more (due to Moore's law) smaller chips with the same number of cores and sell them at the same per core price point thus making it look like Moore's law isn't there anymore. Imagine if in 2000 the price per MHz was the same as in 1998. Back then the presence of competition (AMD mostly) prevented that from happening.
Once/if AMD gets their game back on, the Moore's law will again become visible to consumer.
Consider that the 7700K in question gets similar performance to your Sandy Bridge box at probably 1/3 of the power draw. (I had a 4.2GHz 2600K for a few years and the socket pulled about 102W, so I'm guessing that's what you're looking at). A 3X increase in power efficiency is certainly not a lack of progress, it's just that you don't care.
The office became noticeably cooler, it was a good upgrade.
So, no lower power is not a solid reason to upgrade.
That's 4 years running the CPU at full tilt. The 2600K will idle at a lot less than 102W
Yeah, and OP was saying that was only the socket consumption, you've also got to add in chipset, memory, discrete GPU, hard drives, NIC, sound, etc... and power supply overhead as well.
I bet that system was pulling 400-500W total under the load he described.
Further the delta is only like 60w under full load.
It's just not cheap, being a 240mm2 die (almost twice what Kaby Lake is, with attendant yield penalties) targetted at a niche market with low volume.
So your point isn't that Intel isn't innovating, it's that you want them to do it in a way that violates straightforward economics and hand it to you for less than it takes to produce.
Basically: you got spoiled by the early days of the VLSI revolution. Silicon scaling isn't doing what you expect any more.
They don't do this because they have zero real completion and can milk the high end market. Further, by holding back performance gains they can extend the upgrade cycle as long as possible.
PS: Cellphones are approaching Desktop chip performance.
Yeah, that's not how silicon manufacturing works. Tooling up for a new part of this size and ramping production gets into the tens to hundreds of millions of dollars. No one does niche-market (and yes, gaming desktops are niche) parts at the prices you expect.
Low-volume big parts cost a thousand dollars or more, that's no different at Intel than it is anywhere else.
Further, Intel already has a range of chips in production making that 100's of millions per chip vastly overblown. You can measure these numbers in several ways, but ramping up 100 million of chip X or 80 million of chip X and 20 million of chip version Y is nowhere near 200+ million.
Just finished a CAD workstation build for my wife with state of the art components. The performance gain over a couple years old "pro laptop" she used before is enormous. And not just on raytraced views and renders, the whole UX is much much smoother.
I recently upgraded from an '09 processor because my motherboard died. Trying to find a new one to fit the old chipset was rough, so I got a processor as well. I didn't need to get a new processor, because it wasn't the bottleneck. There are many instances where the new one will give me better results, but it wasn't so bad that I was hurting. Unless you have a specific need, upgrading for the sake of upgrading is largely wasted money.
The browser is a desktop application and, once the page is loaded off the network, is certainly CPU bound.
EDIT: no addons either
My old desktop was passed down to my wife, who was previously using my 3rd most recent desktop, a Core2 Duo (E6600 I think). The 2500K/2600K still has much life left in it for many tasks.
A 10% increase per generation may not sound like a lot, but it adds up over a few iterations.
My development/main machine is a 2008 MacPro, which has no problems doing anything I need on there.
I mean besides serious computations, what is my incentive to ever upgrade here? I'm basically waiting for entire system failure at this point for either.
What's really insane is that you can get several 10 core LGA1567 E7 Xeons for $20 apiece. If you have a end-of-the-line recycler in your city that will custom pick stuff out of the pile for you, you can get a very scratched up electricity sucking "hog" for next to nothing.
A motherboard supporting overclocking or dual sockets [1] might cost more than the cpu though (in fact they cost more now than when they were new).
I own a X5670 myself. Although I bought a motherboard that supports overclocking, I have yet to bother.
[1] Only the legendary EVGA SR-2 does both, and it still costs quite a bit.
Just discovered the Xeon eBay upgrade path. Were the gains that good? Or should I save my money for a sky lake/Kaby lake i5 build?
So sure, we're hitting some performance limits, but power efficiency (and thus battery life and/or weight) and form factors are also important considerations and Intel is making progress there.
Unfortunately, the path to the best hardware on PC is usually with gamer hardware, which means you end up with hardware with pointless bling attached.
Thanks user persona centered design!
The keyboard and mouse on my work desktop are gamer gear, as is my work laptop (my next one might even be an Alienware). And boy, do I hate their radioactive glowing.
The MSIs are nice (as are Razers, etc), but I'll probably stick to a major vendor like Dell (Alienware), Lenovo or HP - in other words, a company with an established support infrastructure.
I've also been super impressed with the physical touchpad buttons, port array and OLED screen on the Alienware 13 R3. The catch is that it's relatively heavy and ugly. BUT, the heaviest I'm willing to go is around the weight of my old 2011 15" MBP (~5 pounds and change), and it comes in around that weight.
The new XPS 15 with 1050 also is a top contender for me, although the ports leave me wanting.
-- edit - forgot to mention that the lack of touchscreens also put MSI's GS series near the bottom of my list.
I bought my license of DisplayFusion (multiple monitor utility for Windows) [1] on Steam because it was cheaper (during one of those regular Steam sales) and the license allows me to run it on any of my machines with Steam installed.
Sometimes, yes... but in this case, it appears to be a large heatsink spread out over the mobo. Gamer mobo's are often setup to be overclocked, so larger-than-normal heatsinks are common.
It won't have the giant dust shield, extra power phases, or gamer LAN, or access points on the board for voltage testers, or no thunderbolt, but it'll have quality components and an Intel LAN and a good sound chip. If you aren't overclocking, they are functionally identical.
Sometimes yes. A lot of times though, the chipset will be different on the "lower-end" boards, ie. 990FX vs 990 chipset, etc.
Just be careful when selecting your board, as it does often determine the maximum performance of your system - and you don't want it to be a bottleneck to your other expensive components.
Edit: It comes with two independent LED zones built-in http://rog.asus.com/media/1483473467178.jpg , and headers to control 4 meters of LED light strips, not to mention coordination with compatible glowy RAM sticks. http://rog.asus.com/media/148345887868.jpg . But the PCIe slots are actually steel-reinforced, so it's only about 85% eye-candy. http://rog.asus.com/media/1483459091833.jpg "In fact, if you give the Code a home in a tempered glass chassis, it’s practically impossible not to end up with a system that looks rather special." That's a quote from the press release!
>Thanks to 3D-printing technology, it is now possible. Some of the new motherboards include dedicated mounting points for 3D printable parts, and we’re providing source files that users can download and print using an online 3D-printing service or their own printer.
That's a neat feature. I wonder if such things will catch on in the mainstream as 3d-printing becomes more prevalent.
Please, Intel: add more L3 cache to desktop PC CPUs, and put 6 core instead of 4, not just for the servers.
They tried getting rid of ECC memory support but that wasn't enough to stop people from using consumer chips so now they're just keeping them a generation behind
And if you do that, you might as well just build a new computer with a current GPU.
Lack of eDRAM on almost all chips to me is inexcusable. They placed eDRAM on some desktop chips, and they performed fantastically. I think they are waiting to introduce that as standard in the future, as they are running out of features to introduce.
Not to mention the hamstringing of PCIe lanes. I had to switch to Xeons because the lack of PCIe lanes is ridiculous to me.
Intel seems to be diddling about without competition these days, and we the consumer need AMD to pull a "K7 Athlon" again, which beat Intel to 1 ghz and was a great processor.
Otherwise it seems everyone's going for more energy efficiency and mostly mobile (ARM) these days.
From the article:
> Elsewhere, there are the usual array of Asus enhancements, including its excellent 2X2 802.11 a/b/g/n/ac MU-MIMO Wi-Fi, SupremeFX Audio S1220 solution (featuring a ESS Hi-Fi Sabre DAC), Intel I219-V Gigabit Ethernet chip, dual M.2 SSD slots, and enthusiast-friendly features like dedicated water pump headers, PMW/DC support across all five fan headers, and SLI support
Having a top of the line wifi card, a sound card with a DAC, and dual M.2 SSD ports, tons of cheap ram, etc, etc. Not to mention the video card potential.
The only thing that makes these less appealing is those recent thunderbolt boxes for external video cards that also act as docks with DACs and USB-c ports.
Sounds to me like the original Phenom series of CPU's. They were very power hungry and ran very hot (140+ Watts at stock clocks)... the newer cpu's are a bit better, although they still lag in performance.
If AMD's Ryzen benchmarks are to be believed, that seems like it will change very soon though.
I think that statement applies to all vendors, generally.
72 PCIe lanes can run 4 GPUs at x16, and an NVMe SSD at x8. I just built a server where half my GPUs have twice the bandwidth of the others.
You cant tell the difference between 100 us and 1 ms.
With that, the SIMD width will be doubled, and AVX-512 optimized code could possibly double in performance as well, as long as the memory can keep up.
For anything that isn't purely focused on floating point performance (where throwing a bunch of GPUs at the problem is fine) memory and storage are now bottlenecks that can still give us several order of magnitude improvements in performance.
Then there's the smart move of integrating FGPAs on-die and connecting them with insanely fast buses. Now we can do cool things like process data coming in via a 40GBe link on a single on-die FPGA and perform business logic on the CPU with data that the FPGA writes to memory. OR write an FPGA accelerator for a function.
Single core performance may not get better... but we still have huge places to make improvements that will require some changes in how we run code.
A sad day for Ars.
http://techreport.com/review/31179/intel-core-i7-7700k-kaby-...
The very first sentence of the article is, "The Intel Core i7-7700K is what happens when a chip company stops trying."
However,
Title: Intel Core i7-7700K Kaby Lake review: Is the desktop CPU dead?
Subtitle: With identical performance to Skylake, Intel brings desktop performance to a standstill.
*edit: while I'm not in any way sticking up for intel (I love RISC architecture personally) I do wonder if this cycle is just aligning technologies such as DDR4 / PCIe bus speeds, chipset smarts such as NVMe pass through to bypass the SCSI subsystem etc... more than it was outrun / be directly faster than the previous generation. I might be wrong (again no research done here!) but it wouldn't surprise me if it was a feature alignment cycle. IMO - what we need is ECC on the desktop i7 range, that would be a killer.
So what annoys me is not that Core i7 do not support ECC. What annoys me are markets where ECC does not exist at all, like ultra portable devices, and to a slightly lesser measure laptops (I've recently seen at least a workstation laptop featuring ECC, although the price was insane IIRC)
I'm partial to the 2500k myself.
With AMD no longer contentious, Intel has, quite literally, stopped trying.
Look at Netburst era Intel vs modern Intel. Behind the 8-ball Intel can show you what Intel looks like when it's trying.
We're not talking about when Saab had to keep their new models secret to sell the rest of the old ones for survival. This is Intel. They control their market and have no competition. Selling crappier products than you're capable of is a moralistic problem. And it's one that the industry is complacent with. Just ask Apple.
If all remaining Intel competition were to disappear tomorrow Intel wouldn't stop selling chips. They would just stop making them any better. Cost reduction is just business. If a business doesn't have to spend on research to stay afloat it shouldn't and it won't.
Intel has done very well in the past by always being one step ahead of the competition. I'm sure that they didn't stop doing so.
A lot of the appeal of the Intel based Macs is the ability to run Windows at native speeds. That wouldn't be possible with ARM.
Finally, Apple only sells 16-20 million Macs a year. I can't see it being worth the investment to switch to ARM and creating all of the auxiliary supporting hardware it gets to use by using standard PC hardware.
http://www.macrumors.com/2016/09/15/iphone-7-faster-than-mac...
This despite the A10 running on FAR less power.
Apple's definitely within shouting distance and is a serious threat to just replace Intel entirely, at least for its own needs.
Apple has to surpass the Core i series to make any sense to switch.
And then there's the whole clusterfuck that would be porting all the x86 software to ARM. When Apple switched to Intel emulation of Power PC was usable via Rosetta but AFAIK emulation of x86 with ARM is extremely slow.
...Though at that point I suppose they'd basically be building an x86 co-processor into it. No idea if that would actually help performance or not.
If only getting a hold of their mobile processors wasn't so difficult because they're OEM parts. Perfect for things like fanless mini-ITX media center builds.
Then again, Intel will be refreshing its NUC line soon, and those tend to use mobile processors.
*edit: would be interesting to see an elasticsearch cluster running on a high clock speed arm cluster... I wonder how it'd run... (and yes I know it's not that simple)
As evidenced by the fact that Intel has failed to compete in mobile, this is obviously false.
We've been hearing nonstop from message board enthusiasts that Intel is going to kill ARM for years and years now. In reality there's absolutely no sign of that happening, and in fact their recent deep cuts to the Atom line suggest the opposite.
http://www.theverge.com/2016/9/16/12939310/iphone-7-a10-fusi...
I can list about 150 programming languages that are "faster than C" if you apply similar restrictions.
Also it's 4 year old Xeon. If you're going to compare it to a 4 year old Xeon, compare it to the 2 core versions, which will have much higher clocks.
If recent leaked benchmarks are true, AMD's Ryzen shows CPU performance similar to Intel at similar power usage. That means Apple could offer an 8 core CPU on iMac with the same price.
Intel used BitKeeper for their chip dev process for a long time, and during that time the chips got faster with each release. More than a decade of chips were developed under BitKeeper and we saw perf improvements with every chip.
They moved to Git and ever since then performance hasn't really moved. The Atom people were the first to move and the mainstream processors followed.
I said it was self serving, so rain all over me, but I do wonder if there is anything there. I know we helped them move pretty fast a while back.
On the other hand, it went way beyond just SCM stuff, I debugged their various filer problems (that they blamed on BK and I'm happy to say not a single one had anything to do with BK, BK just exposed that the filer was buggy). I like to think our help did make a difference but I really don't know.
What I do know is we did whatever Intel wanted for over a decade and they used to have BitKeeper in ever powerpoint they wrote about new processor development. But they have a culture of tools have to be free so I guess they get what they pay for.
But good luck to you, you did good and played fair, AFAIK.