@@ -603,87 +603,6 @@ inline std::vector<int> generate_scm_mask(
603603 return mask;
604604}
605605
606- inline std::vector<int > get_scm_preset (const std::string& preset, int total_steps) {
607- struct Preset {
608- std::vector<int > compute_bins;
609- std::vector<int > cache_bins;
610- };
611-
612- Preset slow = {{8 , 3 , 3 , 2 , 1 , 1 }, {1 , 2 , 2 , 2 , 3 }};
613- Preset medium = {{6 , 2 , 2 , 2 , 2 , 1 }, {1 , 3 , 3 , 3 , 3 }};
614- Preset fast = {{6 , 1 , 1 , 1 , 1 , 1 }, {1 , 3 , 4 , 5 , 4 }};
615- Preset ultra = {{4 , 1 , 1 , 1 , 1 }, {2 , 5 , 6 , 7 }};
616-
617- Preset* p = nullptr ;
618- if (preset == " slow" || preset == " s" || preset == " S" )
619- p = &slow;
620- else if (preset == " medium" || preset == " m" || preset == " M" )
621- p = &medium;
622- else if (preset == " fast" || preset == " f" || preset == " F" )
623- p = &fast;
624- else if (preset == " ultra" || preset == " u" || preset == " U" )
625- p = &ultra;
626- else
627- return {};
628-
629- if (total_steps != 28 && total_steps > 0 ) {
630- float scale = static_cast <float >(total_steps) / 28 .0f ;
631- std::vector<int > scaled_compute, scaled_cache;
632-
633- for (int v : p->compute_bins ) {
634- scaled_compute.push_back (std::max (1 , static_cast <int >(v * scale + 0 .5f )));
635- }
636- for (int v : p->cache_bins ) {
637- scaled_cache.push_back (std::max (1 , static_cast <int >(v * scale + 0 .5f )));
638- }
639-
640- return generate_scm_mask (scaled_compute, scaled_cache, total_steps);
641- }
642-
643- return generate_scm_mask (p->compute_bins , p->cache_bins , total_steps);
644- }
645-
646- inline float get_preset_threshold (const std::string& preset) {
647- if (preset == " slow" || preset == " s" || preset == " S" )
648- return 0 .20f ;
649- if (preset == " medium" || preset == " m" || preset == " M" )
650- return 0 .25f ;
651- if (preset == " fast" || preset == " f" || preset == " F" )
652- return 0 .30f ;
653- if (preset == " ultra" || preset == " u" || preset == " U" )
654- return 0 .34f ;
655- return 0 .08f ;
656- }
657-
658- inline int get_preset_warmup (const std::string& preset) {
659- if (preset == " slow" || preset == " s" || preset == " S" )
660- return 8 ;
661- if (preset == " medium" || preset == " m" || preset == " M" )
662- return 6 ;
663- if (preset == " fast" || preset == " f" || preset == " F" )
664- return 6 ;
665- if (preset == " ultra" || preset == " u" || preset == " U" )
666- return 4 ;
667- return 8 ;
668- }
669-
670- inline int get_preset_Fn (const std::string& preset) {
671- if (preset == " slow" || preset == " s" || preset == " S" )
672- return 8 ;
673- if (preset == " medium" || preset == " m" || preset == " M" )
674- return 8 ;
675- if (preset == " fast" || preset == " f" || preset == " F" )
676- return 6 ;
677- if (preset == " ultra" || preset == " u" || preset == " U" )
678- return 4 ;
679- return 8 ;
680- }
681-
682- inline int get_preset_Bn (const std::string& preset) {
683- (void )preset;
684- return 0 ;
685- }
686-
687606inline void parse_dbcache_options (const std::string& opts, DBCacheConfig& cfg) {
688607 if (opts.empty ())
689608 return ;
0 commit comments