Week In Tech: I Dream Of Steam Streams
The £40 game-streaming client, and AMD's Mantle
For a dying platform, the technical innovations for the PC aren't half coming thick and fast. For starters, Alec and Graham have been dabbling with Steam's new streaming capability. It all looks bloody clever to me and has the knock on effect of rebooting interest in some previously pretty pedestrian kit. £40 mini-ITX board with embedded Atom chip as basis for client streaming box (based on a free OS)? As if that wasn't enough, AMD's Mantle API has gone live with beta driver support, promising a brave new age of high performance gaming for all. Well, kinda.
At the moment, I've the nagging feeling that some parts of the PC industry must be feeling a little queasy about game streaming technology. After all, it allows you to play bells-and-whistles, uber-res (well, ish) gaming on multiple boxes and screens without buying multiple high-end boxes. Not good for CPU and GPU sales, surely.
Nvidia's efforts to lock streaming tech down to its own GPUs and mobile devices are symptomatic of this. But frankly, Steam streaming makes Nvidia Shield's limitations look the cynical anti-customer ruse they so surely are. But then Valve are probably best positioned of anyone to make streaming – over home networks, at least - a reality. Anything Nvidia did was likely to end up marginalised.
Anyway, with home streaming suddenly looking very plausible the next question is what hardware to use. You've got your gaming rig, what's the client device?
Actually, there are still some questions marks over suitable host hardware in terms of the video encoding part of the puzzle. As Alec discovered, the current beta build encodes the video stream in pure software on the CPU cores, which is a painfully inefficient way of going about things.
Valve has said hardware encode is coming, which is a blessed relief. But it's not yet clear which 2D acceleration solutions will be supported and which will be best. But it's easy to imagine all those dormant Intel HD Graphics integrated cores and their QuickSync tech suddenly waking up and doing something useful.
Likewise, what about an AMD Kaveri chip with its high-tech integrated video core doing the streaming, its CPU cores unleashed by Mantle...but more on Mantle in a moment. Back to boring old client boxes.
If you've got a crusty old PC or knackered laptop that's capable of decoding 1080p H264 video and with suitable outputs to drive whatever display you favour, I suspect that will get the job done as a client box. That's the beauty of streaming.
55 bucks: Biostar's embedded-Atom board
But streaming also makes it possible to buy a dedicated PC for the living room that's up to the job but seriously cheap. Something like, say, Intel's NUC just not nearly as expensive. Something like, say, Asus's new NUC-like Asus Chromebox (pictured up top) complete with dual-core Intel processor and 16GB flash storage. Yours for from $179 (I'm hoping under £150) for a very slick looking little client.
Simply whack on SteamOS and get streaming? Here's hoping (Valve's minimum req's only speak of 500GB for SteamOS which can't actually be the space required to install it). Or maybe build your own teensy client for even less money.
Intel's new BayTrail Atom is miles better than previous iterations of its ultramobile CPU in terms of performance. And a few board makers have announced mini-ITX efforts complete with quad-core Bay Trail chips for under $60 (maybe £40?). Add a mini-ITX case with PSU for about £50. Yippee.
The options are pretty much infinite and it's all so much more interesting with streaming. That said, it does make me begin to wonder if the real cost will be sorting out a reliable wireless networking solution. I'm confident my current wireless 'g'-based home network is unlikely to be up to snuff and I don't fancy running cables about the place.
More about Mantle
Meanwhile, AMD's Mantle has gone beta and early looks at the new API and what it can do for games performance have splurged across the web.
It's very early doors. I haven't done any real testing myself, just seen it running briefly. And frankly, I'd be here until late 2015 mixing up the hardware variations to get a really good idea of what even this beta offers, which is currently limited to a single game (Battlefield 4) plus a tech demo.
So a sort of poll of polls makes sense. For my liking, far too many sites have focused solely on high end Radeon R9 290X boards as the basis of testing Mantle. I appreciate Mantle is predominantly about optimising CPU performance. But the fact is, relatively few people will ever own a 290X and for me Mantle is only interesting if it boosts performance for real-world rigs.
Anyway, Mantle certainly makes a difference for mid-range CPUs. I've seen a lowly quad-core Core i5 running next to a mighty six-core Core i7. And it was the Core i5 rendering 5,000-plus objects with buttery-smooth frame rates thanks to Mantle while the six-core beast spluttered chronically in DirectX.
OK, that was in the purpose-built Star Swarm tech demo, not a game you can play. But I'll give the demo the benefit of the doubt and assume the DX codepath hasn't been intentionally borked to make Mantle look good. In other words. with Mantle you can do things that previously have not been possible.
Thou shalt count to 5,000. And the number of the counting shall be 5,000
TechReport have a nice summary of how Mantle scales with various CPUs, albeit in concert with a 290X. LegitReviews gave the lowly Radeon R7 260X a run with the Mantled'-up iteration of Battlefield 4 and came up with a 15 per cent boost in performance, which isn't too shabby.
I think the real benefactors from Mantle are likely to be CPU-bound RTS titles, so it's a bit frustrating to have BF4 as the only test game. Total War: Rome is due a Mantle makeover and strikes me as a much more interesting test case.
Also, on the downside there are signs Mantle as it currently exists can actually reduce minimum frame rates. Not good. Microstuttering is, of course, the sort of thing that could very well evaporate following some driver optimisations during the transition from beta to prime time. But suffice to say the overall picture is mixed.
For me what's really interesting is that m'colleague Dave James on PC Format tells me AMD is pitching Mantle as an open standard and would like or at least be happy to see it or something like it included in future iterations of DirectX.
That sounds like the best possible solution. It would mean all DirectX GPUs would be compatible (well, all that meet the standard of this notional new version of DX) and the feature would actually get used. As a stand alone API that only works on one vendors' technology, I struggle with it a bit.
Whatever, it's always exciting to see the prospect of more performance for little or no money. Oh, and if you want to try Mantle out for yourself, you'll need a graphics card with AMD's GCN technology, which means Radeon 7700 or better and the new R7 and R9 boards.