The process of ordering a laptop online is dumb.

Posted by | Posted in Uncategorized | Posted on 23-03-2013

I’ve been wanting a new laptop for a while. My current one has a shit glossy screen with 1366×768 resolution, little memory, slow CPU, low-end GPU, slow HDD and constantly overheats. I have treated it harshly, used it for work, lugged it up, down and across the country dozens of times. Worked on it all day then gamed or coded late into the night. It has survived all of this, aside from the overheating, wheezing it’s way asthmatically through every task even when I can’t read it because of that glossy fucking screen.

So I begin my search, and I encourage you to try this by the way, by going to Dell to get an idea of what’s on offer.

First I must select a model… wait, how do I know what model I want? Or what size? What GPU? What CPU? HDD? Ram? Screen size/resolution?

Erm, ok I start delving in and spec’ing things out, then I go back up and start again because it’s confusing and I can’t get a reference. First I set my sights somewhere around the middle of the price range (anyone who’s written a sort/search algorithm should recognise this process!) and tunnel down that route choosing the options closest to what I might want. Then I return to the top having decided that it doesn’t quite match what I want.

Whatever happened to Dell? You used to be able to configure everything now I only seem to be able to choose to have, or not, a printer and some anti-virus software? But, I digress…

Anyway we’re back at the top and I go more expensive now, getting better but I still can’t choose very much, in fact some lines seems even more limited than others in what you can and can’t configure. I repeat this process going alternately higher or lower priced but the results are inconsistent. Some things can be configured on one branch of the tree but not on others. It would appear that my only option is to do a brute force depth first search of all the possible laptops and their configurations on the entire Dell website in the hope that one of them will get close enough to what I’m after.

Now as an interface I consider that a flat out failure.

It’s not just Dell though, it’s ALL of them. Even the sites like PCWorld, Overclockers, eBuyer, Dabs, where you can choose from a range of laptops from different manufacturers are still terrible. The filtering options are almost backwards in some cases but they’re just pathetic in others. On PCWorld you can filter by GPU dedicated or not, but not the make or model, and you can choose if it uses Shared or Dedicate ram, but not how much or what kind. You can filter by screen size, but not by resolution. Eventually I find a Lenovo laptop for £849.99 with £150 off … with a 1366 x 768 glossy screen… what the shitting hell? £849.99, a 15.6 inch screen and 1366 x768? Unbelievable. Total crap. Ok in other regards but no way. I consider 1920×1080 or “True HD” as they call it, to be the bare minimum. Of course there’s no way to filter by that on any site I’ve found. You can search though and that brings up these 3 “laptops”. There’s an ASUS there that might do, though it’s more than I’d like to pay, I can now at least search for that laptop on the ‘net and hopefully find a better deal, oh wait I can’t sadly because they sell exactly the same model name with different resolution screens, one being “Full HD” the other being… 1366 x768. Feck.

This has taken a while though, about 45mins so far, and I’ve scoured a few dozen sites including a lot of forums where people are asking about laptops with certain resolution screens, or matt vs glossy etc. Most of those are hopelessly out of date of course and mention laptops that aren’t made anymore or are older than mine. In the end I tried to get a clearance offer on an MSI laptop from Overclockers, ~£300 of a £1079 model that got 90% of what I wanted and the rest I could change later, like the RAM and HDD etc. Sadly I missed out on that one.

The whole process is infuriating though, the specific things you might want you cannot search by. The argument against listing these more “technical” details is that it confuses those who are less technically literate but I’d argue that’s complete bullshit, all you’re really doing is hiding information about the product from them. You’re burying it away in the details that they’ll have to wade through and try to understand, in effect you’re making it harder for them to know about the product they’re about to purchase.

The approach of presenting you with the model first is arse about face too. How do I know what model I want when I don’t know what the specification of the models is? I want to specify what I want, then I want the website to give me a list of the models that most closely match my desired specification. Because I know what I’m looking for, but I don’t know what “they” have.

For now what I’ve done, is nothing. I’ll just continue saving up for a few more months I think and then is Razer ever get their arse in gear I might splurge it all on their Blade laptop :) Or a MacBook Pro with Retina display perhaps? Who knows, Danni won’t approve either way :D

Why no desktop 16-core CPU?

Posted by | Posted in Game Development, Pioneer | Posted on 06-03-2013

It’s a question I keep coming up against as I do multi-threading work but where are all of the desktop 16-core CPUs?

You can get what AMD call a 16-core CPU in the Opteron 6200 but it’s built on Bulldozer or Piledriver which are more like 1.5 cores per “dual core” thanks to sharing their FPU capabilities. Or to put it another way, 16-core INTEGER and 8-core FLOATING POINT.

Not long ago we went from single-core to dual-core, to true dual-core (both cores on the same die), to quad-core… and then we stopped.

I guess the argument could be that it’s not worth it for most people? Or that hyperthreading gives you 8 hardware threads with upto 30% performance boost if you can use them well.

This all misses the point though and I’d have been quite happy if AMD had continued adding cores to it’s K10 architecture, keeping up with the process node advances (die shrinking), updating, optimising and just piling on the cores. They have done that to some degree because K10h, as used in the Phenom 2, did make it into the early APU’s in a low power die-shrunk version. It lacked any kind of L3 cache though it did have some extensions, updates and improvements so that it just about holds it’s own against a similar number of core Phenom 2.

Those chips were APU’s though, with an on chip GPU for mobile use. So they clocked slower and fully 50% of the die was spent on the GPU. You could get versions without the GPU called Athlon II but they still lacked the L3 cache and the GPU was there, just disabled and powered off. There was no 8-core Athlon II with an L3, even a small one even though it was probably possible.

We’re down at 22nm + 3D transitors with Intel CPUs whilst AMD are still rolling out on 32nm but are we really stuck at 4-cores?

No, there are higher core counts as you can see but they’re for servers rather than our mere mortal desktop machines. So the work isn’t going into getting more performance out of heavily threading things, instead it’s in GPGPU languages like CUDA, DirectCompute and OpenCL. Utilising the GPU to do work you’d normally have just hammered out on the CPU. There’s real benefit to doing things on your GPU, and eventually I think AMDs “APU” strategy might pay off if they can reduce the latency between the CPU<->GPU for compute languages for example but traditional multi-threading seems to have been ignored. It’s not even an option to get more cores on a desktop CPU and I think that’s a shame as there’s a lot of workloads that will happily scale to 16 or 32 threads without the need to move them to GPU.

It would have been interesting if AMD had chosen to do it, to keep scaling the cores at least as an option but then I think there’s a metric fucktonne of things that AMD could have done to stay relevant which they’ve manifestly failed to do so here’s a short list:

  • big.LITTLE – as in the ARM design where you have a group (4 typically) of large, fast, powerful CPUs and then you have one tiny little low power CPU that is used when the workload gets light to save power.
  • Unlocked multipliers and clocks on CPUs sold with a very limited warranty at the same price as the regular locked one – the Black Edition chips are good but not enough.
  • Change the chip packaging format as Intel and IBM have both separately proposed for better thermal, power and mounting design – if you’re in 2nd place you innovate to survive.
  • Speaking of IBM – form an alliance, use their resources and manufacturing to get access to better process node shrinks.
  • …and of Process Node shrinks – you can’t compete with Intel on them but as soon as AMD were free of Global Foundaries why didn’t they run off to TSMC (or IBM) and aggressively chase what there was available?

There must be a tonne more as well besides, but in short I miss the AMD of old. We were speaking about it at work the other day and it always produces the same head-shaking response where you just can’t believe that todays AMD is the same one that gave us the K6 and k8 architectures. The AMD that bludgeoned Intels Pentium 4 misstep into a cocked hat and happily overclocked it pants off.

Todays AMD seems to be one that releases products based on “vision” rather than”getting-the-fucking-job-done-well“. I’d even settle for: “getting the job done well enough” and do it with more cores but instead if you buy AMD now you’re probably getting a Piledriver chip at the high-end which is finally a little bit faster in some situations than the k10h architecture… they could have done an 8-core k10h in approximately the same die area but minus the GPU and I’d rather have had that because all my GPU needs are serviced by a separate card in a PCI-e slot.

I’d buy that chip, fuck I’d buy a 16-core version without hesitation. A die shrunk 8/16-core Phenom, L3 cache intact, the improvements they rolled into the Stars (k10h successor) architecture, no GPU, on a quad channel memory bus and clocked at about 3Ghz. That could pummel my Core i7 into the floor with the loads I have in mind.

It’s not to be though, that AMD is dead and for some reason so are desktop 8/16-core CPUs it seems.