c - 加速2D矩阵读取

原文 标签 c arrays performance matrix

我有一个大小为4 * n的矩阵,比方说(4 * 3000)
那么什么是最快的方法来存储和读取矩阵中的元素

我尝试了两种解决方案,这些解决方案大约在同一时间给了我。


一个大小为12000元素(2D-> 1D)的数组,读为(i + width * j)
4个大小为1 * 3000的数组,然后使用(IF ELSE或Switch case)语句确定我应读取哪个数组


因此,存在另一种解决方案要使用。
此外,如果适用于这种情况,如何使用移位技术>>解决问题

最佳答案

第一种技术应该更快。

另外,您可以通过连续访问循环内的元素(... arr[11] = ...; arr[12] = ...; arr[13] = ...; ...)来提高性能。

关于c - 加速2D矩阵读取,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28639742/

相关文章:

python - numpy中的Hermite值数组

java - 将数组作为arg放入Java字节码中的函数

java - 如何使JVM启动更快? [复制]

sql - SQL中的稀疏点积

c - 添加指针地址 - 合法性

c - 在c中使用数组进行LIFO内存分配的目的是什么?

javascript - 删除数组中的重复对象,保留具有最大属性值的对象

performance - Spring、JPA(Hibernate)和 Ehcache 性能不佳

c - 如何清除错误:在'='标记之前出现预期的':',',',';','}'或'__attribute__'吗?

c - 制作一个简单的棋盘