会员体验
专利管家(专利管理)
工作空间(专利管理)
风险监控(情报监控)
数据分析(专利分析)
侵权分析(诉讼无效)
联系我们
交流群
官方交流:
QQ群: 891211   
微信请扫码    >>>
现在联系顾问~
热词
    • 2. 发明授权
    • Automatic kernel migration for heterogeneous cores
    • 异构核心的自动内核迁移
    • US08683468B2
    • 2014-03-25
    • US13108438
    • 2011-05-16
    • Mauricio BreternitzPatryk KaminskiKeith LoweryAnton ChernoffDz-Ching Ju
    • Mauricio BreternitzPatryk KaminskiKeith LoweryAnton ChernoffDz-Ching Ju
    • G06F9/46
    • G06F9/4856G06F9/5066
    • A system and method for automatically migrating the execution of work units between multiple heterogeneous cores. A computing system includes a first processor core with a single instruction multiple data micro-architecture and a second processor core with a general-purpose micro-architecture. A compiler predicts execution of a function call in a program migrates at a given location to a different processor core. The compiler creates a data structure to support moving live values associated with the execution of the function call at the given location. An operating system (OS) scheduler schedules at least code before the given location in program order to the first processor core. In response to receiving an indication that a condition for migration is satisfied, the OS scheduler moves the live values to a location indicated by the data structure for access by the second processor core and schedules code after the given location to the second processor core.
    • 一种用于在多个异构核心之间自动迁移工作单元执行的系统和方法。 计算系统包括具有单指令多数据微架构的第一处理器核心和具有通用微架构的第二处理器核心。 编译器预测程序中的函数调用的执行在给定位置迁移到不同的处理器核心。 编译器创建一个数据结构,以支持在给定位置移动与执行函数调用相关联的实时值。 操作系统(OS)调度器将程序顺序之前的给定位置之前的至少代码调度到第一处理器核心。 响应于接收到满足迁移条件的指示,OS调度器将活动值移动到由数据结构指示的位置,以供第二处理器核心访问,并且将给定位置之后的代​​码调度到第二处理器核心。
    • 4. 发明申请
    • AUTOMATIC KERNEL MIGRATION FOR HETEROGENEOUS CORES
    • 自动KERNEL移动异构牙
    • US20120297163A1
    • 2012-11-22
    • US13108438
    • 2011-05-16
    • Mauricio BreternitzPatryk KaminskiKeith LoweryAnton ChernoffDz-Ching Ju
    • Mauricio BreternitzPatryk KaminskiKeith LoweryAnton ChernoffDz-Ching Ju
    • G06F9/315G06F15/80
    • G06F9/4856G06F9/5066
    • A system and method for automatically migrating the execution of work units between multiple heterogeneous cores. A computing system includes a first processor core with a single instruction multiple data micro-architecture and a second processor core with a general-purpose micro-architecture. A compiler predicts execution of a function call in a program migrates at a given location to a different processor core. The compiler creates a data structure to support moving live values associated with the execution of the function call at the given location. An operating system (OS) scheduler schedules at least code before the given location in program order to the first processor core. In response to receiving an indication that a condition for migration is satisfied, the OS scheduler moves the live values to a location indicated by the data structure for access by the second processor core and schedules code after the given location to the second processor core.
    • 一种用于在多个异构核心之间自动迁移工作单元执行的系统和方法。 计算系统包括具有单指令多数据微架构的第一处理器核心和具有通用微架构的第二处理器核心。 编译器预测程序中的函数调用的执行在给定位置迁移到不同的处理器核心。 编译器创建一个数据结构,以支持在给定位置移动与执行函数调用相关联的实时值。 操作系统(OS)调度器将程序顺序之前的给定位置之前的至少代码调度到第一处理器核心。 响应于接收到满足迁移条件的指示,OS调度器将活动值移动到由数据结构指示的位置,以供第二处理器核心访问,并且将给定位置之后的代​​码调度到第二处理器核心。
    • 5. 发明申请
    • System and Method for Efficiently Passing Information Between Compiler and Post-Compile-Time Software
    • 在编译器和后期编译软件之间有效传递信息的系统和方法
    • US20070226720A1
    • 2007-09-27
    • US11756228
    • 2007-05-31
    • Ding-Kai ChenDz-Ching Ju
    • Ding-Kai ChenDz-Ching Ju
    • G06F9/45
    • G06F8/443G06F8/441G06F9/30076G06F9/30145
    • System and method are described for register optimization during code translation utilizes a technique that removes the time overhead for analyzing register usage and eliminates fixed restraints on the compiler register usage. The present invention for register optimization utilizes a compiler to produce a register usage bit vector in a NOP instruction within each basic block (i.e., subroutine, function, and/or procedure). Each bit in the bit vector represents a particular caller-saved register. A bit is set if, at the location of NOP instruction, the compiler uses the corresponding register within that basic block containing the NOP instruction to hold information to be used at a later time. During the translation, the translator examines the register usage bit vector to very quickly determine which registers are free and therefore can be used during the register optimization without the need to save and restore the register values.
    • 在代码转换中描述了用于寄存器优化的系统和方法,该技术消除了分析寄存器使用的时间开销并消除了对编译器寄存器使用的固定约束。 用于寄存器优化的本发明利用编译器在每个基本块(即,子程序,功能和/或过程)中的NOP指令中产生寄存器使用位向量。 位向量中的每个位表示特定的调用者保存的寄存器。 如果在NOP指令的位置,编译器使用包含NOP指令的基本块内的对应寄存器来保存稍后使用的信息,则置位。 在翻译期间,翻译器检查寄存器使用位向量,以快速确定哪些寄存器是空闲的,因此可以在寄存器优化期间使用,而不需要保存和恢复寄存器值。
    • 8. 发明授权
    • System and method for efficiently passing information between compiler and post-compile-time software
    • 在编译器和编译后软件之间有效传递信息的系统和方法
    • US07257806B1
    • 2007-08-14
    • US09422539
    • 1999-10-21
    • Ding-Kai ChenDz-Ching Ju
    • Ding-Kai ChenDz-Ching Ju
    • G06F9/45
    • G06F8/443G06F8/441G06F9/30076G06F9/30145
    • System and method are described for register optimization during code translation utilizes a technique that removes the time overhead for analyzing register usage and eliminates fixed restraints on the compiler register usage. The present invention for register optimization utilizes a compiler to produce a register usage bit vector in a NOP instruction within each basic block (i.e., subroutine, function, and/or procedure). Each bit in the bit vector represents a particular caller-saved register. A bit is set if, at the location of NOP instruction, the compiler uses the corresponding register within that basic block containing the NOP instruction to hold information to be used at a later time. During the translation, the translator examines the register usage bit vector to very quickly determine which registers are free and therefore can be used during the register optimization without the need to save and restore the register values.
    • 在代码转换中描述了用于寄存器优化的系统和方法,该技术消除了分析寄存器使用的时间开销并消除了对编译器寄存器使用的固定约束。 用于寄存器优化的本发明利用编译器在每个基本块(即,子程序,功能和/或过程)中的NOP指令中产生寄存器使用位向量。 位向量中的每个位表示特定的调用者保存的寄存器。 如果在NOP指令的位置,编译器使用包含NOP指令的基本块内的对应寄存器来保存稍后使用的信息,则置位。 在翻译期间,翻译器检查寄存器使用位向量,以快速确定哪些寄存器是空闲的,因此可以在寄存器优化期间使用,而不需要保存和恢复寄存器值。
    • 10. 发明授权
    • Method and apparatus for ordered predicate phi in static single assignment form
    • 有序谓词phi的静态单一分配形式的方法和装置
    • US06898787B2
    • 2005-05-24
    • US09814511
    • 2001-03-22
    • Carol Linda ThompsonVatsa SanthanamDz-Ching JuVasanth Bala
    • Carol Linda ThompsonVatsa SanthanamDz-Ching JuVasanth Bala
    • G06F9/45
    • G06F8/433
    • A Φ function provides a mechanism for static single assignment in the presence of predicated code. Guards placed on each source operand of the Φ function indicate the condition under which the corresponding source operand is live and provide correct materialization of the Φ functions after code reordering. For control functions Φc representing a confluence of live reaching definitions at a join point in the control flow graph, the guards indicate the basic block which is the source of the edge associated with the source operand. The Φc operands are paired with the source basic block of the incoming edge(s) along which they are live. The operands are also ordered according to a topological ordering of their associated block. This ordering is maintained through subsequent code transformations. In the topological ordering, the source of the edge from which the definition was passed is defined. A predicate Φ function Φp, represents the confluence of definitions in a straight line of code in which some of the definitions have been predicated. For Φp, the guards on the source operands indicate the predicate under which the corresponding operand is live. The order of the operands is such that the Φp function can be fully materialized by inserting a copy from each source operand to the target variable, in the corresponding order, and each predicated by the associated predicate guard.
    • Phi函数提供了在存在预定义代码的情况下进行静态单一分配的机制。 在Phi功能的每个源操作数上设置的守卫指示对应的源操作数的实时状态,并在代码重新排序后提供Phi功能的正确实现。 对于表示控制流程图中连接点处的实时达成定义的汇合的控制功能,保护指示作为与源操作数相关联的边的源的基本块。 Phi i>>> ands are are are。。。。。。。。。。。。。。。。。。。。。 操作数也根据其相关块的拓扑排序进行排序。 这种排序通过后续的代码转换来维护。 在拓扑排序中定义了通过定义的边缘的源。 谓词Phi函数Phi

      表示其中某些定义已经被假定的直线代码中的定义的汇合。 对于Phi p ,源操作数上的守卫表示相应操作数处于活动状态的谓词。 操作数的顺序是这样的,通过从相应的顺序将每个源操作数的副本插入到目标变量中,并且每个由相关联的谓词保护者预先定义,可以完全实现Phi

      功能。