会员体验
专利管家(专利管理)
工作空间(专利管理)
风险监控(情报监控)
数据分析(专利分析)
侵权分析(诉讼无效)
联系我们
交流群
官方交流:
QQ群: 891211   
微信请扫码    >>>
现在联系顾问~
热词
    • 21. 发明授权
    • Method and apparatus for benchmarking byte code sequences
    • 用于基准字节码序列的方法和装置
    • US6118940A
    • 2000-09-12
    • US978513
    • 1997-11-25
    • William Preston Alexander, IIIRobert Francis BerryRiaz HussainPaul Jerome KilpatrickRobert John Urquhart
    • William Preston Alexander, IIIRobert Francis BerryRiaz HussainPaul Jerome KilpatrickRobert John Urquhart
    • G06F11/34G06F9/45
    • G06F11/3428G06F11/3476
    • Method and apparatus for creating benchmark programs for the analysis of java virtual machine implementations are implemented. Java applications and applets are compiled into an intermediate code referred to as byte code. The Java byte code forms the machine code for the Java Virtual Machine. The Java Virtual Machine running on top of a hardware platform translates the byte code into native machine code for execution on the hardware platform on which the Java Virtual Machine is running. The performance of a Java Virtual Machine is improved by the use of a so-called "just in time" (JIT) compiler that translates commonly occurring sequences of bytes codes in the native instruction sequences which are then stored for later execution. Critical to the performance of the JIT is the ability of the JIT to optimally compile for the most commonly occurring sequences of byte codes. The method and apparatus for creating benchmark programs provides a means for performance measurements with respect to such sequences.
    • 实现用于创建用于分析java虚拟机实现的基准程序的方法和装置。 Java应用程序和小程序被编译成称为字节码的中间代码。 Java字节代码形成Java虚拟机的机器代码。 运行在硬件平台上的Java虚拟机将字节码转换为本地机器代码,以便在运行Java虚拟机的硬件平台上执行。 通过使用所谓的“即时”(JIT)编译器来改进Java虚拟机的性能,该编译器将本地指令序列中常见的字节码序列翻译成随后的存储以备以后执行。 对JIT的性能至关重要的是JIT对最常发生的字节码序列进行最佳编译的能力。 用于创建基准程序的方法和装置提供了相对于这种序列的性能测量的手段。
    • 23. 发明授权
    • Process and system for Java virtual method invocation
    • Java虚拟方法调用的进程和系统
    • US06507946B2
    • 2003-01-14
    • US09330634
    • 1999-06-11
    • William Preston Alexander, IIIWeiming Gu
    • William Preston Alexander, IIIWeiming Gu
    • G06F945
    • G06F9/449
    • A process and system for optimizing an invocation of a method is provided. A determination is made to compile a calling method, and a call to a callee method is detected within the first method. The callee method may be a non-final, virtual method, and a determination may be made that the callee method has not been previously overridden. The callee method is then inlined within the first method. In addition, no conditional statements are inserted into the calling method along with the inlined method. The determination to compile and optimize these methods may be made by a just-in-time compiler, and if the methods are Java methods, then a Java just-in-time compiler performs the optimization process. If a determination is made to load a class that contains a method that overrides the callee method, then the calling method is recompiled or patched.
    • 提供了一种用于优化方法调用的过程和系统。 确定编译调用方法,并在第一种方法中检测到被叫方法的调用。 被叫方法可以是非最终的虚拟方法,并且可以确定被叫方法尚未被预先覆盖。 然后在第一种方法中对被叫方法进行内联。 另外,没有条件语句与内联方法一起插入到调用方法中。 编译和优化这些方法的决心可能由一个即时编译器来完成,如果这些方法是Java方法,那么一个Java即时编译器就可以执行优化过程。 如果确定加载包含覆盖被调用方法的方法的类,则重新编译或修补调用方法。
    • 24. 发明授权
    • System and method for providing trace information data reduction
    • 提供跟踪信息数据缩减的系统和方法
    • US6055492A
    • 2000-04-25
    • US989725
    • 1997-12-12
    • William Preston Alexander, IIIRobert Francis BerryRobert John Urguhart
    • William Preston Alexander, IIIRobert Francis BerryRobert John Urguhart
    • G06F11/34G06F11/00
    • G06F11/348G06F11/3466
    • The present invention is a system, method, and computer readable medium for representing program event trace information in a way which is very compact and efficient, and yet supports a wide variety of queries regarding system performance. The tracing and reduction of the present invention may be dynamic, in which case information is obtained and added to the trace representation in real-time. Alternately, the tracing and reduction may be static, in which case a trace text file or binary file is obtained from a trace buffer, and the reduction takes place using the trace file as input. The trace information, whether obtained statically or dynamically, is represented as a tree of events. The present invention may be used to present many types of trace information in a compact manner which supports performance queries. For example, the tree structure of the present invention may reflect the call stacks observed during a program's execution, and statistics regarding the time spent in the various routines and call stacks may be stored at each node of the tree. The tree structure may be used to store performance information regarding Java bytecodes executed, memory allocated, or other types of performance information. The trace information is presented in a manner which is compact and efficient, and may be used to quickly and easily answer a variety of performance queries. Further, a system may be traced for long periods of time without losing useful performance information due to a limited buffer space.
    • 本发明是用于以非常紧凑和有效的方式表示节目事件跟踪信息的系统,方法和计算机可读介质,并且还支持关于系统性能的各种查询。 本发明的追踪和缩减可以是动态的,在这种情况下,实时获得信息并添加到跟踪表示中。 或者,跟踪和缩减可以是静态的,在这种情况下,从跟踪缓冲区获取跟踪文本文件或二进制文件,并且使用跟踪文件作为输入进行缩小。 跟踪信息(无论是静态获取还是动态获取)都表示为事件树。 本发明可以用于呈现支持性能查询的紧凑方式的许多类型的跟踪信息。 例如,本发明的树结构可以反映在程序执行期间观察到的调用堆栈,并且关于在各种例程和调用堆栈中花费的时间的统计信息可以存储在树的每个节点处。 树结构可以用于存储关于执行的Java字节码,分配的存储器或其他类型的性能信息的性能信息。 跟踪信息以紧凑和高效的方式呈现,并且可以用于快速和容易地回答各种性能查询。 此外,系统可以被追踪长时间,而不会由于有限的缓冲区空间而丢失有用的性能信息。
    • 26. 发明授权
    • Method and apparatus for executing a binary search in a data cache
    • 用于在数据高速缓存中执行二进制搜索的方法和装置
    • US5794243A
    • 1998-08-11
    • US570041
    • 1995-12-11
    • William Preston Alexander, IIIGeoffrey Owen BlandyRobert J. Urquhart
    • William Preston Alexander, IIIGeoffrey Owen BlandyRobert J. Urquhart
    • G06F12/08G06F17/30
    • G06F12/0864Y10S707/99953
    • Minimizing data cache misses when performing binary searches. Values in an array to be searched are stored as subsets, clustered to minimize the number of cache misses. A first set of auxiliary values is created consisting of a subset of the first-searched values that fit on one cache line. Subsequent sets of values are then created consisting of one cache line full of values for each value in the first set within one cache line. A binary search is conducted by first searching SET ONE, for the largest array value that is less-than or equal to the search key, or alternatively the smallest array value greater than or equal to the search key. The search of SET ONE, is followed by a search of any subsequent sets of values, with the binary search concluding by testing values within one cache line in the subsequent sets of values until the desired value is found.
    • 执行二进制搜索时,最大限度地减少数据高速缓存未命中。 要搜索的数组中的值作为子集存储,聚类以最小化高速缓存未命中的数量。 创建第一组辅助值,其由适合于一个高速缓存行上的第一搜索值的子集组成。 然后创建随后的值集合,由一个高速缓存行组成,该高速缓存行中包含一个高速缓存行中第一个集合中每个值的值。 通过首先搜索SET ONE,对于小于或等于搜索关键字的最大数组值,或者大于或等于搜索关键字的最小数组值,进行二进制搜索。 搜索SET ONE之后,随后搜索任何后续的值集合,二进制搜索通过在随后的一组值中的一个高速缓存行内测试值直到找到所需的值来结束。