×

Concurrent thread execution using user-level asynchronous signaling

  • US 8,468,526 B2
  • Filed: 06/30/2006
  • Issued: 06/18/2013
  • Est. Priority Date: 06/30/2006
  • Status: Expired due to Fees
First Claim
Patent Images

1. A system for detecting a conflict, comprising:

  • a first thread unit and a second thread unit, the first and second thread unit to execute two concurrent threads of a software application;

    a memory coupled to the first and second thread units;

    said memory to store software instructions to implement an atomic multiple-compare and single-swap (“

    kcss”

    ) operation, wherein the kcss operation includes a call to an mcall instruction and is to monitor access to k addresses organized as an array, wherein the kcss operation is to detect, by the first thread unit, a conflict between the two concurrent threads based on detecting a write by the second thread unit to one of the k addresses in the array and is to utilize a hardware mechanism of the first thread unit to trigger a user code handler responsive to said conflict;

    the hardware mechanism of the first thread unit to perform an asynchronous control transfer to the user code handler responsive to the write, by the second thread unit, to the one of the k addresses in the array;

    wherein said user code handler includes one or more instructions to determine whether the conflict occurred before an atomic compare-and-swap of a kth address specified in the kcss operation.

View all claims
  • 1 Assignment
Timeline View
Assignment View
    ×
    ×