Is it possible to make the CLR JIT use SIMD from C# in WP7?
If I have, say, 4 floating point numbers that I want to multiply on Windows Phone 7, is there some way that I can write this in C# so that the CLR JIT will optimise this with an SIMD instruction? I'm trying to get more performance out of my WP7 pho开发者_JAVA百科ne for a very calculation intensive app.
I have an HTC 7 Trophy with a Snapdragon processor which supports the NEON (Advanced SIMD) instruction set and VFPv3 floating-point extensions. I'm just trying to find out how I can make use of these.
It seems that SIMD support is added to Windows Phone 'Mango' http://blogs.msdn.com/b/abhinaba/archive/2011/04/10/simd-support-in-netcf.aspx.
Unfortunately no. You have to rely on what the platform developers did (the kernel itself may be built to use any built-in FPU). If the kernel isn't making use of NEON instructions, you're out of luck, even if there is support at the processor level. You cannot P/Invoke on Windows Phone, so unless the JITter already built into the phone is making those calls for you, you have no way to alter it.
精彩评论