math.net numerics columnsum花了很长时间

时间:2015-08-02 14:18:10

标签: c# mathdotnet

math.net numericsasp.net/c#矩阵/向量计算的最佳做法是什么。

我正在执行大量(10000 * 30 * 35)矩阵计算。我正在使用Intel MKL providerC#.Net TPL,但仍然需要在16核心系统上花费大约40秒,这是不可接受的,试图将它带到3-4秒内。

所有都是密集的矩阵。当我使用dotTrace探查器工具检查时,columnsum需要更多时间。

有什么想法吗?

以下是示例代码:

Parallel.For(0, count, (i) =>
                {

                for (int j = 0; j < year; j++)
                {
                    for (int k = 0; k < iterations; k++)
                    {
                        a.PointwiseMultiply(b); 
                        a.Multiply(b); a.Multiply(b);
                        a.Add(b);
                        a.Add(b).Subtract(b);
                        a.ColumnSums(); a.ColumnSums();
                        a.Subtract(1);
                        a.Multiply(2);

                    }
                }
                 //Interlocked.Decrement(ref tc);
                                });

0 个答案:

没有答案