matis11
(Mateusz Bartos)
February 15, 2017, 2:59pm
1
Hello,
I’m curious about differences in app performance with Multi-OS Engine compared to native swift/obj c code.
Are there any test results (f.e. executable time of the same complicated mathematical operation using MOE app and native iOS app) which would show if there are any visible differences in performance?
All the best,
Mateusz
pkirill
(Kirill Prazdnikov)
February 15, 2017, 3:09pm
2
Which operations are you interested ?
Can you suggest code to perform ?
pkirill
(Kirill Prazdnikov)
February 15, 2017, 3:26pm
3
We have some kind of perf framework and some tests.
However we use it to compare different compilers: MOE, RoboVM, GWT, Android, TeaVM.
matis11
(Mateusz Bartos)
February 15, 2017, 3:28pm
4
kisg
(Gergely Kis - Migeran)
February 15, 2017, 3:44pm
5
Hi Kirill,
would you be kind to open-source these tests? We could then add it to our CI system to see if there is any perf regression. We currently only use the scimark2 benchmark from 0xbench.
Best Regards,
Gergely
pkirill
(Kirill Prazdnikov)
February 15, 2017, 4:11pm
6
Hi Gergely,
Mostly, we are testing our internal classes and scenarios.
I do not think it is possible to open-source all.
Typical generic test looks like this:
https://gist.github.com/kirillp/7a0e613141d3133960320560d00a96b6
MOE specific tests looks like this:
https://gist.github.com/kirillp/d567e98c306066d34bc3d4eeef497314
Interesting results:
1k setForegroundColor native | 803 op/sec
1k setForegroundColor Java | 57 op/sec
native code is to bind the following obj-c method instead of using UIColor.colorWithRedGreenBlueAlpha
> void setForegroundColor(CFMutableDictionaryRef dict, float r, float g, float b, float a) {
> UIColor *color = [UIColor colorWithRed:r green: g blue: b alpha: a];
> CFDictionarySetValue(dict, NSForegroundColorAttributeName, (__bridge const void *)(color));
> }
And this is the “framework”
There are also some math matrix tests and some persistence tests(Quaternion -> char[] -> String)
That’s almost it that I can share I think.
1 Like