Low-contention update buffer queuing for small systems
    21.
    发明授权
    Low-contention update buffer queuing for small systems 有权
    针对小型系统的低争用更新缓冲区排队

    公开(公告)号:US08645651B2

    公开(公告)日:2014-02-04

    申请号:US12693815

    申请日:2010-01-26

    IPC分类号: G06F12/00 G06F12/02

    摘要: A method for queuing update buffers to enhance garbage collection. The method includes running an application thread and providing, for the application thread, a data structure including current and finished update buffer slots. The method includes providing an update buffer for the application thread and storing a pointer to the update buffer in the current update buffer slot. The method includes storing null in the finished update buffer slot and, with the application thread, writing to the update buffer. The thread may write a pointer to the filled update buffer in the finished update buffer slot after the buffer is filled. The method includes using a garbage collector thread to inspect the finished update buffer slot and claim filled buffers and change the pointer to null. The thread then obtains an empty update buffer and updates the current update buffer slot to point to the new buffer.

    摘要翻译: 排队更新缓冲区以增强垃圾回收的方法。 该方法包括运行应用程序线程,并为应用程序线程提供包括当前和完成的更新缓冲区槽位的数据结构。 该方法包括为应用程序线程提供更新缓冲区,并在当前更新缓冲区槽中存储指向更新缓冲区的指针。 该方法包括在完成的更新缓冲区槽中存储空值,并与应用程序线程一起写入更新缓冲区。 在填充缓冲区之后,线程可能会在完成的更新缓冲区插槽中写入指向填充更新缓冲区的指针。 该方法包括使用垃圾回收器线程来检查已完成的更新缓冲区槽位并声明已填充的缓冲区,并将指针更改为null。 线程然后获得一个空的更新缓冲区,并更新当前的更新缓冲区槽位以指向新的缓冲区。

    Low-contention update buffer queuing for large systems
    22.
    发明授权
    Low-contention update buffer queuing for large systems 有权
    针对大型系统的低竞争更新缓冲区排队

    公开(公告)号:US08782306B2

    公开(公告)日:2014-07-15

    申请号:US12699370

    申请日:2010-02-03

    IPC分类号: G06F13/00

    摘要: A method for queuing thread update buffers to enhance garbage collection. The method includes providing a global update buffer queue and a global array with slots for storing pointers to filled update buffers. The method includes with an application thread writing to the update buffer and, when filled, attempting to write the pointer for the update buffer to the global array. The array slot may be selected randomly or by use of a hash function. When the writing fails due to a non-null slot, the method includes operating the application thread to add the filled update buffer to the global update buffer queue. The method includes, with a garbage collector thread, inspecting the global array for non-null entries and, upon locating a pointer, claiming the filled update buffer. The method includes using the garbage collector thread to claim and process buffers added to the global update buffer queue.

    摘要翻译: 排队线程更新缓冲区以增强垃圾回收的方法。 该方法包括提供全局更新缓冲器队列和全局阵列,其具有用于存储指向填充的更新缓冲器的指针的时隙。 该方法包括应用程序线程写入更新缓冲区,并在填充时尝试将更新缓冲区的指针写入全局数组。 可以随机地或通过使用散列函数来选择阵列时隙。 当由于非空插槽而导致写入失败时,该方法包括操作应用程序线程以将填充的更新缓冲区添加到全局更新缓冲区队列。 该方法包括:使用垃圾收集器线程,检查全局数组的非空条目,并在找到指针时声明填充的更新缓冲区。 该方法包括使用垃圾收集器线程来声明和处理添加到全局更新缓冲区队列中的缓冲区。

    Low-Contention Update Buffer Queuing for Small Systems
    23.
    发明申请
    Low-Contention Update Buffer Queuing for Small Systems 有权
    小型系统的低竞争更新缓冲区排队

    公开(公告)号:US20110185144A1

    公开(公告)日:2011-07-28

    申请号:US12693815

    申请日:2010-01-26

    IPC分类号: G06F12/02 G06F9/455

    摘要: A method for queuing update buffers to enhance garbage collection. The method includes running an application thread and providing, for the application thread, a data structure including current and finished update buffer slots. The method includes providing an update buffer for the application thread and storing a pointer to the update buffer in the current update buffer slot. The method includes storing null in the finished update buffer slot and, with the application thread, writing to the update buffer. The thread may write a pointer to the filled update buffer in the finished update buffer slot after the buffer is filled. The method includes using a garbage collector thread to inspect the finished update buffer slot and claim filled buffers and change the pointer to null. The thread then obtains an empty update buffer and updates the current update buffer slot to point to the new buffer.

    摘要翻译: 排队更新缓冲区以增强垃圾回收的方法。 该方法包括运行应用程序线程,并为应用程序线程提供包括当前和完成的更新缓冲区槽位的数据结构。 该方法包括为应用程序线程提供更新缓冲区,并在当前更新缓冲区槽中存储指向更新缓冲区的指针。 该方法包括在完成的更新缓冲区槽中存储空值,并与应用程序线程一起写入更新缓冲区。 在填充缓冲区之后,线程可能会在完成的更新缓冲区插槽中写入指向填充更新缓冲区的指针。 该方法包括使用垃圾回收器线程来检查已完成的更新缓冲区槽位并声明已填充的缓冲区,并将指针更改为null。 线程然后获得一个空的更新缓冲区,并更新当前的更新缓冲区槽位以指向新的缓冲区。

    Low-Contention Update Buffer Queuing For Large Systems
    24.
    发明申请
    Low-Contention Update Buffer Queuing For Large Systems 有权
    针对大型系统的低竞争更新缓冲区排队

    公开(公告)号:US20110191508A1

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

    申请号:US12699370

    申请日:2010-02-03

    IPC分类号: G06F13/00 G06F9/46 G06F9/455

    摘要: A method for queuing thread update buffers to enhance garbage collection. The method includes providing a global update buffer queue and a global array with slots for storing pointers to filled update buffers. The method includes with an application thread writing to the update buffer and, when filled, attempting to write the pointer for the update buffer to the global array. The array slot may be selected randomly or by use of a hash function. When the writing fails due to a non-null slot, the method includes operating the application thread to add the filled update buffer to the global update buffer queue. The method includes, with a garbage collector thread, inspecting the global array for non-null entries and, upon locating a pointer, claiming the filled update buffer. The method includes using the garbage collector thread to claim and process buffers added to the global update buffer queue.

    摘要翻译: 排队线程更新缓冲区以增强垃圾回收的方法。 该方法包括提供全局更新缓冲器队列和全局阵列,其具有用于存储指向填充的更新缓冲器的指针的时隙。 该方法包括应用程序线程写入更新缓冲区,并在填充时尝试将更新缓冲区的指针写入全局数组。 可以随机地或通过使用散列函数来选择阵列时隙。 当由于非空插槽而导致写入失败时,该方法包括操作应用程序线程以将填充的更新缓冲区添加到全局更新缓冲区队列。 该方法包括:使用垃圾收集器线程,检查全局数组的非空条目,并在找到指针时声明填充的更新缓冲区。 该方法包括使用垃圾收集器线程来声明和处理添加到全局更新缓冲区队列中的缓冲区。

    Technologies for native code invocation using binary analysis

    公开(公告)号:US20170185386A1

    公开(公告)日:2017-06-29

    申请号:US14998274

    申请日:2015-12-26

    IPC分类号: G06F9/45

    CPC分类号: G06F8/433 G06F8/53

    摘要: Technologies for native code invocation using binary analysis are described. A computing device for invoking native code from managed code using binary analysis receives a call from a thread executing a managed code segment to execute a native code segment. The computing device performs a binary analysis of the native code segment and generates, from the binary analysis, a complexity indicator that indicates a level of complexity of the native code segment by comparing the native code segment to at least one predefined complexity rule. Additionally, the computing device stores a status of the thread based on the complexity indicator and executes the native code segment. Other embodiments are described and claimed.

    Resource Utilization Monitor
    26.
    发明申请
    Resource Utilization Monitor 有权
    资源利用率监测

    公开(公告)号:US20090249352A1

    公开(公告)日:2009-10-01

    申请号:US12054491

    申请日:2008-03-25

    申请人: Paul H. Hohensee

    发明人: Paul H. Hohensee

    IPC分类号: G06F9/46

    摘要: Load-balancing threads among a plurality of processing units. The method may include a first processing unit executing a plurality of software threads using a respective plurality of hardware strands. The plurality of hardware strands may share at least one hardware resource within the first processing unit. The method may further include monitoring the at least one hardware resource, wherein, for each respective hardware strand. Monitoring may include, for each respective hardware resource of the at least one hardware resource: maintaining information regarding the respective hardware strand requesting to use the respective hardware resource but failing to do so because the respective hardware resource is in use, comparing the information to a threshold, and generating an interrupt if the information exceeds the threshold. One or more load-balancing operations may be performed in response to the interrupt.

    摘要翻译: 在多个处理单元之间负载平衡线程。 该方法可以包括使用相应的多个硬件线执行多个软件线程的第一处理单元。 多个硬件链可以在第一处理单元内共享至少一个硬件资源。 该方法还可以包括监视至少一个硬件资源,其中,对于每个相应的硬件链。 对于至少一个硬件资源的每个相应的硬件资源,监视可以包括:维护关于相应的硬件链的信息,请求使用相应的硬件资源,但由于相应的硬件资源正在使用而不能这样做,将该信息与 阈值,并且如果信息超过阈值则产生中断。 可以响应于中断来执行一个或多个负载平衡操作。