Data parallel searching
    33.
    发明授权
    Data parallel searching 有权
    数据并行搜索

    公开(公告)号:US09251291B2

    公开(公告)日:2016-02-02

    申请号:US11947539

    申请日:2007-11-29

    IPC分类号: G06F7/00 G06F17/30

    CPC分类号: G06F17/30979 G06F17/30445

    摘要: A query that includes a search operator and that identifies an input data source is received. The input data source is partitioned into a plurality of partitions. A parallel search through the partitions is performed for an element that could halt the search. The parallel search is performed using a plurality of parallel workers. One of the parallel workers generates a notification when the element is found by that worker. The notification notifies the other parallel workers that the search could be halted. Each of the parallel workers generates an output set based on results of the search. The output sets are merged into a merged output set.

    摘要翻译: 接收包括搜索运算符并识别输入数据源的查询。 输入数据源被分割成多个分区。 对可能停止搜索的元素执行对分区的并行搜索。 使用多个并行工作者执行并行搜索。 当工作人员找到该元素时,其中一个并行工作者会生成通知。 该通知通知其他并行工作人员可以停止搜索。 每个并行工作者根据搜索结果生成一个输出集。 输出集合合并到合并的输出集中。

    Performing a wait operation to wait for one or more tasks to complete
    34.
    发明授权
    Performing a wait operation to wait for one or more tasks to complete 有权
    执行等待操作等待一个或多个任务完成

    公开(公告)号:US09229788B2

    公开(公告)日:2016-01-05

    申请号:US12732552

    申请日:2010-03-26

    IPC分类号: G06F9/46 G06F9/52

    CPC分类号: G06F9/522

    摘要: A method of performing a wait operation includes creating a first plurality of tasks and a continuation task. The continuation task represents a second plurality of tasks. The continuation task and each of the tasks in the first plurality have an associated wait handle. The wait handles for the first plurality of tasks and the continuation task are stored in an array. A wait operation is performed on the array, thereby waiting for at least one of the tasks in the first and second pluralities to complete.

    摘要翻译: 执行等待操作的方法包括创建第一多个任务和连续任务。 继续任务表示第二个多个任务。 继续任务和第一组中的每个任务具有相关联的等待句柄。 第一个多任务和连续任务的等待句柄存储在一个数组中。 在阵列上执行等待操作,从而等待第一和第二多个中的至少一个任务完成。

    Lock-free barrier with dynamic updating of participant count
    35.
    发明授权
    Lock-free barrier with dynamic updating of participant count 有权
    无障碍障碍与参与者数量的动态更新

    公开(公告)号:US08924984B2

    公开(公告)日:2014-12-30

    申请号:US12492366

    申请日:2009-06-26

    申请人: Emad Omara John Duffy

    发明人: Emad Omara John Duffy

    IPC分类号: G06F9/46 G06F9/52

    CPC分类号: G06F9/522 G06F9/524 G06F9/526

    摘要: A method of executing an algorithm in a parallel manner using a plurality of concurrent threads includes generating a lock-free barrier that includes a variable that stores both a total participants count and a current participants count. The total participants count indicates a total number of threads in the plurality of concurrent threads that are participating in a current phase of the algorithm, and the current participants count indicates a total number of threads in the plurality of concurrent threads that have completed the current phase. The barrier blocks the threads that have completed the current phase. The total participants count is dynamically updated during execution of the current phase of the algorithm. The generating, blocking, and dynamically updating are performed by at least one processor.

    摘要翻译: 使用多个并行线程以并行方式执行算法的方法包括生成无锁屏障,其包括存储总参与者数量和当前参与者计数的变量。 总参与者计数指示参与该算法的当前阶段的多个并行线程中的线程总数,并且当前参与者计数指示已完成当前阶段的多个并发线程中的总线程数 。 障碍阻止已完成当前阶段的线程。 在执行算法的当前阶段期间,动员更新总计人数。 生成,阻止和动态更新由至少一个处理器执行。

    PERFORMING A WAIT OPERATION TO WAIT FOR ONE OR MORE TASKS TO COMPLETE
    36.
    发明申请
    PERFORMING A WAIT OPERATION TO WAIT FOR ONE OR MORE TASKS TO COMPLETE 有权
    执行等待操作等待一个或多个任务完成

    公开(公告)号:US20110239217A1

    公开(公告)日:2011-09-29

    申请号:US12732552

    申请日:2010-03-26

    IPC分类号: G06F9/46

    CPC分类号: G06F9/522

    摘要: A method of performing a wait operation includes creating a first plurality of tasks and a continuation task. The continuation task represents a second plurality of tasks. The continuation task and each of the tasks in the first plurality have an associated wait handle. The wait handles for the first plurality of tasks and the continuation task are stored in an array. A wait operation is performed on the array, thereby waiting for at least one of the tasks in the first and second pluralities to complete.

    摘要翻译: 执行等待操作的方法包括创建第一多个任务和连续任务。 继续任务表示第二个多个任务。 继续任务和第一组中的每个任务具有相关联的等待句柄。 第一个多任务和连续任务的等待句柄存储在一个数组中。 在阵列上执行等待操作,从而等待第一和第二多个中的至少一个任务完成。

    PER-THREAD, PER-INSTANCE DATA STORAGE
    37.
    发明申请
    PER-THREAD, PER-INSTANCE DATA STORAGE 有权
    PER-THREAD,PER-INSTANCE数据存储

    公开(公告)号:US20110179038A1

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

    申请号:US12691378

    申请日:2010-01-21

    IPC分类号: G06F17/30

    CPC分类号: G06F9/4843

    摘要: A method of storing per-thread, per-instance data, includes identifying a unique index value corresponding to a first instance, identifying type parameters based on the identified index value, and instantiating a generic holder object based on the identified type parameters. The generic holder object includes a thread local field configured to store per-thread data that is local to the first instance.

    摘要翻译: 存储每个线程的每个实例数据的方法包括识别对应于第一实例的唯一索引值,基于所识别的索引值来识别类型参数,以及基于所识别的类型参数来实例化通用持有者对象。 通用持有者对象包括被配置为存储本地对于第一实例的每个线程数据的线程本地字段。

    PARTITIONING AND REPARTITIONING FOR DATA PARALLEL OPERATIONS
    39.
    发明申请
    PARTITIONING AND REPARTITIONING FOR DATA PARALLEL OPERATIONS 有权
    数据并行运行的分区和分配

    公开(公告)号:US20090144346A1

    公开(公告)日:2009-06-04

    申请号:US11947558

    申请日:2007-11-29

    IPC分类号: G06F17/00

    摘要: A query that identifies an input data source is rewritten to contain data parallel operations that include partitioning and merging. The input data source is partitioned into a plurality of initial partitions. A parallel repartitioning operation is performed on the initial partitions to generate a plurality of secondary partitions. A parallel execution of the query is performed using the secondary partitions to generate a plurality of output sets. The plurality of output sets are merged into a merged output set.

    摘要翻译: 识别输入数据源的查询被重写为包含数据并行操作,包括分区和合并。 输入数据源被划分成多个初始分区。 对初始分区执行并行重新划分操作以生成多个次分区。 使用次分区执行查询的并行执行以生成多个输出集。 多个输出集合被合并到合并的输出集合中。