相关疑难解决方法(0)

在C++中转置矩阵的最快方法是什么?

我有一个矩阵(相对较大),我需要转置.例如假设我的矩阵是

a b c d e f
g h i j k l
m n o p q r 
Run Code Online (Sandbox Code Playgroud)

我希望结果如下:

a g m
b h n
c I o
d j p
e k q
f l r
Run Code Online (Sandbox Code Playgroud)

最快的方法是什么?

c++ algorithm transpose matrix

75
推荐指数
3
解决办法
9万
查看次数

使用OpenMP停止GCC自动矢量化

我一直在努力使我的代码能够被GCC自动矢量化,但是,当我包含该-fopenmp标志时,它似乎停止了所有自动矢量化的尝试.我正在使用它ftree-vectorize -ftree-vectorizer-verbose=5来矢量化并监控它.

如果我不包含该标志,它会开始向我提供有关每个循环的大量信息,如果它是矢量化的,为什么不.当我尝试使用该omp_get_wtime()函数时,编译器停止,因为它无法链接.一旦包含了标志,它就会简单地列出每个函数并告诉我它中的向量化0循环.

我读过这个问题已经提到了一些其他地方,但他们真的不来任何的解决方案:http://software.intel.com/en-us/forums/topic/295858 HTTP:// GCC. gnu.org/bugzilla/show_bug.cgi?id=46032.OpenMP有自己的处理矢量化的方法吗?我需要明确告诉它吗?

c gcc vectorization openmp

6
推荐指数
1
解决办法
3047
查看次数

标签 统计

algorithm ×1

c ×1

c++ ×1

gcc ×1

matrix ×1

openmp ×1

transpose ×1

vectorization ×1