Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
相<br />
所<br />
选<br />
,Csub 等<br />
更 高 的 通 用 矩 阵 乘 法 实 现 。 能<br />
的<br />
和<br />
的<br />
的<br />
程 指 南 , 版<br />
和<br />
的 的 的<br />
编<br />
矩<br />
的<br />
块<br />
的<br />
的<br />
节<br />
同 时 保 的 子 阵 , 它 的 行 索 引 ),<br />
第 6 章 矩 阵 乘 法 示 例<br />
6.1 概 述<br />
hA)<br />
wA) 的<br />
<br />
块<br />
程<br />
Csub<br />
线<br />
的<br />
为 (wA,<br />
(wB,<br />
wA)<br />
一 个 子 方 矩<br />
录 A)。 使<br />
block_size)<br />
积 C, 此 任 务 将 以 如 下 方 法 划 分 为 几 个 乘<br />
小 的 倍 数 ( 请 参 见 具 大<br />
阵 A<br />
B 阵 矩<br />
C 线 程 块 均 负 责 计 算 个 每<br />
计 算 维 度 分 别<br />
阵 Csub;<br />
:<br />
证 不 超 过 每 个 块 的 最 大 线 程 数 ( 附 示 维<br />
Csub 每 个 线 程 负 责 计 算 的 内<br />
一 个 元 素<br />
度 block_size<br />
。<br />
为 16,<br />
warp 块 的 线 程 数 是 个 每<br />
第 5.2<br />
如<br />
和<br />
的<br />
/ block_size)。<br />
为 block_size<br />
图 6-1<br />
通 过 这 种 方 法 安 排 计 算 , 我 们 就 利 用 了 速 度 较 快 的 共 享 存 储 器 , 节 省 了 大 量 全 局 存 储 器 带 宽 , 这 是 因 为 从<br />
(wA, 下 两 个 长 方 矩 阵 的 乘 积 : 维 度 为 以 于<br />
A<br />
方 阵 , 通 过 计 算 这 些 方 阵 的 乘 积 和 来 计<br />
源 , 这 两 个 长 方 矩 阵 被 分 割 为 多 维 度 每 个 乘 积 首 先 都 从 全 局 存 储 器 将 两 个 对 应 的 方 阵 载 入 共 享 存 储 器 , 使 用 一 个 线 程 载 入 各 矩 阵 的 一 个 元 素 , 然 后 由 各 线 程 来 计 算 乘 积 的 一 个 元 素 。 各 线 程 将 所 有 这 些 乘 积 的 结 果 汇 总 到 一 个 寄 存 器 中 , 完 成 后 , 将 结 果 写 入 全 局 存 储 器 。 资<br />
算 Csub。<br />
与 Csub<br />
(block_size, 维 度 为 ; 同<br />
B<br />
Csub , 它 与 阵 子<br />
有 相 同 的 列 索 引 。 为 了 适 应 设 备 的<br />
A 存 储 器 中 读 取 局 全<br />
B<br />
(wA 仅 为 数 次<br />
<strong>CUDA</strong> 编 写 本 示 例 时 , 我 们 仅 以 展 示 各 种 在 而<br />
程 原 则 为 目 标 , 所 以 在 实 际 应 用 中 , 请 探 索 比 本 示 例 性<br />
每 个 线 程 块 计<br />
一 个 子 矩<br />
内 的 每 个 线 程 计<br />
个 元 素 。 一<br />
<strong>CUDA</strong> 编<br />
53<br />
矩 阵 乘 法 块<br />
本 2.0<br />
算 C<br />
阵 Csub。<br />
算 Csub<br />
图 6-1.