Since it has been shown that the t1.micro instances throttle the cpu dramatically after 15 seconds, it would be hard to benchmark using any test that runs over 15 seconds. And I'm not sure how long it takes to go back to unthrottled speeds either.
Reference:
http://blog.documentcloud.org/blog/2...cro-instances/
The micro instance?s CPU is reasonably fast while bursting, but when the burst runs out then the rate limit is pretty brutal. The rate limited speed is roughly 1/3 of the burst speed that you get for the first 15 seconds.
A simple test, showing compute power per second with some sleep in-between runs to allow the rate-limiter?s bucket to refill:
#!/usr/bin/perl
my $firsttime = my $time = time;
for(my $x = 0; time-$firsttime < 30; $x++) {
if($time != time) {
printf "%2d %d\n", time-$firsttime, $x;
$x = 0;
$time = time;
}
}
# sleep 300; ./throttleme.pl; sleep 300; ./throttleme.pl
1 3050483
2 4499169
3 4351002
4 4480768
5 4491703
6 4495259
7 4502143
8 4494198
9 4174903
10 4097267
11 4259348
12 4370439
13 4216742
14 4379620
15 4499622
16 448604
17 132731
19 133197
20 132758
22 132523
23 129993
24 127614
25 133869
27 132596
28 133385
1 3637552
2 4357062
3 4086175
4 4352176
5 4357643
6 4044038
7 4353554
8 4356628
9 51296
10 129492
12 128712
13 126456
15 129196
16 125337
18 129433
19 111697
21 129684
22 128626
24 128390
25 129025
27 128435
28 128914
30 110801
One important observation here is that it appears to be skipping seconds once rate limiting kicks in. That implies the rate limiter is doing a few very long pauses to rate limit me (as opposed to doing lots of small pauses). So, I get really bad CPU jitter once the rate limiter kicks in.
A simple test, showing compute power per second with some sleep in-between runs to allow the rate-limiter?s bucket to refill:
#!/usr/bin/perl
my $firsttime = my $time = time;
for(my $x = 0; time-$firsttime < 30; $x++) {
if($time != time) {
printf "%2d %d\n", time-$firsttime, $x;
$x = 0;
$time = time;
}
}
# sleep 300; ./throttleme.pl; sleep 300; ./throttleme.pl
1 3050483
2 4499169
3 4351002
4 4480768
5 4491703
6 4495259
7 4502143
8 4494198
9 4174903
10 4097267
11 4259348
12 4370439
13 4216742
14 4379620
15 4499622
16 448604
17 132731
19 133197
20 132758
22 132523
23 129993
24 127614
25 133869
27 132596
28 133385
1 3637552
2 4357062
3 4086175
4 4352176
5 4357643
6 4044038
7 4353554
8 4356628
9 51296
10 129492
12 128712
13 126456
15 129196
16 125337
18 129433
19 111697
21 129684
22 128626
24 128390
25 129025
27 128435
28 128914
30 110801
One important observation here is that it appears to be skipping seconds once rate limiting kicks in. That implies the rate limiter is doing a few very long pauses to rate limit me (as opposed to doing lots of small pauses). So, I get really bad CPU jitter once the rate limiter kicks in.
Leave a comment: