[Scummvm-devel] Slowdowns in SCI and SAGA

yotam barnoy yotambarnoy at gmail.com
Wed Nov 25 18:59:38 CET 2009


Sorry I'm sending these to the list cuz they didn't go the first time

On Wed, Nov 25, 2009 at 6:10 PM, Max Horn <max at quendi.de> wrote:

>
> It also tries to File::open() a bunch of files that do not exist; for
> my version of ITE, that's about 35 files it tries to open but which
> don't exist. But (a) the same caching mechanism should apply here,
> too, and (b) it seems weird that a mere 35 file open should slow down
> the PSP that much. But of course it's not impossible :).
>
> How does it decide which files to try and open? Maybe it's climbing up a
directory tree trying to open a whole bunch of files? Remember that when I
run using the PSP shell (ie. connected to the PC) it's at normal speed. I
thought this was due to caching but maybe it's because it sees a different
directory tree.


> Yotam, can you insert the equivalent of printf's at strategy points of
> the PSP code to find out where it takes so long? I imagine that if you
> could use a printf statement that just prints __FILE__, __LINE__ and a
> millisecond count (e.g. obtained from g_system), and then copy & paste
> that all over the SAGA startup code. That way, it should be possible
> to pinpoint where exactly the slowness is.
>
> Good idea. Printfs won't work directly because as I said above, the PSP
shell makes the game run normally. But I can print to a file when the PSP is
disconnected.


On Wed, Nov 25, 2009 at 6:00 PM, Walter van Niftrik <walter at vanniftrik-it.nl
> wrote:

>
> AFAIK, SCI is the only engine that uses dual opl2 mode. This essentially
> requires twice the CPU power for audio. You could try setting it to mono by
> editing the adlib.cpp file.
>
>
It seems to run much slower than 1/2 but I'll try it out. Maybe there's some
kind of starvation going on because the PSP has no  preemptive multitasking
so the mixer task is doing too much at a time before it returns control?

On Wed, Nov 25, 2009 at 5:51 PM, Filippos Karapetis
<philipk79 at hotmail.com>wrote:

>  I really don't know what could be wrong with SAGA. The engine checks for
> the presence of certain files on startup to enable/disable features...
> perhaps Common::File::exists() is slow on the PSP?
>
>
Maybe, but is this the only engine that uses exists() many times when it
starts up?


Yotam
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.scummvm.org/pipermail/scummvm-devel/attachments/20091125/e33a09b2/attachment.html>


More information about the Scummvm-devel mailing list