发明名称 THROUGHPUT-AWARE SOFTWARE PIPELINING FOR HIGHLY MULTI-THREADED SYSTEMS
摘要 Embodiments of the invention provide systems and methods for throughput-aware software pipelining in compilers to produce optimal code for single-thread and multi-thread execution on multi-threaded systems. A loop is identified within source code as a candidate for software pipelining. An attempt is made to generate pipelined code (e.g., generate an instruction schedule and a set of register assignments) for the loop in satisfaction of throughput-aware pipelining criteria, like maximum register count, minimum trip count, target core pipeline resource utilization, maximum code size, etc. If the attempt fails to generate code in satisfaction of the criteria, embodiments adjust one or more settings (e.g., by reducing scalarity or latency settings being used to generate the instruction schedule). Additional attempts are made to generate pipelined code in satisfaction of the criteria by iteratively adjusting the settings, regenerating the code using the adjusted settings, and recalculating whether the code satisfies the criteria.
申请公布号 US2013111453(A1) 申请公布日期 2013.05.02
申请号 US201113285891 申请日期 2011.10.31
申请人 KALOGEROPULOS SPIROS;TIRUMALAI PARTHA;ORACLE INTERNATIONAL CORPORATION 发明人 KALOGEROPULOS SPIROS;TIRUMALAI PARTHA
分类号 G06F9/45 主分类号 G06F9/45
代理机构 代理人
主权项
地址