This forum uses cookies
This forum makes use of cookies to store your login information if you are registered, and your last visit if you are not. Cookies are small text documents stored on your computer; the cookies set by this forum can only be used on this website and pose no security risk. Cookies on this forum also track the specific topics you have read and when you last read them. Please confirm whether you accept or reject these cookies being set.

A cookie will be stored in your browser regardless of choice to prevent you being asked this question again. You will be able to change your cookie settings at any time using the link in the footer.

Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Digivice Ver. Portable - NPJH00126
#11
The game does run faster on a real PSP. There are two visual indicators that show the difference in performance, with the first being the digivice that is rotating clockwise and the second is with the circular pulse animation that appears from the center every 10 seconds when the game is run from the emulator (compared to about 8 seconds on the PSP). The video for the PSP example was made by someone else and played from an actual console (as shown when the user is saving the game towards the end).

Emulator Example: https://www.youtube.com/watch?v=nPc3mSOuDD0
PSP Example: https://www.youtube.com/watch?v=TVhmM-POB_Q
Reply
#12
Code:
_S1_2_0x088D9298 509,786,766 instructions (26.588%), 12,125,699 calls (088D9278 - 088D9C54, length 632)
From the profiler information, I've tried to optimize in ea98b2b the above function which seems to be used very often (> 25%). Does it bring any change?
Always include a complete log file at INFO level in your reports. Thanks! How to post a log
Reply
#13
The overall performance has improved on revision d24a39e, with the game running at 28-30 FPS most of the time with occasional frame drops for a few seconds. There is one section that I cannot get the speed to be near 28-30 FPS, which is when I select connect (ツウシン) to find an online opponent or offline NPC. When I select this option, the performance of the game is around 20-23 FPS. After I select connect, I clicked on "Reset profiler information" and waited for 10 seconds before closing the emulator.


Attached Files
.zip   Log_rd24a39e(64bit)_INFO.zip (Size: 81.14 KB / Downloads: 169)
Reply
#14
(12-05-2017, 01:40 AM)DragonNeos Wrote: The overall performance has improved on revision d24a39e, with the game running at 28-30 FPS most of the time with occasional frame drops for a few seconds.
OK, this is surprising but good news Smile. I will check if I can add more generic improvements to the compiler instead of this very game-specific fix.
Always include a complete log file at INFO level in your reports. Thanks! How to post a log
Reply
#15
Have you tried to change the compiler option:
Code:
[50] Maximum Method Size
to the value 50 instead of the default value 3000? This helps the JRE compiler.
Always include a complete log file at INFO level in your reports. Thanks! How to post a log
Reply
#16
The game will run at 28-30 FPS in all areas (including the connect option) with occasional frame drops for a few seconds (examples would be the initial time after getting past the title screen, when the digivice gets zoomed in, and occasional instances attempting to connect to an opponent) if the compiler option is changed to 50 for the Maximum Method Size.

There is a bug I forgot to mention with regards to the connect (ツウシン) option. On a real PSP, if an online opponent is not found after 25-30 seconds, the game will generate a NPC opponent. On JPCSP, the game will continue to attempt finding an online opponent endlessly and not generate a NPC opponent. It also takes a while for the game to respond to the user trying to cancel the connect operation when pressing the X button. If internal PSP files are placed in the flash0 directory, the connect option functions properly like on the PSP. I have added the following lines into LogSettings.xml:
Code:
<logger name='hle.sceNet'> <level value='debug' /> </logger>
<logger name='hle.sceNetAdhoc'> <level value='debug' /> </logger>
<logger name='hle.sceWlan'> <level value='debug' /> </logger>
<logger name='hle.sceMemab'> <level value='debug' /> </logger>

With regards to the Save/Load screen, is there a reason why it only runs at 20 FPS without the internal PSP files? If the internal PSP files are included in flash0, the performance on this screen can reach 30 FPS barring any performance issues (1st Screenshot). If there aren't any internal PSP files in flash0, the performance hovers between 19-21 FPS (2nd Screenshot).


Attached Files Thumbnail(s)
       

.zip   Log_rd24a39e(64bit)_INFO (flash0 sceNet, sceNetAdhoc, sceWlan, sceMemab DEBUG).zip (Size: 208.92 KB / Downloads: 145)
.zip   Log_rd24a39e(64bit)_INFO (hle.sceNet, hle.sceNetAdhoc, hle.sceWlan, hle.sceMemab DEBUG).zip (Size: 128.07 KB / Downloads: 182)
Reply
#17
(12-08-2017, 09:20 AM)DragonNeos Wrote: The game will run at 28-30 FPS in all areas (including the connect option) with occasional frame drops for a few seconds (examples would be the initial time after getting past the title screen, when the digivice gets zoomed in, and occasional instances attempting to connect to an opponent) if the compiler option is changed to 50 for the Maximum Method Size.
Does it mean that the change implemented in ea98b2b can be deleted? I.e., changing the compiler option gives the same result?
I would like to get rid of this game specific code.
Always include a complete log file at INFO level in your reports. Thanks! How to post a log
Reply
#18
The changes in revision ea98b2b can probably be removed. After setting the compiler option to 50 on revision 19b470a (before the change in ea98b2b), the game runs at 28-30 FPS in all areas with the occasional frame drops in the areas described in my previous post. I did a profiler comparison (10 second test after selecting the connect option) and the results in performance are nearly the same.

Revision 19b470a:
Code:
GE list duration: 3903ms, average 12.2ms per GE list, max FPS is 81.7

Revision d24a39e:
Code:
GE list duration: 3872ms, average 11.7ms per GE list, max FPS is 85.7

Revision b7a1d8b:
Code:
GE list duration: 3746ms, average 11.8ms per GE list, max FPS is 84.6

The game still doesn't provide a NPC opponent after a certain amount of time has passed when the connect option is selected. The Save/Load screen hovers between 19-21 FPS unless internal PSP files are placed in the flash0 directory, which allows the emulator to reach 30 FPS at that particular screen (this is a general issue that affects all games).


Attached Files
.zip   Log_r19b470a(64bit)_INFO.zip (Size: 86.37 KB / Downloads: 175)
.zip   Log_rd24a39e(64bit)_INFO.zip (Size: 86.21 KB / Downloads: 146)
.zip   Log_rb7a1d8b(64bit)_INFO.zip (Size: 86.46 KB / Downloads: 156)
Reply
#19
(12-12-2017, 09:25 PM)DragonNeos Wrote: The changes in revision ea98b2b can probably be removed. After setting the compiler option to 50 on revision 19b470a (before the change in ea98b2b), the game runs at 28-30 FPS in all areas with the occasional frame drops in the areas described in my previous post. I did a profiler comparison (10 second test after selecting the connect option) and the results in performance are nearly the same.
OK, I reverted these changes in 7bda5b7 Smile.
Always include a complete log file at INFO level in your reports. Thanks! How to post a log
Reply


Forum Jump:


Users browsing this thread: 3 Guest(s)