计算机科学
合并(版本控制)
分支预测器
可视化
并行计算
编译程序
块(置换群论)
数据结构
理论计算机科学
数据挖掘
程序设计语言
数学
几何学
标识
DOI:10.5555/2688283.2688288
摘要
Merging is a building block for many computational domains. In this work we consider the relationship between merging, branch predictors, and input data dependency. Branch predictors are ubiquitous in modern processors as they are useful for many high performance computing applications. While it is well known that the performance and the branch prediction accuracy go hand-in-hand, these have not been studied in the context of merging. We thoroughly test merging using multiple input array sizes and values using the same code and compile optimizations. As the number of possible keys increase, so the do the number of branch mis-predictions - resulting in reduced performance. The reduction in performance can be as much as 5X. We explain this phenomenon using a visualization technique called Merge Path that intuitively shows this. We support this visualization approach with modeling, thorough testing, and analysis on multiple systems.
科研通智能强力驱动
Strongly Powered by AbleSci AI