Windows on Consoles: One Step Forward

As a semiconductor enthusiast, getting a chance to test the esoteric options on the market is always a delight. Gaming consoles, especially those that are x86 based, offer a unique insight into the effect of what a large combined CPU+GPU can bring to the market, assuming it has sufficient memory bandwidth, but because of the semi-custom nature of the agreement between AMD and Sony/Microsoft, actually getting to run any decent tests on them has been an idea that stopped before it started. Now that we’re transitioning from one generation of consoles to another, it appears that at least some of that shroud has been lifted, and companies like Chuwi are able to take advantage of silicon coming onto the market to build their own designs, based on operating systems that can offer a deep level of customizability.

So here we have the Chuwi Aerobox, built using a processor now known as the A9-9820. This processor is a fully enabled Xbox One ‘Durango+’ processor, which I’ve labelled as Edmonton+. It offers eight Jaguar cores at 2.35 GHz, which is +650 MHz above the Xbox One, and all 896 graphics cores built into the silicon are enabled, compared to only 768 for the Xbox console. It uses dual-channel DDR3-1333, and the only thing missing is eSRAM access.

Poking the console has exposed that MSI is the ODM here, although it remains unclear whether it is MSI, Chuwi, or someone else actually sourcing the silicon (and exactly from where). Chuwi pairs the APU with 8 GB of DDR3, two of which goes to the graphics and six goes to the Windows 10 Home installation. Unfortunately this runs at a fraction of the bandwidth (14 GB/s vs 200+ GB/s) to the console equivalents.

For the Aerobox, Chuwi includes a very beefy cooler, which is very quiet and keeps the system well within any thermal limits. The only downside is the slapdash job in which Chuwi applied thermal paste, accounting for the worst experience in a pre-built PC I’ve ever seen. We applied our own paste, dropped the temperatures a little, and slept a little easier (see here for a cool video montage).

On the plus side to Chuwi, they do equip the system with a 256 GB M.2 SATA SSD, eschewing any spinning rust option, and there’s a space inside for a user to put their own 2.5-inch SATA drive for storage. Modern games require modern storage solutions, and Chuwi has left options, which is a good thing. Annoyingly however, the build quality is such that we broke our power button when opening the chassis to install a drive, so your mileage may vary. In another nod to some lacking quality assurance, the Wi-Fi module was in its own M.2 slot, but rather than being screwed in (with a screw header even present on the board), it was glued on.

All the connectivity is on the rear, which is a shame, because I would have liked at least two USB ports on the front. On the back we get only two USB 3.0 as our fastest IO, which is a product of this generation of APU. The fact that the video output is only DVI-D is disappointing, but Chuwi supplies a DVI-D to HDMI cable in the box – it’s just that it’s a short cable requiring close proximity to the display.

On the performance side, we have a mixed bag. It ultimately performs worse than the equivalent consoles of its era because we’re using Windows rather than the optimized software stack that consoles use, allowing for deeper optimization. The older generation Jaguar cores are technically from 2013, and likely started design around 2009-2010, and are quite far removed from the modern core feature set. So despite there being eight cores on here, and clocking at 2.35 GHz which is near the peak for a Jaguar core ever, anything beyond the simplest CPU workloads is going to chug. The SSD helps a lot here, but rapid switching between applications in a modern office workflow does become apparent. For video playback on YouTube, 4K30 had zero dropped frames, but going beyond that caused a fair amount of stutter.

On the gaming side, for any titles aside from the basic eSports ones, then users will have to learn to expect around a 30 FPS average at low settings. This means that this might make a nice eSports box, however I was happy to play Borderlands 3, albeit at 720p Low, at a 30 FPS average. Emulation of mid-range platforms won't be so great, given the low score in our Dolphin test, but you should be able to get up to the Wii.

The biggest deficit in gaming here is going to be that because this is recognized as a non-standard graphics card, some games won’t run because of that, but also that there will be zero driver updates, and standard drivers won’t work. There are hurdles to get through, and Chuwi would be a big help here if they offered a driver kit to download directly, rather than enthusiasts having to use a VPN to access one of MSI’s sub-contractors.

Overall it’s a very interesting little box, and I’m really glad that these old console processors are seeing the light of day in a different style of design. Due to their age, there isn’t a lot you can do with them, but for specific tasks it can do the job. Chuwi gets plus points for the cooling solution, and enabling a SATA SSD in the model, however there are substantial quality assurance issues that need addressing, like the thermal paste, the glue, and the breakable chassis. This doesn’t jive with some of the other Chuwi products I’ve used in the past, which makes me suspect this might have been an early sample.

We’re not sure exactly what the Aerobox will be sold for in Japan, but from a hardware and performance standpoint, we could see it fitting in just above our standard CPU guide $300-$500 system brackets. I have to consider, at the $500 price point, would I suggest someone build a system with something like a Ryzen 5 3400G instead? I probably would. But at the $300 price point, as a fully contained system, the Chuwi can be competitive, simply because it's a fully contained system that can play Borderlands 3. This is even despite some of the driver/performance issues.

Nonetheless, it looks like Chuwi won’t be selling these outside of the Japanese market any time soon.

Options For Outside Japan

Users outside Japan that are interested in playing with an old Xbox One APU like this can turn to Aliexpress, where a vendor has motherboards available equipped with this APU. You can get the board shipped for $125, and it comes with a cooler using the standard Intel LGA115x mounting, as well as a backplate. Note that import duties may apply depending on your region, as these come from China.

Naturally, I purchased one for myself, as I like to collect these things. It is shown here on the left, compared to Chuwi Aerobox on the right.

There are some slight differences – the power delivery is different, there are four SATA ports rather than two, the rear has HDMI rather than DVI-D, but there is not spot for an M.2 Wi-Fi module. The Aliexpress one on the left also only has a 4-pin power connector, and only two 4-pin fan headers. One of the USB headers on the bottom isn’t their either. I know some users who have purchased these with differing results – one had a board with a lower grade processor (the RX-8120), another was DOA, and of course there is no warranty on these things. Mine is still a work in progress. Though based on the APU markings, my processor seems to be of the same batch as the Aerobox. It looks like I have a project for the holidays.

CPU Benchmarks, Power, Temperature, Noise
Comments Locked

101 Comments

View All Comments

  • FunBunny2 - Thursday, December 24, 2020 - link

    "also remember how tightly optimized you can get with your code when you know the hardware and also when you can code to the hardware without needing to worry so much about abstraction layers, other overhead and DRM that a publisher might slap on after you've already optimized the game."

    you can thank Mitch for writing 1-2-3 only to 8086 assembler and DOS. from that gossamer layer of an 'operating system' we got neato games and viruses that happily fiddled the hardware.
  • Flunk - Thursday, December 24, 2020 - link

    I'm hoping the new consoles will bring better AI and interactivity because they have massively better CPUs than the previous generation.
  • StuntFriar - Thursday, December 24, 2020 - link

    I was working in a dev studio at the time that was using its own in-house engine for a series of niche sports titles (Cricket, Rugby, etc...) and we couldn't believe how weak the Jaguar cores were compared to the PowerPC cores on the PS3 and 360.

    The GPUs on the PS4 and XBone were obviously superior but we were heavily bottlenecked on the CPU side, because our engine made use of a managed Lua interpreter for all of our game scripting (basically, the majority of gameplay code) which ran on the main thread.

    These were games that easily ran at 30fps on a PS3 which were now struggling to hit 15fps on an XBone. The team had to port a lot of the Lua to native C++ code, as well as a huge amount of other optimisations to get it running well.
  • Jorgp2 - Friday, December 25, 2020 - link

    War?

    These 8 out of order Jaguar cores should be an order of magnitude faster than the in order core of the PS3.
  • StuntFriar - Saturday, December 26, 2020 - link

    As a whole, yes. Core for core, the old PPC cores on the PS3 and 360 were faster at some things.

    Most game engines in 2010 were heavily single-threaded with only a few things handled on other threads. If you were migrating to the PS4 and XBone, there was usually a fair bit of work to do.
  • lmcd - Sunday, December 27, 2020 - link

    PS3 had 2 PPE cores and 6 SPE cores. The 2 PPE cores certainly exceeded Jaguar cores for interpreted workloads, considering how narrow Jaguar designs are, how limited their cache was/is, and the fact that (IIRC) a Jaguar core's out of order depth is lower than that of a PPE PowerPC core.
  • at_clucks - Saturday, December 26, 2020 - link

    @StuntFriar, the reason PS3 games may have issues when running on the Jaguar is the same why they may have issues running on much faster x86 CPUs, and the reason many console games run like crap on much faster PCs. The porting isn't perfect (read "they're many times a mess") and the Cell CPU in the PS3 is very different from x86. Devs had a bad time writing for the PS3 so "porting" usually meant "rewrite from scratch". Now why rewrite a particular game to hit the 1:1 between the PS3 and the next gen consoles when the latter could vastly outperform the PS3 in every regard so you'd actually go for much higher targets? And many of the inexperienced devs that tried to just port PS3 to x86 1:1 of course had an even worse time because they were trying to "adapt" PS3 code to run on something vastly diffrent. Maybe let us know what games ran 30FPS on PS3 but were "struggling" to hit 15FPS on XBone (I know of absolutely no game that runs at 15FPS on XBone). But you were a dev back then so I'm sure you know all this ;).

    The PS3 was a dead end from a programming perspective so any attempts to "port" instead of rewrite was destined to fail badly especially at the hands of the average code monkey. There are things that run great on paper but "porting" them to a digital computer is not that great if you *really* want to replicate everything 1:1. Rewriting has a reason.

    It's like saying you could easily hit 30Km/h on a bicycle but on a motorcycle you can barely hit 2Km/h while pedaling the wheels with your own 2 feet just like on the bicycle, proof that motorcycles are slower.
  • StuntFriar - Saturday, December 26, 2020 - link

    We didn't release the game at 15fps on PS4/XBone - we optimised it so that it ran better.

    Read what I wrote again. We had a managed Lua VM running on the main thread. This is typically fine because the single Power PC core on the Cell processor (or each of the equivalent ones on the 360) was strong enough to run it along with the C++ main game thread.

    A single Jaguar core couldn't match it, which is why we had to rely less on Lua and ported most of it to C++. The engine guys also did some optimisations to spread some of the work across the other cores - the engine also ran on the 360 and already farmed off stuff like animation on a separate thread. I don't know the exact details because I wasn't on that project but they got it together in the end and it ran fine on PS4 and XBone when released.
  • at_clucks - Tuesday, December 29, 2020 - link

    It's like saying that gas is better than electric because you tried putting gas in your battery and it couldn't handle it. Yes, the Jaguar cores can;t handle code that was written and optimized specifically for some completely different type of core. No wonder most people consider game devs bottom of the barrel devs: very little understanding in general, very low quality code. And before you argue read what you wrote again. And think if you'd want any software to run with the same kind of glitches and crashes games do.
  • at_clucks - Tuesday, December 29, 2020 - link

    And just to not leave you hanging since you won't reach the conclusion yourself, the recent Xbox 8 core Jaguar sits at ~150GFLOPS. Which is... almost exactly what the Cell could do. And I won't get into integer performance where the Cell still pretty much used an abacus. Now given the difficulties to actually optimize for the Cell since good game devs are rarer then hen's teeth, pretty much no game got close to that while in x86 even code monkeys could do it.

    It's relatively hard to compare *CPU to CPU* since the Cell and AMD's APUs are very different. But they switched to x86 because it was better in all shapes and forms, better power, better performance, and you could actually get that performance even with code monkeys. And it's a good thing they did, even with ~15 years of (claimed) hindsight your understanding is still that code written and optimized for one architecture and design ran poorly when straight up ported to another one that was as different as they could get.

Log in

Don't have an account? Sign up now