| 141 | : expiry_duration_(DurationFromMilliseconds(250)) {} |
| 142 | |
| 143 | Tuning TuningResolver::Resolve() { |
| 144 | #ifdef RUY_IMPLEMENT_TUNING |
| 145 | if (unresolved_tuning_ != Tuning::kAuto) { |
| 146 | return unresolved_tuning_; |
| 147 | } |
| 148 | TimePoint new_timepoint = CoarseNow(); |
| 149 | if (last_resolved_tuning_ != Tuning::kAuto && |
| 150 | (new_timepoint - last_resolved_timepoint_) < expiry_duration_) { |
| 151 | return last_resolved_tuning_; |
| 152 | } |
| 153 | last_resolved_timepoint_ = new_timepoint; |
| 154 | last_resolved_tuning_ = ResolveNow(); |
| 155 | return last_resolved_tuning_; |
| 156 | #else |
| 157 | return Tuning::kOutOfOrder; |
| 158 | #endif |
| 159 | } |
| 160 | |
| 161 | } // namespace ruy |