IP Library › Granted Patent US 6,850,920
Granted Patent B2
US 6,850,920 · App. 09/922,355 · Granted Feb 1, 2005

Performance analysis of distributed applications using automatic classification of communication inefficiencies

Assignee: The Regents of the University of California
View Patent ↗
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 6,850,920
App. No.
09/922,355
Granted
Feb 1, 2005
Kind
B2
Abstract

The method and system described herein presents a technique for performance analysis that helps users understand the communication behavior of their message passing applications. The method and system described herein may automatically classifies individual communication operations and reveal the cause of communication inefficiencies in the application. This classification allows the developer to quickly focus on the culprits of truly inefficient behavior, rather than manually foraging through massive amounts of performance data. Specifically, the method and system described herein trace the message operations of Message Passing Interface (MPI) applications and then classify each individual communication event using a supervised learning technique: decision tree classification. The decision tree may be trained using microbenchmarks that demonstrate both efficient and inefficient communication. Since the method and system described herein adapt to the target system's configuration through these microbenchmarks, they simultaneously automate the performance analysis process and improve classification accuracy. The method and system described herein may improve the accuracy of performance analysis and dramatically reduce the amount of data that users must encounter.

Claims (42)

1. A method of performance analysis using machine learning comprising:

generating a plurality of training records to model the behavior of a first application;

creating a decision tree classifier having a plurality of tests based on the plurality of training records; and

applying said decision tree classifier to a second application.

2. The method of claim 1 , wherein the first application is a communication operation.

3. The method of claim 2 , wherein said communication operation is an MPI.

4. The method of claim 1 , wherein said plurality of training records include efficient and inefficient behavior.

5. The method of claim 1 , wherein each of said plurality of training records include information about a communication message transfer.

6. The method of claim 1 , wherein each of said plurality of training records include at least two attributes identifying a type of send operation and a type of receive operation.

7. The method of claim 6 , wherein each of said plurality of training records further include at least five durations relating to transfer information.

8. The method of claim 1 , wherein said second application is a communication application; and

the decision tree classifier categorizes the second application by location of sender and receiver.

9. The method of claim 1 , further comprising:

verifying the plurality of tests by applying the decision tree classifier to the first application.

10. A system for performance analysis using machine learning comprising:

a microprocessor and memory configured to generated a plurality of training records to model the behavior of a first application;

the microprocessor and memory configured to create a decision tree classifier having a plurality of tests based on the plurality of training records; and

the microprocessor and memory configured to apply said decision tree classifier to a second application.

11. The system of claim 10 , wherein the first system is a communication operation.

12. The system of claim 11 , wherein the communication operation is an MPI.

13. The system of claim 10 , wherein each of said plurality of training records include at least two attributes identifying a type of send operation and a type of receive operation.

14. The system of claim 10 , wherein said second application is a communication application; and

the decision tree classifier is designed to categorize the second application by location of sender and receiver.

15. A system of performance analysis using machine learning comprising:

a means for generating a plurality of training records to model the behavior of a first application;

a means for creating a decision tree classifier having a plurality of tests based on the plurality of training records; and

a means for applying said decision tree classifier to a second application.

16. A computer readable medium having instructions for performance analysis using machine learning comprising:

said instructions configured to generated a plurality of training records to model the behavior of a first application;

said instructions configured to create a decision tree classifier having a plurality of tests based on the plurality of training records; and

said instructions configured to apply said decision tree classifier to a second application.

17. A computer readable data transmission medium having a data structure for performance analysis using machine learning comprising:

said data structure configured to generated a plurality of training records to model the behavior of a first application;

said data structure configured to create a decision tree classifier having a plurality of tests based on the plurality of training records; and

said data structure configured to apply said decision tree classifier to a second application.

18. A method comprising:

generating a plurality of training records to model the behavior of a first application;

creating a decision tree classifier having a plurality of tests based on the plurality of training records; and

applying said decision tree classifier to a second application.

19. The method of claim 18 , wherein each of said plurality of training records include at least two attributes identifying a type of send operation and a type of receive operation.

20. The method of claim 18 , further comprising:

performing a performance analysis of the second application.

Assignments (3)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 23, 2008
From: THE REGENTS OF THE UNIVERSITY OF CALIFORNIA
To: LAWRENCE LIVERMORE NATIONAL SECURITY LLC
Reel/Frame 021217/0050 →
CONFIRMATORY LICENSE Recorded Jul 1, 2003
From: CALIFORNIA, REGENTS OF THE UNIVERSITY OF
To: ENERGY, U.S. DEPARTMENT OF
Reel/Frame 014221/0412 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 3, 2001
From: VETTER, JEFFREY S.
To: REGENTS OF THE UNIVERSITY OF CALIFORNIA, THE
Reel/Frame 012073/0530 →
Continuity (2)
Provisional Application 6028825400 · May 1, 2001
Related Publication 20020165838A1 · Nov 7, 2002