Multiple node/virtual input/output (I/O) server (VIOS) failure recovery in clustered partition mobility
    1.
    发明授权
    Multiple node/virtual input/output (I/O) server (VIOS) failure recovery in clustered partition mobility 有权
    多节点/虚拟输入/输出(I / O)服务器(VIOS)在集群分区移动性中的故障恢复

    公开(公告)号:US08996477B2

    公开(公告)日:2015-03-31

    申请号:US13621207

    申请日:2012-09-15

    摘要: A method utilizes cluster-awareness to effectively support a live partition mobility (LPM) event and provide recovery from node failure within a Virtual Input/Output (I/O) Server (VIOS) cluster. An LPM utility creates a monitoring thread on a first VIOS on initiation of a corresponding LPM event. The monitoring thread tracks a status of an LPM and records status information in the mobility table of a database. The LPM utility creates other monitoring threads on other VIOSes running on the (same) source server. If the first VIOS VIOS sustains one of multiple failures, the LPM utility provides notification to other functioning nodes/VIOSes. The LPM utility enables a functioning monitoring thread to update the LPM status. In particular, a last monitoring thread may perform cleanup/update operations within the database based on an indication that there are nodes on the first server that are in failed state.

    摘要翻译: 一种方法利用集群感知来有效支持实时分区移动性(LPM)事件,并提供虚拟输入/输出(IOS)服务器(VIOS)集群中的节点故障恢复。 LPM实用程序在启动相应的LPM事件时在第一个VIOS上创建一个监视线程。 监控线程跟踪LPM的状态,并将状态信息记录在数据库的移动表中。 LPM实用程序在(同一)源服务器上运行的其他VIOS上创建其他监视线程。 如果第一个VIOS VIOS维持多个故障之一,则LPM实用程序会向其他运行的节点/ VIOS提供通知。 LPM实用程序使运行的监视线程更新LPM状态。 特别地,最后一个监视线程可以基于在第一服务器上处于故障状态的节点的指示来执行数据库内的清理/更新操作。

    Standalone software performance optimizer system for hybrid systems
    2.
    发明授权
    Standalone software performance optimizer system for hybrid systems 有权
    混合系统的独立软件性能优化系统

    公开(公告)号:US08745622B2

    公开(公告)日:2014-06-03

    申请号:US12427746

    申请日:2009-04-22

    IPC分类号: G06F9/50 G06F9/48

    摘要: Standalone software performance optimizer systems for hybrid systems include a hybrid system having a plurality of processors, memory operably connected to the processors, an operating system including a dispatcher loaded into the memory, a multithreaded application read into the memory, and a static performance analysis program loaded into the memory; wherein the static performance analysis program instructs at least one processor to perform static performance analysis on each of the threads, the static performance analysis program instructs at least one processor to assign each thread to a CPU class based on the static performance analysis, and the static performance analysis program instructs at least one processor to store each thread's CPU class. An embodiment of the invention may also include the dispatcher optimally mapping threads to processors using thread CPU classes and remapping threads to processors when a runtime performance analysis classifies a thread differently from the static performance analysis.

    摘要翻译: 用于混合系统的独立软件性能优化器系统包括具有多个处理器的混合系统,可操作地连接到处理器的存储器,包括加载到存储器中的调度器,读入存储器的多线程应用的操作系统和静态性能分析程序 加载到内存中; 其中所述静态性能分析程序指示至少一个处理器对每个所述线程执行静态性能分析,所述静态性能分析程序指示至少一个处理器基于所述静态性能分析将每个线程分配给CPU类,并且所述静态 性能分析程序指示至少一个处理器存储每个线程的CPU类。 本发明的实施例还可以包括调度器,当运行时性能分析将线程与静态性能分析不同的方式进行分类时,线程CPU类将线程最优地映射到处理器并将线程重新映射到处理器。

    Symmetric multi-processor lock tracing
    3.
    发明授权
    Symmetric multi-processor lock tracing 失效
    对称多处理器锁跟踪

    公开(公告)号:US08453122B2

    公开(公告)日:2013-05-28

    申请号:US12616005

    申请日:2009-11-10

    IPC分类号: G06F9/44

    摘要: A symmetric multi-processor SMP system includes an SMP processor and operating system OS software that performs automatic SMP lock tracing analysis on an executing application program. System administrators, users or other entities initiate an automatic SMP lock tracing analysis. A particular thread of the executing application program requests and obtains a lock for a memory address pointer. A subsequent thread requests the same memory address pointer lock prior to the particular thread release of that lock. The subsequent thread begins to spin waiting for the release of that address pointer lock. When the subsequent thread reaches a predetermined maximum amount of wait time, MAXSPIN, a lock testing tool in the kernel of the OS detects the MAXSPIN condition. The OS performs a test to determine if the subsequent thread and address pointer lock meet the list of criteria set during initiation of the automatic lock trace method. The OS initiates an SMP lock trace capture automatically if all criteria or the arguments of the lock trace method are met. System administrators, software programmers, users or other entities interpret the results of the SMP lock tracing method that the OS stores in a trace table to determine performance improvements for the executing application program.

    摘要翻译: 对称多处理器SMP系统包括一个SMP处理器和操作系统OS软件,对执行的应用程序执行自动SMP锁跟踪分析。 系统管理员,用户或其他实体启动自动SMP锁跟踪分析。 执行应用程序的特定线程请求并获得用于存储器地址指针的锁。 随后的线程在该锁的特定线程释放之前请求相同的内存地址指针锁。 随后的线程开始旋转等待释放该地址指针锁。 当后续线程达到预定的最大等待时间时,MAXSPIN,OS内核中的锁定测试工具将检测MAXSPIN条件。 OS执行测试以确定后续线程和地址指针锁是否符合在启动自动锁定跟踪方法期间设置的条件列表。 如果符合锁跟踪方法的所有条件或参数,OS将自动启动SMP锁跟踪捕获。 系统管理员,软件程序员,用户或其他实体解释OS存储在跟踪表中的SMP锁跟踪方法的结果,以确定执行的应用程序的性能改进。

    Programmable data prefetching
    4.
    发明授权
    Programmable data prefetching 有权
    可编程数据预取

    公开(公告)号:US07640400B2

    公开(公告)日:2009-12-29

    申请号:US11733352

    申请日:2007-04-10

    IPC分类号: G06F12/00

    CPC分类号: G06F12/0862 G06F2212/6028

    摘要: A method, computer program product, and system are provided for prefetching data into a cache memory. As a program is executed an object identifier is obtained of a first object of the program. A lookup operation is performed on a data structure to determine if the object identifier is present in the data structure. Responsive to the object identifier being present in the data structure, a referenced object identifier is retrieved that is referenced by the object identifier. Then, the data associated with the referenced object identifier is prefetched from main memory into the cache memory.

    摘要翻译: 提供了一种用于将数据预取到高速缓冲存储器中的方法,计算机程序产品和系统。 当执行程序时,获得程序的第一对象的对象标识符。 对数据结构执行查找操作以确定对象标识符是否存在于数据结构中。 响应于数据结构中存在的对象标识符,检索由对象标识符引用的引用对象标识符。 然后,与引用的对象标识符相关联的数据从主存储器预取到高速缓冲存储器中。

    Method and apparatus for aging data in a cache
    6.
    发明授权
    Method and apparatus for aging data in a cache 有权
    用于在缓存中老化数据的方法和装置

    公开(公告)号:US07337276B2

    公开(公告)日:2008-02-26

    申请号:US11201642

    申请日:2005-08-11

    IPC分类号: G06F12/00

    CPC分类号: G06F12/0897 G06F12/0891

    摘要: A computer implemented method, apparatus, and computer usable code for managing cache data. A partition identifier is associated with a cache entry in a cache, wherein the partition identifier identifies a last partition accessing the cache entry. The partition identifier associated with the cache entry is compared with a previous partition identifier located in a processor register in response to the cache entry being moved into a lower level cache relative to the cache. The cache entry is marked if the partition identifier associated with the cache entry matches the previous partition identifier located in the processor register to form a marked cache entry, wherein the marked cache entry is aged at a slower rate relative to an unmarked cache entry.

    摘要翻译: 计算机实现的方法,装置和用于管理高速缓存数据的计算机可用代码。 分区标识符与高速缓存中的高速缓存条目相关联,其中分区标识符标识访问高速缓存条目的最后一个分区。 与高速缓存条目相关联的分区标识符与位于处理器寄存器中的先前分区标识符进行比较,以响应于高速缓存条目相对于高速缓存移动到较低级高速缓存。 如果与高速缓存条目相关联的分区标识与位于处理器寄存器中的先前分区标识符相匹配以形成标记的高速缓存条目,则标记高速缓存条目,其中标记的高速缓存条目相对于未标记的高速缓存条目以较慢的速率进行老化。

    System and method of arbitrating access of threads to shared resources within a data processing system
    9.
    发明授权
    System and method of arbitrating access of threads to shared resources within a data processing system 有权
    线程访问数据处理系统内共享资源的系统和方法

    公开(公告)号:US08566827B2

    公开(公告)日:2013-10-22

    申请号:US11260611

    申请日:2005-10-27

    IPC分类号: G06F9/46

    CPC分类号: G06F9/526 G06F9/485

    摘要: A first collection of threads which represent a collection of tasks to be executed by at least one of a collection of processing units is monitored. In response to detecting a request by a thread among the first collection of threads to access a shared resource locked by a second thread among the collection of threads, the first thread attempts to access a list associated with the shared resource. The list orders at least one thread among the collection of threads by priority of access to the shared resource. In response to determining the list is locked by a third thread among the collection of threads, the first thread is placed into a sleep state to be reawakened in a fixed period of time. In response to determining that at least one of the collection of processing units has entered into an idle state, the first thread is awakened from the sleep state before the fixed period of time has expired. Also, in response to awakening the first thread from the sleep state, the first thread is assigned to at least one of the collection of processing units and the first thread retries its attempt to access the list.

    摘要翻译: 监视表示要由处理单元的集合中的至少一个执行的任务的集合的线程的第一集合。 响应于在线程的第一集合中检测到线程的请求以访问由线程集合中的第二线程锁定的共享资源的请求,则第一线程尝试访问与共享资源相关联的列表。 该列表通过访问共享资源的优先级来排序线程集合中的至少一个线程。 响应于确定列表被线程集合中的第三线程锁定,第一线程被置于休眠状态以在固定的时间段内被重新唤醒。 响应于确定处理单元的集合中的至少一个已经进入空闲状态,在固定时间段到期之前,第一线程从睡眠状态唤醒。 而且,响应于将第一线程从睡眠状态唤醒,第一线程被分配给处理单元集合中的​​至少一个,并且第一线程重试其访问列表的尝试。