From 27ae2d944aac9a7b03f08e80b866ed7cebb26a07 Mon Sep 17 00:00:00 2001 From: Michael McKinsey Date: Mon, 4 Nov 2024 17:21:02 -0600 Subject: [PATCH 1/3] Update notebooks --- notebooks/07_nsight_compute.ipynb | 4 ++-- notebooks/08A_composing_parallel_sorting_data.ipynb | 7 +++---- notebooks/08B_modeling_parallel_sorting_data.ipynb | 5 ++--- notebooks/09_tma_speedup_clustering.ipynb | 12 ++++++------ requirements.txt | 2 ++ 5 files changed, 15 insertions(+), 15 deletions(-) diff --git a/notebooks/07_nsight_compute.ipynb b/notebooks/07_nsight_compute.ipynb index c4385c73..83bbdb9a 100644 --- a/notebooks/07_nsight_compute.ipynb +++ b/notebooks/07_nsight_compute.ipynb @@ -384,7 +384,7 @@ }, { "cell_type": "code", - "execution_count": 50, + "execution_count": null, "id": "909bbd4e", "metadata": {}, "outputs": [], @@ -503,7 +503,7 @@ " else:\n", " ymin_ix_elbow=list()\n", " ymin_x_elbow=list()\n", - " for ix in range(1, x):\n", + " for ix in range(1, nx):\n", " if (ymin <= roof[1] * x[ix] and ymin > roof[1] * x[ix - 1]):\n", " ymin_x_elbow.append(x[ix - 1])\n", " ymin_ix_elbow.append(ix - 1)\n", diff --git a/notebooks/08A_composing_parallel_sorting_data.ipynb b/notebooks/08A_composing_parallel_sorting_data.ipynb index d819de09..4b394cdd 100644 --- a/notebooks/08A_composing_parallel_sorting_data.ipynb +++ b/notebooks/08A_composing_parallel_sorting_data.ipynb @@ -4,8 +4,7 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "# Composing & Modeling Parallel Sorting Performance Data\n", - "## Part A: Composing Parallel Sorting Data\n", + "# Composing Parallel Sorting Data - (Part A) Composing & Modeling Parallel Sorting Performance Data: Thicket Tutorial\n", "\n", "The parallel sorting dataset consists of 8,747 MPI sorting algorithm performance profiles (collected with [Caliper](https://software.llnl.gov/Caliper/)) for 5 different algorithms and 51 implementations.\n", "We start with a dataset that includes over 10,000 performance profiles, and we show how to apply various filters and checks on the performance data to remove profiles that do not match our criteria.\n", @@ -628,7 +627,7 @@ ], "metadata": { "kernelspec": { - "display_name": "thesis-3.11.9", + "display_name": "tk-3.9.12", "language": "python", "name": "python3" }, @@ -642,7 +641,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.11.9" + "version": "3.9.18" } }, "nbformat": 4, diff --git a/notebooks/08B_modeling_parallel_sorting_data.ipynb b/notebooks/08B_modeling_parallel_sorting_data.ipynb index f8c7053a..fa6742c1 100644 --- a/notebooks/08B_modeling_parallel_sorting_data.ipynb +++ b/notebooks/08B_modeling_parallel_sorting_data.ipynb @@ -4,8 +4,7 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "# Composing & Modeling Parallel Sorting Performance Data\n", - "## Part B: Modeling Parallel Sorting Data\n", + "# Modeling Parallel Sorting Data - (Part B) Composing & Modeling Parallel Sorting Performance Data: Thicket Tutorial\n", "\n", "In part B, we use machine learning to predict the parallel algorithm class from the performance data we processed and composed in part A. Running notebook `08A_composing_parallel_sorting_data.ipynb` is necessary to generate the data that we will use in this notebook.\n", "\n", @@ -489,7 +488,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.11.9" + "version": "3.9.18" } }, "nbformat": 4, diff --git a/notebooks/09_tma_speedup_clustering.ipynb b/notebooks/09_tma_speedup_clustering.ipynb index 994d773c..9b1fe430 100644 --- a/notebooks/09_tma_speedup_clustering.ipynb +++ b/notebooks/09_tma_speedup_clustering.ipynb @@ -4,7 +4,7 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "# RAJA Performance Suite Clustering Analysis\n", + "# RAJA Performance Suite Analysis: Thicket Tutorial\n", "\n", "In this notebook, we compose performance data from experiments using the RAJA Performance Suite on various hardware:\n", "\n", @@ -1423,7 +1423,7 @@ }, { "cell_type": "code", - "execution_count": 27, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ @@ -1490,7 +1490,7 @@ }, { "cell_type": "code", - "execution_count": 29, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ @@ -1568,7 +1568,7 @@ }, { "cell_type": "code", - "execution_count": 31, + "execution_count": null, "metadata": {}, "outputs": [], "source": [ @@ -1890,7 +1890,7 @@ ], "metadata": { "kernelspec": { - "display_name": "Python 3 (ipykernel)", + "display_name": "tk-3.9.12", "language": "python", "name": "python3" }, @@ -1904,7 +1904,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.11.5" + "version": "3.9.18" } }, "nbformat": 4, diff --git a/requirements.txt b/requirements.txt index 82fd0ba0..282d131d 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,5 +1,7 @@ git+https://github.com/LLNL/thicket.git@develop-2024-11-02 ipython==7.15.0 extrap +nbformat>=4.2.0 +plotly scikit-learn seaborn From 6e49e1140091d51194d938528335e63df4c42aa7 Mon Sep 17 00:00:00 2001 From: Michael McKinsey Date: Mon, 4 Nov 2024 17:50:32 -0600 Subject: [PATCH 2/3] Change default to static image --- notebooks/09_tma_speedup_clustering.ipynb | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/notebooks/09_tma_speedup_clustering.ipynb b/notebooks/09_tma_speedup_clustering.ipynb index 9b1fe430..ecaee52a 100644 --- a/notebooks/09_tma_speedup_clustering.ipynb +++ b/notebooks/09_tma_speedup_clustering.ipynb @@ -1760,7 +1760,8 @@ "\n", "#fig.write_image(\"images/par_coord_AVG_NO_OUTLIERS.png\")\n", "\n", - "fig.show()" + "#fig.show() # <- For interactive plot\n", + "fig.show(renderer=\"png\") # <- For static plot" ] }, { @@ -1884,7 +1885,8 @@ "\n", "#fig.write_image(\"images/par_coord_NO_OUTLIERS.png\")\n", "\n", - "fig.show()" + "#fig.show() # <- For interactive plot\n", + "fig.show(renderer=\"png\") # <- For static plot" ] } ], From 7f31f356215553b15c28a9d3a2098cc0f590a54c Mon Sep 17 00:00:00 2001 From: Michael McKinsey Date: Tue, 5 Nov 2024 15:37:44 -0600 Subject: [PATCH 3/3] Update titles --- notebooks/02_thicket_rajaperf_clustering.ipynb | 4 ++-- notebooks/08A_composing_parallel_sorting_data.ipynb | 2 +- notebooks/08B_modeling_parallel_sorting_data.ipynb | 2 +- notebooks/09_tma_speedup_clustering.ipynb | 2 +- 4 files changed, 5 insertions(+), 5 deletions(-) diff --git a/notebooks/02_thicket_rajaperf_clustering.ipynb b/notebooks/02_thicket_rajaperf_clustering.ipynb index 5293202e..86b1163f 100644 --- a/notebooks/02_thicket_rajaperf_clustering.ipynb +++ b/notebooks/02_thicket_rajaperf_clustering.ipynb @@ -14,7 +14,7 @@ "tags": [] }, "source": [ - "# Clustering RAJA Performance Suite Dataset: Thicket Tutorial\n", + "# HPDC '23: Optimization-Based K-means Clustering on the RAJA Performance Suite: Thicket Tutorial\n", "\n", "Thicket is a python-based toolkit for Exploratory Data Analysis (EDA) of parallel performance data that enables performance optimization and understanding of applications’ performance on supercomputers. It bridges the performance tool gap between being able to consider only a single instance of a simulation run (e.g., single platform, single measurement tool, or single scale) and finding actionable insights in multi-dimensional, multi-scale, multi-architecture, and multi-tool performance datasets.\n", "\n", @@ -1513,7 +1513,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.11.9" + "version": "3.11.7" }, "papermill": { "default_parameters": {}, diff --git a/notebooks/08A_composing_parallel_sorting_data.ipynb b/notebooks/08A_composing_parallel_sorting_data.ipynb index 4b394cdd..778f640f 100644 --- a/notebooks/08A_composing_parallel_sorting_data.ipynb +++ b/notebooks/08A_composing_parallel_sorting_data.ipynb @@ -4,7 +4,7 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "# Composing Parallel Sorting Data - (Part A) Composing & Modeling Parallel Sorting Performance Data: Thicket Tutorial\n", + "# PPAM '24: Composing & Modeling Parallel Sorting Performance Data (Part A): Thicket Tutorial\n", "\n", "The parallel sorting dataset consists of 8,747 MPI sorting algorithm performance profiles (collected with [Caliper](https://software.llnl.gov/Caliper/)) for 5 different algorithms and 51 implementations.\n", "We start with a dataset that includes over 10,000 performance profiles, and we show how to apply various filters and checks on the performance data to remove profiles that do not match our criteria.\n", diff --git a/notebooks/08B_modeling_parallel_sorting_data.ipynb b/notebooks/08B_modeling_parallel_sorting_data.ipynb index fa6742c1..5e99e094 100644 --- a/notebooks/08B_modeling_parallel_sorting_data.ipynb +++ b/notebooks/08B_modeling_parallel_sorting_data.ipynb @@ -4,7 +4,7 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "# Modeling Parallel Sorting Data - (Part B) Composing & Modeling Parallel Sorting Performance Data: Thicket Tutorial\n", + "# PPAM '24: Composing & Modeling Parallel Sorting Performance Data (Part B): Thicket Tutorial\n", "\n", "In part B, we use machine learning to predict the parallel algorithm class from the performance data we processed and composed in part A. Running notebook `08A_composing_parallel_sorting_data.ipynb` is necessary to generate the data that we will use in this notebook.\n", "\n", diff --git a/notebooks/09_tma_speedup_clustering.ipynb b/notebooks/09_tma_speedup_clustering.ipynb index ecaee52a..c329fda2 100644 --- a/notebooks/09_tma_speedup_clustering.ipynb +++ b/notebooks/09_tma_speedup_clustering.ipynb @@ -4,7 +4,7 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "# RAJA Performance Suite Analysis: Thicket Tutorial\n", + "# P3HPC '24: Top Down and Hierarchical Clustering on the RAJA Performance Suite: Thicket Tutorial\n", "\n", "In this notebook, we compose performance data from experiments using the RAJA Performance Suite on various hardware:\n", "\n",