IP Library Granted Patent US 11,347,621
Granted Patent B1
US 11,347,621 · App. 17/204,481 · Granted May 31, 2022

Application performance characterization and profiling as a service

Inventors: Maxim Alt (San Francisco, CA); Paulo Souza (Maringa, BR); Gabriel Martin (Quintana de la Sirena, ES)
Assignee: Core Scientific, Inc.
G06F11/3612G06F11/3688
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 11,347,621
App. No.
17/204,481
Granted
May 31, 2022
Kind
B1
Abstract

An improved system and method for characterizing application performance are disclosed. The system may comprise a profiling module and a web service module. The profiling module may be configured to prompt the user to select a public mode or a private mode and specify software and hardware targets for profiling. Test results from profiling may be combined with historical data obtained from a web service module providing access to a database of historical profiling test results to create recommendations for improving performance. The profiling module may upload the test-generated data in public mode to the web service module for use in future execution cycles or keep them private if in private mode.

Claims (51)

1. A method for characterizing application performance, the method comprising:

downloading a profiling tool;

specifying a software target and a hardware target,

performing a hardware profiling test to obtain a first set of results;

performing a software profiling test to obtain a second set of results;

downloading prior result data from an external database of prior profiling test results; and

providing recommendations based on the first set of results, the second set of results, and the prior result data;

wherein the recommendations include (i) a modification to the hardware target that would improve application performance, and/or (ii) a modification to the software target that would improve application performance;

wherein the recommendations comprise a MPI_Send bandwidth per process ID and a recommended type of interconnect between nodes.

2. The method of claim 1 , further comprising:

determining whether a public mode or private mode has been selected; and

in response to determining that the public mode has been selected, uploading the first set of results and the second set of results to the external database of prior profiling test results.

3. The method of claim 2 , further comprising:

in response to determining that the public mode has been selected, uploading the recommendations to the external database of prior profiling test results.

4. The method of claim 1 , wherein the recommendations comprise a performance spectrometer.

5. The method of claim 1 , wherein the recommendations comprise predicted execution times for selected data set sizes.

6. The method of claim 1 , wherein the recommendations comprise a graph depicting load balance with hotspots per process ID.

7. The method of claim 1 , wherein the recommendations comprise a hotspot graph identifying potential hotspots via depicting an amount of time spent on each of a plurality of processes.

8. The method of claim 1 , wherein the recommendations comprise a recommended number of GPUs or CPUs to allocate.

9. The method of claim 1 , wherein the recommendations comprise an indicator of whether a solid state storage subsystem would benefit performance.

10. The method of claim 1 , wherein the recommendations include a visual performance indicator, the modification to the hardware target that would improve application performance, and the modification to the software target that would improve application performance.

11. The method of claim 1 , wherein the recommendations include:

a performance spectrometer;

an indicator of whether a solid state storage subsystem would benefit performance; and

a set of compiler optimization settings.

12. A system for characterizing application performance, the system comprising:

a computer server including at least one processor, the computer server is configured to:

(i) prompt a user to select a public mode or a private mode,

(ii) prompt the user to specify a software target and hardware target, and

(iii) perform hardware and software profiling tests to generate a first set of data; and

the computer server receives historical profiling test results from a web service module;

wherein the computer server combines the first set of data and the historical profiling test results to create a set of recommendations; and

wherein the set of recommendations are uploaded by the computer server to the web service module if the computer server is in the public mode;

wherein the recommendations comprise a MPI_Send bandwidth per process ID and a recommended type of interconnect between nodes.

13. The system of claim 12 , wherein the set of recommendations comprise compiler optimization settings.

14. The system of claim 12 , wherein the set of recommendations comprise library recommendations.

15. The system of claim 12 , wherein the set of recommendations comprise a performance spectrograph.

16. The system of claim 12 , wherein the set of recommendations comprise an amount of memory to allocate per node.

17. The system of claim 12 , wherein the set of recommendations comprise:

a number of GPUs to allocate per node;

a number of CPUs to allocate per node; and

a recommended type of interconnect between nodes.

18. A non-transitory, computer-readable storage medium storing instructions executable by a processor of a computational device, which when executed cause the computational device to:

prompt a user to specify a software target and a hardware target;

perform a hardware profiling test on the hardware target to obtain a first set of results;

perform a software profiling test on the software target to obtain a second set of results;

download prior result data from an external database of prior profiling test results;

make recommendations based on the first set of results, the second set of results, and the prior result data;

prompt the user to select either a public mode or a private mode; and

in response to determining that the public mode has been selected, uploading the first set of results and the second set of results to the external database of prior profiling test results;

wherein the recommendations comprise a MPI_Send bandwidth per process ID and a recommended type of interconnect between nodes.

Assignments (10)
RELEASE OF SECURITY INTEREST Recorded Aug 28, 2024
From: B. RILEY COMMERCIAL CAPITAL, LLC
To: CORE SCIENTIFIC, INC.; CORE SCIENTIFIC OPERATING COMPANY
Reel/Frame 068803/0146 →
RELEASE OF SECURITY INTEREST Recorded Jan 26, 2024
From: U.S. BANK NATIONAL ASSOCIATION, AS COLLATERAL AGENT
To: CORE SCIENTIFIC OPERATING COMPANY; CORE SCIENTIFIC ACQUIRED MINING LLC
Reel/Frame 066375/0324 →
SECURITY INTEREST Recorded Mar 1, 2023
From: CORE SCIENTIFIC, INC.; CORE SCIENTIFIC OPERATING COMPANY
To: B. RILEY COMMERCIAL CAPITAL, LLC
Reel/Frame 062899/0741 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 7, 2023
From: CORE SCIENTIFIC OPERATING COMPANY; CORE SCIENTIFIC, INC.
To: ADVANCED MICRO DEVICES, INC.
Reel/Frame 062669/0293 →
RELEASE OF SECURITY INTEREST Recorded Feb 3, 2023
From: WILMINGTON SAVINGS FUND SOCIETY, FSB
To: CORE SCIENTIFIC INC.; CORE SCIENTIFIC OPERATING COMPANY
Reel/Frame 063272/0450 →
SECURITY INTEREST Recorded Dec 23, 2022
From: CORE SCIENTIFIC OPERATING COMPANY; CORE SCIENTIFIC INC.
To: WILMINGTON SAVINGS FUND SOCIETY, FSB
Reel/Frame 062218/0713 →
CORRECTIVE ASSIGNMENT TO CORRECT THE INVENTOR'S NAME GABREL MARTIN WHICH SHOULD HAVE BEEN GABRIEL MARTIN PREVIOUSLY RECORDED AT REEL: 058733 FRAME: 0509. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded Jun 28, 2022
From: ALT, MAXIM; SOUZA, PAULO; MARTIN, GABRIEL
To: CORE SCIENTIFIC, INC.
Reel/Frame 060448/0632 →
CHANGE OF NAME Recorded Jun 2, 2022
From: CORE SCIENTIFIC, INC.
To: CORE SCIENTIFIC OPERATING COMPANY
Reel/Frame 060258/0485 →
SECURITY INTEREST Recorded Feb 10, 2022
From: CORE SCIENTIFIC OPERATING COMPANY; CORE SCIENTIFIC ACQUIRED MINING LLC
To: U.S. BANK NATIONAL ASSOCIATION, AS COLLATERAL AGENT
Reel/Frame 059004/0831 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 23, 2022
From: ALT, MAXIM; SOUZA, PAULO; MARTIN, GABREL
To: CORE SCIENTIFIC, INC.
Reel/Frame 058733/0509 →
Continuity (5)
Provisional Application 63066429 · Aug 17, 2020
Provisional Application 63065003 · Aug 13, 2020
Provisional Application 63061134 · Aug 4, 2020
Provisional Application 63054458 · Jul 21, 2020
Provisional Application 62990552 · Mar 17, 2020
Cited By (2)
US 12,314,695 US 12,664,500