Research Article
Traversal Caches: A Framework for FPGA Acceleration of Pointer Data Structures
Algorithm 2
Pseudocode of the software portion of the (similarity-based) traversal cache implementation of Barnes-Hut.
def BarnesHutTC_SW (TimeSteps, Bodies): | Tree = BuildTree (Bodies) | for # of TimeSteps: | TreeSerial = SerializeTree (Tree) | BodiesSerial = SerializeOrderedBodies (Tree) | PopulateCache (BodiesSerial, TreeSerial) | ClearTree (Tree) | StartFPGA () | while FPGABusy (): | if FPGAHasData (): | PartialBuildTree (Tree, ReadFPGAResults()) | return GetBodies (Tree) |
|