会员体验
专利管家(专利管理)
工作空间(专利管理)
风险监控(情报监控)
数据分析(专利分析)
侵权分析(诉讼无效)
联系我们
交流群
官方交流:
QQ群: 891211   
微信请扫码    >>>
现在联系顾问~
热词
    • 2. 发明授权
    • Optimized code generation targeting a high locality software cache
    • 针对高位置软件缓存的优化代码生成
    • US08561044B2
    • 2013-10-15
    • US12246602
    • 2008-10-07
    • Tong ChenAlexandre E. EichenbergerMarc Gonzalez TalladaJohn K. O'BrienKathryn M. O'BrienZehra N. SuraTao Zhang
    • Tong ChenAlexandre E. EichenbergerMarc Gonzalez TalladaJohn K. O'BrienKathryn M. O'BrienZehra N. SuraTao Zhang
    • G06F9/44
    • G06F8/4442
    • Mechanisms for optimized code generation targeting a high locality software cache are provided. Original computer code is parsed to identify memory references in the original computer code. Memory references are classified as either regular memory references or irregular memory references. Regular memory references are controlled by a high locality cache mechanism. Original computer code is transformed, by a compiler, to generate transformed computer code in which the regular memory references are grouped into one or more memory reference streams, each memory reference stream having a leading memory reference, a trailing memory reference, and one or more middle memory references. Transforming of the original computer code comprises inserting, into the original computer code, instructions to execute initialization, lookup, and cleanup operations associated with the leading memory reference and trailing memory reference in a different manner from initialization, lookup, and cleanup operations for the one or more middle memory references.
    • 提供了针对高位置软件缓存的优化代码生成机制。 解析原始计算机代码以识别原始计算机代码中的内存引用。 内存引用被分类为常规内存引用或不规则内存引用。 常规内存引用由高位置缓存机制控制。 原始计算机代码由编译器转换以生成转换的计算机代码,其中常规存储器引用被分组成一个或多个存储器参考流,每个存储器参考流具有前导存储器引用,尾随存储器引用和一个或多个 中间内存引用。 原始计算机代码的转换包括将原始计算机代码中的指令以不同于初始化,查找和清除操作的方式与前导存储器引用和尾随存储器引用相关联的执行初始化,查找和清除操作的指令进行插入 或更多的中间内存引用。
    • 4. 发明授权
    • Parallelization of irregular reductions via parallel building and exploitation of conflict-free units of work at runtime
    • 通过并行建设和运行时无冲突的工作单位利用不平等减少并行化
    • US08468508B2
    • 2013-06-18
    • US12576717
    • 2009-10-09
    • Alexandre E. EichenbergerYangchun LuoJohn K. O'BrienXiaotong Zhuang
    • Alexandre E. EichenbergerYangchun LuoJohn K. O'BrienXiaotong Zhuang
    • G06F9/45
    • G06F8/456
    • An optimizing compiler device, a method, a computer program product which are capable of performing parallelization of irregular reductions. The method for performing parallelization of irregular reductions includes receiving, at a compiler, a program and selecting, at compile time, at least one unit of work (UW) from the program, each UW configured to operate on at least one reduction operation, where at least one reduction operation in the UW operates on a reduction variable whose address is determinable when running the program at a run-time. At run time, for each successive current UW, a list of reduction operations accessed by that unit of work is recorded. Further, it is determined at run time whether reduction operations accessed by a current UW conflict with any reduction operations recorded as having been accessed by prior selected units of work, and assigning the unit of work as a conflict free unit of work (CFUW) when no conflicts are found. Finally, there is scheduled, for parallel run-time operation, at least two or more processing threads to process a respective the at least two or more assigned CFUWs.
    • 优化编译器装置,方法,计算机程序产品,其能够执行不规则减少的并行化。 用于执行不规则减少的并行化的方法包括在编译器处接收程序并且在编译时选择来自程序的至少一个工作单元(UW),每个UW被配置为在至少一个简化操作上操作,其中 UW中的至少一个减少操作对于在运行时运行程序时地址是可确定的减法变量进行操作。 在运行时,对于每个连续的当前UW,记录由该工作单元访问的减少操作的列表。 此外,在运行时确定由目前的UW访问的减少操作是否与任何记录为由先前选择的工作单元访问的任何缩减操作相冲突,并且将工作单元分配为无冲突的工作单元(CFUW),当 没有发现冲突。 最后,对于并行运行时间操作,计划至少两个或更多个处理线程来处理相应的所述至少两个或更多个分配的CFUW。
    • 5. 发明授权
    • Method and apparatus for efficient helper thread state initialization using inter-thread register copy
    • 使用线程间寄存器复制的有效帮助线程状态初始化的方法和装置
    • US08453161B2
    • 2013-05-28
    • US12787128
    • 2010-05-25
    • Michael K. GschwindJohn K. O'BrienValentina SalapuraZehra N. Sura
    • Michael K. GschwindJohn K. O'BrienValentina SalapuraZehra N. Sura
    • G06F13/00G06F12/00G06F9/30
    • G06F9/544
    • This disclosure describes a method and system that may enable fast, hardware-assisted, producer-consumer style communication of values between threads. The method, in one aspect, uses a dedicated hardware buffer as an intermediary storage for transferring values from registers in one thread to registers in another thread. The method may provide a generic, programmable solution that can transfer any subset of register values between threads in any given order, where the source and target registers may or may not be correlated. The method also may allow for determinate access times, since it completely bypasses the memory hierarchy. Also, the method is designed to be lightweight, focusing on communication, and keeping synchronization facilities orthogonal to the communication mechanism. It may be used by a helper thread that performs data prefetching for an application thread, for example, to initialize the upward-exposed reads in the address computation slice of the helper thread code.
    • 本公开描述了一种方法和系统,其可以实现线程之间的值的快速,硬件辅助,生产者 - 消费者风格的通信。 该方法在一个方面中使用专用硬件缓冲器作为用于将值从一个线程中的寄存器传送到另一线程中的寄存器的中间存储器。 该方法可以提供通用的可编程解决方案,其可以以任何给定的顺序在线程之间传送寄存器值的任何子集,其中源寄存器和目标寄存器可以或可以不相关。 该方法还可以允许确定的访问时间,因为它完全绕过存储器层次结构。 此外,该方法被设计为轻量级,专注于通信,并保持与通信机制正交的同步设备。 它可以由对应用程序线程执行数据预取的辅助线程使用,例如,初始化辅助线程代码的地址计算切片中的向上暴露的读取。
    • 8. 发明授权
    • Computer analysis and runtime coherency checking
    • 计算机分析和运行时一致性检查
    • US08281295B2
    • 2012-10-02
    • US12125982
    • 2008-05-23
    • Tong ChenHaibo LinJohn K. O'BrienTao Zhang
    • Tong ChenHaibo LinJohn K. O'BrienTao Zhang
    • G06F9/45
    • G06F8/433
    • Compiler analysis and runtime coherency checking for reducing coherency problems is provided. Source code is analyzed to identify at least one of a plurality of loops that contains a memory reference. A determination is made as to whether the memory reference is an access to a global memory that should be handled by at least one of a software controlled cache or a direct buffer. A determination is made as to whether there is a data dependence between the memory reference and at least one reference from at least one of other direct buffers or other software controlled caches in response to an indication that the memory reference is an access to the global memory that should be handled by either the software controlled cache or the direct buffer. A direct buffer transformation is applied to the memory reference in response to a negative indication of the data dependence.
    • 提供了编译器分析和运行时相关性检查,以减少相关性问题。 分析源代码以识别包含存储器引用的多个循环中的至少一个。 确定存储器引用是否是对由软件控制的高速缓存或直接缓冲器中的至少一个来处理的全局存储器的访问。 确定响应于存储器引用是对全局存储器的访问的指示,确定存储器引用与来自其他直接缓冲器或其他软件控制的高速缓存中的至少一个的至少一个引用之间是否存在数据依赖性 应由软件控制的缓存或直接缓冲区来处理。 响应于数据依赖性的负指示,将直接缓冲器变换应用于存储器引用。