Is the Julia compiler broken?

To admins:

Around 9:00 PM Saturday, August 3, 2019, I tried using Julia to submit various solutions to my avail. The error message is as follows:

Error: Traceback (most recent call last): File "/root/lovelace-engine/engine/api.py", line 129, in on_post user_outputs, p_infos = runner.run(self.container_name, code_filename, function_name, input_tuples, output_tuples) File "/root/lovelace-engine/engine/code_runner.py", line 104, in run raise EngineExecutionError(exec_stdout) engine.code_runner.EngineExecutionError: Your program took too long to run (more than 10 seconds).

But solutions to the same problems submitted using Python were successful. Which makes me believe site’s Julia compiler is broken.

Hey @acart-e, glad to see another Julia user!

Yes, the Julia code runner needs some work. We’ve been using pyjulia to call Julia code from Python, but it’s very slow because this spins up a Julia instance every time we want to run a small function… I’m thinking of refactoring it so that it just reads input from something like a JSON file, which should be much faster.

We have an open issue about this too: https://github.com/project-lovelace/lovelace-engine/issues/24

By very slow I mean it should take ~10 seconds to run (most of this time is spent starting up pyjulia). So I’m surprised that it timed out. The actual timeout is 60 seconds (not 10), so I fixed the typo in the error message so that it prints the true timeout now.

I restarted the code checker and tried submitting some Julia code, which worked, but it took a while to check (~10 seconds) so it’s still very slow.

Thanks for bringing this issue up, now that we know that someone else is using Julia we’ll try to speed up the Julia code runner.