Upload 2 files
Browse files- index.html +433 -16
- performance_data.json +446 -0
index.html
CHANGED
|
@@ -1,16 +1,433 @@
|
|
| 1 |
-
<!
|
| 2 |
-
<html>
|
| 3 |
-
|
| 4 |
-
|
| 5 |
-
|
| 6 |
-
|
| 7 |
-
|
| 8 |
-
|
| 9 |
-
|
| 10 |
-
|
| 11 |
-
|
| 12 |
-
|
| 13 |
-
|
| 14 |
-
|
| 15 |
-
|
| 16 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
<!DOCTYPE html>
|
| 2 |
+
<html lang="en">
|
| 3 |
+
<head>
|
| 4 |
+
<meta charset="UTF-8">
|
| 5 |
+
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
| 6 |
+
<title>Sampler/Scheduler Performance Matrix</title>
|
| 7 |
+
<script src="https://cdn.tailwindcss.com"></script>
|
| 8 |
+
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.0/css/all.min.css">
|
| 9 |
+
<style>
|
| 10 |
+
.heatmap-cell {
|
| 11 |
+
transition: all 0.2s ease;
|
| 12 |
+
position: relative;
|
| 13 |
+
}
|
| 14 |
+
.heatmap-cell:hover {
|
| 15 |
+
transform: scale(1.05);
|
| 16 |
+
box-shadow: 0 0 10px rgba(0,0,0,0.2);
|
| 17 |
+
z-index: 10;
|
| 18 |
+
}
|
| 19 |
+
.heatmap-cell:hover::after {
|
| 20 |
+
content: attr(data-value);
|
| 21 |
+
position: absolute;
|
| 22 |
+
top: -30px;
|
| 23 |
+
left: 50%;
|
| 24 |
+
transform: translateX(-50%);
|
| 25 |
+
background: #333;
|
| 26 |
+
color: white;
|
| 27 |
+
padding: 4px 8px;
|
| 28 |
+
border-radius: 4px;
|
| 29 |
+
font-size: 12px;
|
| 30 |
+
white-space: nowrap;
|
| 31 |
+
z-index: 20;
|
| 32 |
+
}
|
| 33 |
+
.sticky-header {
|
| 34 |
+
position: sticky;
|
| 35 |
+
top: 0;
|
| 36 |
+
z-index: 20;
|
| 37 |
+
background-color: white;
|
| 38 |
+
}
|
| 39 |
+
.sticky-col {
|
| 40 |
+
position: sticky;
|
| 41 |
+
left: 0;
|
| 42 |
+
z-index: 10;
|
| 43 |
+
background-color: white;
|
| 44 |
+
}
|
| 45 |
+
.scroll-container {
|
| 46 |
+
max-height: 80vh;
|
| 47 |
+
overflow: auto;
|
| 48 |
+
}
|
| 49 |
+
.color-scale {
|
| 50 |
+
background: linear-gradient(90deg, #f0fff4, #9ae6b4, #48bb78, #f6e05e, #f6ad55, #f56565);
|
| 51 |
+
}
|
| 52 |
+
</style>
|
| 53 |
+
</head>
|
| 54 |
+
<body class="bg-gray-50 font-sans">
|
| 55 |
+
<div class="container mx-auto px-4 py-8">
|
| 56 |
+
<div class="flex flex-col md:flex-row justify-between items-start md:items-center mb-8 gap-4">
|
| 57 |
+
<div>
|
| 58 |
+
<h1 class="text-3xl font-bold text-gray-800 mb-2">Sampler/Scheduler Performance Matrix</h1>
|
| 59 |
+
<p class="text-gray-600">Visualizing execution speed across different combinations</p>
|
| 60 |
+
</div>
|
| 61 |
+
<div class="flex items-center gap-4">
|
| 62 |
+
<div class="relative">
|
| 63 |
+
<input type="text" id="searchInput" placeholder="Search samplers..."
|
| 64 |
+
class="pl-10 pr-4 py-2 border rounded-lg focus:outline-none focus:ring-2 focus:ring-blue-500">
|
| 65 |
+
<i class="fas fa-search absolute left-3 top-3 text-gray-400"></i>
|
| 66 |
+
</div>
|
| 67 |
+
<div class="flex items-center gap-2">
|
| 68 |
+
<span class="text-sm text-gray-600">Performance:</span>
|
| 69 |
+
<div class="flex items-center">
|
| 70 |
+
<span class="text-xs mr-1">Fast</span>
|
| 71 |
+
<div class="w-24 h-4 rounded-full color-scale"></div>
|
| 72 |
+
<span class="text-xs ml-1">Slow</span>
|
| 73 |
+
</div>
|
| 74 |
+
</div>
|
| 75 |
+
</div>
|
| 76 |
+
</div>
|
| 77 |
+
|
| 78 |
+
<div class="bg-white rounded-xl shadow-md overflow-hidden">
|
| 79 |
+
<div class="p-4 border-b">
|
| 80 |
+
<div class="flex justify-between items-center">
|
| 81 |
+
<h2 class="text-xl font-semibold text-gray-700">Performance Metrics (iterations/sec)</h2>
|
| 82 |
+
<div class="flex items-center gap-2">
|
| 83 |
+
<button id="toggleHeatmap" class="px-3 py-1 bg-blue-100 text-blue-600 rounded-md text-sm hover:bg-blue-200 transition">
|
| 84 |
+
<i class="fas fa-fire mr-1"></i> Toggle Heatmap
|
| 85 |
+
</button>
|
| 86 |
+
</div>
|
| 87 |
+
</div>
|
| 88 |
+
</div>
|
| 89 |
+
|
| 90 |
+
<div class="scroll-container">
|
| 91 |
+
<table class="w-full">
|
| 92 |
+
<thead>
|
| 93 |
+
<tr class="sticky-header">
|
| 94 |
+
<th class="sticky-col p-3 text-left font-medium text-gray-700 bg-white border-r min-w-[180px]">Sampler \ Scheduler</th>
|
| 95 |
+
<th class="p-3 text-center font-medium text-gray-700 bg-white border-b">beta</th>
|
| 96 |
+
<th class="p-3 text-center font-medium text-gray-700 bg-white border-b">beta57</th>
|
| 97 |
+
<th class="p-3 text-center font-medium text-gray-700 bg-white border-b">ddim_uniform</th>
|
| 98 |
+
<th class="p-3 text-center font-medium text-gray-700 bg-white border-b">exponential</th>
|
| 99 |
+
<th class="p-3 text-center font-medium text-gray-700 bg-white border-b">kl_optimal</th>
|
| 100 |
+
<th class="p-3 text-center font-medium text-gray-700 bg-white border-b">karras</th>
|
| 101 |
+
<th class="p-3 text-center font-medium text-gray-700 bg-white border-b">linear_quadratic</th>
|
| 102 |
+
<th class="p-3 text-center font-medium text-gray-700 bg-white border-b">normal</th>
|
| 103 |
+
<th class="p-3 text-center font-medium text-gray-700 bg-white border-b">sgm_uniform</th>
|
| 104 |
+
<th class="p-3 text-center font-medium text-gray-700 bg-white border-b">simple</th>
|
| 105 |
+
</tr>
|
| 106 |
+
</thead>
|
| 107 |
+
<tbody id="matrixBody">
|
| 108 |
+
<!-- Table content will be generated by JavaScript -->
|
| 109 |
+
</tbody>
|
| 110 |
+
</table>
|
| 111 |
+
</div>
|
| 112 |
+
</div>
|
| 113 |
+
|
| 114 |
+
<div class="mt-8 bg-white rounded-xl shadow-md p-6">
|
| 115 |
+
<h2 class="text-xl font-semibold text-gray-700 mb-4">Performance Insights</h2>
|
| 116 |
+
<div class="grid grid-cols-1 md:grid-cols-3 gap-6">
|
| 117 |
+
<div class="bg-blue-50 p-4 rounded-lg">
|
| 118 |
+
<div class="flex items-center mb-2">
|
| 119 |
+
<div class="w-8 h-8 bg-blue-100 rounded-full flex items-center justify-center mr-3">
|
| 120 |
+
<i class="fas fa-trophy text-blue-500"></i>
|
| 121 |
+
</div>
|
| 122 |
+
<h3 class="font-medium text-gray-700">Top Performer</h3>
|
| 123 |
+
</div>
|
| 124 |
+
<p class="text-gray-600 text-sm" id="topPerformer">Loading...</p>
|
| 125 |
+
</div>
|
| 126 |
+
<div class="bg-green-50 p-4 rounded-lg">
|
| 127 |
+
<div class="flex items-center mb-2">
|
| 128 |
+
<div class="w-8 h-8 bg-green-100 rounded-full flex items-center justify-center mr-3">
|
| 129 |
+
<i class="fas fa-star text-green-500"></i>
|
| 130 |
+
</div>
|
| 131 |
+
<h3 class="font-medium text-gray-700">Most Consistent</h3>
|
| 132 |
+
</div>
|
| 133 |
+
<p class="text-gray-600 text-sm" id="mostConsistent">Loading...</p>
|
| 134 |
+
</div>
|
| 135 |
+
<div class="bg-red-50 p-4 rounded-lg">
|
| 136 |
+
<div class="flex items-center mb-2">
|
| 137 |
+
<div class="w-8 h-8 bg-red-100 rounded-full flex items-center justify-center mr-3">
|
| 138 |
+
<i class="fas fa-snail text-red-500"></i>
|
| 139 |
+
</div>
|
| 140 |
+
<h3 class="font-medium text-gray-700">Slowest</h3>
|
| 141 |
+
</div>
|
| 142 |
+
<p class="text-gray-600 text-sm" id="slowest">Loading...</p>
|
| 143 |
+
</div>
|
| 144 |
+
</div>
|
| 145 |
+
</div>
|
| 146 |
+
</div>
|
| 147 |
+
|
| 148 |
+
<script>
|
| 149 |
+
// Global variables to store data and min/max values
|
| 150 |
+
let performanceData = {};
|
| 151 |
+
let minValue = Infinity;
|
| 152 |
+
let maxValue = -Infinity;
|
| 153 |
+
let heatmapEnabled = true; // Keep track of heatmap state
|
| 154 |
+
|
| 155 |
+
// Calculate color based on value
|
| 156 |
+
function getColor(value) {
|
| 157 |
+
if (!heatmapEnabled || !isFinite(minValue) || !isFinite(maxValue) || minValue === maxValue) {
|
| 158 |
+
return 'bg-white'; // Return white if heatmap disabled or invalid range
|
| 159 |
+
}
|
| 160 |
+
const normalized = (value - minValue) / (maxValue - minValue);
|
| 161 |
+
|
| 162 |
+
// Adjusted color scale (more distinct colors)
|
| 163 |
+
if (normalized < 0.1) return 'bg-emerald-200'; // Very Fast
|
| 164 |
+
if (normalized < 0.25) return 'bg-green-300'; // Fast
|
| 165 |
+
if (normalized < 0.5) return 'bg-yellow-200'; // Average
|
| 166 |
+
if (normalized < 0.75) return 'bg-orange-300'; // Slowish
|
| 167 |
+
return 'bg-red-400'; // Slow
|
| 168 |
+
}
|
| 169 |
+
|
| 170 |
+
// Generate table rows
|
| 171 |
+
function generateTable() {
|
| 172 |
+
const matrixBody = document.getElementById('matrixBody');
|
| 173 |
+
if (!matrixBody) return; // Guard clause
|
| 174 |
+
matrixBody.innerHTML = ''; // Clear previous content
|
| 175 |
+
|
| 176 |
+
const schedulers = Object.keys(performanceData[Object.keys(performanceData)[0]] || {}); // Get scheduler names reliably
|
| 177 |
+
|
| 178 |
+
// Update table header dynamically (optional, but good practice)
|
| 179 |
+
const headerRow = document.querySelector('thead tr');
|
| 180 |
+
// Clear existing scheduler headers (skip the first 'Sampler \ Scheduler' th)
|
| 181 |
+
while (headerRow.children.length > 1) {
|
| 182 |
+
headerRow.removeChild(headerRow.lastChild);
|
| 183 |
+
}
|
| 184 |
+
// Add new scheduler headers
|
| 185 |
+
schedulers.forEach(scheduler => {
|
| 186 |
+
const th = document.createElement('th');
|
| 187 |
+
th.className = "p-3 text-center font-medium text-gray-700 bg-white border-b";
|
| 188 |
+
th.textContent = scheduler;
|
| 189 |
+
headerRow.appendChild(th);
|
| 190 |
+
});
|
| 191 |
+
|
| 192 |
+
|
| 193 |
+
// Generate table body rows
|
| 194 |
+
for (const sampler in performanceData) {
|
| 195 |
+
const row = document.createElement('tr');
|
| 196 |
+
row.className = 'sampler-row hover:bg-gray-50';
|
| 197 |
+
|
| 198 |
+
// Sampler name cell
|
| 199 |
+
const samplerCell = document.createElement('td');
|
| 200 |
+
samplerCell.className = 'sticky-col p-3 text-left font-medium text-gray-700 bg-white border-r';
|
| 201 |
+
samplerCell.textContent = sampler;
|
| 202 |
+
row.appendChild(samplerCell);
|
| 203 |
+
|
| 204 |
+
// Scheduler cells
|
| 205 |
+
schedulers.forEach(scheduler => {
|
| 206 |
+
const value = performanceData[sampler][scheduler];
|
| 207 |
+
const cell = document.createElement('td');
|
| 208 |
+
cell.className = `heatmap-cell p-3 text-center border-b ${getColor(value)}`;
|
| 209 |
+
cell.textContent = value !== undefined ? value.toFixed(2) : '-'; // Handle missing data
|
| 210 |
+
if (value !== undefined) {
|
| 211 |
+
cell.setAttribute('data-value', `${sampler} + ${scheduler}: ${value.toFixed(2)} s`); // Updated tooltip text
|
| 212 |
+
} else {
|
| 213 |
+
cell.setAttribute('data-value', `${sampler} + ${scheduler}: N/A`);
|
| 214 |
+
}
|
| 215 |
+
row.appendChild(cell);
|
| 216 |
+
});
|
| 217 |
+
|
| 218 |
+
matrixBody.appendChild(row);
|
| 219 |
+
}
|
| 220 |
+
}
|
| 221 |
+
|
| 222 |
+
// Find performance insights
|
| 223 |
+
function calculateInsights() {
|
| 224 |
+
if (Object.keys(performanceData).length === 0) return; // No data
|
| 225 |
+
|
| 226 |
+
let topPerformer = { value: Infinity, sampler: '', scheduler: '' }; // Lower is faster
|
| 227 |
+
let slowest = { value: -Infinity, sampler: '', scheduler: '' }; // Higher is slower
|
| 228 |
+
const consistency = {};
|
| 229 |
+
minValue = Infinity;
|
| 230 |
+
maxValue = -Infinity;
|
| 231 |
+
|
| 232 |
+
for (const sampler in performanceData) {
|
| 233 |
+
let samplerValues = [];
|
| 234 |
+
let samplerSum = 0;
|
| 235 |
+
let samplerCount = 0;
|
| 236 |
+
|
| 237 |
+
for (const scheduler in performanceData[sampler]) {
|
| 238 |
+
const value = performanceData[sampler][scheduler];
|
| 239 |
+
if (value === undefined || value === null) continue; // Skip missing values
|
| 240 |
+
|
| 241 |
+
samplerValues.push(value);
|
| 242 |
+
samplerSum += value;
|
| 243 |
+
samplerCount++;
|
| 244 |
+
|
| 245 |
+
// Find overall min/max for color scale
|
| 246 |
+
if (value < minValue) minValue = value;
|
| 247 |
+
if (value > maxValue) maxValue = value;
|
| 248 |
+
|
| 249 |
+
// Check for top performer (lowest time)
|
| 250 |
+
if (value < topPerformer.value) {
|
| 251 |
+
topPerformer = { value, sampler, scheduler };
|
| 252 |
+
}
|
| 253 |
+
|
| 254 |
+
// Check for slowest (highest time)
|
| 255 |
+
if (value > slowest.value) {
|
| 256 |
+
slowest = { value, sampler, scheduler };
|
| 257 |
+
}
|
| 258 |
+
}
|
| 259 |
+
|
| 260 |
+
if (samplerCount > 0) {
|
| 261 |
+
// Calculate standard deviation for consistency
|
| 262 |
+
const mean = samplerSum / samplerCount;
|
| 263 |
+
let variance = 0;
|
| 264 |
+
samplerValues.forEach(v => {
|
| 265 |
+
variance += Math.pow(v - mean, 2);
|
| 266 |
+
});
|
| 267 |
+
variance /= samplerCount;
|
| 268 |
+
const stdDev = Math.sqrt(variance);
|
| 269 |
+
consistency[sampler] = { stdDev, mean };
|
| 270 |
+
}
|
| 271 |
+
}
|
| 272 |
+
|
| 273 |
+
// Find most consistent sampler (lowest std deviation relative to mean, Coefficient of Variation)
|
| 274 |
+
let mostConsistent = { cv: Infinity, sampler: '' };
|
| 275 |
+
for (const sampler in consistency) {
|
| 276 |
+
if (consistency[sampler].mean > 0) { // Avoid division by zero
|
| 277 |
+
const cv = consistency[sampler].stdDev / consistency[sampler].mean;
|
| 278 |
+
if (cv < mostConsistent.cv) {
|
| 279 |
+
mostConsistent = { cv, sampler, stdDev: consistency[sampler].stdDev };
|
| 280 |
+
}
|
| 281 |
+
} else if (consistency[sampler].stdDev === 0 && mostConsistent.cv > 0) {
|
| 282 |
+
// Handle cases with zero mean and zero deviation (perfectly consistent)
|
| 283 |
+
mostConsistent = { cv: 0, sampler, stdDev: 0 };
|
| 284 |
+
}
|
| 285 |
+
}
|
| 286 |
+
|
| 287 |
+
// Update DOM - check if elements exist before updating
|
| 288 |
+
const topPerformerEl = document.getElementById('topPerformer');
|
| 289 |
+
const mostConsistentEl = document.getElementById('mostConsistent');
|
| 290 |
+
const slowestEl = document.getElementById('slowest');
|
| 291 |
+
|
| 292 |
+
if (topPerformerEl) {
|
| 293 |
+
topPerformerEl.textContent = isFinite(topPerformer.value)
|
| 294 |
+
? `${topPerformer.sampler} + ${topPerformer.scheduler}: ${topPerformer.value.toFixed(2)} s`
|
| 295 |
+
: 'N/A';
|
| 296 |
+
}
|
| 297 |
+
|
| 298 |
+
if (mostConsistentEl) {
|
| 299 |
+
mostConsistentEl.textContent = isFinite(mostConsistent.cv)
|
| 300 |
+
? `${mostConsistent.sampler} (StdDev: ${mostConsistent.stdDev.toFixed(2)}, CV: ${mostConsistent.cv.toFixed(2)})`
|
| 301 |
+
: 'N/A';
|
| 302 |
+
}
|
| 303 |
+
|
| 304 |
+
if (slowestEl) {
|
| 305 |
+
slowestEl.textContent = isFinite(slowest.value)
|
| 306 |
+
? `${slowest.sampler} + ${slowest.scheduler}: ${slowest.value.toFixed(2)} s`
|
| 307 |
+
: 'N/A';
|
| 308 |
+
}
|
| 309 |
+
}
|
| 310 |
+
|
| 311 |
+
// Toggle heatmap colors
|
| 312 |
+
function toggleHeatmap() {
|
| 313 |
+
heatmapEnabled = !heatmapEnabled;
|
| 314 |
+
const cells = document.querySelectorAll('.heatmap-cell');
|
| 315 |
+
cells.forEach(cell => {
|
| 316 |
+
// Remove all existing background color classes before applying the new one
|
| 317 |
+
cell.classList.remove('bg-emerald-200', 'bg-green-300', 'bg-yellow-200', 'bg-orange-300', 'bg-red-400', 'bg-white');
|
| 318 |
+
|
| 319 |
+
if (heatmapEnabled) {
|
| 320 |
+
const valueText = cell.textContent;
|
| 321 |
+
// Check if the cell contains a valid number before parsing
|
| 322 |
+
if (valueText && valueText !== '-' && !isNaN(parseFloat(valueText))) {
|
| 323 |
+
const value = parseFloat(valueText);
|
| 324 |
+
cell.classList.add(getColor(value));
|
| 325 |
+
} else {
|
| 326 |
+
cell.classList.add('bg-gray-100'); // Indicate missing data visually
|
| 327 |
+
}
|
| 328 |
+
} else {
|
| 329 |
+
cell.classList.add('bg-white');
|
| 330 |
+
}
|
| 331 |
+
});
|
| 332 |
+
|
| 333 |
+
// Update button appearance
|
| 334 |
+
const toggleButton = document.getElementById('toggleHeatmap');
|
| 335 |
+
if (toggleButton) {
|
| 336 |
+
if (heatmapEnabled) {
|
| 337 |
+
toggleButton.innerHTML = '<i class="fas fa-ban mr-1"></i> Disable Heatmap';
|
| 338 |
+
toggleButton.classList.replace('bg-red-100', 'bg-blue-100');
|
| 339 |
+
toggleButton.classList.replace('text-red-600', 'text-blue-600');
|
| 340 |
+
toggleButton.classList.replace('hover:bg-red-200', 'hover:bg-blue-200');
|
| 341 |
+
} else {
|
| 342 |
+
toggleButton.innerHTML = '<i class="fas fa-fire mr-1"></i> Enable Heatmap';
|
| 343 |
+
toggleButton.classList.replace('bg-blue-100', 'bg-red-100');
|
| 344 |
+
toggleButton.classList.replace('text-blue-600', 'text-red-600');
|
| 345 |
+
toggleButton.classList.replace('hover:bg-blue-200', 'hover:bg-red-200');
|
| 346 |
+
}
|
| 347 |
+
}
|
| 348 |
+
}
|
| 349 |
+
|
| 350 |
+
|
| 351 |
+
// Search functionality
|
| 352 |
+
function setupSearch() {
|
| 353 |
+
const searchInput = document.getElementById('searchInput');
|
| 354 |
+
if (!searchInput) return; // Guard clause
|
| 355 |
+
|
| 356 |
+
searchInput.addEventListener('input', () => {
|
| 357 |
+
const searchTerm = searchInput.value.toLowerCase().trim();
|
| 358 |
+
const rows = document.querySelectorAll('#matrixBody .sampler-row');
|
| 359 |
+
|
| 360 |
+
rows.forEach(row => {
|
| 361 |
+
const samplerNameCell = row.cells[0];
|
| 362 |
+
if (samplerNameCell) {
|
| 363 |
+
const samplerName = samplerNameCell.textContent.toLowerCase();
|
| 364 |
+
if (samplerName.includes(searchTerm)) {
|
| 365 |
+
row.style.display = '';
|
| 366 |
+
} else {
|
| 367 |
+
row.style.display = 'none';
|
| 368 |
+
}
|
| 369 |
+
}
|
| 370 |
+
});
|
| 371 |
+
});
|
| 372 |
+
}
|
| 373 |
+
|
| 374 |
+
// Fetch data and initialize the page
|
| 375 |
+
async function initializeApp() {
|
| 376 |
+
try {
|
| 377 |
+
// --- IMPORTANT: Replace 'performance_data.json' with the actual path to your JSON file ---
|
| 378 |
+
const response = await fetch('performance_data.json');
|
| 379 |
+
if (!response.ok) {
|
| 380 |
+
throw new Error(`HTTP error! status: ${response.status}`);
|
| 381 |
+
}
|
| 382 |
+
performanceData = await response.json();
|
| 383 |
+
|
| 384 |
+
// Ensure performanceData is not empty
|
| 385 |
+
if (Object.keys(performanceData).length === 0) {
|
| 386 |
+
console.warn("Fetched data is empty.");
|
| 387 |
+
// Optionally display a message to the user
|
| 388 |
+
document.getElementById('matrixBody').innerHTML = '<tr><td colspan="11" class="text-center p-4 text-gray-500">No performance data loaded.</td></tr>';
|
| 389 |
+
return;
|
| 390 |
+
}
|
| 391 |
+
|
| 392 |
+
// Calculate insights (which also sets min/max values)
|
| 393 |
+
calculateInsights();
|
| 394 |
+
|
| 395 |
+
// Generate the table content
|
| 396 |
+
generateTable();
|
| 397 |
+
|
| 398 |
+
// Set up search functionality
|
| 399 |
+
setupSearch();
|
| 400 |
+
|
| 401 |
+
// Attach event listener for the heatmap toggle button
|
| 402 |
+
const toggleButton = document.getElementById('toggleHeatmap');
|
| 403 |
+
if (toggleButton) {
|
| 404 |
+
// Initialize button text based on default heatmap state
|
| 405 |
+
if (heatmapEnabled) {
|
| 406 |
+
toggleButton.innerHTML = '<i class="fas fa-ban mr-1"></i> Disable Heatmap';
|
| 407 |
+
toggleButton.classList.add('bg-blue-100', 'text-blue-600', 'hover:bg-blue-200');
|
| 408 |
+
} else {
|
| 409 |
+
toggleButton.innerHTML = '<i class="fas fa-fire mr-1"></i> Enable Heatmap';
|
| 410 |
+
toggleButton.classList.add('bg-red-100', 'text-red-600', 'hover:bg-red-200');
|
| 411 |
+
}
|
| 412 |
+
toggleButton.addEventListener('click', toggleHeatmap);
|
| 413 |
+
}
|
| 414 |
+
|
| 415 |
+
} catch (error) {
|
| 416 |
+
console.error("Failed to load or process performance data:", error);
|
| 417 |
+
// Display an error message to the user
|
| 418 |
+
const matrixBody = document.getElementById('matrixBody');
|
| 419 |
+
if (matrixBody) {
|
| 420 |
+
matrixBody.innerHTML = '<tr><td colspan="11" class="text-center p-4 text-red-500">Error loading data: ${error.message}</td></tr>';
|
| 421 |
+
}
|
| 422 |
+
// Also clear insights
|
| 423 |
+
document.getElementById('topPerformer').textContent = 'Error';
|
| 424 |
+
document.getElementById('mostConsistent').textContent = 'Error';
|
| 425 |
+
document.getElementById('slowest').textContent = 'Error';
|
| 426 |
+
}
|
| 427 |
+
}
|
| 428 |
+
|
| 429 |
+
// Initialize when the DOM is ready
|
| 430 |
+
document.addEventListener('DOMContentLoaded', initializeApp);
|
| 431 |
+
</script>
|
| 432 |
+
</body>
|
| 433 |
+
</html>
|
performance_data.json
ADDED
|
@@ -0,0 +1,446 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"ddim": {
|
| 3 |
+
"beta": 11.01,
|
| 4 |
+
"beta57": 10.79,
|
| 5 |
+
"ddim_uniform": 10.71,
|
| 6 |
+
"exponential": 10.83,
|
| 7 |
+
"kl_optimal": 10.83,
|
| 8 |
+
"karras": 10.87,
|
| 9 |
+
"linear_quadratic": 10.74,
|
| 10 |
+
"normal": 10.85,
|
| 11 |
+
"sgm_uniform": 10.79,
|
| 12 |
+
"simple": 11.1
|
| 13 |
+
},
|
| 14 |
+
"ddpm": {
|
| 15 |
+
"beta": 10.97,
|
| 16 |
+
"beta57": 11.43,
|
| 17 |
+
"ddim_uniform": 11.16,
|
| 18 |
+
"exponential": 10.9,
|
| 19 |
+
"kl_optimal": 10.87,
|
| 20 |
+
"karras": 10.94,
|
| 21 |
+
"linear_quadratic": 11.01,
|
| 22 |
+
"normal": 10.81,
|
| 23 |
+
"sgm_uniform": 10.88,
|
| 24 |
+
"simple": 11.18
|
| 25 |
+
},
|
| 26 |
+
"deis": {
|
| 27 |
+
"beta": 10.62,
|
| 28 |
+
"beta57": 10.45,
|
| 29 |
+
"ddim_uniform": 10.58,
|
| 30 |
+
"exponential": 10.82,
|
| 31 |
+
"kl_optimal": 10.78,
|
| 32 |
+
"karras": 10.91,
|
| 33 |
+
"linear_quadratic": 10.49,
|
| 34 |
+
"normal": 10.33,
|
| 35 |
+
"sgm_uniform": 10.7,
|
| 36 |
+
"simple": 11.0
|
| 37 |
+
},
|
| 38 |
+
"deis_2m": {
|
| 39 |
+
"beta": 14.53,
|
| 40 |
+
"beta57": 14.14,
|
| 41 |
+
"ddim_uniform": 14.23,
|
| 42 |
+
"exponential": 14.4,
|
| 43 |
+
"kl_optimal": 14.38,
|
| 44 |
+
"karras": 14.68,
|
| 45 |
+
"linear_quadratic": 14.41,
|
| 46 |
+
"normal": 14.21,
|
| 47 |
+
"sgm_uniform": 14.02,
|
| 48 |
+
"simple": 14.41
|
| 49 |
+
},
|
| 50 |
+
"deis_3m": {
|
| 51 |
+
"beta": 21.26,
|
| 52 |
+
"beta57": 20.75,
|
| 53 |
+
"ddim_uniform": 21.16,
|
| 54 |
+
"exponential": 21.43,
|
| 55 |
+
"kl_optimal": 21.46,
|
| 56 |
+
"karras": 21.52,
|
| 57 |
+
"linear_quadratic": 21.13,
|
| 58 |
+
"normal": 21.03,
|
| 59 |
+
"sgm_uniform": 21.79,
|
| 60 |
+
"simple": 21.51
|
| 61 |
+
},
|
| 62 |
+
"deis_4m": {
|
| 63 |
+
"beta": 25.1,
|
| 64 |
+
"beta57": 25.02,
|
| 65 |
+
"ddim_uniform": 24.93,
|
| 66 |
+
"exponential": 24.93,
|
| 67 |
+
"kl_optimal": 25.0,
|
| 68 |
+
"karras": 24.98,
|
| 69 |
+
"linear_quadratic": 25.14,
|
| 70 |
+
"normal": 25.12,
|
| 71 |
+
"sgm_uniform": 24.77,
|
| 72 |
+
"simple": 25.14
|
| 73 |
+
},
|
| 74 |
+
"dpm_2": {
|
| 75 |
+
"beta": 18.04,
|
| 76 |
+
"beta57": 17.95,
|
| 77 |
+
"ddim_uniform": 21.73,
|
| 78 |
+
"exponential": 17.85,
|
| 79 |
+
"kl_optimal": 17.82,
|
| 80 |
+
"karras": 17.77,
|
| 81 |
+
"linear_quadratic": 17.95,
|
| 82 |
+
"normal": 18.01,
|
| 83 |
+
"sgm_uniform": 17.88,
|
| 84 |
+
"simple": 18.23
|
| 85 |
+
},
|
| 86 |
+
"dpm_2_ancestral": {
|
| 87 |
+
"beta": 18.02,
|
| 88 |
+
"beta57": 17.91,
|
| 89 |
+
"ddim_uniform": 21.66,
|
| 90 |
+
"exponential": 17.79,
|
| 91 |
+
"kl_optimal": 17.84,
|
| 92 |
+
"karras": 17.74,
|
| 93 |
+
"linear_quadratic": 17.95,
|
| 94 |
+
"normal": 17.89,
|
| 95 |
+
"sgm_uniform": 17.91,
|
| 96 |
+
"simple": 18.18
|
| 97 |
+
},
|
| 98 |
+
"dpm_adaptive": {
|
| 99 |
+
"beta": 75.95,
|
| 100 |
+
"beta57": 86.52,
|
| 101 |
+
"ddim_uniform": 134.55,
|
| 102 |
+
"exponential": 113.25,
|
| 103 |
+
"kl_optimal": 113.31,
|
| 104 |
+
"karras": 113.13,
|
| 105 |
+
"linear_quadratic": 70.42,
|
| 106 |
+
"normal": 107.89,
|
| 107 |
+
"sgm_uniform": 65.01,
|
| 108 |
+
"simple": 65.49
|
| 109 |
+
},
|
| 110 |
+
"dpm_fast": {
|
| 111 |
+
"beta": 10.6,
|
| 112 |
+
"beta57": 10.58,
|
| 113 |
+
"ddim_uniform": 10.76,
|
| 114 |
+
"exponential": 10.69,
|
| 115 |
+
"kl_optimal": 10.74,
|
| 116 |
+
"karras": 10.68,
|
| 117 |
+
"linear_quadratic": 10.45,
|
| 118 |
+
"normal": 10.6,
|
| 119 |
+
"sgm_uniform": 10.33,
|
| 120 |
+
"simple": 10.61
|
| 121 |
+
},
|
| 122 |
+
"dpmpp_2m": {
|
| 123 |
+
"beta": 11.04,
|
| 124 |
+
"beta57": 10.76,
|
| 125 |
+
"ddim_uniform": 10.57,
|
| 126 |
+
"exponential": 10.81,
|
| 127 |
+
"kl_optimal": 10.73,
|
| 128 |
+
"karras": 10.73,
|
| 129 |
+
"linear_quadratic": 10.86,
|
| 130 |
+
"normal": 10.35,
|
| 131 |
+
"sgm_uniform": 10.76,
|
| 132 |
+
"simple": 11.11
|
| 133 |
+
},
|
| 134 |
+
"dpmpp_2m_sde_gpu": {
|
| 135 |
+
"beta": 11.0,
|
| 136 |
+
"beta57": 10.74,
|
| 137 |
+
"ddim_uniform": 11.03,
|
| 138 |
+
"exponential": 10.92,
|
| 139 |
+
"kl_optimal": 10.96,
|
| 140 |
+
"karras": 10.91,
|
| 141 |
+
"linear_quadratic": 10.89,
|
| 142 |
+
"normal": 10.72,
|
| 143 |
+
"sgm_uniform": 10.78,
|
| 144 |
+
"simple": 11.06
|
| 145 |
+
},
|
| 146 |
+
"dpmpp_2s_ancestral": {
|
| 147 |
+
"beta": 18.07,
|
| 148 |
+
"beta57": 17.85,
|
| 149 |
+
"ddim_uniform": 17.83,
|
| 150 |
+
"exponential": 17.93,
|
| 151 |
+
"kl_optimal": 17.87,
|
| 152 |
+
"karras": 18.04,
|
| 153 |
+
"linear_quadratic": 17.97,
|
| 154 |
+
"normal": 17.54,
|
| 155 |
+
"sgm_uniform": 17.88,
|
| 156 |
+
"simple": 18.16
|
| 157 |
+
},
|
| 158 |
+
"dpmpp_3m_sde_gpu": {
|
| 159 |
+
"beta": 10.69,
|
| 160 |
+
"beta57": 10.72,
|
| 161 |
+
"ddim_uniform": 10.74,
|
| 162 |
+
"exponential": 10.93,
|
| 163 |
+
"kl_optimal": 10.57,
|
| 164 |
+
"karras": 10.96,
|
| 165 |
+
"linear_quadratic": 10.53,
|
| 166 |
+
"normal": 10.35,
|
| 167 |
+
"sgm_uniform": 10.86,
|
| 168 |
+
"simple": 11.16
|
| 169 |
+
},
|
| 170 |
+
"dpmpp_sde_gpu": {
|
| 171 |
+
"beta": 17.97,
|
| 172 |
+
"beta57": 17.88,
|
| 173 |
+
"ddim_uniform": 18.15,
|
| 174 |
+
"exponential": 17.95,
|
| 175 |
+
"kl_optimal": 17.91,
|
| 176 |
+
"karras": 17.82,
|
| 177 |
+
"linear_quadratic": 17.67,
|
| 178 |
+
"normal": 17.71,
|
| 179 |
+
"sgm_uniform": 17.91,
|
| 180 |
+
"simple": 18.27
|
| 181 |
+
},
|
| 182 |
+
"er_sde": {
|
| 183 |
+
"beta": 10.8,
|
| 184 |
+
"beta57": 10.61,
|
| 185 |
+
"ddim_uniform": 10.57,
|
| 186 |
+
"exponential": 10.87,
|
| 187 |
+
"kl_optimal": 10.81,
|
| 188 |
+
"karras": 10.91,
|
| 189 |
+
"linear_quadratic": 10.39,
|
| 190 |
+
"normal": 10.24,
|
| 191 |
+
"sgm_uniform": 10.83,
|
| 192 |
+
"simple": 11.17
|
| 193 |
+
},
|
| 194 |
+
"euler": {
|
| 195 |
+
"beta": 11.01,
|
| 196 |
+
"beta57": 10.82,
|
| 197 |
+
"ddim_uniform": 10.83,
|
| 198 |
+
"exponential": 10.87,
|
| 199 |
+
"kl_optimal": 10.85,
|
| 200 |
+
"karras": 10.67,
|
| 201 |
+
"linear_quadratic": 10.98,
|
| 202 |
+
"normal": 12.52,
|
| 203 |
+
"sgm_uniform": 10.81,
|
| 204 |
+
"simple": 11.1
|
| 205 |
+
},
|
| 206 |
+
"euler_ancestral": {
|
| 207 |
+
"beta": 11.04,
|
| 208 |
+
"beta57": 10.85,
|
| 209 |
+
"ddim_uniform": 10.85,
|
| 210 |
+
"exponential": 10.91,
|
| 211 |
+
"kl_optimal": 10.86,
|
| 212 |
+
"karras": 10.65,
|
| 213 |
+
"linear_quadratic": 10.95,
|
| 214 |
+
"normal": 10.94,
|
| 215 |
+
"sgm_uniform": 10.86,
|
| 216 |
+
"simple": 11.13
|
| 217 |
+
},
|
| 218 |
+
"gradient_estimation": {
|
| 219 |
+
"beta": 10.9,
|
| 220 |
+
"beta57": 10.77,
|
| 221 |
+
"ddim_uniform": 10.59,
|
| 222 |
+
"exponential": 10.77,
|
| 223 |
+
"kl_optimal": 10.79,
|
| 224 |
+
"karras": 10.85,
|
| 225 |
+
"linear_quadratic": 10.62,
|
| 226 |
+
"normal": 10.45,
|
| 227 |
+
"sgm_uniform": 10.62,
|
| 228 |
+
"simple": 10.96
|
| 229 |
+
},
|
| 230 |
+
"heun": {
|
| 231 |
+
"beta": 18.0,
|
| 232 |
+
"beta57": 17.87,
|
| 233 |
+
"ddim_uniform": 17.84,
|
| 234 |
+
"exponential": 17.85,
|
| 235 |
+
"kl_optimal": 17.81,
|
| 236 |
+
"karras": 17.42,
|
| 237 |
+
"linear_quadratic": 18.01,
|
| 238 |
+
"normal": 17.81,
|
| 239 |
+
"sgm_uniform": 17.89,
|
| 240 |
+
"simple": 18.2
|
| 241 |
+
},
|
| 242 |
+
"heunpp2": {
|
| 243 |
+
"beta": 23.33,
|
| 244 |
+
"beta57": 23.18,
|
| 245 |
+
"ddim_uniform": 23.19,
|
| 246 |
+
"exponential": 23.2,
|
| 247 |
+
"kl_optimal": 23.17,
|
| 248 |
+
"karras": 23.07,
|
| 249 |
+
"linear_quadratic": 23.26,
|
| 250 |
+
"normal": 23.23,
|
| 251 |
+
"sgm_uniform": 23.18,
|
| 252 |
+
"simple": 23.53
|
| 253 |
+
},
|
| 254 |
+
"ipndm": {
|
| 255 |
+
"beta": 10.69,
|
| 256 |
+
"beta57": 10.67,
|
| 257 |
+
"ddim_uniform": 10.56,
|
| 258 |
+
"exponential": 10.81,
|
| 259 |
+
"kl_optimal": 10.78,
|
| 260 |
+
"karras": 10.92,
|
| 261 |
+
"linear_quadratic": 10.44,
|
| 262 |
+
"normal": 10.44,
|
| 263 |
+
"sgm_uniform": 10.47,
|
| 264 |
+
"simple": 10.78
|
| 265 |
+
},
|
| 266 |
+
"ipndm_v": {
|
| 267 |
+
"beta": 10.6,
|
| 268 |
+
"beta57": 10.39,
|
| 269 |
+
"ddim_uniform": 10.66,
|
| 270 |
+
"exponential": 10.82,
|
| 271 |
+
"kl_optimal": 10.77,
|
| 272 |
+
"karras": 10.83,
|
| 273 |
+
"linear_quadratic": 10.46,
|
| 274 |
+
"normal": 10.34,
|
| 275 |
+
"sgm_uniform": 10.29,
|
| 276 |
+
"simple": 10.61
|
| 277 |
+
},
|
| 278 |
+
"lcm": {
|
| 279 |
+
"beta": 11.0,
|
| 280 |
+
"beta57": 11.23,
|
| 281 |
+
"ddim_uniform": 10.67,
|
| 282 |
+
"exponential": 10.84,
|
| 283 |
+
"kl_optimal": 10.86,
|
| 284 |
+
"karras": 10.91,
|
| 285 |
+
"linear_quadratic": 10.98,
|
| 286 |
+
"normal": 10.72,
|
| 287 |
+
"sgm_uniform": 10.78,
|
| 288 |
+
"simple": 11.11
|
| 289 |
+
},
|
| 290 |
+
"lms": {
|
| 291 |
+
"beta": 10.64,
|
| 292 |
+
"beta57": 10.36,
|
| 293 |
+
"ddim_uniform": 10.61,
|
| 294 |
+
"exponential": 10.84,
|
| 295 |
+
"kl_optimal": 10.83,
|
| 296 |
+
"karras": 10.85,
|
| 297 |
+
"linear_quadratic": 10.54,
|
| 298 |
+
"normal": 10.39,
|
| 299 |
+
"sgm_uniform": 10.37,
|
| 300 |
+
"simple": 10.65
|
| 301 |
+
},
|
| 302 |
+
"res_2m": {
|
| 303 |
+
"beta": 12.69,
|
| 304 |
+
"beta57": 12.58,
|
| 305 |
+
"ddim_uniform": 12.34,
|
| 306 |
+
"exponential": 12.54,
|
| 307 |
+
"kl_optimal": 12.4,
|
| 308 |
+
"karras": 12.61,
|
| 309 |
+
"linear_quadratic": 12.62,
|
| 310 |
+
"normal": 11.93,
|
| 311 |
+
"sgm_uniform": 12.74,
|
| 312 |
+
"simple": 12.71
|
| 313 |
+
},
|
| 314 |
+
"res_2s": {
|
| 315 |
+
"beta": 19.7,
|
| 316 |
+
"beta57": 19.73,
|
| 317 |
+
"ddim_uniform": 19.58,
|
| 318 |
+
"exponential": 19.61,
|
| 319 |
+
"kl_optimal": 19.65,
|
| 320 |
+
"karras": 19.68,
|
| 321 |
+
"linear_quadratic": 19.66,
|
| 322 |
+
"normal": 19.53,
|
| 323 |
+
"sgm_uniform": 19.98,
|
| 324 |
+
"simple": 19.96
|
| 325 |
+
},
|
| 326 |
+
"res_3s": {
|
| 327 |
+
"beta": 28.61,
|
| 328 |
+
"beta57": 28.45,
|
| 329 |
+
"ddim_uniform": 28.36,
|
| 330 |
+
"exponential": 28.4,
|
| 331 |
+
"kl_optimal": 28.38,
|
| 332 |
+
"karras": 28.52,
|
| 333 |
+
"linear_quadratic": 28.55,
|
| 334 |
+
"normal": 28.5,
|
| 335 |
+
"sgm_uniform": 28.87,
|
| 336 |
+
"simple": 28.88
|
| 337 |
+
},
|
| 338 |
+
"res_5s": {
|
| 339 |
+
"beta": 42.72,
|
| 340 |
+
"beta57": 42.56,
|
| 341 |
+
"ddim_uniform": 42.61,
|
| 342 |
+
"exponential": 42.51,
|
| 343 |
+
"kl_optimal": 42.5,
|
| 344 |
+
"karras": 42.7,
|
| 345 |
+
"linear_quadratic": 42.61,
|
| 346 |
+
"normal": 42.69,
|
| 347 |
+
"sgm_uniform": 43.0,
|
| 348 |
+
"simple": 42.95
|
| 349 |
+
},
|
| 350 |
+
"res_6s": {
|
| 351 |
+
"beta": 49.79,
|
| 352 |
+
"beta57": 49.6,
|
| 353 |
+
"ddim_uniform": 49.66,
|
| 354 |
+
"exponential": 49.51,
|
| 355 |
+
"kl_optimal": 49.5,
|
| 356 |
+
"karras": 49.76,
|
| 357 |
+
"linear_quadratic": 49.91,
|
| 358 |
+
"normal": 49.8,
|
| 359 |
+
"sgm_uniform": 49.38,
|
| 360 |
+
"simple": 50.01
|
| 361 |
+
},
|
| 362 |
+
"res_multistep": {
|
| 363 |
+
"beta": 10.96,
|
| 364 |
+
"beta57": 10.75,
|
| 365 |
+
"ddim_uniform": 10.48,
|
| 366 |
+
"exponential": 10.83,
|
| 367 |
+
"kl_optimal": 10.64,
|
| 368 |
+
"karras": 10.79,
|
| 369 |
+
"linear_quadratic": 10.85,
|
| 370 |
+
"normal": 10.31,
|
| 371 |
+
"sgm_uniform": 10.79,
|
| 372 |
+
"simple": 11.06
|
| 373 |
+
},
|
| 374 |
+
"res_multistep_ancestral": {
|
| 375 |
+
"beta": 10.93,
|
| 376 |
+
"beta57": 10.61,
|
| 377 |
+
"ddim_uniform": 10.75,
|
| 378 |
+
"exponential": 10.75,
|
| 379 |
+
"kl_optimal": 10.76,
|
| 380 |
+
"karras": 10.74,
|
| 381 |
+
"linear_quadratic": 10.9,
|
| 382 |
+
"normal": 10.66,
|
| 383 |
+
"sgm_uniform": 10.77,
|
| 384 |
+
"simple": 11.07
|
| 385 |
+
},
|
| 386 |
+
"rk": {
|
| 387 |
+
"beta": 12.71,
|
| 388 |
+
"beta57": 12.4,
|
| 389 |
+
"ddim_uniform": 12.33,
|
| 390 |
+
"exponential": 12.54,
|
| 391 |
+
"kl_optimal": 12.38,
|
| 392 |
+
"karras": 12.57,
|
| 393 |
+
"linear_quadratic": 12.39,
|
| 394 |
+
"normal": 12.21,
|
| 395 |
+
"sgm_uniform": 12.36,
|
| 396 |
+
"simple": 12.69
|
| 397 |
+
},
|
| 398 |
+
"seeds_2": {
|
| 399 |
+
"beta": 18.01,
|
| 400 |
+
"beta57": 17.82,
|
| 401 |
+
"ddim_uniform": 18.08,
|
| 402 |
+
"exponential": 17.86,
|
| 403 |
+
"kl_optimal": 17.86,
|
| 404 |
+
"karras": 17.9,
|
| 405 |
+
"linear_quadratic": 17.75,
|
| 406 |
+
"normal": 20.26,
|
| 407 |
+
"sgm_uniform": 17.86,
|
| 408 |
+
"simple": 18.25
|
| 409 |
+
},
|
| 410 |
+
"seeds_3": {
|
| 411 |
+
"beta": 25.09,
|
| 412 |
+
"beta57": 24.79,
|
| 413 |
+
"ddim_uniform": 25.1,
|
| 414 |
+
"exponential": 24.91,
|
| 415 |
+
"kl_optimal": 24.95,
|
| 416 |
+
"karras": 24.95,
|
| 417 |
+
"linear_quadratic": 24.52,
|
| 418 |
+
"normal": 25.3,
|
| 419 |
+
"sgm_uniform": 24.88,
|
| 420 |
+
"simple": 25.3
|
| 421 |
+
},
|
| 422 |
+
"uni_pc": {
|
| 423 |
+
"beta": 10.93,
|
| 424 |
+
"beta57": 10.68,
|
| 425 |
+
"ddim_uniform": 12.78,
|
| 426 |
+
"exponential": 10.76,
|
| 427 |
+
"kl_optimal": 10.78,
|
| 428 |
+
"karras": 10.83,
|
| 429 |
+
"linear_quadratic": 10.73,
|
| 430 |
+
"normal": 10.84,
|
| 431 |
+
"sgm_uniform": 10.74,
|
| 432 |
+
"simple": 11.09
|
| 433 |
+
},
|
| 434 |
+
"uni_pc_bh2": {
|
| 435 |
+
"beta": 10.88,
|
| 436 |
+
"beta57": 10.72,
|
| 437 |
+
"ddim_uniform": 12.75,
|
| 438 |
+
"exponential": 10.78,
|
| 439 |
+
"kl_optimal": 10.8,
|
| 440 |
+
"karras": 10.68,
|
| 441 |
+
"linear_quadratic": 10.81,
|
| 442 |
+
"normal": 10.85,
|
| 443 |
+
"sgm_uniform": 10.76,
|
| 444 |
+
"simple": 11.17
|
| 445 |
+
}
|
| 446 |
+
}
|