Let's get straight to the point - Switch is indeed evolving and in select scenarios, Nintendo's hardware is becoming more powerful than it was at launch. Recent stories talking about a 'boost mode' of sorts for the console hybrid are perhaps a touch inaccurate, but after investigating a trio of recent releases, it's now confirmed that Nintendo is selectively overclocking its hardware - or more precisely, opening up new options for developers to beef up portable performance while at the same time playing with thermal management and CPU clocks to speed up loading times.
Way back in December 2016, Digital Foundry revealed the clock speed configurations Nintendo settled upon for Switch - and there was some concern. The Tegra X1 processor's specs were a known quantity having debuted in 2015 in Nvidia's Shield Android TV, and what was clear was that the platform holder was being somewhat conservative. CPU clocks were limited to just 1020MHz, while the docked GPU frequency was locked to 768MHz - both significantly slower than Shield. The situation was even more concerning in mobile mode, where the GPU downclocked to just 307.2MHz - though pre-launch, Nintendo added a beefier 384MHz mode to the mix.
Recent developments have spiced up the situation somewhat, with further options open to game makers. In select circumstances, Switch's CPU now boosts temporarily to 1785MHz, while the handheld modes of The Legend of Zelda: Breath of the Wild, Super Mario Odyssey and Mortal Kombat 11 now see the GPU clocks increase to 460MHz - a good 20 per cent uplift in frequency over the 384MHz mode, and a 50 per cent improvement over the original 307.2MHz option. In addition to this, there's some evidence to suggest that some titles may even have access to a dynamic GPU frequency mode that adjusts according to load.
Mario and Zelda actually use two of these new enhancements in concert and it's worth explaining how the CPU boost in particular works. Essentially, it's used exclusively for improving loading times. Two elements define how long - or how short - any given load is: the performance of the storage in bringing data into memory and the speed of the CPU in decompressing the data the system receives (storage space is at a premium, so data is compressed to save space). Using an exploited Switch running frequency management and monitoring software (SysClk) I was able to see the Nintendo hardware boot Mario and Zelda with CPU clocks at 1785MHz, before throttling back to the standard 1020MHz once the load was complete.
Upping CPU frequency by 75 per cent is a pretty extreme enhancement, but deploying the 1785MHz clock for loading alone is inspired. The most power hungry component of the Tegra X1 processor is undoubtedly the Nvidia Maxwell graphics hardware, but typically, when games are loading, GPU utilisation barely registers. The demands on the battery and thermal management slack off at this point, meaning that there's plenty of overhead here for the CPU to be temporarily ramped up to its maximum frequency. Booting Super Mario Odyssey took 28 seconds before the latest patch (where I confirmed CPU clocks to be locked at 1020MHz), whereas the latest version with the 'boost' code applied loads the game in 20 seconds - a 29 per cent decrease. The dynamic adjustment in CPU clocks also extends to in-game loading too, but the loading times here only gain a second or two over the unpatched code.
It's a useful trick though and there's no reason why we shouldn't see this CPU-driven boost to loading times deployed across more games going forward for both first or third party releases. Evidence does seem to suggest that Nintendo's experimentation with increasing clocks starts out in its own games, before making their way to external developers - as we're seeing with the 20 per cent increase to GPU frequencies for mobile mode. Zelda: Breath of the Wild and Super Mario Odyssey appear to have received the 460MHz portable play upclock first, with NetherRealms' Mortal Kombat 11 the first third-party title to have access to the new mode.
Using an exploited Switch, SysClk's frequency monitoring also allows users to overclock and indeed underclock their hardware. Any such unauthorised modification comes with the risk of seeing your console banned from accessing Nintendo's online services, so going down this route is not recommended but for Digital Foundry, it was the only way to conclusively confirm what changes Nintendo is making to clock speeds - and in turn, performance. And in the case of Mortal Kombat 11 - which can deviate from its target 60fps in certain levels - SysClk allows us to force the Switch to run the title using the less capable mobile modes.
Using a replay for matched visuals, the results are fascinating. Running at 384MHz sees generally less stable performance, but my gut feeling is that this is the mode Mortal Kombat 11's handheld configuration was designed around, with the new 460MHz option giving the developers smoother performance and improved image quality owing to its dynamic resolution scaling technology exploiting the extra GPU overhead. As you may expect with a circa 50 per cent reduction in GPU frequency, performance collapses when the game is forced to the 307.2MHz mode. It's reasonable to assume that more consistency in resolution and performance constitute the net gain for Zelda and Mario too, as both use DRS and could deviate from their target frame-rates when we tested them at launch.
|Loading 'Boost' Mode
There are another couple of oddities in the games I tested, specifically with Panic Button's remarkable ports of Doom 2016 and Wolfenstein: The New Colossus. Dynamic resolution scaling and temporal anti-aliasing are used in both titles to squeeze as much performance as possible from the GPU. SysClk reports that GPU clocks adjust dynamically in-game, shifting between 307.2MHz, 384MHz and 460MHz rapidly. Across a segment of Doom 2016 play lasting six minutes, SysClk noted 28 changes in GPU clock speed - a state of affairs that has likely been in place for some time.
SysClk also allows us to test the water for other potential overclocking vectors that Nintendo may wish to explore in future. There does seem to be a 1224MHz CPU clock mode officially supported, but I've not seen it deployed in any games and it may well be there to give game makers some processor overhead in running debugging tools during development. If Nintendo can boost GPU clocks by 20 per cent for improved performance, I see no reason why games that are more CPU-constrained couldn't benefit by opening up the 1224MHz mode, while keeping the GPU clocks static.
What I also find quite intriguing is that the potential is also there for Nintendo to increase memory bandwidth in mobile mode. The EMC (embedded memory controller) runs at 1600MHz when docked, dropping to 1331MHz during portable play. This can be locked to 1600MHz in mobile mode via SysClk with very little impact to battery life - and in select circumstances, it can help game performance. For example, there are reports that the stutter found in Korok forest area of Breath of the Wild when gaming on the go is improved significantly simply by tweaking up memory bandwidth to the docked spec, leaving everything else at stock settings.
As for docked play, the Maxwell GPU in Tegra X1 can be clocked at 921MHz - another 20 per cent uplift over the standard spec. Historically, there were reports of Switches bending in the dock - presumably down to heat issues - so I find it doubtful that this mode will be unlocked... on today's Switch at least. There have been rumours of a 'Switch Pro' that may offer enhanced performance, and at the same time, firmware dumps have revealed that Nintendo has a new Switch processor revision in the works, dubbed 'Mariko'. This may well be a refined version of the existing 'Logan' Tegra X1 and may potentially open the door to the cooler, more efficient operation required for higher CPU and GPU frequencies.
But in the here and now, stories of a Switch boost mode are indeed on the money - though the similarities with the functionality in PS4 Pro are limited. There, the user decides whether the extra CPU or GPU power is deployed, whereas the ball is firmly in the developer's court on Switch. Selective CPU overclocking to 1785MHz helps loading times, but a 1224MHz option could become available in future for the games that need it. Meanwhile, a 20 per cent uplift in GPU clocks yields dividends for more demanding mobile experiences. Years on from launch, Nintendo has pushed the Switch hardware to deliver more performance, and I'll be fascinated to see where they go next.