会员体验
专利管家(专利管理)
工作空间(专利管理)
风险监控(情报监控)
数据分析(专利分析)
侵权分析(诉讼无效)
联系我们
交流群
官方交流:
QQ群: 891211   
微信请扫码    >>>
现在联系顾问~
热词
    • 1. 发明授权
    • System and method for multi-phased performance profiling of
single-processor and multi-processor systems
    • 单处理器和多处理器系统的多阶段性能分析的系统和方法
    • US5896538A
    • 1999-04-20
    • US753570
    • 1996-11-26
    • Geoffrey Owen BlandyMaher Afif SabaRobert John Urquhart
    • Geoffrey Owen BlandyMaher Afif SabaRobert John Urquhart
    • G06F11/34G06F9/45
    • G06F11/3409G06F11/3466G06F2201/81G06F2201/865G06F2201/88
    • The present invention is directed to a system and method for monitoring system performance by using a multi-phase approach. The first phase, referred to as the burst counting phase, utilizes a set of counters to identify calls and returns which are heavily used. In the second phase, referred to as the instrumentation phase, the performance characteristics of the "hot spots" are monitored through the use of hardware counters. In a symmetrical multi-processor embodiment, the performance profiler is active on all processors at the same time. Frequently executed code paths are identified in a manner that is minimally-intrusive to the system as a whole, and uses relatively little storage. The user may specify a threshold count, after which hardware monitoring begins, and the user may specify the type of hardware performance data collected. After both phases of the performance monitor are run, the data can be presented to the user in a variety of ways.
    • 本发明涉及一种通过使用多相方法监视系统性能的系统和方法。 被称为突发计数阶段的第一阶段利用一组计数器来识别大量使用的呼叫和返回。 在第二阶段,称为仪器仪表阶段,通过使用硬件计数器监控“热点”的性能特征。 在对称的多处理器实施例中,性能分析器在所有处理器上同时处于活动状态。 经常执行的代码路径以对整个系统进行最小侵入的方式进行标识,并且使用相对较少的存储。 用户可以指定阈值计数,之后硬件监视开始,用户可以指定收集的硬件性能数据的类型。 在执行性能监视器的两个阶段之后,数据可以以各种方式呈现给用户。
    • 3. 发明授权
    • System and method for instruction burst performance profiling for
single-processor and multi-processor systems
    • 用于单处理器和多处理器系统的指令突发性能分析的系统和方法
    • US6006032A
    • 1999-12-21
    • US154897
    • 1998-09-17
    • Geoffrey Owen BlandyMaher Afif Saba
    • Geoffrey Owen BlandyMaher Afif Saba
    • G06F11/34G06F9/445
    • G06F11/3466G06F11/3409G06F2201/865G06F2201/88
    • The present invention is directed to a system and method for monitoring system performance by sampling instructions in a burst mode, rather than once per interrupt. A burst mode may be configurable for a number of instructions per burst. Furthermore, these instructions are counted using a dynamic tree structure, rather than a log, which results in substantial savings in storage. The present invention requires minimal changes to the operating system, and no changes to application code that is being monitored. No recompilation is necessary to use the present invention. In addition, the present invention provides a system and method for monitoring code segments that are disabled for interrupts, and thus are difficult, if not impossible, to monitor using prior art performance tools. In a multi-processor system, the burst mode is active on all processors at the same time, and each processor has its own dynamic tree structure.
    • 本发明涉及一种用于通过以突发模式采样指令而不是每次中断一次来监视系统性能的系统和方法。 可以针对每个突发的多个指令来配置突发模式。 此外,这些指令使用动态树结构进行计数,而不是日志,从而大大节省存储空间。 本发明需要对操作系统的最小的改变,并且不改变正被监视的应用程序代码。 不需要重新编译来使用本发明。 此外,本发明提供了一种用于监视对于中断被禁用的代码段的系统和方法,并且因此难以(如果不是不可能)使用现有技术的性能工具进行监视。 在多处理器系统中,突发模式在所有处理器上同时处于活动状态,每个处理器都有自己的动态树结构。
    • 4. 发明授权
    • Code instrumentation system with non intrusive means and cache memory
optimization for dynamic monitoring of code segments
    • 具有非侵入性的代码仪表系统和用于代码段动态监控的高速缓存存储器优化
    • US5940618A
    • 1999-08-17
    • US935166
    • 1997-09-22
    • Geoffrey Owen BlandyMaher Afif SabaRobert J. Urquhart
    • Geoffrey Owen BlandyMaher Afif SabaRobert J. Urquhart
    • G06F11/34G06F9/44
    • G06F11/3461G06F11/3466G06F11/3471
    • The present invention is directed to a system and method for monitoring performance in an information handling system in a minimally intrusive manner. The method of the present invention includes a collection phase, a placement phase, and an instrumentation phase. During the collection phase, a workload (i.e. code segment) is traced, and instruction and data accesses are determined. During the placement phase, the trace data is passed to a cache simulator. The cache simulator uses the trace data, along with hardware and instrumentation characteristics, to determine an optimal placement for instrumentation code and data. If the desired conflict level is not attainable, the best possible placement is found by executing the code to be monitored with a variety of instrumentation code and data placements until the least intrusive placement is found. The best possible placement is then used during the instrumentation phase to actually execute the instrumented code.
    • 本发明涉及一种用于以最小程度的侵入方式监视信息处理系统中的性能的系统和方法。 本发明的方法包括收集阶段,放置阶段和仪器阶段。 在收集阶段,跟踪工作负载(即代码段),并确定指令和数据访问。 在放置阶段,跟踪数据被传递到高速缓存模拟器。 缓存模拟器使用跟踪数据以及硬件和仪器特性来确定仪器代码和数据的最佳布局。 如果不能实现所需的冲突级别,则可以通过执行使用各种仪器代码和数据放置进行监视的代码来找到最佳的布局,直到找到最小的插入位置。 然后在检测阶段使用最佳的放置位置来实际执行检测的代码。
    • 6. 发明授权
    • Method and apparatus for partial just in time compiling in a data processing system
    • 在数据处理系统中部分即时编译的方法和装置
    • US06295642B1
    • 2001-09-25
    • US09303106
    • 1999-04-29
    • Geoffrey Owen Blandy
    • Geoffrey Owen Blandy
    • G06F945
    • G06F9/45516
    • A method and apparatus for just in time compilation of Java bytecode methods and provides a means to compile only the paths that are actually executed. An iterative process is employed whereby bytecodes are compiled up to the next conditional flow bytecode or return, the compiled code is executed and any attempt to enter uncompiled paths of the method is monitored. When the executing thread attempts to execute an uncompiled path control is returned to the compiler and the process is repeated starting with the first bytecode of that path. The process continues until all paths have been compiled or until it is deemed likely that all the most commonly executed paths have been compiled. At that point final optimizations and housekeeping are performed.
    • 一种用于及时编译Java字节码方法的方法和装置,并提供了仅编译实际执行的路径的方法。 使用迭代过程,其中字节码被编译到下一个条件流字节码或返回,编译代码被执行,并且任何尝试输入该方法的未编译路径被监视。 当执行的线程尝试执行未编译的路径控制时,返回给编译器,并从该路径的第一个字节码开始重复进程。 该过程一直持续到所有的路径都已被编译之前,或者直到被认为可能是所有最常执行的路径都被编译为止。 在这一点上,执行最终优化和管理。
    • 8. 发明授权
    • Free item distribution among multiple free lists during garbage collection for more efficient object allocation
    • 在垃圾收集期间,在多个空闲列表之间分配免费项目以实现更有效的对象分配
    • US07461220B2
    • 2008-12-02
    • US12032739
    • 2008-02-18
    • Geoffrey Owen Blandy
    • Geoffrey Owen Blandy
    • G06F12/00
    • G06F12/0253G06F12/023Y10S707/99953Y10S707/99957
    • A garbage collector predicts future allocation requirements and then distributes free items to multiple subpool free lists and a TLH free list during the sweep phase according to the future allocation requirements. The sizes of subpools and number of free items in subpools are predicted as the most likely to match future allocation requests. Once a subpool free list is filled with the number of free items needed according to the future allocation requirements, any additional free items designated for the subpool free list can be divided into multiple TLH sized free items and placed on the TLH free list. Allocation threads are enabled to acquire free items from the TLH free list and to replenish a current TLH without acquiring heap lock.
    • 垃圾收集器预测未来的分配要求,然后根据未来的分配要求,在扫描阶段将免费项目分配到多个子空闲列表和TLH空闲列表。 subpools的大小和子项目中的免费项目数量被预测为最有可能匹配未来分配请求。 根据未来的分配要求,一旦子空闲免费列表中填写了所需的免费项目数,则可以将指定为子空闲列表的任何其他免费项目分为多个TLH大小的免费项目,并放在TLH免费列表中。 分配线程可以从TLH空闲列表中获取免费项目,并且在不获取堆锁的情况下补充当前的TLH。
    • 9. 发明授权
    • System and method for compacting a computer system heap
    • 用于压缩计算机系统堆的系统和方法
    • US07010555B2
    • 2006-03-07
    • US10273642
    • 2002-10-17
    • Geoffrey Owen BlandyRobert Tod DimpseyKean G. KuiperMatthew Francis Peters
    • Geoffrey Owen BlandyRobert Tod DimpseyKean G. KuiperMatthew Francis Peters
    • G06F17/30
    • G06F12/0269Y10S707/99942Y10S707/99943Y10S707/99945Y10S707/99953Y10S707/99957
    • A system and method for incrementally compacting a computer system heap is presented. A heap, such as a garbage-collected heap in a Java environment, is divided into logical regions. When the heap is becoming fragmented, an incremental compaction cycle is commenced. During a first time period, the first region of the heap is compacted, with subsequent regions being compacted during subsequent time periods. A time period commences when a garbage collection event occurs. In a multiprocessor environment the regions can be divided into a number of sections which are each compacted using a different processor. One or more break tables are constructed indicating how far contiguous groups of moveable objects should be moved to better group objects and eliminate interspersed free spaces. References throughout the heap that point to objects within the compacted region are then adjusted so that the references point to the new object locations.
    • 提出了一种用于逐步压缩计算机系统堆的系统和方法。 诸如Java环境中垃圾收集堆的堆被分成逻辑区域。 当堆成分碎片时,开始增量压缩循环。 在第一时间段期间,堆的第一区域被压实,随后的区域在随后的时间段内被压实。 发生垃圾回收事件时,时间段开始。 在多处理器环境中,区域可以分为多个部分,每个部分使用不同的处理器进行压缩。 构建一个或多个中断表,指示可移动对象的多少距离移动到更好的组对象并消除散布的空闲空间。 然后对整个堆中指向压实区域内的对象的引用进行调整,以使引用指向新的对象位置。