-
公开(公告)号:US08667474B2
公开(公告)日:2014-03-04
申请号:US12487663
申请日:2009-06-19
Applicant: James Radigan
Inventor: James Radigan
IPC: G06F9/45
CPC classification number: G06F8/456
Abstract: A generated grouped representation of existing source code can define regions of the existing source code. A set of the regions that can run in parallel can be identified based on the grouped representation. The grouped representation can be converted into a modified representation, such as modified source code or a modified intermediate compiler representation, which can be configured to be resolved or executed to self-schedule the set of regions to run in parallel as a set of tasks. Additionally, the source code can include one or more exception handling routines, and user input can be received to identify in one or more lambda expressions one or more regions of the source code to be run in parallel as one or more tasks.
Abstract translation: 现有源代码的生成的分组表示可以定义现有源代码的区域。 可以基于分组的表示来识别可并行运行的一组区域。 分组的表示可以被转换成修改的表示,例如经修改的源代码或经修改的中间编译器表示,其可以被配置为被解析或执行以自动调度一组区域作为一组任务并行运行。 另外,源代码可以包括一个或多个异常处理例程,并且可以接收用户输入以在一个或多个lambda表达式中标识要作为一个或多个任务并行运行的源代码的一个或多个区域。
-
公开(公告)号:US20060161908A1
公开(公告)日:2006-07-20
申请号:US11036862
申请日:2005-01-14
Applicant: Ian Bearman , James Radigan
Inventor: Ian Bearman , James Radigan
IPC: G06F9/44
CPC classification number: G06F8/433
Abstract: A compiler that forms an intermediate representation of a program using a flow graph with less than all possible edges used to model asynchronous transfers within the program. The flow graph is formed in multiple phases. In one phase, the flow graph is formed without modeling asynchronous transfers. In later phases, representations of the effects of the asynchronous transfers are selectively added. As part of the later phases, edges modeling a possible asynchronous transfer are added to the flow graph following definitions in protected regions of variables that are live outside the protected region. A modified definition of live-ness of a variable is used to incorporate use of the variable in any region, including the protected region, following an asynchronous transfer. Edges from the protected region are also added to the model if the only use of the defined variable is in a handler.
-
公开(公告)号:US20100325608A1
公开(公告)日:2010-12-23
申请号:US12487663
申请日:2009-06-19
Applicant: James Radigan
Inventor: James Radigan
CPC classification number: G06F8/456
Abstract: A generated grouped representation of existing source code can define regions of the existing source code. A set of the regions that can run in parallel can be identified based on the grouped representation. The grouped representation can be converted into a modified representation, such as modified source code or a modified intermediate compiler representation, which can be configured to be resolved or executed to self-schedule the set of regions to run in parallel as a set of tasks. Additionally, the source code can include one or more exception handling routines, and user input can be received to identify in one or more lambda expressions one or more regions of the source code to be run in parallel as one or more tasks.
Abstract translation: 现有源代码的生成的分组表示可以定义现有源代码的区域。 可以基于分组的表示来识别可以并行运行的一组区域。 分组的表示可以被转换成修改的表示,例如经修改的源代码或经修改的中间编译器表示,其可以被配置为被解析或执行以自动调度一组区域作为一组任务并行运行。 另外,源代码可以包括一个或多个异常处理例程,并且可以接收用户输入以在一个或多个lambda表达式中标识要作为一个或多个任务并行运行的源代码的一个或多个区域。
-
公开(公告)号:US20060174227A1
公开(公告)日:2006-08-03
申请号:US11039241
申请日:2005-01-18
Applicant: Ian Bearman , James Radigan
Inventor: Ian Bearman , James Radigan
IPC: G06F9/44
CPC classification number: G06F8/433 , G06F9/4494
Abstract: A compiler that forms an intermediate representation of a program using a flow graph with less than all possible edges used to model asynchronous transfers within the program. The flow graph is formed in multiple phases. In one phase, the flow graph is formed without modeling asynchronous transfers. In later phases, representations of the effects of the asynchronous transfers are selectively added. As part of the later phases, edges modeling a possible asynchronous transfer are added to the flow graph following definitions in protected regions of variables that are live outside the protected region. A modified definition of live-ness of a variable is used to incorporate use of the variable in any region, including the protected region, following an asynchronous transfer. Edges from the protected region are also added to the model if the only use of the defined variable is in a handler.
-
-
-