public static float TestSIMDMultiply(int iterationCount)
{
Matrix m1 = Matrix.Identity;
Matrix m2 = Matrix.Identity;
float accumulator = 0;
for (int i = 0; i < iterationCount; ++i)
{
Matrix r0, r1;
Matrix.Multiply(ref m1, ref m2, out r0);
Matrix.Multiply(ref r0, ref m2, out r1);
Matrix.Multiply(ref r1, ref m2, out r0);
Matrix.Multiply(ref r0, ref m2, out r1);
Matrix.Multiply(ref r1, ref m2, out r0);
Matrix.Multiply(ref r0, ref m2, out r1);
Matrix.Multiply(ref r1, ref m2, out r0);
Matrix.Multiply(ref r0, ref m2, out r1);
Matrix.Multiply(ref r1, ref m2, out r0);
Matrix.Multiply(ref r0, ref m2, out r1);
accumulator += 0.000001f * r1.X.X;
}
return accumulator;
}