Matrix Copy
2026/6/6大约 1 分钟
Matrix Copy
题目描述
编写一个 GPU 程序,在 GPU 上将 的 32 位浮点数矩阵从输入数组 复制到输出数组 。程序应执行直接的逐元素复制,使得对于所有有效索引满足 。
实现要求
- 不允许使用外部库。
solve函数签名必须保持不变。- 最终结果必须存储在矩阵 中。
示例
示例 1
Input: A = [[1.0, 2.0], [3.0, 4.0]]
Output: B = [[1.0, 2.0], [3.0, 4.0]]示例 2
Input: A = [[5.5, 6.6, 7.7], [8.8, 9.9, 10.1], [11.2, 12.3, 13.4]]
Output: B = [[5.5, 6.6, 7.7], [8.8, 9.9, 10.1], [11.2, 12.3, 13.4]]约束条件
- 。
- 所有元素均为 32 位浮点数。
- 性能测试在 的规模下进行。
解题思路
矩阵拷贝是 GPU 中最基础的操作之一,可以直接使用 cudaMemcpy(设备端到设备端),也可以手写一个逐元素拷贝的 kernel。手写 kernel 的训练意义在于理解内存合并访问的重要性:确保线程按行优先顺序访问,以最大化合并事务的吞吐。欢迎在 GitHub Discussions 分享你的解法。