-
公开(公告)号:US20120317556A1
公开(公告)日:2012-12-13
申请号:US13158966
申请日:2011-06-13
IPC分类号: G06F9/45
CPC分类号: G06F8/451
摘要: The present invention extends to methods, systems, and computer program products for optimizing execution of kernels. Embodiments of the invention include an optimization framework for optimizing runtime execution of kernels. During compilation, information about the execution properties of a kernel are identified and stored alongside the executable code for the kernel. At runtime, calling contexts access the information. The calling contexts interpret the information and optimize kernel execution based on the interpretation.
摘要翻译: 本发明扩展到用于优化内核的执行的方法,系统和计算机程序产品。 本发明的实施例包括用于优化内核的运行时执行的优化框架。 在编译期间,内核的执行属性的信息被识别并存储在内核的可执行代码旁边。 在运行时,调用上下文访问信息。 调用上下文根据解释来解释信息并优化内核执行。
-
公开(公告)号:US20110314244A1
公开(公告)日:2011-12-22
申请号:US12819499
申请日:2010-06-21
申请人: Sukhdeep S. Sodhi , Yosseff Levanoni , David L. Detlefs , Lingli Zhang , Weirong Zhu , Dana Groff , Michael M. Magruder , Charles David Callahan, II
发明人: Sukhdeep S. Sodhi , Yosseff Levanoni , David L. Detlefs , Lingli Zhang , Weirong Zhu , Dana Groff , Michael M. Magruder , Charles David Callahan, II
摘要: A software transactional memory (STM) system allows the composition of traditional lock based synchronization with transactions in STM code. The STM system acquires each traditional lock the first time that a corresponding traditional lock acquire is encountered inside a transaction and defers all traditional lock releases until a top level transaction in a transaction nest commits or aborts. The STM system maintains state information associated with traditional lock operations in transactions and uses the state information to eliminate deferred traditional lock operations that are redundant. The STM system integrates with systems that implement garbage collection.
摘要翻译: 软件事务存储器(STM)系统允许以STM代码的事务组合传统的基于锁的同步。 STM系统首次在交易中遇到相应的传统锁获取时,获取每个传统锁,并延迟所有传统的锁定版本,直到事务嵌套中的顶级事务提交或中止。 STM系统维护与事务中的传统锁定操作相关联的状态信息,并使用状态信息来消除冗余的延迟传统锁定操作。 STM系统与实施垃圾收集的系统集成。
-
公开(公告)号:US08713039B2
公开(公告)日:2014-04-29
申请号:US12977406
申请日:2010-12-23
摘要: A high level programming language provides a co-map communication operator that maps an input indexable type to an output indexable type according to a function. The function maps an index space corresponding to the output indexable type to an index space corresponding to the input indexable type. By doing so, the co-map communication operator lifts a function on an index space to a function on an indexable type to allow composability with other communication operators.
摘要翻译: 高级编程语言提供了协同地图通信运算符,其根据功能将输入可索引类型映射到输出可索引类型。 该函数将与输出可索引类型相对应的索引空间映射到与输入可索引类型对应的索引空间。 通过这样做,共同地图通信操作员将索引空间上的功能提升为可索引类型的功能,以允许与其他通信运营商的组合。
-
公开(公告)号:US08533698B2
公开(公告)日:2013-09-10
申请号:US13158966
申请日:2011-06-13
IPC分类号: G06F9/44
CPC分类号: G06F8/451
摘要: The present invention extends to methods, systems, and computer program products for optimizing execution of kernels. Embodiments of the invention include an optimization framework for optimizing runtime execution of kernels. During compilation, information about the execution properties of a kernel are identified and stored alongside the executable code for the kernel. At runtime, calling contexts access the information. The calling contexts interpret the information and optimize kernel execution based on the interpretation.
摘要翻译: 本发明扩展到用于优化内核的执行的方法,系统和计算机程序产品。 本发明的实施例包括用于优化内核的运行时执行的优化框架。 在编译期间,内核的执行属性的信息被识别并存储在内核的可执行代码旁边。 在运行时,调用上下文访问信息。 调用上下文根据解释来解释信息并优化内核执行。
-
公开(公告)号:US20110314458A1
公开(公告)日:2011-12-22
申请号:US12820240
申请日:2010-06-22
申请人: Weirong Zhu , Lingli Zhang , Sukhdeep S. Sodhi , Yosseff Levanoni
发明人: Weirong Zhu , Lingli Zhang , Sukhdeep S. Sodhi , Yosseff Levanoni
IPC分类号: G06F9/45
摘要: A compile environment is provided in a computer system that allows programmers to program both CPUs and data parallel devices (e.g., GPUs) using a high level general purpose programming language that has data parallel (DP) extensions. A compilation process translates modular DP code written in the general purpose language into DP device source code in a high level DP device programming language using a set of binding descriptors for the DP device source code. A binder generates a single, self-contained DP device source code unit from the set of binding descriptors. A DP device compiler generates a DP device executable for execution on one or more data parallel devices from the DP device source code unit.
摘要翻译: 在计算机系统中提供编译环境,允许程序员使用具有数据并行(DP)扩展的高级通用编程语言对CPU和数据并行设备(例如,GPU)进行编程。 编译过程使用一组用于DP设备源代码的绑定描述符将以通用语言编写的模块化DP代码转换为高级DP设备编程语言的DP设备源代码。 装订器从一组绑定描述符生成单个独立的DP设备源代码单元。 DP设备编译器生成可执行DP器件,以便从DP设备源代码单元在一个或多个数据并行设备上执行。
-
公开(公告)号:US09430204B2
公开(公告)日:2016-08-30
申请号:US12949908
申请日:2010-11-19
申请人: Yosseff Levanoni , Paul F. Ringseth , Weirong Zhu , Lingli Zhang
发明人: Yosseff Levanoni , Paul F. Ringseth , Weirong Zhu , Lingli Zhang
摘要: A high level programming language provides a read-only communication operator that prevents a computational space from being written. An indexable type with a rank and element type defines the computational space. For an input indexable type, the read-only communication operator produces an output indexable type with the same rank and element type as the input indexable type but ensures that the output indexable type may not be written. The read-only communication operator ensures that any attempt to write to the output indexable type will be detected as an error at compile time.
摘要翻译: 高级编程语言提供了一种只读通信操作符,防止写入计算空间。 具有等级和元素类型的可索引类型定义了计算空间。 对于输入可索引类型,只读通信运算符产生具有与输入可索引类型相同的排名和元素类型的输出可索引类型,但确保可能不写入输出可索引类型。 只读通信运算符确保在编译时检测到对输出可索引类型的任何尝试都将作为错误检测。
-
公开(公告)号:US08954995B2
公开(公告)日:2015-02-10
申请号:US12243371
申请日:2008-10-01
申请人: Weirong Zhu , David L. Detlefs , Yosseff Levanoni , Lingli Zhang
发明人: Weirong Zhu , David L. Detlefs , Yosseff Levanoni , Lingli Zhang
CPC分类号: G06F12/1466 , G06F3/0622 , G06F3/0653 , G06F3/0673 , G06F9/467 , G06F9/526 , G06F2212/1052
摘要: A software transactional memory system is provided that creates an array of transactional locks for each array object that is accessed by transactions. The system divides the array object into non-overlapping portions and associates each portion with a different transactional lock. The system acquires transactional locks for transactions that access corresponding portions of the array object. By doing so, different portions of the array object can be accessed by different transactions concurrently. The system may use a shared shadow or undo copy for accesses to the array object.
-
公开(公告)号:US08839214B2
公开(公告)日:2014-09-16
申请号:US12827217
申请日:2010-06-30
申请人: Paul F. Ringseth , Weirong Zhu , Rick Molloy , Charles D. Callahan, II , Yosseff Levanoni , Lingli Zhang
发明人: Paul F. Ringseth , Weirong Zhu , Rick Molloy , Charles D. Callahan, II , Yosseff Levanoni , Lingli Zhang
IPC分类号: G06F9/45
CPC分类号: G06F8/453
摘要: A high level programming language provides an extensible set of transformations for use on indexable types in a data parallel processing environment. A compiler for the language implements each transformation as a map from indexable types to allow each transformation to be applied to other transformations. At compile time, the compiler identifies sequences of the transformations on each indexable type in data parallel source code and generates data parallel executable code to implement the sequences as a combined operation at runtime using the transformation maps. The compiler also incorporates optimizations that are based on the sequences of transformations into the data parallel executable code.
摘要翻译: 高级编程语言为数据并行处理环境中的可索引类型提供了一组可扩展的转换。 该语言的编译器将实现每个变换作为可索引类型的映射,以允许将每个转换应用于其他转换。 在编译时,编译器在数据并行源代码中识别每个可索引类型的转换序列,并生成数据并行可执行代码,以便在运行时使用变换映射来实现序列作为组合操作。 编译器还集成了基于转换为数据并行可执行代码的序列的优化。
-
公开(公告)号:US08756590B2
公开(公告)日:2014-06-17
申请号:US12820240
申请日:2010-06-22
申请人: Weirong Zhu , Lingli Zhang , Sukhdeep S. Sodhi , Yosseff Levanoni
发明人: Weirong Zhu , Lingli Zhang , Sukhdeep S. Sodhi , Yosseff Levanoni
IPC分类号: G06F9/45
摘要: A compile environment is provided in a computer system that allows programmers to program both CPUs and data parallel devices (e.g., GPUs) using a high level general purpose programming language that has data parallel (DP) extensions. A compilation process translates modular DP code written in the general purpose language into DP device source code in a high level DP device programming language using a set of binding descriptors for the DP device source code. A binder generates a single, self-contained DP device source code unit from the set of binding descriptors. A DP device compiler generates a DP device executable for execution on one or more data parallel devices from the DP device source code unit.
摘要翻译: 在计算机系统中提供编译环境,允许程序员使用具有数据并行(DP)扩展的高级通用编程语言对CPU和数据并行设备(例如,GPU)进行编程。 编译过程使用一组用于DP设备源代码的绑定描述符将以通用语言编写的模块化DP代码转换为高级DP设备编程语言的DP设备源代码。 装订器从一组绑定描述符生成单个独立的DP设备源代码单元。 DP设备编译器生成可执行DP器件,以便从DP设备源代码单元在一个或多个数据并行设备上执行。
-
公开(公告)号:US08719515B2
公开(公告)日:2014-05-06
申请号:US12819499
申请日:2010-06-21
申请人: Sukhdeep S. Sodhi , Yosseff Levanoni , David L. Detlefs , Lingli Zhang , Weirong Zhu , Dana Groff , Michael M. Magruder , Charles David Callahan, II
发明人: Sukhdeep S. Sodhi , Yosseff Levanoni , David L. Detlefs , Lingli Zhang , Weirong Zhu , Dana Groff , Michael M. Magruder , Charles David Callahan, II
IPC分类号: G06F13/00
摘要: A software transactional memory (STM) system allows the composition of traditional lock based synchronization with transactions in STM code. The STM system acquires each traditional lock the first time that a corresponding traditional lock acquire is encountered inside a transaction and defers all traditional lock releases until a top level transaction in a transaction nest commits or aborts. The STM system maintains state information associated with traditional lock operations in transactions and uses the state information to eliminate deferred traditional lock operations that are redundant. The STM system integrates with systems that implement garbage collection.
摘要翻译: 软件事务存储器(STM)系统允许以STM代码的事务组合传统的基于锁的同步。 STM系统首次在交易中遇到相应的传统锁获取时,获取每个传统锁,并延迟所有传统的锁定版本,直到事务嵌套中的顶级事务提交或中止。 STM系统维护与事务中的传统锁定操作相关的状态信息,并使用状态信息来消除冗余的延迟传统锁定操作。 STM系统与实施垃圾收集的系统集成。
-
-
-
-
-
-
-
-
-