How do you test I7 code performance in Quixe/Lectrote?

There’s been mention in the past of testing how long a given command takes using Quixe/Lectrote, for example, in this thread:

My question is, how do you test this?

In Lectrote I tried toggling the developer tools on, and looking at the console (where I’m getting stuff like “### done executing; path time = 32 ms”) but I’m not sure I’m doing it right because even if I enter the same command (e.g. “wait”) over and over again, I am getting different ms each time. Do you have to do it as a test script?

You are doing it right. Run times are never going to be perfectly consistent.

The important thing to remember is that Quixe does just-in-time compiling. So the first time any I6 function executes, it will be slow. Later calls will be optimized.

So if you want to understand general performance, try a command maybe four times – ignore the first time, average the other three.

Startup time is its own problem, of course.

Useful to know. Thank you!

If you’d like more reliable testing, we could update my Benchmarking extension. It’s harder to use with a large existing game though.

What sorts of things need to be updated?

Exact numbers aren’t a huge deal to me, but the extension could come in useful for other projects. I don’t know how difficult an update it’d be.

It needs to be rewritten to use the built in real numbers. It may need small updates for Flexible windows too.

In case anyone was following this: I won’t be using Benchmarks anytime soon, and it doesn’t seem like anyone else needs it either right now (no one’s asked about it, I don’t think), and there’s a lot of I6 in it–so I’m not going to work on updating it.