Cancelable and faultable dataflow nodes
    1.
    发明授权
    Cancelable and faultable dataflow nodes 有权
    可取消和可错误的数据流节点

    公开(公告)号:US08856792B2

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

    申请号:US12972039

    申请日:2010-12-17

    IPC分类号: G06F9/46 G06F9/44 G06F9/54

    CPC分类号: G06F9/542 G06F9/466 G06F9/546

    摘要: One embodiment includes a method of performing dataflow processing. The method includes representing a first asynchronous processing node as a first future. The first future represents the lifecycle of processing of the first asynchronous processing node. The method further includes representing one or more other asynchronous operations as one or more other futures. The one or more other futures represent the asynchronous completion of one or more operations'processing. The first future and the one or more other futures are represented as a single composite future. The single composite future represents completion of processing of the combination of the first asynchronous processing node and the one or more other asynchronous operations.

    摘要翻译: 一个实施例包括执行数据流处理的方法。 该方法包括将第一异步处理节点表示为第一未来。 第一个未来代表了处理第一个异步处理节点的生命周期。 该方法还包括将一个或多个其他异步操作表示为一个或多个其他期货。 一个或多个其他期货表示异步完成一个或多个操作的处理。 第一个未来和一个或多个其他未来将被视为一个复合的未来。 单个复合未来表示第一异步处理节点和一个或多个其他异步操作的组合的处理的完成。

    CANCELABLE AND FAULTABLE DATAFLOW NODES
    2.
    发明申请
    CANCELABLE AND FAULTABLE DATAFLOW NODES 有权
    无效和故障的数据流

    公开(公告)号:US20120159512A1

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

    申请号:US12972039

    申请日:2010-12-17

    IPC分类号: G06F9/46

    CPC分类号: G06F9/542 G06F9/466 G06F9/546

    摘要: One embodiment includes a method of performing dataflow processing. The method includes representing a first asynchronous processing node as a first future. The first future represents the lifecycle of processing of the first asynchronous processing node. The method further includes representing one or more other asynchronous operations as one or more other futures. The one or more other futures represent the asynchronous completion of one or more operations' processing. The first future and the one or more other futures are represented as a single composite future. The single composite future represents completion of processing of the combination of the first asynchronous processing node and the one or more other asynchronous operations.

    摘要翻译: 一个实施例包括执行数据流处理的方法。 该方法包括将第一异步处理节点表示为第一未来。 第一个未来代表了处理第一个异步处理节点的生命周期。 该方法还包括将一个或多个其他异步操作表示为一个或多个其他期货。 一个或多个其他期货表示异步完成一个或多个操作的处理。 第一个未来和一个或多个其他未来将被视为一个复合的未来。 单个复合未来表示第一异步处理节点和一个或多个其他异步操作的组合的处理的完成。

    Configuration of asynchronous message processing in dataflow networks
    3.
    发明授权
    Configuration of asynchronous message processing in dataflow networks 有权
    数据流网络中异步消息处理的配置

    公开(公告)号:US09201688B2

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

    申请号:US12972023

    申请日:2010-12-17

    IPC分类号: G06F9/48

    CPC分类号: G06F9/4881 G06F2209/485

    摘要: Managing a concurrency based system. A method includes determining a defined number of concurrent operations for a concurrency based management system. An operation queue is accessed. The operation queue stores or has therein zero or more asynchronous operations. An asynchronous operation is an operation that returns an object representing the asynchronous completion of the operation. The method further includes, as long as the queue is not empty, scheduling asynchronous operations from the queue until a number of asynchronous operations equal to the defined number has been reached.

    摘要翻译: 管理基于并发的系统。 一种方法包括确定用于基于并发的管理系统的定义数量的并发操作。 访问一个操作队列。 操作队列存储或具有零个或多个异步操作。 异步操作是返回表示异步完成操作的对象的操作。 该方法还包括,只要队列不为空,则调度来自队列的异步操作,直到达到等于定义数目的多个异步操作。

    CONFIGURATION OF ASYNCHRONOUS MESSAGE PROCESSING IN DATAFLOW NETWORKS
    4.
    发明申请
    CONFIGURATION OF ASYNCHRONOUS MESSAGE PROCESSING IN DATAFLOW NETWORKS 有权
    数据流网络中异步消息处理的配置

    公开(公告)号:US20120158651A1

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

    申请号:US12972023

    申请日:2010-12-17

    IPC分类号: G06F17/00

    CPC分类号: G06F9/4881 G06F2209/485

    摘要: Managing a concurrency based system. A method includes determining a defined number of concurrent operations for a concurrency based management system. An operation queue is accessed. The operation queue stores or has therein zero or more asynchronous operations. An asynchronous operation is an operation that returns an object representing the asynchronous completion of the operation. The method further includes, as long as the queue is not empty, scheduling asynchronous operations from the queue until a number of asynchronous operations equal to the defined number has been reached.

    摘要翻译: 管理基于并发的系统。 一种方法包括确定用于基于并发的管理系统的定义数量的并发操作。 访问一个操作队列。 操作队列存储或具有零个或多个异步操作。 异步操作是返回表示异步完成操作的对象的操作。 该方法还包括,只要队列不为空,则调度来自队列的异步操作,直到达到等于定义数目的多个异步操作。

    DYNAMICALLY ALLOCATED THREAD-LOCAL STORAGE
    5.
    发明申请
    DYNAMICALLY ALLOCATED THREAD-LOCAL STORAGE 有权
    动态分配的线路存储

    公开(公告)号:US20120331475A1

    公开(公告)日:2012-12-27

    申请号:US13165421

    申请日:2011-06-21

    IPC分类号: G06F9/46

    摘要: Dynamically allocated thread storage in a computing device is disclosed. The dynamically allocated thread storage is configured to work with a process including two or more threads. Each thread includes a statically allocated thread-local slot configured to store a table. Each table is configured to include a table slot corresponding with a dynamically allocated thread-local value. A dynamically allocated thread-local instance corresponds with the table slot.

    摘要翻译: 公开了在计算设备中动态分配的线程存储。 动态分配的线程存储被配置为使用包括两个或更多个线程的进程。 每个线程包括一个静态分配的线程本地插槽,用于存储一个表。 每个表被配置为包括与动态分配的线程本地值相对应的表时隙。 动态分配的线程本地实例对应于表槽。

    Cache-line aware collection for runtime environments
    6.
    发明授权
    Cache-line aware collection for runtime environments 有权
    运行时环境的缓存线感知集合

    公开(公告)号:US08185693B2

    公开(公告)日:2012-05-22

    申请号:US12405923

    申请日:2009-03-17

    IPC分类号: G06F12/06

    摘要: Target data is allocated into caches of a shared-memory multiprocessor system during a runtime environment. The target data includes a plurality of data items that are allocated onto separate cache lines. Each data item is allocated on a separate cache line regardless of the size of the cache line of the system. The data items become members of a wrapper types when data items are value types. The runtime environment maintains a set of wrapper types of various sizes that are of typical cache line sizes. Garbage data is inserted into the cache line in cases where data items are reference types and data is stored on a managed heap. The allocation also configures garbage collectors in the runtime environment not to slide multiple data items onto the same cache line. Other examples are included where a developer can augment the runtime environment to be aware of cache line sizes.

    摘要翻译: 目标数据在运行时环境中被分配到共享内存多处理器系统的高速缓存中。 目标数据包括被分配到单独的高速缓存线上的多个数据项。 每个数据项都分配在单独的高速缓存行上,而不管系统的高速缓存行的大小。 当数据项是值类型时,数据项成为包装器类型的成员。 运行时环境维护一组具有典型高速缓存行大小的各种大小的包装器类型。 在数据项是引用类型并且数据存储在受管堆上的情况下,垃圾数据被插入到高速缓存行中。 该分配还可以在运行时环境中配置垃圾收集器,不要将多个数据项滑到同一个高速缓存行上。 包括其他示例,其中开发人员可以扩展运行时环境以了解高速缓存行大小。

    HASH PARTITIONING STREAMED DATA
    7.
    发明申请
    HASH PARTITIONING STREAMED DATA 有权
    HASH分区流数据

    公开(公告)号:US20110154359A1

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

    申请号:US12642233

    申请日:2009-12-18

    IPC分类号: G06F9/46

    CPC分类号: G06F9/5033 G06F2209/5018

    摘要: The present invention extends to methods, systems, and computer program products for partitioning streaming data. Embodiments of the invention can be used to hash partition a stream of data and thus avoids unnecessary memory usage (e.g., associated with buffering). Hash partitioning can be used to split an input sequence (e.g., a data stream) into multiple partitions that can be processed independently. Other embodiments of the invention can be used to hash repartition a plurality of streams of data. Hash repartitioning converts a set of partitions into another set of partitions with the hash partitioned property. Partitioning and repartitioning can be done in a streaming manner at runtime by exchanging values between worker threads responsible for different partitions.

    摘要翻译: 本发明扩展到用于划分流数据的方法,系统和计算机程序产品。 本发明的实施例可用于对数据流进行散列分区,从而避免不必要的存储器使用(例如,与缓冲相关联)。 散列分区可用于将输入序列(例如,数据流)拆分成可独立处理的多个分区。 本发明的其他实施例可用于对多个数据流重新分区。 哈希重新分区将一组分区转换为具有哈希分区属性的另一组分区。 在运行时可以通过在负责不同分区的工作线程之间交换值来进行分区和重新分区。

    MAINTAINING A COUNT FOR LOCK-FREE LINKED LIST STRUCTURES
    8.
    发明申请
    MAINTAINING A COUNT FOR LOCK-FREE LINKED LIST STRUCTURES 有权
    维护一个无锁链接列表结构的数据

    公开(公告)号:US20110145827A1

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

    申请号:US12637535

    申请日:2009-12-14

    IPC分类号: G06F9/46 G06F7/00

    摘要: The present invention extends to methods, systems, and computer program products for maintaining a count for lock-free stack access. A numeric value representative of the total count of nodes in a linked list is maintained at the head node for the linked list. Commands for pushing and popping nodes appropriately update the total count at a new head node when nodes are added to and removed from the linked list. Thus, determining the count of nodes in a linked list is an order 1 (or O(1)) operation, and remains constant even when the size of a linked list changes

    摘要翻译: 本发明延伸到用于维持无锁堆栈访问的计数的方法,系统和计算机程序产品。 表示链表中节点总数的数值在链表的头节点处被维护。 当节点被添加到链接列表中并从链接列表中删除时,用于推送和弹出节点的命令适当地更新新头节点处的总计数。 因此,确定链表中的节点的数量是一个顺序1(或O(1))操作,并且即使当链表的大小改变时也保持不变

    QUERY PROCESSING USING ARRAYS
    9.
    发明申请
    QUERY PROCESSING USING ARRAYS 审中-公开
    使用阵列进行查询处理

    公开(公告)号:US20100250613A1

    公开(公告)日:2010-09-30

    申请号:US12413814

    申请日:2009-03-30

    IPC分类号: G06F17/30

    CPC分类号: G06F16/24539

    摘要: A method of processing a query includes receiving a language integrated query including at least one operator, and operating on an input array with the at least one operator. An output array is generated by the at least one operator based on the operation on the input array.

    摘要翻译: 一种处理查询的方法包括:接收包括至少一个运算符的语言集成查询,以及使用所述至少一个运算符对输入阵列进行操作。 基于输入阵列上的操作,由至少一个运算符产生输出数组。

    Performing a wait operation to wait for one or more tasks to complete
    10.
    发明授权
    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.

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