IP Library Patent Application 13757570
Patent Application
App. No. 13/757,570

Dynamic Visualization of Message Passing Computation

Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US None
App. No.
13/757,570
Abstract

A message passing compute environment may be visualized by illustrating messages passed within the environment. The messages may contain data consumed by a function or other computational element, and may be used to launch or spawn various computational elements. One visualization may be a force directed graph that has each function as a node, with messages passed as edges of the graph. In some embodiments, the edges may display the number of messages, quantity of data, or other metric by showing the edges as wider or thinner, or by changing the color of the displayed edge. The nodes may be illustrated with different colors, size, or shape to show different aspects. Some embodiments may have a mechanism for storing and playing back changes to the graph over time.

Claims (36)

1 . A method performed by a computer processor, said method comprising:

receiving message passing data, said message passing data comprising messages passed from a transmitter process to a receiver process, said transmitter process and said receiver process both being computational processes executing on at least one computer processor;

analyzing said message passing data to identify nodes, said nodes being said computational processes;

analyzing said message passing data to identify said messages and identifying edges based on said messages; and

displaying said nodes and said edges in a graph, said graph representing said messages passed between said computational processes.

2 . The method of claim 1 further comprising:

summarizing said message passing data to identify a plurality of messages passed between a first node and a second node; and

representing said plurality of messages on a first edge between said first node and said second node.

3 . The method of claim 2 , said first edge being displayed with a width representing said plurality of messages.

4 . The method of claim 3 , said first edge being displayed with a color representing said plurality of messages.

5 . The method of claim 2 , said summarizing comprising applying a nonlinear representation of said plurality of messages.

6 . The method of claim 1 further comprising:

summarizing said message passing data to identify a group membership for each of said nodes; and

displaying said group membership in said graph using a visual indicator.

7 . The method of claim 6 , said visual indicator being color.

8 . The method of claim 6 , said visual indicator being shape.

9 . The method of claim 1 further comprising:

receiving an update to said message passing data; and

updating said graph using said update.

10 . The method of claim 9 , said update being received on a periodic interval.

11 . The method of claim 10 further comprising:

determining a difference from a first time period to a current time period; and

highlighting said difference in said graph.

12 . The method of claim 11 , said highlighting comprising displaying an old item using a grey color.

13 . The method of claim 12 , said highlighting comprising displaying a new item using a non-grey color.

14 . The method of claim 11 , said first time period being one of said periodic intervals prior to said current time.

15 . The method of claim 11 , said first time period being at least two of said periodic intervals prior to said current time.

16 . A system comprising:

an analysis module that analyzes messages between two entities, said entities being compute elements in a message passing relationship, said analysis module comprising:

an extraction module that identifies a message sender and a message receiver;

an aggregator that creates statistics regarding messages sent between said entities;

a visualization module that displays said entities as nodes on a graph and said statistics as edges of said graph.

17 . The system of claim 16 , said statistics comprising a count of said messages passed between a first node and a second node, said first edge representing said count.

18 . The system of claim 17 , said visualization module that displays said count as a width of said first edge.

19 . The system of claim 18 , said width being calculated using a nonlinear representation of said count.

20 . The system of claim 19 , said nonlinear representation comprising a logarithmic function.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 20, 2015
From: CONCURIX CORPORATION
To: MICROSOFT TECHNOLOGY LICENSING, LLC
Reel/Frame 036139/0069 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 18, 2013
From: KRAJEC, RUSSELL S.; GOUNARES, ALEXANDER G.
To: CONCURIX CORPORATION
Reel/Frame 030244/0462 →