Open mhauskn opened 11 years ago
Hasn't this been fixed now?
AFAIK it's still an issue. Albeit a very hard one to trigger. Also not clear how to fix it short of hacking Stella internals.
On Fri, Feb 6, 2015 at 5:51 AM, Marc G. Bellemare notifications@github.com wrote:
Hasn't this been fixed now?
— Reply to this email directly or view it on GitHub https://github.com/mgbellemare/Arcade-Learning-Environment/issues/11#issuecomment-73225861 .
The line is Int8 when = ourPlayerPositionResetWhenTable[myNUSIZ1 & 7][myPOSP1][newx];
A segfault can come from one of the array indices being outside the "legal" range.
To debug, you can find out the size of the array and include checks before the above line.
It is technically "hacking Stella internals" and obviously a Stella bug, not an ALE one. It may be fixed in the upstream Stella, but I'm not sure if there's even a mechanism or desire to keep in sync.
I just had the exact same crash in one of my trainings.
I have neither the action-sequence logged, nor file:lineno
-level stack trace, but the function-level stack trace looks exactly the same as reported here.
I believe it's unlikely my action-sequence was the same as reported here.
Found an odd segfault in Montezuma's Revenge. A specific sequence of actions causes the game to segfault. The sequence of actions is: take noop actions until frame 49126 at which point the agent should take action 17. Segfault promptly results. All of these actions are legal actions. The bug can be replicated most easily by replacing some of the code in Random agent and then running the random agent on montezuma's revenge.
Random Agent:
Output from run:
Backtrace of the segfault shows that it's segfaulting in the nitty gritty emulator code: