@@ -2325,8 +2325,9 @@ where L::Target: Logger {
2325
2325
// Decrease the available liquidity of a hop in the middle of the path.
2326
2326
let victim_candidate = & payment_path. hops [ ( payment_path. hops . len ( ) ) / 2 ] . 0 . candidate ;
2327
2327
let exhausted = u64:: max_value ( ) ;
2328
- log_trace ! ( logger, "Disabling route candidate {} for future path building iterations to
2329
- avoid duplicates." , LoggedCandidateHop ( victim_candidate) ) ;
2328
+ log_trace ! ( logger,
2329
+ "Disabling route candidate {} for future path building iterations to avoid duplicates." ,
2330
+ LoggedCandidateHop ( victim_candidate) ) ;
2330
2331
* used_liquidities. entry ( victim_candidate. id ( false ) ) . or_default ( ) = exhausted;
2331
2332
* used_liquidities. entry ( victim_candidate. id ( true ) ) . or_default ( ) = exhausted;
2332
2333
}
@@ -7361,6 +7362,42 @@ pub mod benches {
7361
7362
"generate_large_mpp_routes_with_probabilistic_scorer" ) ;
7362
7363
}
7363
7364
7365
+ pub fn generate_routes_with_nonlinear_probabilistic_scorer ( bench : & mut Criterion ) {
7366
+ let logger = TestLogger :: new ( ) ;
7367
+ let network_graph = bench_utils:: read_network_graph ( & logger) . unwrap ( ) ;
7368
+ let mut params = ProbabilisticScoringFeeParameters :: default ( ) ;
7369
+ params. linear_success_probability = false ;
7370
+ let scorer = ProbabilisticScorer :: new (
7371
+ ProbabilisticScoringDecayParameters :: default ( ) , & network_graph, & logger) ;
7372
+ generate_routes ( bench, & network_graph, scorer, & params,
7373
+ channelmanager:: provided_invoice_features ( & UserConfig :: default ( ) ) , 0 ,
7374
+ "generate_routes_with_nonlinear_probabilistic_scorer" ) ;
7375
+ }
7376
+
7377
+ pub fn generate_mpp_routes_with_nonlinear_probabilistic_scorer ( bench : & mut Criterion ) {
7378
+ let logger = TestLogger :: new ( ) ;
7379
+ let network_graph = bench_utils:: read_network_graph ( & logger) . unwrap ( ) ;
7380
+ let mut params = ProbabilisticScoringFeeParameters :: default ( ) ;
7381
+ params. linear_success_probability = false ;
7382
+ let scorer = ProbabilisticScorer :: new (
7383
+ ProbabilisticScoringDecayParameters :: default ( ) , & network_graph, & logger) ;
7384
+ generate_routes ( bench, & network_graph, scorer, & params,
7385
+ channelmanager:: provided_invoice_features ( & UserConfig :: default ( ) ) , 0 ,
7386
+ "generate_mpp_routes_with_nonlinear_probabilistic_scorer" ) ;
7387
+ }
7388
+
7389
+ pub fn generate_large_mpp_routes_with_nonlinear_probabilistic_scorer ( bench : & mut Criterion ) {
7390
+ let logger = TestLogger :: new ( ) ;
7391
+ let network_graph = bench_utils:: read_network_graph ( & logger) . unwrap ( ) ;
7392
+ let mut params = ProbabilisticScoringFeeParameters :: default ( ) ;
7393
+ params. linear_success_probability = false ;
7394
+ let scorer = ProbabilisticScorer :: new (
7395
+ ProbabilisticScoringDecayParameters :: default ( ) , & network_graph, & logger) ;
7396
+ generate_routes ( bench, & network_graph, scorer, & params,
7397
+ channelmanager:: provided_invoice_features ( & UserConfig :: default ( ) ) , 100_000_000 ,
7398
+ "generate_large_mpp_routes_with_nonlinear_probabilistic_scorer" ) ;
7399
+ }
7400
+
7364
7401
fn generate_routes < S : ScoreLookUp + ScoreUpdate > (
7365
7402
bench : & mut Criterion , graph : & NetworkGraph < & TestLogger > , mut scorer : S ,
7366
7403
score_params : & S :: ScoreParams , features : Bolt11InvoiceFeatures , starting_amount : u64 ,
0 commit comments