How early was SN Systems involved in PlayStation 4?
Tom Charlesworth, chief technology officer: We got involved with PlayStation 4 a few years ago, back in 2008, which was about the same timeframe as Vita, or NGP as it was known back then. Really, at that stage, in terms of next-gen platforms we didn’t have too many specifics in terms of what we were developing for. We were brought on very early, and so there wasn’t much to go on, but at that point we definitely knew we needed to do a reboot of our existing tools.
By 2009 we were starting to have much more contact and context from the architects of PS4. We’ve had direct contact and engagement with Mark Cerny through the development of our Vita tools, and the PS4 tool chain as well. Initially we were there in a consultative role, being canvassed on the types of performance profiling hardware we would like to see in the next-gen PlayStation platform.
Come 2010, we started migrating our PS Vita tool chain to PS4. At that point we’d been working on our Vita tools for up to two years, and were then ready to retarget them for PS4.
By this stage you must have had more of an idea of what you were working towards.
Charlesworth: Yes. On the one hand there’s a proportion of our tools that at their core are relatively generic in terms of PlayStation platforms. But what we expose at the UI level – so with our GUI tools – we have to deliver something very tailored.
By 2012 our tools first went out to the first-party SCE Worldwide Studios teams, and then a little later they made their way to selected third-party teams; perhaps at about the mid-point of 2012.
From then it got pretty busy. There was a lot of collaboration with Sony Computer Entertainment and its teams around the world from London to Japan. Feedback was coming in, and there were a lot of new releases of both SDKs and kernels coming out of Japan, which we had to both respond to and keep pace with. It was a lot of work, but we’d seen a similar pattern on PS Vita, so we were prepared for it. To a certain extent, the way we organised ourselves handling PS Vita served as a prototype for PS4. It felt a little like business as usual.
Bernard James, VP, Development: Of course, we were also doing three or four Vita releases a year at that time, and the same engineers were working on PS4 projects. That was great in several ways, but hard work. And then the testers were faced with a similar challenge when it came to the QA cycle.
The synchronicity of tackling the two together must have had its advantages.
James: There were certainly positives, as the core of the software is common on both platforms. That meant it was tested twice. That was really very valuable. It helped us make them an order of magnitude more reliable.
Tony Liviabella, SN Developer Services Manager: One of the core messages was to ensure stability and ease of development on PS4. That goal was across the board in all SCE R&D teams including SN Systems, and we really focused on that mission.
What about how the audience you’re serving is changing itself? Has that had much impact on how you’ve worked?
Charlesworth: Certainly back in PlayStation 2 times the tools we were making were very much aimed at the larger teams. But it hasn’t been a very sudden change. Beginning throughout PlayStation 3 and certainly with the PS Vita, there’s been a trend in that our customer demographic has changed, and that’s brought us to where we are with PS4. Where our tools now sit, in terms of the development environment, is now more familiar for a wider range of devs, and even to those used to developing for other platforms.
Liviabella: It’s been a challenge to get right, trying to meet everyone’s requirements, but we feel we have a good balance. However, we’re always meeting with developers and recording their feedback to help keep us on track and in touch with their needs.
Charlesworth: We do hear from these veterans that have done 25 years in the business. They really loved the PS3 tuner (the profiler), debugger and such, and that’s great.
Liviabella: While we’ve always made a point of maintaining a close relationship with developers through studio visits and conferences, it’s just not possible to meet with everyone. So, to ensure everyone’s voice is heard, our developer services team based here in Bristol and in California both work to support all PS4 developers via the private support network.
This is another effective channel for communication and allows anyone developing on PS4 to submit feature requests for the tools. While we can’t promise they’ll all be implemented, everything is logged and quantified by the dev teams in their product planning stages. This really helps prioritise features based on the majority rather than those that just shout the loudest.
Where have your tools advanced the most as a result of your work supporting teams working on PlayStation 4 projects?
Charlesworth: For PS4, the choices around how we advanced the compiler were something that proved to be very important. Previous PlayStation platforms have all been RISC based, and this was the first x86-based platform. We have our own compiler technology that we’ve used on all the previous platforms, up to and including PlayStation 3, which has never had support for x86. That, coupled with the fact that we had a lot of development support work for PS Vita still going on, meant that our own compiler technology wasn’t an option. Ultimately we went with Clang/LLVM.
We made that decision when both those technologies were essentially immature. But we saw the trend in terms of how the open-source community was advancing forward both those technologies, and we’re very happy with where we are now.
And you’ve done much to advance your profiler now?
Charlesworth: Our Vita profiler is called Razor, and that’s a joint GPU/CPU profiler. That was something new for us. We’ve taken that same technology, and moved it over to PS4.
One of the problems we were faced with on PS4 was that the hardware profiling embedded within the SoC wasn’t so attractive, compared with what was available for Vita. We had to be a bit more creative in terms of solving problems similar to those we experienced with Vita, where we had hardware assistance. We had to solve the problems in software, but we’re very pleased with the results. It’s going to really help CPU engineers by letting them tune and speed up their code.
So what next for SN Systems, with regard to the post-launch PlayStation 4?
James: Well, we’ve got a huge amount of work to do for PS4 going forward. Getting ready for launch was all about stability. The studios making launch games were grappling with very short timescales, and the tech they’re using was changing very rapidly.
And with us working with the rest of SCE R&D so closely, before launch we had to be very careful about changes that depended on work in those other teams. Their focus, of course, was on a stable kernel and SDK. That means now, after launch, we can start to add a lot of extra stuff over the next 18 months.
What about SN Systems’ progress overthis time?
Liviabella: SN Systems has grown significantly in recent years and we’re now up to around 85 people – 70 of those in R&D – across the Bristol HQ, Campbell and Dublin offices. We have a number of very experienced engineers, including many with ten-to-15-years-plus of SN involvement.
There’s a lot of knowledge which is proactively shared within and across teams; this is incredibly important to our future success and an on-going process. While it can be quite a drain on the senior guys, we’ve now reached a point where the skill set has increased sufficiently between the most senior and less senior engineers. Additionally, while our priority is still on the day to day work it’s also important engineers have some quality time to focus on R&D and innovation in the tools, which has been improving significantly.