会员体验
专利管家(专利管理)
工作空间(专利管理)
风险监控(情报监控)
数据分析(专利分析)
侵权分析(诉讼无效)
联系我们
交流群
官方交流:
QQ群: 891211   
微信请扫码    >>>
现在联系顾问~
热词
    • 1. 发明授权
    • Target branch prediction using a plurality of tables
    • 使用多个表进行目标分支预测
    • US07900026B2
    • 2011-03-01
    • US12246282
    • 2008-10-06
    • Il ParkMauricio J. SerranoJong-Deok Choi
    • Il ParkMauricio J. SerranoJong-Deok Choi
    • G06F9/32
    • G06F9/3806G06F9/322G06F9/3848
    • A system for predicting multiple targets for a single branch includes: a branch target buffer that includes a previous next address for an instruction and that receives an indirect instruction address to provide a first branch target prediction; a first branch table for capturing local past target information of an indirect branch in an encoded form; a second branch table which is a correlation table for storing potential branch targets based on a local branch history and which provides a second branch target prediction when the first branch target prediction is not successful; an exclusion predictor for inhibiting updates of inefficient entries; and a multiplexer to select the predicted target as output.
    • 用于预测单个分支的多个目标的系统包括:分支目标缓冲器,其包括用于指令的先前的下一个地址并且接收间接指令地址以提供第一分支目标预测; 用于以编码形式捕获间接分支的当地过去目标信息的第一分支表; 第二分支表,其是基于本地分支历史存储潜在分支目标的相关表,并且当第一分支目标预测不成功时提供第二分支目标预测; 用于禁止更低效率条目的排除预测器; 以及选择预测目标作为输出的多路复用器。
    • 3. 发明授权
    • System for target branch prediction using correlation of local target histories including update inhibition for inefficient entries
    • 使用本地目标历史的相关性进行目标分支预测的系统,包括无效率条目的更新抑制
    • US07434037B2
    • 2008-10-07
    • US11399979
    • 2006-04-07
    • Il ParkMauricio J. SerranoJong-Deok Choi
    • Il ParkMauricio J. SerranoJong-Deok Choi
    • G06F9/32
    • G06F9/3806G06F9/322G06F9/3848
    • An information processing system includes a branch target buffer (BTB) comprising the last next address for the instruction and for receiving an indirect instruction address and providing a BTB predicted target; and next branch target table (NBTT) for storing potential branch targets based on a history of the branch and for providing an NBTT when the a BTB predicted target is not successful. In another embodiment a system comprising a plurality of branch prediction resources dynamically predicts the best resource appropriate for a branch. The method includes predicting a target branch for an indirect instruction address using a resource chosen among the plurality of branch prediction resources; and selectively inhibiting updates of the branch prediction resources whose prediction accuracy does not meet a threshold.
    • 信息处理系统包括分支目标缓冲器(BTB),其包括用于该指令的最后一个下一个地址,并且用于接收间接指令地址并提供BTB预测目标; 以及用于基于分支的历史存储潜在的分支目标并且当BTB预测目标不成功时提供NBTT的下一分支目标表(NBTT)。 在另一个实施例中,包括多个分支预测资源的系统动态地预测适合于分支的最佳资源。 该方法包括使用在多个分支预测资源中选择的资源来预测间接指令地址的目标分支; 并且选择性地禁止预测精度不满足阈值的分支预测资源的更新。
    • 5. 发明授权
    • Method for optimizing creation and destruction of objects in computer programs
    • 优化计算机程序中对象的创建和破坏的方法
    • US06381738B1
    • 2002-04-30
    • US09354140
    • 1999-07-16
    • Jong-Deok ChoiManish GuptaMauricio J. SerranoVugranam C. SreedharSamuel Pratt Midkiff
    • Jong-Deok ChoiManish GuptaMauricio J. SerranoVugranam C. SreedharSamuel Pratt Midkiff
    • G06F945
    • G06F8/443G06F12/023G06F12/0253
    • Information is computed about the reachability relationships among objects and pointers to enable transformation of a computer program for optimizing the creation and destruction of objects, while strictly performing the semantics of the original program. An interprocedural analysis is used to determine whether an object that is allocated on the heap during the execution of a procedure is not reachable from any global variable, parameter, or the return value of the procedure after it returns. If so, that object can be allocated on the stack frame of the procedure in which it is otherwise heap-allocated. This simplifies the memory allocation and deallocation operations, as allocation on the stack can be done more efficiently than allocation on the heap, and objects allocated on the stack frame of a procedure are automatically deallocated when the procedure returns, without incurring the overhead of garbage collection. This, in turn, leads to faster programs which use fewer computer processor resources to execute. The interprocedural analysis of the program summarizes the effect of a procedure call succinctly for different calling contexts of the procedure using a single summary representation. The method handles exceptions in the programming language, while taking advantage of the information about the visibility of variables in the exception handler. Variants of the method show how one or several of the features of the method may be performed.
    • 计算关于对象和指针之间的可达性关系的信息,以便在严格执行原始程序的语义的同时,实现用于优化对象的创建和销毁的计算机程序的转换。 过程间分析用于确定在执行过程期间在堆上分配的对象是否从任何全局变量,参数或过程返回后的返回值无法访问。 如果是这样,那么该对象可以分配给过程的堆栈帧,否则它将以堆分配。 这简化了内存分配和释放操作,因为堆栈上的分配可以比堆上的分配更有效地完成,并且当过程返回时,分配给过程的堆栈帧的对象将自动释放,而不会产生垃圾回收的开销 。 这反过来导致更快的程序,使用较少的计算机处理器资源来执行。 程序的程序间分析使用单个摘要表示简要地描述了对程序的不同调用上下文的简单过程调用的影响。 该方法处理编程语言中的异常,同时利用有关异常处理程序中变量可见性的信息。 该方法的变体显示了如何执行该方法的一个或多个特征。
    • 7. 发明授权
    • Method for optimizing locks in computer programs
    • 用于优化计算机程序中的锁的方法
    • US06530079B1
    • 2003-03-04
    • US09323989
    • 1999-06-02
    • Jong-Deok ChoiManish GuptaMauricio J. SerranoVugranam C. SreedharSamuel Pratt Midkiff
    • Jong-Deok ChoiManish GuptaMauricio J. SerranoVugranam C. SreedharSamuel Pratt Midkiff
    • G06F9445
    • G06F9/52G06F8/443
    • A method and several variants for using information about the scope of access of objects acted upon by mutual exclusion, or mutex, locks to transform a computer program by eliminating locking operations from the program or simplifying the locking operations, while strictly performing the semantics of the original program. In particular, if it can be determined by a compiler that the object locked can only be accessed by a single thread it is not necessary to perform the “acquire” or “release” part of the locking operation, and only its side effects must be performed. Likewise, if it can be determined that the side effects of a locking operation acting on a variable which is locked in multiple threads are not needed, then only the locking operation, and not the side effects, needs to be performed. This simplifies the locking operation, and leads to faster programs which use fewer computer processor resources to execute; and programs which perform fewer shared memory accesses, which in turn not only causes the optimized program, but also other programs executing on the same computing machine to execute faster. The method also describes how information about the semantics of the locking operation side effects and the information about the scope of access can also be used to eliminate performing the side effect parts of the locking operation, thereby completely eliminating the locking operation. The method also describes how to analyze the program to compute the necessary information about the scope of access. Variants of the method show how one or several of the features of the method may be performed.
    • 一种方法和几种变体,用于使用通过互斥或互斥锁进行访问的对象的范围的信息,以通过从程序中消除锁定操作或简化锁定操作来转换计算机程序,同时严格执行 原始程序。 特别是,如果可以由编译器确定锁定的对象只能由单个线程访问,则不需要执行锁定操作的“获取”或“释放”部分,只有其副作用必须是 执行。 同样,如果可以确定不需要对锁定在多个线程中的变量作用的锁定操作的副作用,则仅需要执行锁定操作而不是副作用。 这简化了锁定操作,并导致更快的程序使用更少的计算机处理器资源来执行; 以及执行较少的共享存储器访问的程序,这又不仅导致优化的程序,而且还导致在同一计算机上执行的其他程序执行得更快。 该方法还描述了关于锁定操作侧的语义的信息如何影响以及关于访问范围的信息也可以用于消除执行锁定操作的副作用部分,从而完全消除锁定操作。 该方法还描述了如何分析程序来计算有关访问范围的必要信息。 该方法的变体显示了如何执行该方法的一个或多个特征。