Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Qualification: fix sorting and add unit-tests script #5869

Merged
merged 5 commits into from
Jun 24, 2022
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions tools/.gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -6,3 +6,5 @@ event_log_profiling.log
**/ui/assets/
**/ui-dependencies-cache/
**/ui/js/data-output.js
## ignore output folders of the test scripts
**/dev/qualification-output/
186 changes: 0 additions & 186 deletions tools/src/main/resources/ui/html/application.html
Original file line number Diff line number Diff line change
Expand Up @@ -182,192 +182,6 @@
</main>
</div>
</div>
<!-- Dynamic code replacement using Mustache -->
<script id="app-report-page-header-template" type="text/template">
<h1 class="dash-title">App Details: {{appInfo.appName}} {{{extension.badgeWrapper}}}</h1>
<!-- place disclaimer at the top of the page, before showing results -->
<div class="row">
<div class="col-lg-8">
<div class="alert alert-warning alert-dismissible fade show" role="alert">
<svg width="1.2em" height="1.2em" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M8 6.5V10M8 11.0001V12.0001M8 2L14.5 13.4983H1.5L8 2Z" stroke="black"/>
</svg>
<strong>Disclaimer!</strong><ul>
<li>Estimates provided by the Qualification tool are based on the currently supported "<em>SparkPlan</em>" or "<em>Executor Nodes</em>" used in the application. It currently does not look at the expressions or datatypes used.</li>
<li>Please refer to the <a href="https://nvidia.github.io/spark-rapids/docs/supported_ops.html">Supported Operators</a> guide to check the types and expressions you are using are supported.</li></ul>
<button type="button" class="close" data-dismiss="alert" aria-label="Close">
<span aria-hidden="true">&times;</span>
</button>
</div>
</div>
</div>
<div class="row">
<div class="col-lg-4">
<div class="stats stats-primary">
<h3 class="stats-title"> App Duration </h3>
<div class="stats-content">
<div class="stats-icon">
<svg width="1.05em" height="1.05em" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M6.96447 4.13534L8 8L11.8647 9.03553M14.5 8C14.5 11.5899 11.5899 14.5 8 14.5C4.41015 14.5 1.5 11.5899 1.5 8C1.5 4.41015 4.41015 1.5 8 1.5C11.5899 1.5 14.5 4.41015 14.5 8Z" stroke="white"/>
</svg>
</div>
<div class="stats-data">
<div class="stats-number">{{appInfo.timing.appDuration}}</div>
<div class="stats-change">
<span class="stats-percentage">{{appInfo.timing.startTime}}</span>
<span class="stats-timeframe">Start</span>
</div>
<div class="stats-change">
<span class="stats-percentage">{{appInfo.timing.endTime}}</span>
<span class="stats-timeframe">End</span>
</div>
</div>
</div>
</div>
</div>
<div class="col-lg-4">
<div class="stats stats-primary">
<h3 class="stats-title"> GPU Opportunity </h3>
<div class="stats-content">
<div class="stats-icon">
<svg width="1.05em" height="1.05em" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
<g clip-path="url(#clip0_2_1921)">
<path d="M8.5 7.99V8L2.5 11.5V4.5L8.5 7.99Z" stroke="white"/>
<path d="M14.5 8L8.5 11.5V4.5L14.5 8Z" stroke="white"/>
</g>
<defs>
<clipPath id="clip0_2_1921">
<rect width="1.05em" height="1.05em" fill="white"/>
</clipPath>
</defs>
</svg>
</div>
<div class="stats-data">
<div class="stats-number">{{appInfo.timing.gpuOpportunity}}</div>
<div class="stats-change">
<span class="stats-percentage">{{appInfo.timing.sqlDFDuration}}</span>
<span class="stats-timeframe">SQL DF Duration</span>
</div>
<div class="stats-change">
<span class="stats-percentage">{{appInfo.taskSpeedupFactor}}</span>
<span class="stats-timeframe">Task Speed-up Factor</span>
</div>
</div>
</div>
</div>
</div>
<div class="col-lg-4">
<div class="stats stats-primary">
<h3 class="stats-title"> Estimated GPU Duration </h3>
<div class="stats-content">
<div class="stats-icon">
<i>
<svg width="1.05em" height="1.05em" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M12.5 14.5V12.5L9.90192 8L12.5 3.5V1.5H3.5V3.5L6.09808 8L3.5 12.5V14.5H12.5Z" stroke="white"/>
<path d="M3.5 12.5H12.5" stroke="white"/>
<path d="M12.5 3.5H3.5" stroke="white"/>
</svg>
</i>
</div>
<div class="stats-data">
<div class="stats-number">{{appInfo.timing.estimatedGPUDuration}}</div>
<div class="stats-change">
<span class="stats-percentage">{{appInfo.timing.estimatedGPUTimeSaved}}</span>
<span class="stats-timeframe">Time Saved</span>
</div>
<div class="stats-change">
<span class="stats-percentage">{{appInfo.estimatedSpeedup}}</span>
<span class="stats-timeframe">App Speed-up</span>
</div>
</div>
</div>
</div>
</div>
</div>
</script>

<script id="app-details-table-template" type="text/template">
<div id="all-apps-raw-data">
<table id="all-apps-raw-data-table" class="table data-table display wrap" style="width:100%">
<thead>
<tr>
{{#displayCol_appName}}
<th>App Name</th>
{{/displayCol_appName}}
<th>App ID</th>
<th>User</th>
<th>Start Time</th>
<th>Recommendation</th>
<th>Estimated GPU Speedup</th>
<th>App Duration</th>
<th>Estimated GPU Duration</th>
<th>Estimated GPU Time Saved</th>
<th>Task Speed-up Factor</th>
<th>SQL DF Duration</th>
<th>GPU Opportunity</th>
<th>Unsupported Task Duration</th>
<th>Supported SQL DF Task Duration</th>
<th>SQL Dataframe Task Duration</th>
<th>Executor CPU Time Percent</th>
<th>Longest SQL Duration</th>
<th>NONSQL Task Duration Plus Overhead</th>
<th>App Duration Estimated</th>
<th>SQL Ids with Failures</th>
<th>Potential Problems</th>
<th>Unsupported Read File Formats and Types</th>
<th>Unsupported Write Data Format</th>
<th>Complex Types</th>
<th>Nested Complex Types</th>
<th>Read Schema</th>
</tr>
</thead>
</table>
</div>
</script>

<script id="app-stages-details-table-template" type="text/template">
<div id="app-stages-raw-data">
<table id="app-stages-raw-data-table" class="table data-table display wrap" style="width:100%">
<thead>
<tr>
{{#displayCol_appID}}
<th>App ID</th>
{{/displayCol_appID}}
<th>Stage ID</th>
<th>Average Speedup Factor</th>
<th>Stage Task Duration</th>
<th>Unsupported Task Duration</th>
<th>Stage Estimated</th>
</tr>
</thead>
</table>
</div>
</script>

<script id="app-execs-details-table-template" type="text/template">
<div id="app-execs-raw-data">
<table id="app-execs-raw-data-table" class="table data-table display wrap" style="width:100%">
<thead>
<tr>
{{#displayCol_appID}}
<th>App ID</th>
{{/displayCol_appID}}
<th>SQL ID</th>
<th>Exec Name</th>
<th>Expression Name</th>
<th>Exec Is Supported</th>
<th>Speed-up Factor</th>
<th>Exec Duration</th>
<th>SQL Node Id</th>
<th>Stages</th>
<th>Exec Children</th>
<th>Exec Children Node Ids</th>
<th>Is Removed</th>
</tr>
</thead>
</table>
</div>
</script>

<script src="../js/data-output.js"></script>
<script src="../js/ui-config.js"></script>
Expand Down
101 changes: 0 additions & 101 deletions tools/src/main/resources/ui/html/index.html
Original file line number Diff line number Diff line change
Expand Up @@ -180,107 +180,6 @@ <h1 class="dash-title">Qualification Tool</h1>
</div>
</div>

<script id="gpu-recommendation-table-template" type="text/template">
<div id="apps-recommendations-data">
<table id="gpu-recommendation-table" class="table display" style="width:100%">
<thead>
<tr>
<th></th>
<th>
App Name
</th>
<th>
App ID
</th>
<th>
Recommendation
</th>
<th>
Estimated Speed-up
</th>
<th>
App Duration
</th>
</tr>
</thead>
</table>
</div>
</script>

<script id="qual-report-summary-template" type="text/template">
<div class="row dash-row">
<div class="col-xl-4">
<div class="stats stats-primary">
<h3 class="stats-title"> {{totalApps.header}} </h3>
<div class="stats-content">
<div class="stats-icon">
<svg width="1.05em" height="1.05em" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M6.5 13.5V10.5H3.5V13.5H6.5ZM6.5 13.5H9.5M6.5 13.5V6.5H9.5V13.5M9.5 13.5H12.5V2.5H9.5V13.5Z" stroke="white"/>
</svg>
</div>
<div class="stats-data">
<div class="stats-number"> {{totalApps.numeric}}</div>
<div class="stats-change">
<span class="stats-percentage"> {{totalApps.totalAppsDurations}} </span>
<span class="stats-timeframe"> {{totalApps.totalAppsDurationLabel}} </span>
</div>
</div>
</div>
</div>
</div>
<div class="col-xl-4">
<div class="stats stats-success ">
<h3 class="stats-title"> {{candidates.header}} </h3>
<div class="stats-content">
<div class="stats-icon">
<svg width="1.05em" height="1.05em" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M1.5 6.5H2V9.5H1.5M6.5 1.5V2H9.5V1.5M14.5 6.5H14V9.5H14.5M6.5 14.5V14H9.5V14.5M14.5 14.5H1.5V1.5H14.5V14.5ZM4.5 4.5H5.5V5.5H4.5V4.5ZM4.5 7.5H5.5V8.5H4.5V7.5ZM4.5 10.5H5.5V11.5H4.5V10.5ZM7.5 4.5H8.5V5.5H7.5V4.5ZM7.5 7.5H8.5V8.5H7.5V7.5ZM7.5 10.5H8.5V11.5H7.5V10.5ZM10.5 4.5H11.5V5.5H10.5V4.5ZM10.5 7.5H11.5V8.5H10.5V7.5ZM10.5 10.5H11.5V11.5H10.5V10.5Z" stroke="white"/>
</svg>
</div>
<div class="stats-data">
<div class="stats-number"> {{candidates.numeric}} </div>
<div class="stats-change">
<span class="stats-percentage"> {{candidates.statsPercentage}} </span>
<span class="stats-timeframe"> {{candidates.statsTimeFrame}} </span>
</div>
</div>
</div>
</div>
</div>
<div class="col-xl-4">
<div class="stats stats-info">
<h3 class="stats-title"> {{speedups.header}} </h3>
<div class="stats-content">
<div class="stats-icon">
<svg width="1.05em" height="1.05em" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
<g clip-path="url(#clip0_2_1921)">
<path d="M8.5 7.99V8L2.5 11.5V4.5L8.5 7.99Z" stroke="white"/>
<path d="M14.5 8L8.5 11.5V4.5L14.5 8Z" stroke="white"/>
</g>
<defs>
<clipPath id="clip0_2_1921">
<rect width="1.05em" height="1.05em" fill="white"/>
</clipPath>
</defs>
</svg>
</div>
<div class="stats-data">
<div class="stats-number"> {{speedups.numeric}} </div>
<div class="stats-change">
<span class="stats-percentage"> {{speedups.totalSqlDataframeTaskDuration}} </span>
<span class="stats-timeframe"> {{speedups.totalSqlDFDurationsLabel}} </span>
</div>
<div class="stats-change">
<span class="stats-percentage"> {{speedups.statsPercentage}} </span>
<span class="stats-timeframe"> {{speedups.statsTimeFrame}} </span>
</div>
</div>
</div>
</div>
</div>
</div>
</script>

<script src="../js/data-output.js"></script>
<script src="../js/ui-config.js"></script>
<script src="../js/uiutils.js"></script>
Expand Down
39 changes: 0 additions & 39 deletions tools/src/main/resources/ui/html/raw.html
Original file line number Diff line number Diff line change
Expand Up @@ -161,45 +161,6 @@ <h1 class="dash-title">Full Report</h1>
</div>
</div>

<script id="app-details-table-template" type="text/template">
<div id="all-apps-raw-data">
<table id="all-apps-raw-data-table" class="table data-table display wrap" style="width:100%">
<thead>
<tr>
{{#displayCol_appName}}
<th>App Name</th>
{{/displayCol_appName}}
<th>App ID</th>
<th>User</th>
<th>Start Time</th>
<th>Recommendation</th>
<th>Estimated GPU Speedup</th>
<th>App Duration</th>
<th>Estimated GPU Duration</th>
<th>Estimated GPU Time Saved</th>
<th>Task Speed-up Factor</th>
<th>SQL DF Duration</th>
<th>GPU Opportunity</th>
<th>Unsupported Task Duration</th>
<th>Supported SQL DF Task Duration</th>
<th>SQL Dataframe Task Duration</th>
<th>Executor CPU Time Percent</th>
<th>Longest SQL Duration</th>
<th>NONSQL Task Duration Plus Overhead</th>
<th>App Duration Estimated</th>
<th>SQL Ids with Failures</th>
<th>Potential Problems</th>
<th>Unsupported Read File Formats and Types</th>
<th>Unsupported Write Data Format</th>
<th>Complex Types</th>
<th>Nested Complex Types</th>
<th>Read Schema</th>
</tr>
</thead>
</table>
</div>
</script>

<!-- loading our own Javascripts -->
<script src="../js/data-output.js"></script>
<script src="../js/ui-config.js"></script>
Expand Down
Loading