[Mono-dev] JIT and Inlining - why doesn't it happen?
Afonso
nafonso at gmail.com
Thu Aug 27 16:15:55 EDT 2009
Hi,
I'm also having a similar problem. Currently I have a test that with mono
takes 170ms on my machine, and if I run that same mono-compiled program in
windows, it runs at 23ms.
If I manually inline the function, the mono run goes from 170ms to around
55ms. This is problematic for my project.
basically this:
protected int Coord2Cell(Q coord, int level)
{
Q a = coord >> (m_LogMinCell + level);
a += Q.half;
int ret = MathQ.FloorToInt(a);
return ret;
}
became this:
protected int Coord2Cell(Q coord, int level)
{
int a = coord.value >> (m_LogMinCell + level);
a += 64;//Q.half;
int ret = a >> 7;//MathQ.FloorToInt(a);
return ret;
}
Q is a struct that only has an int.
Isn't there a way to improve the inlining?
Regards,
Afonso
--
View this message in context: http://www.nabble.com/JIT-and-Inlining---why-doesn%27t-it-happen--tp16991802p25151124.html
Sent from the Mono - Dev mailing list archive at Nabble.com.
More information about the Mono-devel-list
mailing list