Opened 20 years ago

Closed 20 years ago

Last modified 6 years ago

#1378 closed defect (fixed)

IMuseDigital extremly slow

Reported by: fingolfin Owned by: aquadran
Priority: normal Component: Engine: SCUMM
Version: Keywords:
Cc: Game:


The new IMuseDigital is unbearably slow on my machine. Essentially all games using it became unplayable on my machine.

I haven't yet examined the code, but something changed by far for the worse in it :-/ I'll try to run a profiler etc. over it to see where all the CPU power is being eaten up.

Ticket imported from: #872067. Ticket imported from: bugs/1378.

Change History (7)

comment:1 by eriktorbjorn, 20 years ago

CPU usage doesn't look out of the ordinary here, but I'll probably have the time to try it on a slower machine later today.

I notice that one of the changes between today's snapshot and yesterday's (which I didn't get around to trying either) is the removal of a busy-wait loop. I don't know if/how that affected this bug report, but it probably didn't hurt!

comment:2 by fingolfin, 20 years ago

erik, yes, I removed the busy wait loop - but the worse problem was that the code was locking a mutex several times in a row... ugh

Anyway, speed is *much* better with aquadran's latest caching code.

There are still enough problems left, though, like in COMI, voices are cut off a lot (in the first room, for example, listen to Wally...)

comment:3 by eriktorbjorn, 20 years ago

Hmm... Yes, Wally's voice sounds wrong. It doesn't cut off for me, but there's some distortion - or maybe just the volume dipping for a moment - at the beginning of everything he says.

And after a while it crashed with a failed assertion. I'll file a separate bug report about that.

comment:4 by fingolfin, 20 years ago

By just letting it run on the COMI difficulty selection screen, after some time I start getting lots of these: WARNING: AppendableMemoryStream: buffer overflow (B)!

comment:5 by fingolfin, 20 years ago

Resolution: fixed
Status: newclosed

comment:6 by fingolfin, 20 years ago

Closing this, as speed is fine now (there are some remaining issues with the new code, it seems, like that "AppendableMemoryStream: buffer overflow" thing, but it does work reasonably well now). Thanks, aquadran!

comment:7 by digitall, 6 years ago

Component: --Unset--Engine: SCUMM
Note: See TracTickets for help on using tickets.