@@ -2325,8 +2325,9 @@ where L::Target: Logger {
23252325 // Decrease the available liquidity of a hop in the middle of the path.
23262326 let victim_candidate = & payment_path. hops [ ( payment_path. hops . len ( ) ) / 2 ] . 0 . candidate ;
23272327 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) ) ;
23302331 * used_liquidities. entry ( victim_candidate. id ( false ) ) . or_default ( ) = exhausted;
23312332 * used_liquidities. entry ( victim_candidate. id ( true ) ) . or_default ( ) = exhausted;
23322333 }
@@ -7361,6 +7362,42 @@ pub mod benches {
73617362 "generate_large_mpp_routes_with_probabilistic_scorer" ) ;
73627363 }
73637364
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+
73647401 fn generate_routes < S : ScoreLookUp + ScoreUpdate > (
73657402 bench : & mut Criterion , graph : & NetworkGraph < & TestLogger > , mut scorer : S ,
73667403 score_params : & S :: ScoreParams , features : Bolt11InvoiceFeatures , starting_amount : u64 ,
0 commit comments