我有一个由二维字符数组表示的图像,我需要对这个图像执行一些操作并将结果存储在另一个二维数组中,这些操作从计算相邻单元格的平均值到重新排序行不等。我可以做哪些优化来获得更好的性能?欢迎任何可能的技术(例如引用的位置、内联汇编……)
我c
在 linux x86_64 机器上使用
PS:我有原始彩色图像,每个像素由一组 RGB 值表示。
我有一个由二维字符数组表示的图像,我需要对这个图像执行一些操作并将结果存储在另一个二维数组中,这些操作从计算相邻单元格的平均值到重新排序行不等。我可以做哪些优化来获得更好的性能?欢迎任何可能的技术(例如引用的位置、内联汇编……)
我c
在 linux x86_64 机器上使用
PS:我有原始彩色图像,每个像素由一组 RGB 值表示。
将您的 API 计划为void process_row(int *out_row, int *in_row, int *row_above, int *row_below);
一些 RGB 计算可以与普通整数算术并行计算。
00 rr 00 gg 00 bb 00 aa
也是可行的办法您可以使用一维数组代替二维数组,这将大大提高缓存命中率。这将优化程序运行时间。