METHOD FOR APPLYING GRAPH-SPECIFIC COMPILER OPTIMIZATIONS TO GRAPH ANALYSIS PROGRAMS

    公开(公告)号:US20210240456A1

    公开(公告)日:2021-08-05

    申请号:US16776792

    申请日:2020-01-30

    Abstract: Techniques are described for compiling source code to generate graph-optimized intermediate representation instructions of the source code that implement techniques for optimizing algorithms for graph analysis. A compiler, executing on a computing device, receives source code instructions for a program to be compiled. The compiler identifies a target expression, within the source code instructions, that invokes a particular method call on a particular object type. The target expression contains a target block of code to be translated into an intermediate representation using graph-optimized compilation techniques. The compiler generates a block of graph-specific intermediate representation instructions to replace the target expression. The compiler compiles the source code instructions to generate intermediate representation instructions, where the intermediate representation instructions include the block of graph-specific intermediate representation instructions in place of the target expression.

    NAMED ENTITY DISAMBIGUATION USING ENTITY DISTANCE IN A KNOWLEDGE GRAPH

    公开(公告)号:US20200342055A1

    公开(公告)日:2020-10-29

    申请号:US16392386

    申请日:2019-04-23

    Abstract: Techniques are described herein for performing named entity disambiguation. According to an embodiment, a method includes receiving input text, extracting a first mention and a second mention from the input text, and selecting, from a knowledge graph, a plurality of first candidate vertices for the first mention and a plurality of second candidate vertices for the second mention. The present method also includes evaluating a score function that analyzes vertex embedding similarity between the plurality of first candidate vertices and the plurality of second candidate vertices. In response to evaluating and seeking to optimize the score function, the method performs selecting a first selected candidate vertex from the plurality of first candidate vertices and a second selected candidate vertex from the plurality of second candidate vertices. Further, the present method includes mapping a first entry from the knowledge graph to the first mention and mapping a second entry from the knowledge graph to the second mention. In this embodiment, the first entry corresponds to the first selected candidate vertex and the second entry corresponds to the second selected candidate.

    Reducing synchronization of tasks in latency-tolerant task-parallel systems

    公开(公告)号:US10678588B2

    公开(公告)日:2020-06-09

    申请号:US15597460

    申请日:2017-05-17

    Abstract: Techniques are provided for reducing synchronization of tasks in a task scheduling system. A task queue includes multiple tasks, some of which require an I/O operation while other tasks require data stored locally in memory. A single thread is assigned to process tasks in the task queue. The thread determines if a task at the head of the task queue requires an I/O operation. If so, then the thread generates an I/O request, submits the I/O request, and may place the task at (or toward) the end of the task queue. When the task reaches the head of the task queue again, the thread determines if data requested by the I/O request is available yet. If so, then the thread processes the request. Otherwise, the thread may place the task at (or toward) the end of the task queue again.

    FAST DETECTION OF VERTEX-CONNECTIVITY WITH DISTANCE CONSTRAINT

    公开(公告)号:US20200151216A1

    公开(公告)日:2020-05-14

    申请号:US16185236

    申请日:2018-11-09

    Abstract: Embodiments perform real-time vertex connectivity checks in graph data representations via a multi-phase search process. This process includes an efficient first search phase using landmark connectivity data that is generated during a preprocessing phase. Landmark connectivity data maps the connectivity of a set of identified landmarks in a graph to other vertices in the graph. Upon determining that the subject vertices are not closely related via landmarks, embodiments implement a second search phase that performs a brute-force search for connectivity, between the subject vertices, among the graph's non-landmark vertices. This brute-force search prevents exploration of cyclical paths by recording the vertices on a currently-explored path in a stack data structure. The second search phase is automatically aborted upon detecting that the non-landmark vertices in the graph are over a threshold density. In this case, embodiments perform a third search phase involving either a modified breadth-first search or modified bidirectional search.

    Visualizing UI tool for graph construction and exploration with alternative action timelines

    公开(公告)号:US10585575B2

    公开(公告)日:2020-03-10

    申请号:US15609629

    申请日:2017-05-31

    Abstract: Techniques herein organize and display as branches the historical versions of filtrations of a property graph in a way that suits interactive exploration. In embodiments, a computer loads metadata that describes versions of filtration of a graph that contains vertices interconnected by edges. Based on the metadata, the computer displays, along a timeline, version indicators that each represents a respective historical version of filtration of the graph. The computer displays, responsive to receiving an interactive selection of a particular version indicator of the plurality of version indicators, a particular version of filtration of the graph that is represented by the particular version indicator. Subsequences of versions for the timeline may be organized as branches that may be interactively created and merged. Branching and merging are integrated into the general lifecycle of graph filtration. A version timeline may be presented and operated as a tool for historical navigation and speculative exploration.

Patent Agency Ranking