- # SPEED1 = (pre-fetched + 100 * (time1 - 2) + 300 * (time2 - 2)) / \
- # (time1 + time2) * 0.9
- SPEED1=$(((1024 + 100 * (10 - 2) + 300 * (10 - 2)) / \
- (10 + 10) * 9 / 10))
- [ $SPEED -gt $SPEED1 ] ||
- error "(11) Got speed $SPEED, expected more than $SPEED1"
-
- # SPEED1 = (pre-fetched + 100 * (time1 + 2) + 300 * (time2 + 2)) / \
- # (time1 + time2) * 1.1
- SPEED1=$(((1024 + 100 * (10 + 2) + 300 * (10 + 2)) / \
- (10 + 10) * 11 / 10))
- [ $SPEED -lt $SPEED1 ] ||
- error "(12) Got speed $SPEED, expected less than $SPEED1"
+ # MIN_MARGIN = 0.8 = 8 / 10
+ local MIN_SPEED=$(((PRE_FETCHED + \
+ BASE_SPEED1 * (RUN_TIME1 - TIME_DIFF) + \
+ BASE_SPEED2 * (RUN_TIME2 - TIME_DIFF)) / \
+ (RUN_TIME1 + RUN_TIME2) * 8 / 10))
+ [ $SPEED -gt $MIN_SPEED ] ||
+ error "(11) Got speed $SPEED, expected more than $MIN_SPEED"
+
+ # MAX_MARGIN = 1.2 = 12 / 10
+ MAX_SPEED=$(((PRE_FETCHED + \
+ BASE_SPEED1 * (RUN_TIME1 + TIME_DIFF) + \
+ BASE_SPEED2 * (RUN_TIME2 + TIME_DIFF)) / \
+ (RUN_TIME1 + RUN_TIME2) * 12 / 10))
+ [ $SPEED -lt $MAX_SPEED ] ||
+ error "(12) Got speed $SPEED, expected less than $MAX_SPEED"