会员体验
专利管家(专利管理)
工作空间(专利管理)
风险监控(情报监控)
数据分析(专利分析)
侵权分析(诉讼无效)
联系我们
交流群
官方交流:
QQ群: 891211   
微信请扫码    >>>
现在联系顾问~
热词
    • 3. 发明授权
    • Software controlled pre-execution in a multithreaded processor
    • 软件控制在多线程处理器中的预执行
    • US07343602B2
    • 2008-03-11
    • US10029699
    • 2001-12-18
    • Chi-Keung LukJoel S. Emer
    • Chi-Keung LukJoel S. Emer
    • G06F9/46G06F9/44G06F12/00
    • G06F9/4843G06F8/4442G06F9/383G06F9/3834G06F9/3842G06F9/3851G06F9/3861G06F11/141G06F11/1497
    • A processor capable of running multiple threads runs a program in one thread (called the “main” thread) and at least a portion of the same program in another thread (called the “pre-execution” thread). The program in the main thread includes instructions that cause the processor to start and stop pre-execution threads and direct the processor as to which part of the program is to be run through the pre-execution threads. Preferably, such instructions cause the pre-execution thread to run ahead of the main thread in program order. In that way, any cache miss conditions that are encountered by the pre-execution thread are resolved before the main thread requires that same data. Therefore, the main thread should encounter few or no cache miss conditions.
    • 能够运行多个线程的处理器在一个线程(称为“主”线程)中运行程序,并在另一个线程(称为“预执行”线程)中运行相同程序的至少一部分。 主线程中的程序包括使处理器启动和停止预执行线程并将处理器指示为通过预执行线程运行程序的哪些部分的指令。 优选地,这样的指令使得预执行线程以程序顺序在主线程之前运行。 以这种方式,预执行线程遇到的任何高速缓存未命中情况都在主线程需要相同数据之前解决。 因此,主线程应该遇到很少或没有缓存未命中的条件。
    • 5. 发明授权
    • Methods and apparatus for stride profiling a software application
    • 软件应用程序分析的方法和装置
    • US07181723B2
    • 2007-02-20
    • US10446004
    • 2003-05-27
    • Chi-Keung LukGeoff Lowney
    • Chi-Keung LukGeoff Lowney
    • G06F9/45
    • G06F8/4442
    • Methods and an apparatus for stride profiling a software application are disclosed. An example system uses a hardware performance counter to report instruction addresses and data addresses associated with memory access instructions triggered by some event, such as a data cache miss. When the same instruction address is associated with more than one data address, the difference between the two data addresses is recorded. When two or more of these data address differences are recorded for the same instruction, the system determines a stride associated with the instruction to be the greatest common divisor of the two or more differences. This stride may be used by a compiler to optimize data cache prefetching. In addition, any overhead associated with monitoring addresses of data cache misses may be reduced by cycling between an inspection phase and a skipping phase. More data cache misses are monitored during the inspection phase than during the skipping phase.
    • 公开了用于跨越软件应用程序的方法和装置。 示例系统使用硬件性能计数器来报告与诸如数据高速缓存未命中的某些事件触发的存储器访问指令相关联的指令地址和数据地址。 当相同的指令地址与多个数据地址相关联时,记录两个数据地址之间的差异。 当对于相同的指令记录这些数据地址差异中的两个或更多个时,系统确定与指令相关联的步长是两个或更多个差异的最大公约数。 编译器可以使用这一步来优化数据缓存预取。 此外,通过在检查阶段和跳过阶段之间的循环可以减少与监视数据高速缓存未命中地址相关联的任何开销。 在检查阶段监视更多的数据高速缓存未命中,而不是在跳过阶段。