发明名称 LOOP NEST PARALLELIZATION WITHOUT LOOP LINEARIZATION
摘要 Systems and methods may provide for identifying a nested loop iteration space in user code, wherein the nested loop iteration space includes a plurality of outer loop iterations, and distributing iterations from the nested loop iteration space across a plurality of threads, wherein each thread is assigned a group of outer loop iterations. Additionally, a compiler output may be automatically generated, wherein the compiler output contains serial code corresponding to each group of outer loop iterations and de-linearization code to be executed outside the plurality of outer loop iterations. In one example, the de-linearization code includes index recovery code that is positioned before one or more instances of the serial code in the compiler output.
申请公布号 US2016085530(A1) 申请公布日期 2016.03.24
申请号 US201414493640 申请日期 2014.09.23
申请人 Duran Gonzalez Alejandro 发明人 Duran Gonzalez Alejandro
分类号 G06F9/45;G06F9/44 主分类号 G06F9/45
代理机构 代理人
主权项 1. A code utility system, comprising: a design interface to receive user code; a compiler coupled to the design interface, the compiler including: a nested loop detector to identify a nested loop iteration space in the user code, wherein the nested loop iteration space includes a plurality of outer loop iterations; a linearized iterations distributor to distribute iterations from the nested loop iteration space across a plurality of threads, wherein each thread is to be assigned a group of outer loop iterations; a de-linearizer to automatically generate a compiler output that contains serial code corresponding to each group of outer loop iterations and de-linearization code to be executed outside the plurality of outer loop iterations, wherein the de-linearization code is to include index recovery code, prologue code dedicated to an initial iteration in one or more of the groups of outer iterations, and epilogue code dedicated to a final iteration in one or more of the groups of outer iterations; and a report interface coupled to the compiler, the report interface to transmit the compiler output.
地址 Barcelona ES