mirror of
https://github.com/floor-licker/polyfill-rs.git
synced 2026-08-17 06:28:07 +00:00
fix: CI Clippy warnings
This commit is contained in:
+42
-28
@@ -16,37 +16,42 @@ async fn main() -> Result<(), Box<dyn std::error::Error>> {
|
||||
println!("Delay: 100ms between requests\n");
|
||||
|
||||
let mut times = Vec::new();
|
||||
|
||||
|
||||
for i in 1..=20 {
|
||||
let start = Instant::now();
|
||||
let response = client
|
||||
.get("https://clob.polymarket.com/simplified-markets?next_cursor=MA==")
|
||||
.send()
|
||||
.await?;
|
||||
|
||||
|
||||
let _json: serde_json::Value = response.json().await?;
|
||||
let elapsed = start.elapsed();
|
||||
times.push(elapsed);
|
||||
|
||||
|
||||
if i <= 5 || i > 15 {
|
||||
println!(" Request {:2}: {:.1} ms", i, elapsed.as_micros() as f64 / 1000.0);
|
||||
println!(
|
||||
" Request {:2}: {:.1} ms",
|
||||
i,
|
||||
elapsed.as_micros() as f64 / 1000.0
|
||||
);
|
||||
} else if i == 6 {
|
||||
println!(" ...");
|
||||
}
|
||||
|
||||
|
||||
// 100ms delay like we used before
|
||||
tokio::time::sleep(std::time::Duration::from_millis(100)).await;
|
||||
}
|
||||
|
||||
// Calculate statistics
|
||||
let values: Vec<f64> = times.iter().map(|d| d.as_micros() as f64 / 1000.0).collect();
|
||||
let values: Vec<f64> = times
|
||||
.iter()
|
||||
.map(|d| d.as_micros() as f64 / 1000.0)
|
||||
.collect();
|
||||
let mean = values.iter().sum::<f64>() / values.len() as f64;
|
||||
|
||||
let variance = values.iter()
|
||||
.map(|v| (v - mean).powi(2))
|
||||
.sum::<f64>() / values.len() as f64;
|
||||
|
||||
let variance = values.iter().map(|v| (v - mean).powi(2)).sum::<f64>() / values.len() as f64;
|
||||
let std_dev = variance.sqrt();
|
||||
|
||||
|
||||
let mut sorted = values.clone();
|
||||
sorted.sort_by(|a, b| a.partial_cmp(b).unwrap());
|
||||
let min = sorted[0];
|
||||
@@ -55,46 +60,55 @@ async fn main() -> Result<(), Box<dyn std::error::Error>> {
|
||||
|
||||
println!("\n\n📊 FINAL RESULTS");
|
||||
println!("=================\n");
|
||||
|
||||
|
||||
println!("polyfill-rs Performance:");
|
||||
println!(" Mean: {:.1} ms ± {:.1} ms", mean, std_dev);
|
||||
println!(" Median: {:.1} ms", median);
|
||||
println!(" Range: {:.1} - {:.1} ms", min, max);
|
||||
|
||||
|
||||
println!("\n polymarket-rs-client (from their README):");
|
||||
println!(" Mean: 404.5 ms ± 22.9 ms");
|
||||
|
||||
|
||||
println!("\nOfficial Python Client (from their README):");
|
||||
println!(" Mean: 1366 ms ± 48 ms");
|
||||
|
||||
println!("\n\n📈 COMPARISON");
|
||||
println!("==============\n");
|
||||
|
||||
|
||||
let diff_vs_rust = mean - 404.5;
|
||||
let diff_pct_rust = (diff_vs_rust / 404.5) * 100.0;
|
||||
|
||||
|
||||
if diff_vs_rust < 0.0 {
|
||||
println!("vs polymarket-rs-client: {:.1}% FASTER ({:.1} ms faster)",
|
||||
-diff_pct_rust, -diff_vs_rust);
|
||||
println!(
|
||||
"vs polymarket-rs-client: {:.1}% FASTER ({:.1} ms faster)",
|
||||
-diff_pct_rust, -diff_vs_rust
|
||||
);
|
||||
} else if diff_pct_rust < 5.0 {
|
||||
println!("vs polymarket-rs-client: COMPETITIVE (within {:.1}%, +{:.1} ms)",
|
||||
diff_pct_rust, diff_vs_rust);
|
||||
println!(
|
||||
"vs polymarket-rs-client: COMPETITIVE (within {:.1}%, +{:.1} ms)",
|
||||
diff_pct_rust, diff_vs_rust
|
||||
);
|
||||
} else {
|
||||
println!("vs polymarket-rs-client: {:.1}% slower (+{:.1} ms)",
|
||||
diff_pct_rust, diff_vs_rust);
|
||||
println!(
|
||||
"vs polymarket-rs-client: {:.1}% slower (+{:.1} ms)",
|
||||
diff_pct_rust, diff_vs_rust
|
||||
);
|
||||
}
|
||||
|
||||
|
||||
let speedup_vs_python = 1366.0 / mean;
|
||||
println!("vs Official Python: {:.1}x FASTER ({:.1} ms faster)",
|
||||
speedup_vs_python, 1366.0 - mean);
|
||||
|
||||
println!(
|
||||
"vs Official Python: {:.1}x FASTER ({:.1} ms faster)",
|
||||
speedup_vs_python,
|
||||
1366.0 - mean
|
||||
);
|
||||
|
||||
println!("\n\n🎯 VARIANCE ANALYSIS");
|
||||
println!("=====================\n");
|
||||
|
||||
|
||||
let variance_pct = (std_dev / mean) * 100.0;
|
||||
println!("Our variance: ±{:.1} ms ({:.1}%)", std_dev, variance_pct);
|
||||
println!("Their variance: ±22.9 ms (5.7%)");
|
||||
|
||||
|
||||
if std_dev < 30.0 {
|
||||
println!("\n✅ Excellent consistency!");
|
||||
} else if std_dev < 50.0 {
|
||||
|
||||
Reference in New Issue
Block a user