@sparkleideas/performance 3.0.0-alpha.22 → 3.0.0-alpha.29

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,192 @@
1
+ /**
2
+ * V3 Performance Benchmark Framework
3
+ *
4
+ * Comprehensive benchmarking system with statistical analysis,
5
+ * memory tracking, and regression detection capabilities.
6
+ *
7
+ * Target Performance Metrics:
8
+ * - CLI Startup: <500ms (5x faster)
9
+ * - MCP Init: <400ms (4.5x faster)
10
+ * - Agent Spawn: <200ms (4x faster)
11
+ * - Vector Search: <1ms (150x faster)
12
+ * - Memory Write: <5ms (10x faster)
13
+ * - Swarm Consensus: <100ms (5x faster)
14
+ * - Flash Attention: 2.49x-7.47x speedup
15
+ * - Memory Usage: <256MB (50% reduction)
16
+ */
17
+ export interface MemoryUsage {
18
+ heapUsed: number;
19
+ heapTotal: number;
20
+ external: number;
21
+ arrayBuffers: number;
22
+ rss: number;
23
+ }
24
+ export interface BenchmarkResult {
25
+ name: string;
26
+ iterations: number;
27
+ mean: number;
28
+ median: number;
29
+ p95: number;
30
+ p99: number;
31
+ min: number;
32
+ max: number;
33
+ stdDev: number;
34
+ opsPerSecond: number;
35
+ memoryUsage: MemoryUsage;
36
+ memoryDelta: number;
37
+ timestamp: number;
38
+ metadata?: Record<string, unknown>;
39
+ }
40
+ export interface BenchmarkOptions {
41
+ /** Number of iterations (default: 100) */
42
+ iterations?: number;
43
+ /** Number of warmup iterations (default: 10) */
44
+ warmup?: number;
45
+ /** Timeout per iteration in ms (default: 30000) */
46
+ timeout?: number;
47
+ /** Force garbage collection between iterations */
48
+ forceGC?: boolean;
49
+ /** Custom metadata to attach to results */
50
+ metadata?: Record<string, unknown>;
51
+ /** Minimum number of runs to ensure statistical significance */
52
+ minRuns?: number;
53
+ /** Target time in ms for auto-calibration */
54
+ targetTime?: number;
55
+ }
56
+ export interface BenchmarkSuite {
57
+ name: string;
58
+ benchmarks: BenchmarkResult[];
59
+ totalTime: number;
60
+ timestamp: number;
61
+ environment: EnvironmentInfo;
62
+ }
63
+ export interface EnvironmentInfo {
64
+ nodeVersion: string;
65
+ platform: string;
66
+ arch: string;
67
+ cpus: number;
68
+ memory: number;
69
+ v8Version?: string;
70
+ }
71
+ export interface ComparisonResult {
72
+ benchmark: string;
73
+ baseline: number;
74
+ current: number;
75
+ change: number;
76
+ changePercent: number;
77
+ improved: boolean;
78
+ significant: boolean;
79
+ target?: number;
80
+ targetMet: boolean;
81
+ }
82
+ /**
83
+ * Format bytes to human-readable string
84
+ */
85
+ export declare function formatBytes(bytes: number): string;
86
+ /**
87
+ * Format time in milliseconds to human-readable string
88
+ */
89
+ export declare function formatTime(ms: number): string;
90
+ /**
91
+ * Execute a benchmark with comprehensive statistics
92
+ */
93
+ export declare function benchmark(name: string, fn: () => Promise<void> | void, options?: BenchmarkOptions): Promise<BenchmarkResult>;
94
+ export declare class BenchmarkRunner {
95
+ private results;
96
+ private suiteName;
97
+ constructor(name: string);
98
+ /**
99
+ * Run a single benchmark and add to results
100
+ */
101
+ run(name: string, fn: () => Promise<void> | void, options?: BenchmarkOptions): Promise<BenchmarkResult>;
102
+ /**
103
+ * Run multiple benchmarks in sequence
104
+ */
105
+ runAll(benchmarks: Array<{
106
+ name: string;
107
+ fn: () => Promise<void> | void;
108
+ options?: BenchmarkOptions;
109
+ }>): Promise<BenchmarkSuite>;
110
+ /**
111
+ * Get environment information
112
+ */
113
+ private getEnvironmentInfo;
114
+ /**
115
+ * Get all results
116
+ */
117
+ getResults(): BenchmarkResult[];
118
+ /**
119
+ * Clear all results
120
+ */
121
+ clear(): void;
122
+ /**
123
+ * Print formatted results to console
124
+ */
125
+ printResults(): void;
126
+ /**
127
+ * Export results as JSON
128
+ */
129
+ toJSON(): string;
130
+ }
131
+ /**
132
+ * Compare benchmark results against baseline
133
+ */
134
+ export declare function compareResults(baseline: BenchmarkResult[], current: BenchmarkResult[], targets?: Record<string, number>): ComparisonResult[];
135
+ /**
136
+ * Print comparison report
137
+ */
138
+ export declare function printComparisonReport(comparisons: ComparisonResult[]): void;
139
+ export declare const V3_PERFORMANCE_TARGETS: {
140
+ readonly 'cli-cold-start': 500;
141
+ readonly 'cli-warm-start': 100;
142
+ readonly 'mcp-server-init': 400;
143
+ readonly 'agent-spawn': 200;
144
+ readonly 'vector-search': 1;
145
+ readonly 'hnsw-indexing': 10;
146
+ readonly 'memory-write': 5;
147
+ readonly 'cache-hit': 0.1;
148
+ readonly 'agent-coordination': 50;
149
+ readonly 'task-decomposition': 20;
150
+ readonly 'consensus-latency': 100;
151
+ readonly 'message-throughput': 0.1;
152
+ readonly 'flash-attention': 100;
153
+ readonly 'multi-head-attention': 200;
154
+ readonly 'sona-adaptation': 0.05;
155
+ };
156
+ export type PerformanceTarget = keyof typeof V3_PERFORMANCE_TARGETS;
157
+ /**
158
+ * Check if a benchmark meets its target
159
+ */
160
+ export declare function meetsTarget(benchmarkName: string, value: number): {
161
+ met: boolean;
162
+ target: number | undefined;
163
+ ratio: number | undefined;
164
+ };
165
+ declare const _default: {
166
+ benchmark: typeof benchmark;
167
+ BenchmarkRunner: typeof BenchmarkRunner;
168
+ compareResults: typeof compareResults;
169
+ printComparisonReport: typeof printComparisonReport;
170
+ formatBytes: typeof formatBytes;
171
+ formatTime: typeof formatTime;
172
+ meetsTarget: typeof meetsTarget;
173
+ V3_PERFORMANCE_TARGETS: {
174
+ readonly 'cli-cold-start': 500;
175
+ readonly 'cli-warm-start': 100;
176
+ readonly 'mcp-server-init': 400;
177
+ readonly 'agent-spawn': 200;
178
+ readonly 'vector-search': 1;
179
+ readonly 'hnsw-indexing': 10;
180
+ readonly 'memory-write': 5;
181
+ readonly 'cache-hit': 0.1;
182
+ readonly 'agent-coordination': 50;
183
+ readonly 'task-decomposition': 20;
184
+ readonly 'consensus-latency': 100;
185
+ readonly 'message-throughput': 0.1;
186
+ readonly 'flash-attention': 100;
187
+ readonly 'multi-head-attention': 200;
188
+ readonly 'sona-adaptation': 0.05;
189
+ };
190
+ };
191
+ export default _default;
192
+ //# sourceMappingURL=benchmark.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"benchmark.d.ts","sourceRoot":"","sources":["../../src/framework/benchmark.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,408 @@
1
+ /**
2
+ * V3 Performance Benchmark Framework
3
+ *
4
+ * Comprehensive benchmarking system with statistical analysis,
5
+ * memory tracking, and regression detection capabilities.
6
+ *
7
+ * Target Performance Metrics:
8
+ * - CLI Startup: <500ms (5x faster)
9
+ * - MCP Init: <400ms (4.5x faster)
10
+ * - Agent Spawn: <200ms (4x faster)
11
+ * - Vector Search: <1ms (150x faster)
12
+ * - Memory Write: <5ms (10x faster)
13
+ * - Swarm Consensus: <100ms (5x faster)
14
+ * - Flash Attention: 2.49x-7.47x speedup
15
+ * - Memory Usage: <256MB (50% reduction)
16
+ */
17
+ import { performance } from 'perf_hooks';
18
+ // ============================================================================
19
+ // Statistical Functions
20
+ // ============================================================================
21
+ /**
22
+ * Calculate mean of an array of numbers
23
+ */
24
+ function calculateMean(values) {
25
+ if (values.length === 0)
26
+ return 0;
27
+ return values.reduce((sum, val) => sum + val, 0) / values.length;
28
+ }
29
+ /**
30
+ * Calculate median of an array of numbers
31
+ */
32
+ function calculateMedian(values) {
33
+ if (values.length === 0)
34
+ return 0;
35
+ const sorted = [...values].sort((a, b) => a - b);
36
+ const mid = Math.floor(sorted.length / 2);
37
+ return sorted.length % 2 !== 0
38
+ ? sorted[mid]
39
+ : (sorted[mid - 1] + sorted[mid]) / 2;
40
+ }
41
+ /**
42
+ * Calculate percentile of an array of numbers
43
+ */
44
+ function calculatePercentile(values, percentile) {
45
+ if (values.length === 0)
46
+ return 0;
47
+ const sorted = [...values].sort((a, b) => a - b);
48
+ const index = Math.ceil((percentile / 100) * sorted.length) - 1;
49
+ return sorted[Math.max(0, index)];
50
+ }
51
+ /**
52
+ * Calculate standard deviation of an array of numbers
53
+ */
54
+ function calculateStdDev(values) {
55
+ if (values.length < 2)
56
+ return 0;
57
+ const mean = calculateMean(values);
58
+ const squaredDiffs = values.map((val) => Math.pow(val - mean, 2));
59
+ return Math.sqrt(calculateMean(squaredDiffs));
60
+ }
61
+ /**
62
+ * Remove outliers using IQR method
63
+ */
64
+ function removeOutliers(values) {
65
+ if (values.length < 4)
66
+ return values;
67
+ const sorted = [...values].sort((a, b) => a - b);
68
+ const q1 = calculatePercentile(sorted, 25);
69
+ const q3 = calculatePercentile(sorted, 75);
70
+ const iqr = q3 - q1;
71
+ const lowerBound = q1 - 1.5 * iqr;
72
+ const upperBound = q3 + 1.5 * iqr;
73
+ return sorted.filter((val) => val >= lowerBound && val <= upperBound);
74
+ }
75
+ // ============================================================================
76
+ // Memory Utilities
77
+ // ============================================================================
78
+ /**
79
+ * Get current memory usage
80
+ */
81
+ function getMemoryUsage() {
82
+ const mem = process.memoryUsage();
83
+ return {
84
+ heapUsed: mem.heapUsed,
85
+ heapTotal: mem.heapTotal,
86
+ external: mem.external,
87
+ arrayBuffers: mem.arrayBuffers,
88
+ rss: mem.rss,
89
+ };
90
+ }
91
+ /**
92
+ * Format bytes to human-readable string
93
+ */
94
+ export function formatBytes(bytes) {
95
+ const units = ['B', 'KB', 'MB', 'GB'];
96
+ let unitIndex = 0;
97
+ let value = bytes;
98
+ while (value >= 1024 && unitIndex < units.length - 1) {
99
+ value /= 1024;
100
+ unitIndex++;
101
+ }
102
+ return `${value.toFixed(2)} ${units[unitIndex]}`;
103
+ }
104
+ /**
105
+ * Format time in milliseconds to human-readable string
106
+ */
107
+ export function formatTime(ms) {
108
+ if (ms < 0.001) {
109
+ return `${(ms * 1000000).toFixed(2)} ns`;
110
+ }
111
+ else if (ms < 1) {
112
+ return `${(ms * 1000).toFixed(2)} us`;
113
+ }
114
+ else if (ms < 1000) {
115
+ return `${ms.toFixed(2)} ms`;
116
+ }
117
+ else {
118
+ return `${(ms / 1000).toFixed(2)} s`;
119
+ }
120
+ }
121
+ /**
122
+ * Force garbage collection if available
123
+ */
124
+ function forceGC() {
125
+ if (typeof global.gc === 'function') {
126
+ global.gc();
127
+ }
128
+ }
129
+ // ============================================================================
130
+ // Core Benchmark Function
131
+ // ============================================================================
132
+ /**
133
+ * Execute a benchmark with comprehensive statistics
134
+ */
135
+ export async function benchmark(name, fn, options = {}) {
136
+ const { iterations = 100, warmup = 10, timeout = 30000, forceGC: doForceGC = false, metadata = {}, minRuns = 10, targetTime = 1000, } = options;
137
+ // Calculate actual iterations based on target time
138
+ let actualIterations = iterations;
139
+ // Warmup phase
140
+ for (let i = 0; i < warmup; i++) {
141
+ await Promise.race([
142
+ fn(),
143
+ new Promise((_, reject) => setTimeout(() => reject(new Error('Warmup timeout')), timeout)),
144
+ ]).catch(() => { });
145
+ }
146
+ // Auto-calibrate iterations if needed
147
+ const calibrationStart = performance.now();
148
+ await fn();
149
+ const calibrationTime = performance.now() - calibrationStart;
150
+ if (calibrationTime > 0) {
151
+ const estimatedIterations = Math.ceil(targetTime / calibrationTime);
152
+ actualIterations = Math.max(minRuns, Math.min(iterations, estimatedIterations));
153
+ }
154
+ // Memory before benchmark
155
+ if (doForceGC)
156
+ forceGC();
157
+ const memoryBefore = getMemoryUsage();
158
+ // Run benchmark
159
+ const times = [];
160
+ const startTime = performance.now();
161
+ for (let i = 0; i < actualIterations; i++) {
162
+ if (doForceGC && i % 10 === 0)
163
+ forceGC();
164
+ const iterStart = performance.now();
165
+ await Promise.race([
166
+ fn(),
167
+ new Promise((_, reject) => setTimeout(() => reject(new Error('Iteration timeout')), timeout)),
168
+ ]);
169
+ const iterEnd = performance.now();
170
+ times.push(iterEnd - iterStart);
171
+ }
172
+ const totalTime = performance.now() - startTime;
173
+ // Memory after benchmark
174
+ const memoryAfter = getMemoryUsage();
175
+ // Calculate statistics (remove outliers for more accurate results)
176
+ const cleanedTimes = removeOutliers(times);
177
+ const mean = calculateMean(cleanedTimes);
178
+ const median = calculateMedian(cleanedTimes);
179
+ const p95 = calculatePercentile(cleanedTimes, 95);
180
+ const p99 = calculatePercentile(cleanedTimes, 99);
181
+ const min = Math.min(...cleanedTimes);
182
+ const max = Math.max(...cleanedTimes);
183
+ const stdDev = calculateStdDev(cleanedTimes);
184
+ const opsPerSecond = mean > 0 ? 1000 / mean : 0;
185
+ return {
186
+ name,
187
+ iterations: actualIterations,
188
+ mean,
189
+ median,
190
+ p95,
191
+ p99,
192
+ min,
193
+ max,
194
+ stdDev,
195
+ opsPerSecond,
196
+ memoryUsage: memoryAfter,
197
+ memoryDelta: memoryAfter.heapUsed - memoryBefore.heapUsed,
198
+ timestamp: Date.now(),
199
+ metadata,
200
+ };
201
+ }
202
+ // ============================================================================
203
+ // Benchmark Suite Runner
204
+ // ============================================================================
205
+ export class BenchmarkRunner {
206
+ results = [];
207
+ suiteName;
208
+ constructor(name) {
209
+ this.suiteName = name;
210
+ }
211
+ /**
212
+ * Run a single benchmark and add to results
213
+ */
214
+ async run(name, fn, options) {
215
+ const result = await benchmark(name, fn, options);
216
+ this.results.push(result);
217
+ return result;
218
+ }
219
+ /**
220
+ * Run multiple benchmarks in sequence
221
+ */
222
+ async runAll(benchmarks) {
223
+ const startTime = performance.now();
224
+ for (const bench of benchmarks) {
225
+ await this.run(bench.name, bench.fn, bench.options);
226
+ }
227
+ return {
228
+ name: this.suiteName,
229
+ benchmarks: this.results,
230
+ totalTime: performance.now() - startTime,
231
+ timestamp: Date.now(),
232
+ environment: this.getEnvironmentInfo(),
233
+ };
234
+ }
235
+ /**
236
+ * Get environment information
237
+ */
238
+ getEnvironmentInfo() {
239
+ const os = require('os');
240
+ return {
241
+ nodeVersion: process.version,
242
+ platform: process.platform,
243
+ arch: process.arch,
244
+ cpus: os.cpus().length,
245
+ memory: os.totalmem(),
246
+ v8Version: process.versions.v8,
247
+ };
248
+ }
249
+ /**
250
+ * Get all results
251
+ */
252
+ getResults() {
253
+ return this.results;
254
+ }
255
+ /**
256
+ * Clear all results
257
+ */
258
+ clear() {
259
+ this.results = [];
260
+ }
261
+ /**
262
+ * Print formatted results to console
263
+ */
264
+ printResults() {
265
+ console.log(`\n${'='.repeat(60)}`);
266
+ console.log(`Benchmark Suite: ${this.suiteName}`);
267
+ console.log(`${'='.repeat(60)}\n`);
268
+ for (const result of this.results) {
269
+ console.log(`${result.name}:`);
270
+ console.log(` Iterations: ${result.iterations}`);
271
+ console.log(` Mean: ${formatTime(result.mean)}`);
272
+ console.log(` Median: ${formatTime(result.median)}`);
273
+ console.log(` Std Dev: ${formatTime(result.stdDev)}`);
274
+ console.log(` P95: ${formatTime(result.p95)}`);
275
+ console.log(` P99: ${formatTime(result.p99)}`);
276
+ console.log(` Min: ${formatTime(result.min)}`);
277
+ console.log(` Max: ${formatTime(result.max)}`);
278
+ console.log(` Ops/sec: ${result.opsPerSecond.toFixed(2)}`);
279
+ console.log(` Memory Delta: ${formatBytes(result.memoryDelta)}`);
280
+ console.log('');
281
+ }
282
+ }
283
+ /**
284
+ * Export results as JSON
285
+ */
286
+ toJSON() {
287
+ return JSON.stringify({
288
+ name: this.suiteName,
289
+ benchmarks: this.results,
290
+ timestamp: Date.now(),
291
+ environment: this.getEnvironmentInfo(),
292
+ }, null, 2);
293
+ }
294
+ }
295
+ // ============================================================================
296
+ // Comparison Utilities
297
+ // ============================================================================
298
+ /**
299
+ * Compare benchmark results against baseline
300
+ */
301
+ export function compareResults(baseline, current, targets) {
302
+ const comparisons = [];
303
+ for (const curr of current) {
304
+ const base = baseline.find((b) => b.name === curr.name);
305
+ if (!base)
306
+ continue;
307
+ const change = curr.mean - base.mean;
308
+ const changePercent = (change / base.mean) * 100;
309
+ const improved = change < 0;
310
+ // Consider significant if change is > 5% and > 2 standard deviations
311
+ const combinedStdDev = Math.sqrt(Math.pow(base.stdDev, 2) + Math.pow(curr.stdDev, 2));
312
+ const significant = Math.abs(change) > 2 * combinedStdDev;
313
+ const target = targets?.[curr.name];
314
+ const targetMet = target !== undefined ? curr.mean <= target : true;
315
+ comparisons.push({
316
+ benchmark: curr.name,
317
+ baseline: base.mean,
318
+ current: curr.mean,
319
+ change,
320
+ changePercent,
321
+ improved,
322
+ significant,
323
+ target,
324
+ targetMet,
325
+ });
326
+ }
327
+ return comparisons;
328
+ }
329
+ /**
330
+ * Print comparison report
331
+ */
332
+ export function printComparisonReport(comparisons) {
333
+ console.log('\n' + '='.repeat(80));
334
+ console.log('Performance Comparison Report');
335
+ console.log('='.repeat(80) + '\n');
336
+ console.log(`${'Benchmark'.padEnd(35)} ${'Baseline'.padEnd(12)} ${'Current'.padEnd(12)} ${'Change'.padEnd(12)} Status`);
337
+ console.log('-'.repeat(80));
338
+ for (const comp of comparisons) {
339
+ const baselineStr = formatTime(comp.baseline);
340
+ const currentStr = formatTime(comp.current);
341
+ const changeStr = `${comp.changePercent >= 0 ? '+' : ''}${comp.changePercent.toFixed(1)}%`;
342
+ let status = '';
343
+ if (comp.significant) {
344
+ status = comp.improved ? '[IMPROVED]' : '[REGRESSED]';
345
+ }
346
+ else {
347
+ status = '[~]';
348
+ }
349
+ if (!comp.targetMet) {
350
+ status += ' [MISSED TARGET]';
351
+ }
352
+ console.log(`${comp.benchmark.padEnd(35)} ${baselineStr.padEnd(12)} ${currentStr.padEnd(12)} ${changeStr.padEnd(12)} ${status}`);
353
+ }
354
+ console.log('\n');
355
+ }
356
+ // ============================================================================
357
+ // V3 Performance Targets
358
+ // ============================================================================
359
+ export const V3_PERFORMANCE_TARGETS = {
360
+ // Startup Performance
361
+ 'cli-cold-start': 500, // <500ms (5x faster)
362
+ 'cli-warm-start': 100, // <100ms
363
+ 'mcp-server-init': 400, // <400ms (4.5x faster)
364
+ 'agent-spawn': 200, // <200ms (4x faster)
365
+ // Memory Operations
366
+ 'vector-search': 1, // <1ms (150x faster)
367
+ 'hnsw-indexing': 10, // <10ms
368
+ 'memory-write': 5, // <5ms (10x faster)
369
+ 'cache-hit': 0.1, // <0.1ms
370
+ // Swarm Coordination
371
+ 'agent-coordination': 50, // <50ms
372
+ 'task-decomposition': 20, // <20ms
373
+ 'consensus-latency': 100, // <100ms (5x faster)
374
+ 'message-throughput': 0.1, // <0.1ms per message
375
+ // Attention Mechanisms
376
+ 'flash-attention': 100, // Baseline comparison target
377
+ 'multi-head-attention': 200, // Baseline comparison target
378
+ // SONA Learning
379
+ 'sona-adaptation': 0.05, // <0.05ms
380
+ };
381
+ /**
382
+ * Check if a benchmark meets its target
383
+ */
384
+ export function meetsTarget(benchmarkName, value) {
385
+ const target = V3_PERFORMANCE_TARGETS[benchmarkName];
386
+ if (target === undefined) {
387
+ return { met: true, target: undefined, ratio: undefined };
388
+ }
389
+ return {
390
+ met: value <= target,
391
+ target,
392
+ ratio: value / target,
393
+ };
394
+ }
395
+ // ============================================================================
396
+ // Export Default Runner Instance
397
+ // ============================================================================
398
+ export default {
399
+ benchmark,
400
+ BenchmarkRunner,
401
+ compareResults,
402
+ printComparisonReport,
403
+ formatBytes,
404
+ formatTime,
405
+ meetsTarget,
406
+ V3_PERFORMANCE_TARGETS,
407
+ };
408
+ //# sourceMappingURL=benchmark.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"benchmark.js","sourceRoot":"","sources":["../../src/framework/benchmark.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,21 @@
1
+ /**
2
+ * @sparkleideas/performance
3
+ *
4
+ * Performance module for claude-flow v3.
5
+ * Provides benchmarking, Flash Attention validation, and optimization utilities.
6
+ *
7
+ * Target Performance Metrics:
8
+ * - CLI Startup: <500ms (5x faster)
9
+ * - MCP Init: <400ms (4.5x faster)
10
+ * - Agent Spawn: <200ms (4x faster)
11
+ * - Vector Search: <1ms (150x faster)
12
+ * - Memory Write: <5ms (10x faster)
13
+ * - Swarm Consensus: <100ms (5x faster)
14
+ * - Flash Attention: 2.49x-7.47x speedup
15
+ * - Memory Usage: <256MB (50% reduction)
16
+ */
17
+ export { benchmark, BenchmarkRunner, compareResults, printComparisonReport, formatBytes, formatTime, meetsTarget, V3_PERFORMANCE_TARGETS, type BenchmarkResult, type BenchmarkOptions, type BenchmarkSuite, type EnvironmentInfo, type ComparisonResult, type MemoryUsage, type PerformanceTarget, } from './framework/benchmark.js';
18
+ export { FlashAttentionOptimizer, createFlashAttentionOptimizer, quickBenchmark, type AttentionInput, type AttentionOutput, type BenchmarkResult as AttentionBenchmarkResult, type PerformanceMetrics as AttentionMetrics, } from './attention-integration.js';
19
+ export { AttentionBenchmarkRunner, formatBenchmarkTable, formatSuiteReport, formatMemoryProfile, quickValidation, runAndDisplaySuite, runAndDisplayMemoryProfile, type ComparisonBenchmark, type SuiteResult, type MemoryProfile, } from './attention-benchmarks.js';
20
+ export { default } from './framework/benchmark.js';
21
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAGH,OAAO,EACL,SAAS,EACT,eAAe,EACf,cAAc,EACd,qBAAqB,EACrB,WAAW,EACX,UAAU,EACV,WAAW,EACX,sBAAsB,EACtB,KAAK,eAAe,EACpB,KAAK,gBAAgB,EACrB,KAAK,cAAc,EACnB,KAAK,eAAe,EACpB,KAAK,gBAAgB,EACrB,KAAK,WAAW,EAChB,KAAK,iBAAiB,GACvB,MAAM,0BAA0B,CAAC;AAGlC,OAAO,EACL,uBAAuB,EACvB,6BAA6B,EAC7B,cAAc,EACd,KAAK,cAAc,EACnB,KAAK,eAAe,EACpB,KAAK,eAAe,IAAI,wBAAwB,EAChD,KAAK,kBAAkB,IAAI,gBAAgB,GAC5C,MAAM,4BAA4B,CAAC;AAGpC,OAAO,EACL,wBAAwB,EACxB,oBAAoB,EACpB,iBAAiB,EACjB,mBAAmB,EACnB,eAAe,EACf,kBAAkB,EAClB,0BAA0B,EAC1B,KAAK,mBAAmB,EACxB,KAAK,WAAW,EAChB,KAAK,aAAa,GACnB,MAAM,2BAA2B,CAAC;AAGnC,OAAO,EAAE,OAAO,EAAE,MAAM,0BAA0B,CAAC"}
package/dist/index.js ADDED
@@ -0,0 +1,25 @@
1
+ /**
2
+ * @sparkleideas/performance
3
+ *
4
+ * Performance module for claude-flow v3.
5
+ * Provides benchmarking, Flash Attention validation, and optimization utilities.
6
+ *
7
+ * Target Performance Metrics:
8
+ * - CLI Startup: <500ms (5x faster)
9
+ * - MCP Init: <400ms (4.5x faster)
10
+ * - Agent Spawn: <200ms (4x faster)
11
+ * - Vector Search: <1ms (150x faster)
12
+ * - Memory Write: <5ms (10x faster)
13
+ * - Swarm Consensus: <100ms (5x faster)
14
+ * - Flash Attention: 2.49x-7.47x speedup
15
+ * - Memory Usage: <256MB (50% reduction)
16
+ */
17
+ // Re-export benchmark framework
18
+ export { benchmark, BenchmarkRunner, compareResults, printComparisonReport, formatBytes, formatTime, meetsTarget, V3_PERFORMANCE_TARGETS, } from './framework/benchmark.js';
19
+ // Re-export Flash Attention integration
20
+ export { FlashAttentionOptimizer, createFlashAttentionOptimizer, quickBenchmark, } from './attention-integration.js';
21
+ // Re-export Flash Attention benchmarks
22
+ export { AttentionBenchmarkRunner, formatBenchmarkTable, formatSuiteReport, formatMemoryProfile, quickValidation, runAndDisplaySuite, runAndDisplayMemoryProfile, } from './attention-benchmarks.js';
23
+ // Default export for convenience
24
+ export { default } from './framework/benchmark.js';
25
+ //# sourceMappingURL=index.js.map