#1378 closed defect (fixed)
IMuseDigital extremly slow
Reported by: | fingolfin | Owned by: | aquadran |
---|---|---|---|
Priority: | normal | Component: | Engine: SCUMM |
Version: | Keywords: | ||
Cc: | Game: |
Description
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 , 21 years ago
comment:2 by , 21 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 , 21 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 , 21 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 , 21 years ago
Resolution: | → fixed |
---|---|
Status: | new → closed |
comment:6 by , 21 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 , 6 years ago
Component: | --Unset-- → Engine: SCUMM |
---|
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!