- LiFePO4 Speicher Test         
Ergebnis 1 bis 6 von 6

Thema: HaWe Brickbench Benchmark Test 2.0

Baum-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #6
    HaWe
    Gast
    Zitat Zitat von shedepe Beitrag anzeigen
    Code:
    long test_Int_Mult() {
      int x,y;
      volatile long s;
    
      for(y=0;y<500000;++y) { //    10,000,000 int mult/div
        s=1;
        for(x=1;x<=10;++x) { s*=x;}  
        for(x=10;x>0;--x) { s/=x;}
    
      }
      return s;
    }
    Würde vorschlagen, das Ergbnis der Funktion in eine Variable einzulesen und erst diese Variable als volatile zu deklarieren. Sonst verhinderst du eventuell Optimierung in der Funktion die sich auf die Laufzeit auswirken könnten. Das selbe gilt auch für alle anderen Funktionen mit volatile Variablen in der Funktion.
    ja, das stimmt, allerdings hatte ich das genau so eigentlich beabsichtigt, dass es keinesfalls optimiert werden sollte, weil ich unbedingt wollte, dass während der Laufzeit alle Schritte genau so, unverändert und unoptimiert vollständig berechnet werden:
    Man sollte ein Maß haben, wieviel Zeit tatsächlich für eine definitiv durchzuführende Anzahl arithmetischer Operationen (hier eben vollständige explizite Integer Mult./Divis.) benötigt wird.

    Hintergrund ist auch, dass bei "echten" Anwendungsprogrammen kaum immer so extrem viele kurze Operationen mit denselben Variablen in langen Schleifen durchgeführt werden, sondern diese eher durch if-statements, Jumps/Funktionsaufrufe und GPIO r/w sowie völlig andere Berechnungen mit ganz anderen Variablen unterbrochen sind. Dadurch ist es dann auch nicht unbedingt möglich, diese Operationen immer direkt auf den schnelleren Registern auszuführen, sondern stattdessen sind eher häufige RAM-Zugriffe erforderlich.
    Genau diese sonst mögliche, schnellere Register-Arithmetik soll auch hier per volatile verhindert werden, abgesehen von kompletten weg-Optimierungen, weil die Rechenergebnisse weiterhin ungenutzt bleiben.
    Geändert von HaWe (18.07.2018 um 17:09 Uhr)

Ähnliche Themen

  1. Benchmark für Raspberry Pi
    Von HaWe im Forum Raspberry Pi
    Antworten: 15
    Letzter Beitrag: 10.12.2014, 10:08
  2. PonyProg bringt bei test immer "test failed"
    Von Roboman93 im Forum AVR Hardwarethemen
    Antworten: 18
    Letzter Beitrag: 02.10.2009, 18:21
  3. Antworten: 10
    Letzter Beitrag: 25.02.2008, 15:33
  4. IR-Adapter Test und ASURO-IR TEST geht nich
    Von C_the_KILLA im Forum Asuro
    Antworten: 1
    Letzter Beitrag: 12.03.2007, 18:02
  5. Antworten: 8
    Letzter Beitrag: 30.08.2006, 13:13

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •  

Solar Speicher und Akkus Tests