PSP profiling: reinforcing homebrew with performance engineering

Posted Jan 22, 2008 at 10:40PM by QJ Staff Listed in: Homebrew Development, How-To Tags: Beta Testing, graphs, Sony
Ó


PSP profiling: reinforcing homebrew with performance engineering - Image 1 


QJ.NET Forums member zytek (Jakub Glazik) recently submitted a self-published tutorial which advocates the idea of profiling software on the Sony PlayStation Portable. The document, entitled "Performance analysis on Playstation Portable", covers principles of measuring the performance of the PSP at its raw form.

It also mentions ways to profile applications to show how efficient and optimized they are from a technical standpoint. But let's break it down to something other than computer engineering speak.

Profiling will essentially test your own applications on their intended platform using a controlled environment (much like platform testing). You could do this to a point such that you can derive an idea of what the software does behind the scenes - if at a hardware-software interaction and operation point of view only. Yeah, we know, why bother right?

Well, it's not because your - and my - software engineering professor advises us that it's critical to do if we're to pass. It's because to ensure optimal code execution, you've got to make sure that the two essential gears - the software and the hardware - cranking the PSP experience (that you're obviously trying to make perfect) fit each other perfectly. You'd be looking for that sweet spot: fast and error-free code.

Now the developer can tell how the coded application would run at a user's point of view (GUI, interactivity, response, etc.) from repetitive test runs and beta testing, but when it comes down to the PSP's point of view, he'll need some help. A profiling agent fits the prescription just nicely.

A profiler picks up the performance engineering tasks "menially" - in a sense that it will run alongside the application being executed "hands-on" - and create detailed reports on the operation of executed code. It will even be able to alter certain execution parameters, such as the app's bytecodes, should you deem such changes as part of the test protocol.

As you can create your own profilers for your applications, other developers will have more than just a general idea of how code works on the PSP. Profiling creates profiles of apps, or call graphs, so each program will be fundamentally unique in one way or another. Many things can be derived from the reports and such information can be made more useful to the slew of other developers out there.

Jakub Glazik's tutorial carries the primers: the how-tos and whys, as well as a base platform for other unique profiling cases for unique applications. But should you need more help, you'll need to consult external resources - GproF documentation and usage, for instance - to prepare your own custom-fitted profiling agent. Visit the thread for the document.

Visit: QJ.NET's PSP Development Forums

 
 
 
Add QJ.NET
Add to My Yahoo!
Google Reader Subscribe with Bloglines
Add  to your Kinja digest Subscribe in NewsGator Online
Subscribe with Pluck RSS reader Add 'www.qj.net' to Newsburst from CNET News.com
Subscribe with SearchFox RSS del.icio.us www.qj.net
Add to Technorati Favorite! Add to My AOL
furl! it Stumble for Treehugger!