Smarter Parser slowdown?

Having talked about slowdown in other topics on here, I hadn’t actually experienced any until tonight (coincidentally).

I added Smarter Parser to my game, and now when testing the game in Inform, there’s a one second pause after each Smarter Parser-invoking command is entered.

The delay goes away in the release version of the game (at least under Gargoyle) but - has this happened to anyone else or been observed before?

If the game is running acceptably in one interpreter (Gargoyle, which will use Git or Glulxe under the hood) and slow in another (the one built into Inform 7), my first guess would be that the accelerated opcode support is only active in the former and not the latter. Is this on Windows, Mac or Linux? On Windows I know for sure that the accelerated opcodes are active in the interpreter in the I7 front end, but I’ve no idea on Mac. One way to check this would be a small Inform 6 inclusion to print out the result of calling the gestalt function with the appropriate selector and running the result in different places.

I would think that it’s the difference between the debug build used for the IDE, and the release build it generates. It could be strict mode error checking for example.

Thanks for the observations.

For your info, it’s running in the latest build of Inform in Mac OS X.

I haven’t tried it in Spatterlight yet. I haven’t been in the habit of testing the game in Zoom because the game uses sounds.

The IDE interpreter on OS X is markedly slower for many operations than external interpreters. This may have something to do with how features like the skein is implemented, among other factors such as those mentioned by others in this thread. In any case, you’re definitely not alone in observing this.


Yes, that’s true: strict mode will bypass much of the Glulx acceleration work, as it has to provide its own version of the low-level routines that do much of the strict mode checking.