OPPORTUNISTIC USE OF LOCK MECHANISM TO REDUCE WAITING TIME OF THREADS TO ACCESS A SHARED RESOURCE
    1.
    发明申请
    OPPORTUNISTIC USE OF LOCK MECHANISM TO REDUCE WAITING TIME OF THREADS TO ACCESS A SHARED RESOURCE 失效
    锁定机制的机会性使用,以减少等待时间来获取共享资源

    公开(公告)号:US20110161539A1

    公开(公告)日:2011-06-30

    申请号:US12651294

    申请日:2009-12-31

    IPC分类号: G06F12/00 G06F9/46

    CPC分类号: G06F9/526

    摘要: Embodiments of the invention provide a method, apparatus and computer program product for enabling a thread to acquire a lock associated with a shared resource, when a locking mechanism is used therewith, wherein each embodiment reduces waiting time and enhances efficiency in using the shared resource. One embodiment is associated with a plurality of processors, which includes two or more processors that each provides a specified thread to access a shared resource. The shared resource can only be accessed by one thread at a given time, a locking mechanism enables a first one of the specified threads to access the shared resource while each of the other specified threads is retained in a waiting queue, and a second one of the specified threads occupies a position of highest priority in the queue. The method includes the step of identifying a time period between a time when the first specified thread releases access to the shared resource, and a later time when the second specified thread becomes enabled to access the shared resource. Responsive to an additional thread that is not one of the specified threads being provided by a processor to access the shared resource during the identified time period, it is determined whether a first prespecified criterion pertaining to the specified threads retained in the queue has been met. Responsive to the first criterion being met, the method determines whether a second prespecified criterion has been met, wherein the second criterion is that the number of specified threads in the queue has not decreased since a specified prior time. Responsive to the second criterion being met, the method then decides whether to enable the additional thread to access the shared resource before the second specified thread accesses the resource.

    摘要翻译: 本发明的实施例提供一种方法,装置和计算机程序产品,用于当使用锁定机构时使线程能够获取与共享资源相关联的锁,其中每个实施例减少等待时间并提高使用共享资源的效率。 一个实施例与多个处理器相关联,处理器包括两个或多个处理器,每个处理器提供指定的线程以访问共享资源。 共享资源只能在给定时间由一个线程访问,锁定机制使得指定线程中的第一个访问共享资源,而每个其他指定的线程保留在等待队列中,第二个 指定的线程占据队列中最高优先级的位置。 该方法包括识别在第一指定线程释放对共享资源的访问的时间之间的时间段以及第二指定线程变得能够访问共享资源的稍后时间的步骤。 响应于在识别的时间段期间处理器不提供访问共享资源的指定线程中的一个的附加线程,确定是否已经满足与保留在队列中的指定线程有关的第一预先指定的准则。 响应于满足的第一标准,该方法确定是否已经满足第二预定标准,其中第二标准是指定的先前时间之后队列中的指定线程的数量没有减少。 响应于满足的第二准则,该方法然后决定在第二指定线程访问资源之前是否允许附加线程访问共享资源。

    Lock mechanism to reduce waiting of threads to access a shared resource by selectively granting access to a thread before an enqueued highest priority thread
    2.
    发明授权
    Lock mechanism to reduce waiting of threads to access a shared resource by selectively granting access to a thread before an enqueued highest priority thread 失效
    锁定机制,以减少线程访问共享资源的等待,方法是选择性地授予在入队优先级线程之前访问线程

    公开(公告)号:US08607239B2

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

    申请号:US12651294

    申请日:2009-12-31

    IPC分类号: G06F9/46 G06F12/00

    CPC分类号: G06F9/526

    摘要: Two or more processors that each provides a specified thread to access a shared resource that can only be accessed by one thread at a given time. A locking mechanism enables one of the threads to access the shared resource while other threads are retained in a waiting queue. Responsive to an additional thread that is not one of the specified threads being provided access the shared resource during an identified time period, and responsive to a first criterion an a second criterion being met, the additional thread accesses the shared resource before the other threads in the waiting queue.

    摘要翻译: 两个或多个处理器每个提供指定线程以访问只能在给定时间由一个线程访问的共享资源。 锁定机制使其中一个线程可以访问共享资源,而其他线程保留在等待队列中。 响应于不是所提供的指定线程之一的附加线程在标识的时间段期间访问共享资源,并且响应于第一准则满足第二准则,附加线程在其他线程之前访问共享资源 等待队列。

    Heuristic based affinity dispatching for shared processor partition dispatching
    3.
    发明授权
    Heuristic based affinity dispatching for shared processor partition dispatching 有权
    用于共享处理器分区调度的基于启发式的亲和性调度

    公开(公告)号:US07865895B2

    公开(公告)日:2011-01-04

    申请号:US11419019

    申请日:2006-05-18

    IPC分类号: G06F9/46 G06F12/00

    摘要: A mechanism is provided for determining whether to use cache affinity as a criterion for software thread dispatching in a shared processor logical partitioning data processing system. The server firmware may store data about when and/or how often logical processors are dispatched. Given these data, the operating system may collect metrics. Using the logical processor metrics, the operating system may determine whether cache affinity is likely to provide a significant performance benefit relative to the cost of dispatching a particular logical processor to the operating system.

    摘要翻译: 提供了一种用于确定是否使用高速缓存亲和力作为在共享处理器逻辑分区数据处理系统中的软件线程调度的标准的机制。 服务器固件可以存储关于何时和/或多少逻辑处理器被调度的数据。 鉴于这些数据,操作系统可能会收集指标。 使用逻辑处理器度量,操作系统可以确定高速缓存关联性是否可能相对于将特定逻辑处理器调度到操作系统的成本提供显着的性能优点。

    MECHANISM TO CONTROL HARDWARE MULTI-THREADED PRIORITY BY SYSTEM CALL
    4.
    发明申请
    MECHANISM TO CONTROL HARDWARE MULTI-THREADED PRIORITY BY SYSTEM CALL 有权
    通过系统呼叫控制硬件多线程优先级的机制

    公开(公告)号:US20100115522A1

    公开(公告)日:2010-05-06

    申请号:US12261275

    申请日:2008-10-30

    IPC分类号: G06F9/46 G06F15/00

    摘要: A method, a system and a computer program product for controlling the hardware priority of hardware threads in a data processing system. A Thread Priority Control (TPC) utility assigns a primary level and one or more secondary levels of hardware priority to a hardware thread. When a hardware thread initiates execution in the absence of a system call, the TPC utility enables execution based on the primary level. When the hardware thread initiates execution within a system call, the TPC utility dynamically adjusts execution from the primary level to the secondary level associated with the system call. The TPC utility adjusts hardware priority levels in order to: (a) raise the hardware priority of one hardware thread relative to another; (b) reduce energy consumed by the hardware thread; and (c) fulfill requirements of time critical hardware sections.

    摘要翻译: 一种用于控制数据处理系统中硬件线程的硬件优先级的方法,系统和计算机程序产品。 线程优先级控制(TPC)实用程序为硬件线程分配一级和一级以上的硬件优先级。 当硬件线程在没有系统调用的情况下启动执行时,TPC实用程序将启用基于主级别的执行。 当硬件线程在系统调用中启动执行时,TPC实用程序会将执行从主级别动态调整到与系统调用相关联的辅助级别。 TPC实用程序调整硬件优先级,以便:(a)提高一个硬件线程相对于另一个的硬件优先级; (b)减少硬件螺纹消耗的能量; 和(c)满足时间关键硬件部分的要求。

    Partition redispatching using page tracking
    5.
    发明授权
    Partition redispatching using page tracking 有权
    使用页面跟踪进行分区重新分配

    公开(公告)号:US08930670B2

    公开(公告)日:2015-01-06

    申请号:US11936456

    申请日:2007-11-07

    IPC分类号: G06F12/06 G06F12/10

    CPC分类号: G06F12/1009 G06F2212/401

    摘要: Illustrated embodiments provide a computer implemented method and data processing system for redispatching a partition by tracking a set of memory pages, belonging to the dispatched partition. In one illustrative embodiment the computer implemented method comprises finding an effective page address to real page address mapping for a page address miss in response to determining the page address miss in a page addressing buffer, and saving the mapping as an entry in an array. The computer implemented method creates a preserved array from the array in response to determining the dispatched partition to be an undispatched partition. The computer implemented method further analyzes of the preserved array for a compressed page in response to determining the undispatched partition is now redispatched, and decompresses the compressed page prior to the partition being redispatched.

    摘要翻译: 说明的实施例提供了一种计算机实现的方法和数据处理系统,用于通过跟踪属于所分派的分区的一组存储器页来重新分配分区。 在一个说明性实施例中,计算机实现的方法包括响应于确定页寻址缓冲器中的页面地址未命中而找到页面地址未命中的实际页面地址映射的有效页面地址,并将映射保存为阵列中的条目。 计算机实现的方法从数组中创建一个保留的数组,以响应将分派的分区确定为未分配的分区。 计算机实现的方法进一步分析压缩页面的保留数组,以响应确定未分配的分区现在被重新分配,并在重新分配分区之前解压缩压缩页面。

    Optimization of thread wake up for shared processor partitions
    7.
    发明授权
    Optimization of thread wake up for shared processor partitions 有权
    为共享处理器分区优化线程唤醒

    公开(公告)号:US08156498B2

    公开(公告)日:2012-04-10

    申请号:US12130064

    申请日:2008-05-30

    IPC分类号: G06F9/46

    摘要: A mechanism is provided for biasing placement of a software thread on a currently idle and dispatched processor. The operating system starts with the last logical processor on which the software thread ran and determines whether that processor is idle and dispatched and considers each logical processor until a currently dispatched and idle logical processor is found. If a currently dispatched and idle logical processor is not found, then the operating system biases placing the software thread on an idle logical processor.

    摘要翻译: 提供了一种用于偏置软件线程在当前空闲和调度的处理器上的布置的机制。 操作系统从软件线程运行的最后一个逻辑处理器开始,并确定该处理器是否空闲和调度,并考虑每个逻辑处理器,直到找到当前调度和空闲的逻辑处理器。 如果没有找到当前调度和空闲的逻辑处理器,则操作系统偏置将软件线程放置在空闲逻辑处理器上。

    Method, Apparatus, and Program Product for Heuristic Based Affinity Dispatching for Shared Processor Partition Dispatching
    8.
    发明申请
    Method, Apparatus, and Program Product for Heuristic Based Affinity Dispatching for Shared Processor Partition Dispatching 有权
    用于共享处理器分区调度的基于启发式的亲和度调度的方法,设备和程序产品

    公开(公告)号:US20070271563A1

    公开(公告)日:2007-11-22

    申请号:US11419019

    申请日:2006-05-18

    IPC分类号: G06F9/46

    摘要: A mechanism is provided for determining whether to use cache affinity as a criterion for software thread dispatching in a shared processor logical partitioning data processing system. The server firmware may store data about when and/or how often logical processors are dispatched. Given these data, the operating system may collect metrics. Using the logical processor metrics, the operating system may determine whether cache affinity is likely to provide a significant performance benefit relative to the cost of dispatching a particular logical processor to the operating system.

    摘要翻译: 提供了一种用于确定是否使用高速缓存亲和力作为在共享处理器逻辑分区数据处理系统中的软件线程调度的标准的机制。 服务器固件可以存储关于何时和/或多少逻辑处理器被调度的数据。 鉴于这些数据,操作系统可能会收集指标。 使用逻辑处理器度量,操作系统可以确定高速缓存关联性是否可能相对于将特定逻辑处理器调度到操作系统的成本提供显着的性能优点。

    Determining placement fitness for partitions under a hypervisor
    9.
    发明授权
    Determining placement fitness for partitions under a hypervisor 有权
    确定管理程序下分区的放置适合度

    公开(公告)号:US09104453B2

    公开(公告)日:2015-08-11

    申请号:US13529790

    申请日:2012-06-21

    IPC分类号: G06F9/455 G06F9/50

    摘要: A technique for determining placement fitness for partitions under a hypervisor in a host computing system having non-uniform memory access (NUMA) nodes. In an embodiment, a partition resource specification is received from a partition score requester. The partition resource specification identifies a set of computing resources needed for a virtual machine partition to be created by a hypervisor in the host computing system. Resource availability within the NUMA nodes of the host computing system is assessed to determine possible partition placement options. A partition fitness score of a most suitable one of the partition placement options is calculated. The partition fitness score is reported to the partition score requester.

    摘要翻译: 一种用于确定具有非均匀存储器访问(NUMA)节点的主计算系统中的管理程序下的分区的放置适合度的技术。 在一个实施例中,从分区评分请求者接收分区资源规范。 分区资源规范识别由主机计算系统中的管理程序创建的虚拟机分区所需的一组计算资源。 评估主计算系统的NUMA节点内的资源可用性,以确定可能的分区放置选项。 计算最合适的一个分区放置选项的分区适合度分数。 分区适应度分数被报告给分区评分请求者。

    Polling in a virtualized information handling system
    10.
    发明授权
    Polling in a virtualized information handling system 失效
    轮询虚拟化信息处理系统

    公开(公告)号:US08122167B1

    公开(公告)日:2012-02-21

    申请号:US12851634

    申请日:2010-08-06

    IPC分类号: G06F13/24 G06F3/00

    CPC分类号: G06F13/22 G06F13/24

    摘要: A software thread is dispatched for causing the system to poll a device for determining whether a condition has occurred. Subsequently, the software thread is undispatched and, in response thereto, an interrupt is enabled on the device, so that the device is enabled to generate the interrupt in response to an occurrence of the condition, and so that the system ceases polling the device for determining whether the condition has occurred. Eventually, the software thread is redispatched and, in response thereto, the interrupt is disabled on the device, so that the system resumes polling the device for determining whether the condition has occurred.

    摘要翻译: 调度软件线程使系统轮询设备以确定是否已经发生条件。 随后,软件线程未分配,并且响应于此,在设备上启用中断,使得设备能够响应于条件的发生而产生中断,并且使得系统停止轮询设备 确定病情是否发生。 最终,软件线程被重新分配,并且响应于此,设备上的中断被禁用,使得系统恢复轮询该设备以确定该条件是否已经发生。