PlayStation 4K - Codename Neo - Technical analysis

Sony would say there are no PS4K games tho only PS4 games with slight neo patches built in. But they are at heart a PS4 game.
 
Sony would say there are no PS4K games tho only PS4 games with slight neo patches built in. But they are at heart a PS4 game.
Andrew House mentioned the other day that the Neo is a mid gen refresh or something like that and I think future consoles are going to be like that. I have a feeling the Neo is going to come with 2 USB Thunderbolt inputs or so.
 
Andrew House mentioned the other day that the Neo is a mid gen refresh or something like that and I think future consoles are going to be like that. I have a feeling the Neo is going to come with 2 USB Thunderbolt inputs or so.
Why?
 
1.21 teraflop + 88MPH = time travel...

Aw, crap. Wrong franchise!

Damit, I went sideways on a thread yesterday with a scene demo and now you make me think of another epic.


The tech behind this is a great read and I really don't understand most of it. But 1k colours under CGA mode which is officially 16 colours.

https://trixter.oldskool.org/2015/04/07/8088-mph-we-break-all-your-emulators/

No more I promise.

But if these consoles continue to be the playground of nerds engine what could be achieved. That closed console promise.
 
But if these consoles continue to be the playground of nerds engine what could be achieved. That closed console promise.
They won't. Those days are over. The fancy technqiues now will be all consistent with the hardware and based in shader algorithms etc. There's enough scope there to consume devs' time without them having to look at exploits that can break APIs and forwards compatibility and the like.
 
So the PDF for NEO was leaked and is available here: https://www.scribd.com/doc/312585554/PS4-5-NEO-pdf

Some tidbits:

----------
Prototype Hardware Returns
To begin at the start of 2017

Mass-produced units will be available prior to prototype returns, but release timing is still TBD

----------
Single package for Original/NEO Systems

PS4 SDK supports both original PlayStation®4system and NEO system

CPU Binary can run on both systems
– /app0/eboot.bin in the package must be shared for Base Mode and NEO Mode
– Sharing other CPU binaries is game developer’s choice.
– sceKernelIsNeoMode() reports whether title is running NEO mode (so you can change the behavior of the title.)


----------
NEO Support with SDK 350

One strategy for NEO game development is to detect the resolution of the connected TV, and
– Prepare a 1920x1080 display buffer when an HDTV is connected
– Prepare a 3840x2160 display buffer, usually using an efficient rendering
technique such as “checkerboard rendering,” when a 4K TV is connected
– Ensure that the NEO frame rate meets or exceeds the frame rate of the game on the original PlayStation 4

SDK 3.500 is designed with this strategy in mind

We will support other strategies as well; the next few pages describe a few of them.
However, we understand that you know your game best and we are happy to engage in conversations about strategies that work for the game but still deliver a great NEO experience for the player.

----------
Lower resolution strategies

Some developers have reported that in order to keep the frame rate of the NEO version above that of the original PlayStation®4, the resolution of the display buffer must be reduced.

In “debug mode,” display buffer resolutions of
3680x2070, 3520x1980, 3360x1890 and 3200x1800 are also supported. You can use one of these, or use an MRT resolution of your choice (e.g. 3200x2160) and scale the final image to one of the supported resolutions. Future SDKs will officially support a broad variety of resolutions.

To recap, with this strategy, the title might
– Prepare a 1920x1080 display buffer when an HDTV is connected.
– Prepare a 3520x1980 display buffer when a 4K TV is connected; NEO will then upscale the image in hardware before outputting to the TV.
– As with all strategies, it is important to ensure that the NEO frame rate meets or exceeds the frame rate of the game on the original PlayStation®4.

----------
Single mode strategies

Some developers would like to have one mode of NEO support rather than two.

Though work is just beginning in this area, some developers are reporting success in creating just a single resolution (e.g. 3520x1980) and scaling it down to 1920x1080 for output to HDTVs

Though SDK 3.500 does not support this type of downscaling, future SDKs will allow it. For SDK 3.500, you will need to scale down the display buffer in your game engine.

To recap, with this strategy, the title might
– Prepare a 3840x2160 (or other) display buffer
– When connected to an HDTV, scale the image to 1080p before outputting (though future SDKs will accept the image without scaling)
– When connected to a 4K TV, output the image as normal

----------
Lower resolutions

Our experience is that using lower resolutions for 4K TV support (such as 1440p) does not create much differentiation from 1080p on an HDTV.

Our hope is that titles will use checkerboard rendering (and similar techniques) to allow for resolutions much closer to 2160p.

We are currently researching lower-cost techniques for increasing resolution (such as the geometry rendering described in the original disclosure meetings.) If you are having difficulties achieving resolutions above 1800p, please do contact your regional Developer Technology Group so we can share our latest learnings.
 
As I said, the focus for neo enhancements for games would be on 4k (upscaled) output. It fits nicely with 4k bluray and media support in a easy to market and explain package.
 
Some random tidbits from the slide are that Neo Mode versus the base mode brings higher clocks, more SEs, and new GPU instructions. Base mode runs as backwards compatibility mode.

In that mode, it would be expected that a Neo APU would draw even less power than has been estimated for Polaris running at 911 MHz--assuming that Polaris is the base physical IP (half the CUs, even lower clocks).
Some caveats from the limited description is that the presentation discusses the CUs as being enhanced, but not much else was described as being changed.

Two items from Polaris that might be useful are its memory compression and primitive discard accelerator. Those would be nice, but do not seem to be mentioned--not that something as general as those slides necessarily had to mention them.

Even enhancing the CUs with new instructions may mark things as being different than the desktop Polaris due to backwards compatibility with an IP revision that has instructions that Volcanic Islands (and by extension, Polaris) ceased supporting. I guess I'm not sure how low-level devs may have gotten, or if the instructions AMD dropped found use. For VI, one of the floating-point atomic instructions had its encoding replaced by an instruction for writing back volatile lines--an odd naming confluence between the PS4's cache tweak and an instruction it presumably had as being part of the CI generation.
Perhaps Neo is using CUs compatible with the PS4's ISA, with some of the spare encodings used to pull in features from VI/Polaris?

On the other hand, the use of the term "SE" rather than "CU" for Neo mode would point to more geometry front ends.
On the other-other hand, enabling at that granularity potentially wreaks havoc on the ROP arrangement. Having 32 ROPs in this case with varying number of SEs would turn off half the ROPs in base mode, unless some side modification was made to break the per-SE arrangement of the ROPs.
Another alternative is to put in 64 ROPs or some weird hybrid mode where half the SEs have the normal PS4 ROP count and turn half of those off when Neo mode turns on the additional SEs so things remain balanced.
 
Our experience is that using lower resolutions for 4K TV support (such as 1440p) does not create much differentiation from 1080p on an HDTV.
This is opposite to my experience on PC and I'm sure it depends on your TV. I doubt Sony are testing exclusively on top-line Bravia sets with über upscaling because this won't be representative of Neo users.
 
Back
Top