The guys over at 2CPU are quick on the draw with a review of the brand new, can’t-even-find-it-yet Intel Xeon X5680. It’s the bigger brother to the Intel Core i7-980X, itself a monstrous 3.33GHz, 6-core CPU. The Xeon has the extra pins and needles and validation to let you hook up 2 of them for a total of 12 cores. With HyperThreading that leaves you with 24 tiny little CPU graphs in Task Manager.
Do. Want.
Apparently AMD has some crazy chips coming out with 8- and 12-cores for 4-processor configurations, albeit at very low clock speeds. Still, 48 cores is within spitting distance of giving Windows 7 / 2008 R2 the fits. I have a nagging feeling that this level of performance will never make its way down to the $300 netbook/nettop level 🙂 As-is, a brand-new dual Xeon X5680 will set you back $1,600 USD per CPU, putting a whole system in the $5K+ USD range. Well, if you could find anyone who’s selling it anyway.
But the real question is, how fast does it run Paint.NET!? One of these would certainly cut my build times, now that Paint.NET is acquiring a large amount of C++/CLI in order to properly support Direct2D and DirectWrite. Using the /MP switch with the Visual C++ compiler results in all 8 threads of my Core i7-920 @ 4.0GHz being pegged at 100% for a significant amount of time.
Core i7-920 @ 4.0GHz, struggling to build the latest PaintDotNet.SystemLayer.Native DLL’s
“8 cores” or threads?
Oh, woops, you’re right. 8 threads. (fixed above)
How come you are using C++/CLI for the Direct2D/DirectWrite stuff instead of C#? Are you using the Windows API Code Pack?
Or SlimDX? http://slimdx.org/
Jon, C++/CLI is for the interop layer, not the application code itself. I’m not using the Windows API Code Pack, nor SlimDX. Neither would work properly with the “Any CPU” build target, or provide the programmatic interface that I want. (SlimDX does officially support “Any CPU” but only if you install to the GAC. I’m not doing that.)
I have all of the structs, enums, and interfaces written in C# sitting in PaintDotNet.Base.dll. All of the interface implementations (and interop marshaling) are in PaintDotNet.SystemLayer.[x86|x64].dll. There is then a simple factory method in PaintDotNet.SystemLayer.dll that’s just an if/then/else for the CPU bitness. Last, in PaintDotNet.Core.dll there are many extension methods and other small things that build on top of it all.
I’m doing this in part so that I understand the code and the DX APIs better. Partly to learn more about C++/CLI and COM interop marshaling. Partly to have full control over the programmatic interface, performance, and error handling. There are a few sore spots in the Windows API Code Pack with respect to performance.
(I’ve been using some custom code generators to help out, too.)
“Still, 48 cores is within spitting distance of giving Windows 7 / 2008 R2 the fits.”
I thought the Win7 limit was 256 cores?
If so, that’s rather more than ‘spitting’ distance of 48 😉
Oh, well 256 cores requires special support by the app. I was referring to the legacy 64 core limit for a single app.
hey rick
you should check out AMD’s Phenom II 6-core chips that are coming real soon (april)
they dont even cost a fortune like the Core i7 980X do, for us mere mortals you can actually buy a Phenom II X6 1090T 3,2ghz with 3,6ghz turbo core for around $299 or a Phenom II X6 1055T 2.8ghz with 3,2ghz turbo core for around $199
then add a AMD 890GX+SB850 6xSATA6Gbps IGP motherboard and 4GB of DDR3 and you got your self a realy fast and nice paint.net amd sexa-core machine with a radeon hd igp that realy makes intel cry 🙂
keep up the good work with paint.net i love it
Tommy, AMD’s 6-core chips will be awesome at that price point. However, I very strongly doubt they would perform better than my current Core i7-920 overclocked to 4.0GHz, even assuming a good overclock on the Phenom. I’m happy to be proven wrong though 🙂 I’m definitely interested in how they fare versus the Core i5-750; hopefully Intel will be pushed into adding more cores to its offerings.
Hello.
Got an interesting feature request.
Do you think you could create an integration between Paint.Net and Matlab?
Just moving Matrices in between would be great.
Thanks.
Drazick, I’m really not sure why you’re posting a feature request on a completely random blog post. Please put those on the forum.
See no point in registering to the forum for one post.
No one would take it seriously.
Just had a thought that my main use of Photoshop is to easily evaluate processing I’m doing with Matlab.
A small and quick software as Paint.Net would be even better for this task.
I have no plans for Matlab integration.