I made three rooms. It takes 6 seconds for the ni compiler to run and then another 6 seconds for the Inform 6 compiler. 12 seconds to compile a 3 line game.
I’m running an Intel I3 on Win 8.1 with 4Gb RAM and an SSD.
In 6G the same code compiles in about 4.5 seconds.
I also think that the compile-run cycle seems to be a lot slower than with previous versions.
I appreciate that more might be happening, but can anyone explain what is causing the pauses?
I used to dabble with inform while on my lunch break - but I can’t install inform on my office machine.
I tried a quick test using the new Portable Inform build on a USB stick and it takes over 3 minutes to compile and run “There is a room.” I’ve run from a stick before, it was slow, but usuable.
Inform6.exe is only being run once, but it seems to be waiting for the file system over and over again (CPU %age is really low). Not sure what’s going on.
EDITED: I originally thought Inform6.exe was running more than once - it was simply dropping off the task manager as it had 0% CPU for a few updates.
For me, if this is normal speed and expected behaviour, that pretty much kills using a USB portable version for small tests and running the examples from the inform manual and recipe book.
After I compile the program seems to hang for five to ten seconds after showing the “everything seems to be good” message and before showing the story. It’s not too long, but it might indicate a larger problem.
I’ve reproduced the problem and, as ‘eu’ suspected, it seems that the debug info is the culprit.
I snagged a copy of auto.inf after ni.exe was finished.
I ran inform6 from the command line:
inform6.exe -G auto.inf takes between 7 and 12 seconds
inform6.exe -G -k auto.inf takes about 170 seconds!!
Tested on a USB stick to show how acute the problem is.
Writing the gameinfo.dbg file (10MB altogether) seems to be the problem.
Okay, so the -k flag needs work. (Question, though: do you also see a notable time difference flipping that flag when not on a USB stick? The one oddity is that this doesn’t explain why some people see a slowdown and others don’t. Or why only Windows users are having the problem.)
A proposal for consideration: the vast majority of gameinfo.dbg is sequence point enumeration, which is obviously very compressible. We could embed a tighter, non-XML format for SPs in the elements.
Further, if the IDEs could add a checkbox for the flag, defaulting to off, that would help too. I can try to write up some patches, although my time is short, so it might be a while. (Also, where’s Toby keeping the new Mac IDE code?)
And, if I can get to a Windows machine, I’ll try building an I6 that ignores -k, as a stopgap for people seeing problems.
If you stick these lines into your source code, it will suppress the debug file:
Include (-!% -~k
-) before "ICL Commands" in "Output.i6t".
(The spacing has to be exactly like that.)
For a one-room game, this shortens my total compile time (I7+I6) from about 2.4 seconds to 1.8 seconds. (2.7 GHz iMac.) I invented this for Hadean Lands, of course, where it’s about 8 seconds vs 7 seconds – still small, but worth the fix for me.