Application analysis and resource mapping for heterogeneous network processor architectures [chapter]

Ramaswamy Ramaswamy, Ning Weng, Tilman Wolf
2005 Network Processor Design  
Network processors use increasingly heterogeneous processing resources to meet demands in performance and flexibility. These general-purpose processors, coprocessors, and hardware accelerators pose a challenge to the software developer as application components need to be mapped to the appropriate resource for optimal performance. To simplify this task, we provide a methodology to automatically derive an architectureindependent application representation from a run-time instruction trace. This
more » ... uction trace. This is done by considering data and control dependencies between each instruction of the trace. By using a novel clustering algorithm, called maximum local ratio cut, we group the instructions according to their dependencies and mutual cohesiveness. The resulting annotated directed acyclic graph (ADAG) gives insights into the application behavior and its inherent parallelism (multiprocessing vs. pipelining). The ADAG can further be used to map and schedule the application to a network processor system. Router
doi:10.1016/b978-012088476-6/50014-9 fatcat:samayr4g5rarnbfwzirgh2uqgi