ASSISTING PARALLELIZATION OF A COMPUTER PROGRAM

    公开(公告)号:US20160110174A1

    公开(公告)日:2016-04-21

    申请号:US14978211

    申请日:2015-12-22

    Applicant: Cray Inc.

    Abstract: A parallelization assistant tool system to assist in parallelization of a computer program is disclosed. The system directs the execution of instrumented code of the computer program to collect performance statistics information relating to execution of loops within the computer program. The system provides a user interface for presenting to a programmer the performance statistics information collected for a loop within the computer program so that the programmer can prioritize efforts to parallelize the computer program. The system generates inlined source code of a loop by aggressively inlining functions substantially without regard to compilation performance, execution performance, or both. The system analyzes the inlined source code to determine the data-sharing attributes of the variables of the loop. The system may generate compiler directives to specify the data-sharing attributes of the variables.

    Assisting parallelization of a computer program
    2.
    发明授权
    Assisting parallelization of a computer program 有权
    协助计算机程序的并行化

    公开(公告)号:US09250877B2

    公开(公告)日:2016-02-02

    申请号:US14033306

    申请日:2013-09-20

    Applicant: Cray Inc.

    Abstract: A parallelization assistant tool system to assist in parallelization of a computer program is disclosed. The system directs the execution of instrumented code of the computer program to collect performance statistics information relating to execution of loops within the computer program. The system provides a user interface for presenting to a programmer the performance statistics information collected for a loop within the computer program so that the programmer can prioritize efforts to parallelize the computer program. The system generates inlined source code of a loop by aggressively inlining functions substantially without regard to compilation performance, execution performance, or both. The system analyzes the inlined source code to determine the data-sharing attributes of the variables of the loop. The system may generate compiler directives to specify the data-sharing attributes of the variables.

    Abstract translation: 公开了一种用于协助计算机程序并行化的并行化辅助工具系统。 系统指导计算机程序的检测代码的执行,以收集与计算机程序中的循环执行相关的性能统计信息。 该系统提供一个用户界面,用于向程序员呈现为计算机程序内的一个循环收集的性能统计信息,以便程序员可以将努力的优先次序并行化计算机程序。 系统通过积极地内联函数,基本上不考虑编译性能,执行性能或两者,生成循环的内联源代码。 系统分析内联源代码以确定循环变量的数据共享属性。 系统可以生成编译器指令来指定变量的数据共享属性。

    ASSISTING PARALLELIZATION OF A COMPUTER PROGRAM
    3.
    发明申请
    ASSISTING PARALLELIZATION OF A COMPUTER PROGRAM 有权
    协助计算机程序的平行化

    公开(公告)号:US20150089468A1

    公开(公告)日:2015-03-26

    申请号:US14033306

    申请日:2013-09-20

    Applicant: Cray Inc.

    Abstract: A parallelization assistant tool system to assist in parallelization of a computer program is disclosed. The system directs the execution of instrumented code of the computer program to collect performance statistics information relating to execution of loops within the computer program. The system provides a user interface for presenting to a programmer the performance statistics information collected for a loop within the computer program so that the programmer can prioritize efforts to parallelize the computer program. The system generates inlined source code of a loop by aggressively inlining functions substantially without regard to compilation performance, execution performance, or both. The system analyzes the inlined source code to determine the data-sharing attributes of the variables of the loop. The system may generate compiler directives to specify the data-sharing attributes of the variables.

    Abstract translation: 公开了一种用于协助计算机程序并行化的并行化辅助工具系统。 系统指导计算机程序的检测代码的执行,以收集与计算机程序中的循环执行相关的性能统计信息。 该系统提供一个用户界面,用于向程序员呈现为计算机程序内的一个循环收集的性能统计信息,以便程序员能优先考虑并行化计算机程序。 系统通过积极地内联函数,基本上不考虑编译性能,执行性能或两者,生成循环的内联源代码。 系统分析内联源代码以确定循环变量的数据共享属性。 系统可以生成编译器指令来指定变量的数据共享属性。

    Assisting parallelization of a computer program

    公开(公告)号:US10761820B2

    公开(公告)日:2020-09-01

    申请号:US14978211

    申请日:2015-12-22

    Applicant: Cray Inc.

    Abstract: A parallelization assistant tool system to assist in parallelization of a computer program is disclosed. The system directs the execution of instrumented code of the computer program to collect performance statistics information relating to execution of loops within the computer program. The system provides a user interface for presenting to a programmer the performance statistics information collected for a loop within the computer program so that the programmer can prioritize efforts to parallelize the computer program. The system generates inlined source code of a loop by aggressively inlining functions substantially without regard to compilation performance, execution performance, or both. The system analyzes the inlined source code to determine the data-sharing attributes of the variables of the loop. The system may generate compiler directives to specify the data-sharing attributes of the variables.

    PROGRAM OPTIMIZATION BASED ON DIRECTIVES FOR INTERMEDIATE CODE

    公开(公告)号:US20170206068A1

    公开(公告)日:2017-07-20

    申请号:US15149347

    申请日:2016-05-09

    Applicant: Cray Inc.

    CPC classification number: G06F8/443 G06F8/452

    Abstract: An optimization system to apply directives to a computer program without having to perform repeated front-end compilations of source code of the computer program is provided. In some embodiments, the optimization system performs a first compilation of the source code of the program to generate first front-end code and first back-end code of the computer program. The compilation includes a first front-end compilation and a first back-end compilation. The optimization system identifies a compiler directive to apply to a location within the first front-end code. The optimization system then performs a second back-end compilation of the first front-end code factoring in the compiler directive to generate second back-end code affected by the compiler directive.

Patent Agency Ranking