1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

STM32F042、フィボナッチ数列で遊ぶ(UNO3比8倍程度)(ベンチマークテスト)(理系フリマで買った)

Last updated at Posted at 2025-02-27

目的

整数のベンチマークする

いろいろ

シンセ先輩からほぼ貰う。(mbed終わっちゃし
f042は、内臓USB付き、たが、まともに動かない
理系フリマ (20250301)(土)

Arduino UNO R3は、約17542msで
は、約2170msで約8倍、速い
理由は、不明

Arduino UNO 3 約17542ms(18秒)
M5NanoC6 約336ms(0.3秒)
M5StampS3 約328ms(0.3秒)
STM32H743 約72ms(0.072秒)

結果

Screenshot from 2025-02-28 07-57-26.png

プログラム



//値が100,000を超えるまでのフィボナッチ数列を生成する作業を500,000回繰り返すのに要した時間を計測する。
#define DEBUG 0
void setup() {
  Serial.begin(9600);
  Serial.println();
  Serial.print("START");
  for(int i = 0;i < 9;i++){
    Serial.print('.');
    delay(500);
  }
  Serial.println();
}
void loop() {
  unsigned long x;
  unsigned long prevx;
  unsigned long temp;
  unsigned long start_time, end_time;
  unsigned long time;
  start_time = millis();
  for (unsigned long a = 0; a < 500000; a++) {
    x = 1;
    prevx = 0;
    while (x < 100000) {
      temp = x;
      x = prevx + x;
      prevx = temp;
#if DEBUG
      Serial.println(x);
#endif
    }
  }
  end_time = millis();
  time = end_time - start_time;
  Serial.print("END Value:");
  Serial.println(x); //最後の値の出力
  Serial.print("StartTime:");
  Serial.print(start_time);
  Serial.print(" EndTime:");
  Serial.print(end_time);
  Serial.print(" Time:");
  Serial.println(time);
  delay(1000);  //1秒待機
}


1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?