5 ms·
I've placed my port here: https://gist.github.com/anonymous/ce176d7ab4f6b7b1ba91 https://gist.github.com/anonymous/ce176d7ab4f6b7b1ba91 If you see anything wro
by ryanmk 11y ago
I've placed my port here:
https://gist.github.com/anonymous/ce176d7ab4f6b7b1ba91 https://gist.github.com/anonymous/ce176d7ab4f6b7b1ba91
If you see anything wrong with it, or odd, feel free to share.
I'm still investigating what is happening to make the run so slow, so if you can find something wrong in my code, that would help.
- deegu 11y agoif you run it with luajit -jv primes.lua you'll see NYIs about math.mod not implemented. Replacing math.mod(n, i) with (n % i) gives roughly 9.4x performance. EDIT: luajit version was LuaJIT 2.0.4 on Mac OSX
- ryanmk 11y agoThanks, using % did the trick.
- whoopdedo 11y agoLua is global by default. Declare all the variables as local and you'll see significant improvement. Also, there is a boolean type so you can use true and false directly instead of comparing numbers.
- ryanmk 11y agoI tried using locals, and there was no change to the time. Using a boolean return value for isPrime shaved off two seconds.