Flushing by copying entries in a non-coherent cache to main memory

    公开(公告)号:US10509725B2

    公开(公告)日:2019-12-17

    申请号:US13791863

    申请日:2013-03-08

    Abstract: Techniques are provided for performing a flush operation in a non-coherent cache. In response to determining to perform a flush operation, a cache unit flushes certain data items. The flush operation may be performed in response to a lapse of a particular amount of time, such as a number of cycles, or an explicit flush instruction that does not indicate any cache entry or data item. The cache unit may store change data that indicates which entry stores a data item that has been modified but not yet been flushed. The change data may be used to identify the entries that need to be flushed. In one technique, a dirty cache entry that is associated with one or more relatively recent changes is not flushed during a flush operation.

    Defining subgraphs declaratively with vertex and edge filters

    公开(公告)号:US10445319B2

    公开(公告)日:2019-10-15

    申请号:US15592050

    申请日:2017-05-10

    Abstract: Techniques herein optimally distribute graph query processing across heterogeneous tiers. In an embodiment, a computer receives a graph query to extract a query result (QR) from a graph in a database operated by a database management system (DBMS). The graph has vertices interconnected by edges. Each vertex has vertex properties, and each edge has edge properties. The computer decomposes the graph query into filter expressions (FE's). Each FE is processed as follows. A filtration tier to execute the FE is selected from: the DBMS which sends at least the QR to a stream, a stream evaluator that processes the stream as it arrives without waiting for the entire QR to arrive and that stores at least the QR into memory, and an in-memory evaluator that identifies the QR in memory. A translation of the FE executes on the filtration tier to obtain vertices and/or edges that satisfy the FE.

    Distributed graph processing system featuring interactive remote control mechanism including task cancellation

    公开(公告)号:US10318355B2

    公开(公告)日:2019-06-11

    申请号:US15413811

    申请日:2017-01-24

    Abstract: Techniques herein provide job control and synchronization of distributed graph-processing jobs. In an embodiment, a computer system maintains an input queue of graph processing jobs. In response to de-queuing a graph processing job, a master thread partitions the graph processing job into distributed jobs. Each distributed job has a sequence of processing phases. The master thread sends each distributed job to a distributed processor. Each distributed job executes a first processing phase of its sequence of processing phases. To the master thread, the distributed job announces completion of its first processing phase. The master thread detects that all distributed jobs have announced finishing their first processing phase. The master thread broadcasts a notification to the distributed jobs that indicates that all distributed jobs have finished their first processing phase. Receiving that notification causes the distributed jobs to execute their second processing phase. Queues and barriers provide for faults and cancellation.

    Finding common neighbors between two nodes in a graph

    公开(公告)号:US10157239B2

    公开(公告)日:2018-12-18

    申请号:US14139237

    申请日:2013-12-23

    Abstract: Techniques for identifying common neighbors of two nodes in a graph are provided. One technique involves performing a binary split search and/or a linear search. Another technique involves creating a segmenting index for a first neighbor list. A second neighbor list is scanned and, for each node indicated in the second neighbor list, the segmenting index is used to determine whether the node is also indicated in the first neighbor list. Techniques are also provided for counting the number of triangles. One technique involves pruning nodes from neighbor lists based on the node values of the nodes whose neighbor lists are being pruned. Another technique involves sorting the nodes in a node array (and, thus, their respective neighbor lists) based on the nodes' respective degrees prior to identifying common neighbors. In this way, when pruning the neighbor lists, the neighbor lists of the highly connected nodes are significantly reduced.

    FAST PROCESSING OF PATH-FINDING QUERIES IN LARGE GRAPH DATABASES
    139.
    发明申请
    FAST PROCESSING OF PATH-FINDING QUERIES IN LARGE GRAPH DATABASES 审中-公开
    在大型图形数据库中快速处理路径查找问题

    公开(公告)号:US20170060958A1

    公开(公告)日:2017-03-02

    申请号:US14837696

    申请日:2015-08-27

    Abstract: Techniques herein are for fast processing of path-finding queries in large graph databases. A computer system receives a graph search request to find a set of result paths between one or more source vertices of a graph and one or more target vertices of the graph. The graph comprises vertices connected by edges. During a first pass, the computer system performs one or more breadth-first searches to identify a subset of edges of the graph. The one or more breadth-first searches originate at the one or more source vertices. After the first pass and during a second pass, the computer system performs one or more depth-first searches to identify the set of result paths. The one or more depth-first searches originate at the one or more target vertices. The one or more depth-first searches traverse at most the subset of edges of the graph.

    Abstract translation: 这里的技术是用于在大图数据库中快速处理路径查找查询。 计算机系统接收图形搜索请求以找到图形的一个或多个源顶点与该图的一个或多个目标顶点之间的一组结果路径。 该图包括通过边缘连接的顶点。 在第一次通过期间,计算机系统执行一个或多个宽度优先搜索以识别图的边缘的子集。 一个或多个宽度优先搜索起源于一个或多个源顶点。 在第一次通过和第二遍之后,计算机系统执行一个或多个深度优先搜索以识别该组结果路径。 一个或多个深度优先搜索起始于一个或多个目标顶点。 一个或多个深度优先搜索最多遍历图形边缘的子集。

    AUTOMATIC GENERATION OF MULTI-SOURCE BREADTH-FIRST SEARCH FROM HIGH-LEVEL GRAPH LANGUAGE
    140.
    发明申请
    AUTOMATIC GENERATION OF MULTI-SOURCE BREADTH-FIRST SEARCH FROM HIGH-LEVEL GRAPH LANGUAGE 审中-公开
    从高级图表语言搜索多媒体的自动生成

    公开(公告)号:US20160335322A1

    公开(公告)日:2016-11-17

    申请号:US14710117

    申请日:2015-05-12

    CPC classification number: G06F17/30958

    Abstract: Techniques are described herein for automatic generation of multi-source breadth-first search (MS-BFS) from high-level graph processing language. In an embodiment, a method involves a computer analyzing original software instructions. The original software instructions are configured to perform multiple breadth-first searches to determine a particular result. Each breadth-first search originates at each of a subset of vertices of a graph. Each breadth-first search is encoded for independent execution. Based on the analyzing, the computer generates transformed software instructions configured to perform a MS-BFS to determine the particular result. Each of the subset of vertices is a source of the MS-BFS. In an embodiment, parallel execution of the MS-BFS is regulated with batches of vertices. In an embodiment, the original software instructions are expressed in Green-Marl graph analysis language. In an embodiment, the transformed software instructions are expressed in a general purpose programing language such as C, C++, Python, or Java.

    Abstract translation: 本文描述了用于从高级图处理语言自动生成多源宽度优先搜索(MS-BFS)的技术。 在一个实施例中,一种方法涉及计算机分析原始软件指令。 原始软件指令被配置为执行多个宽度优先搜索以确定特定结果。 每个宽度优先搜索起始于图形的顶点的每个子集。 每个宽度优先的搜索被编码用于独立执行。 基于分析,计算机生成经配置以执行MS-BFS以确定特定结果的变换软件指令。 顶点子集中的每一个都是MS-BFS的源。 在一个实施例中,通过批次的顶点来调节MS-BFS的并行执行。 在一个实施例中,原始软件指令以格林 - 马尔图分析语言表示。 在一个实施例中,变换的软件指令以诸如C,C ++,Python或Java的通用程序语言表达。

Patent Agency Ranking