
计算机原理和微机原理
文章平均质量分 68
TheMoonRiver
流水线 流水线
展开
-
OpenCL vs CUDA terminology
Here is a short table summarizing the differences in terminology between OpenCL and CUDAOpenCL CUDAMultiple Platforms NVIDIA onlyWork-Item ThreadWork-Group BlockNDRange GridLocal Memory Shared MemoryPrivate Memory Regist原创 2024-11-13 15:26:28 · 115 阅读 · 0 评论 -
Vector Optimization – Gather Scatter
每个元素都有一个单独的地址,因此不能分组处理它们,并且整个内存系统中的许多地方都可能存在冲突。收集操作采用索引vector并获取其元素位于通过将基地址添加到索引vector中给定的偏移量而给出的地址处的vector。在稀疏矩阵中, vector的元素通常以某种压缩形式存储,然后间接访问。此类操作的目标是支持稀疏矩阵的压缩表示(即不包括零)和正常表示(即包括零)之间的移动。在以密集形式对这些元素进行操作之后,可以使用另一个索引vector ,通过分散存储以扩展形式存储稀疏vector。原创 2024-11-13 15:22:37 · 699 阅读 · 0 评论 -
Vector Optimization – Stride
vector处理器可以处理大于 1 的步幅(称为非单位步幅) ,仅使用具有步幅功能的vector加载和vector存储操作。增加块大小有助于降低单位步长数据的丢失率,但增加块大小甚至会对使用非单位步长访问的数据产生负面影响。步长值必须动态计算,因为矩阵的大小在编译时可能未知,或者可能因同一语句的不同执行而改变。只要步长和存储体数量互质,并且有足够的存储体来覆盖存储体访问延迟,连续访问就会并行进行。请注意,内存访问的成本很高,并且处理器必须停止,直到获取数据,然后才能移动到下一个跨步位置。原创 2024-11-13 15:15:36 · 1258 阅读 · 0 评论 -
Vector Optimization – Memory Banks
将访问分散到多个独立的存储体通常可以达到所需的速率。拥有大量的存储体对于处理访问数据行或列的vector加载或存储非常有用。为了支持来自多个加载或存储的同时访问,存储器系统需要多个存储体并且能够独立地控制存储体的地址。与更简单的功能单元不同,启动速率不一定是一个时钟周期,因为存储体停顿会降低有效吞吐量。如果访问不同的存储体,它可以支持 16 个并行访问。大多数vector处理器支持加载或存储不连续的数据字的能力。大多数vector计算机支持多个处理器共享同一内存系统,因此每个处理器将生成自己独立的地址流。原创 2024-11-13 15:11:51 · 494 阅读 · 0 评论 -
Vector Optimization – Vector Mask Register
vector掩码控件使用布尔vector来控制vector指令的执行。当vector掩码寄存器被使能时,所执行的任何vector指令仅对vector掩码寄存器中的对应条目为1的vector元素进行操作。目标vector寄存器中对应于掩码寄存器中的零的条目不受vector操作的影响。尽管如此,消除分支和相关的控制依赖性可以使条件指令更快(比使用标量模式更快),即使它有时会做无用的工作。使用vector掩码执行的Vector指令仍然需要相同的执行时间,即使对于掩码为零的元素也是如此。原创 2024-11-13 15:10:22 · 934 阅读 · 0 评论 -
Vector Optimization – Vector-Length Register
我们创建一个循环来处理任意数量的迭代(该迭代次数是 MVL 的倍数),并创建另一个循环来处理任何剩余迭代且必须小于 MVL。vector长度寄存器(VLR) 控制任何vector操作的长度,包括vector加载或存储。vector寄存器处理器具有由每个vector寄存器中的元素数量确定的自然vector长度。最大vector长度(MVL) 决定架构vector中数据元素的数量。特定vector运算的长度在编译时通常是未知的,或者单段代码可能需要不同的vector长度。Strip Mining 露天采矿。原创 2024-11-13 15:08:47 · 952 阅读 · 0 评论 -
Vector Optimization – Multiple Lanes
Vecot multi lane for regsiter原创 2024-11-13 15:06:29 · 886 阅读 · 0 评论 -
Vector Architecture Vector架构
Vector Arch转载 2024-11-13 14:59:32 · 105 阅读 · 0 评论 -
pcie posted write
就是一个优化,大脑干得快,没必要全等你设备做完。反过来就容易理解nonposted了。原创 2024-05-23 13:44:09 · 351 阅读 · 0 评论 -
Cache bookdoor
A TLB (Translation Lookaside Buffer) is a cache of the translations from virtual memory addresses to physical memory addresses. When a processor changes the virtual-to-physical mapping of an address, it needs to tell the other processors to invalidate that原创 2023-06-13 10:09:51 · 114 阅读 · 0 评论 -
doorbell机制
在学习中断相关的知识时,查看了Wikipedia上的解释https://en.wikipedia.org/wiki/InterruptIn a push button analogy applied to computer systems, the term doorbell or doorbell interrupt is often used to describe a mechanism whereby a software system can signal or notify a comput原创 2021-11-09 10:14:38 · 5649 阅读 · 0 评论 -
驱动文章集锦
宋宝华微信公众号系列文章宋宝华csdn关于driver的文章wowo科技原创 2021-01-08 15:29:37 · 124 阅读 · 0 评论 -
总线地址/物理地址/字扩展和位扩展/io空间内存空间
总线地址/物理地址/字扩展和位扩展/io空间内存空间1 总线地址An address bus is a bus that is used to specify a physical address. When a processor or DMA-enabled device needs to read or write to a memory location, it specifies ...原创 2019-08-11 21:28:48 · 1396 阅读 · 0 评论