Strided access allows a vector architecture to pipelined access to non-sequential memory locations provided that there is no bank conflict.
Continue readingPost Category → Computer Architecture
Vector Optimization – Memory Banks
Using memory banks improves vector performance by increasing bandwidth.
Continue readingVector Optimization – Vector Mask Register
Vector mask registers can parallelize code even when if conditionals introduce dependencies.
Continue readingVector Optimization – Vector-Length Register
Using a register to define the length of a vector can improve vector performance.
Continue readingVector Optimization – Multiple Lanes
Vector performance can be improved by increasing the number of lanes if enough parallel function units are available.
Continue readingVector Architecture
A discussion about vector architecture, memory system, instructions and execution time.
Continue readingMultithreading
An article on how a single CPU handles multiple threads. Three different (coarse, fine and simultaneous) are discussed.
Continue readingTomasulo’s Algorithm – Example
An example walkthrough of a set of loop instructions undergoing Tomasulo’s algorithm. Each stage of the lifecycle is explained in detail.
Continue readingTomasulo’s Algorithm – Instruction Lifecycle
This article discusses the lifecycle (issue, execute, write, commit) of an instruction following Tomasulo’s Algorithm.
Continue readingTomasulo’s Algorithm – Common Data Bus (CDB)
A short explanation of the role of Common Data Bus.
Continue reading