Hi Torren,
There are multiple factors which can influence Personas 2.0's performance. A detailed discussion can be found here:
Optimizing Performance in SAP Screen Personas
Please take a look into the document above.
Apart from this, a quick recommendation from my side are :
1. Keep an eye on how much memory you have allocated to em/global_area_MB. Please be advised that this global memory is not just used by Personas (ITS), but others too. So, based on your usage, you should check memory consumption through transaction SITSPMON and SM04.
For example, when you launch SMEN in Personas for one user, SITSPMON will show you only 4MB is consumed, but if you launch much heavier transaction like VA01/02, the memory consumption will bump up a lot.
So based on your transaction/no. of users/dialog Steps per hour, do some reading, and calculate value accordingly.
Check note 1888428 and do not just use a default value of 512 MB.
A good scenario to test backend in your environment will be to test just the "basic view" and not flavor.
2. Coming to flavor. There are of course multiple things you can analyze. Have you enabled tab cache for lets say 6-7 tabs? If you open HTTPWatch and compare number of requests going back and forth for Basic View vs Flavor, you should be able to tell about your flavor design. Tab caching forces extra requests (1 per tab cached).
If you are using scripts, are there additional/unnecessary Refresh Actions? Refresh Actions also sends one extra request.
General mistake i have seen is that there is one refresh action before every copy action.You need just one refresh action PER screen (if you are accessing its content from your script).
3. You can also get some log detail from personas which will give some "time taken" figures in your Browser console. Launch personas like this:
http(s)://host:port/sap/bc/bsp/persos/mainapp/index.html?log=trace
It will give you the rendering time of various components.
You might not make much out of it, but in general you can send this info to SAP if anything catches your eyes.
4. lastly, your flavor remembers your every move. For example, if you are spending 5 days creating your flavor, the amount of flavor data will be quiet a bit.
Lets say for a SPECIFIC control, you move it 10 times around the screen. You can keep pressing UNDO, and go all the way back from 10 to 1.
So, all the HISTORY data for your flavor can increase over time and of course, when you render all these data, Personas will have to process this data and generate objects, etc etc...
There is no way you can get rid of HISTORY.
Only option is Create a COPY of your flavor. Copying of flavor will not copy the HISTORY data which will surely impact on rendering time, if you have worked on your flavor for long and has lot of changes.
Sushant