- Labornetzteil AliExpress         
Seite 1 von 2 12 LetzteLetzte
Ergebnis 1 bis 10 von 13

Thema: ZeroW Performance

  1. #1
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    07.04.2015
    Beiträge
    865

    ZeroW Performance

    Anzeige

    Praxistest und DIY Projekte
    Test.zip

    Hallöle,

    mag mir vielleicht jemand spontan mit seinem großen Raspi unter die Arme greifen und die im Anhang aufgeführten Dateien in einen C-Compiler schmeißen und als Release durchlaufen lassen?

    Ich bekomme mit meinem ZeroW so etwa 3,5s für einen Durchlauf raus. Kommt mir etwas viel vor.


    Danke
    Holomino

  2. #2
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    07.04.2015
    Beiträge
    865
    Klicke auf die Grafik für eine größere Ansicht

Name:	Trash.png
Hits:	25
Größe:	11,4 KB
ID:	33733

    Mit nem 3B+ bitte????

  3. #3
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    31.01.2004
    Ort
    36399
    Alter
    49
    Beiträge
    1.562
    gcc main.c BresenhamTest.c Bresenham.c -o test.bin -mtune=native -O2

    Dann komme ich auf eine 2er auf diese Zeiten

    Bresenham time: 2.839819
    Press e to exit, anything else to repeat

    Bresenham time: 2.808073
    Press e to exit, anything else to repeat
    t

    Bresenham time: 2.843296
    Press e to exit, anything else to repeat
    e
    Bresenham time: 2.808091
    Press e to exit, anything else to repeat
    P: Meine Tochter (06.11.07) und https://www.carnine.de
    M: Träumen hat nix mit Dummheit zu tun es ist die Möglichkeit neues zu erdenken

  4. #4
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    07.04.2015
    Beiträge
    865
    Hmmm,
    mit nem BPI M2 Zero liege ich jetzt bei 2,5s. Der taktet so bei 960MHz im Normalbetrieb.

    Aber schon etwas seltsam: Auf'm Notebook(1,8GHz) habe ich ne Durchlaufzeit von 0,2s.
    Da alle Operationen im Ganzzahlbereich liegen und auch nur ein Kern involviert ist, hätte ich jetzt eher gedacht, das lässt sich grob linear anhand der Prozessorfrequenz schätzen - aber hier liegt die Abweichung bei Faktor 5?!? Was treibt der ARM da?

  5. #5
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    31.01.2004
    Ort
    36399
    Alter
    49
    Beiträge
    1.562
    Ich habe mir den Code nicht wirklich angesehen nur Compiliert. Was ist der Ziel des Codes ? Malen von Kreisen ?
    Für mein Projekt habe ich da auch mal angefangen aber habe zur zeit aufgeben jetzt sind alle Steuerelementebilder das geht einfach viel schneller. Problem leider nicht wirklich skalierbar ohne das es blöd aussieht. Wenn alles mal Funktioniert will svg noch mal versuchen.

    Muss es C sein ? oder darf es auch C++ sein ?

    http://www.cplusplus.com/reference/cmath/abs/

    Das ist für mich fliescomma damit geht er auf die FPU ergo da kann man vielleicht noch was raus holen.
    https://stackoverflow.com/questions/...e-lines-faster

    int err = (dx > dy ? dx : -dy) / 2, e2;
    Hier verlassen mich meine C erkenntnisse was macht die Zeile ? , e2 verstehe ich nicht
    P: Meine Tochter (06.11.07) und https://www.carnine.de
    M: Träumen hat nix mit Dummheit zu tun es ist die Möglichkeit neues zu erdenken

  6. #6
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    07.04.2015
    Beiträge
    865
    Doch, den kennst Du auch:

    int err, e2;
    int err= 0, e2;
    int err= irgendwas, e2;

    Aber ich muss lachen, den Code hab ich von irgendwo geklaut und ich habe auch ziemlich lange auf die Zeile gestarrt, bis endlich der Groschen fiel.

    Der Bresenham ist in der Form nen Linienerzeuger, der steppt nur die Punkte von Start bis End durch. Ganz gut für nen Laserscanner im GridSlam zu gebrauchen (Wenn man denn im Callback auch mit den Gridzellen vergleicht oder sie setzt).

    Allerdings war die Sache für mich auch nur ein Test, um mal zu sehen, was aus diesen kleinen PI-Dingern rauszuholen ist. Ich habe meine App mittlerweile mit C# unter Mono recht gut mit dem BPI M2 Zero am laufen (nachdem ich nun auch mal die Rechnerei auf die Kerne verteilt habe). Mit dem RPI ZeroW wird's rein rechnerisch unter Mono nix, wenn ich sehe, dass alle vier Kerne des BPI zur Zeit bei etwa 50% liegen. Den ganzen Sermon für das Raspi-Geklüngel auf C zu portieren würde sicher die Sache um den Faktor 3..4 beschleunigen, lohnt sich aber für mich irgendwie (noch) nicht. Ich hänge hier sowieso 90% der Zeit mit nem Notebook lokal in Simulationen oder über Bluetooth am Roboter.

    Ich nehme das jetzt einfach mal zur Kenntnis mit dem (nicht repräsentativen) BresenhamTest:
    Faktor Arm Mono : Arm C 4:1
    Faktor Windows C : Arm C 1:5
    Faktor Windows C : Windows C# 1:4
    Geändert von Holomino (18.11.2018 um 10:37 Uhr)

  7. #7
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    31.01.2004
    Ort
    36399
    Alter
    49
    Beiträge
    1.562
    Ok jetzt habe ich das auch verstanden. Danke.
    Dann lassen wir das Thema wie es ist. Ich mag es zwar nicht so Energie zu verschwenden aber das dein Projekt und ich sollte meines voran treiben.
    Ich programmiere jeden Tag C# (Job) aber ich mag es nach wie vor nur bedingt das krass Beispiel die Farbe aus eine Bitmap rechnen (Graustufen A3 200 Dpi). C# 30 msec C++ 3 msec Windows 8 Kerne 16 GByte Hauptspeicher.
    P: Meine Tochter (06.11.07) und https://www.carnine.de
    M: Träumen hat nix mit Dummheit zu tun es ist die Möglichkeit neues zu erdenken

  8. #8
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    07.04.2015
    Beiträge
    865
    Es gibt da tatsächlich nur eine Hand voll Dinge, die mich an C# festhalten lassen: PropertyGrid(zur Konfiguration auch während der laufenden Simulation), XMLSerializer(zum Laden/Speichern von Konfigurationen), Reflection (zum Durchforsten/Laden/Speichern von externen DLLs per Latebinding),....
    Das mag ich nicht mehr missen. Ich bin mittlerweile einfach zu faul oder zu alt, Konfigurationsdialoge zu malen oder in Dateien per Hand rumzuhacken.

    Aber man kann ja auch den rechenlastigen Teil in den unmanaged-Bereich auslagern, wenn es nötig wird.

  9. #9
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    31.01.2004
    Ort
    36399
    Alter
    49
    Beiträge
    1.562
    für Config files nehme ich Json https://github.com/nlohmann/json/releases.
    Zu dem rest sage ich mal nix.
    P: Meine Tochter (06.11.07) und https://www.carnine.de
    M: Träumen hat nix mit Dummheit zu tun es ist die Möglichkeit neues zu erdenken

  10. #10
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    07.04.2015
    Beiträge
    865
    Zitat Zitat von NumberFive Beitrag anzeigen
    http://www.cplusplus.com/reference/cmath/abs/

    Das ist für mich fliescomma damit geht er auf die FPU ergo da kann man vielleicht noch was raus holen.
    BTW: In der Bresenham-Funktion wird das "abs" einmalig aufgerufen, wenn Du in BresenhamTest die Anzahl der Aufrufe kleiner machst (/100) und die Länge der Linien entsprechend vergrößerst (*100), macht das zumindest bei mir in der Durchlaufzeit null Unterschied.

    An der FPU liegt das also hier nicht.

Seite 1 von 2 12 LetzteLetzte

Ähnliche Themen

  1. Huawei Kirin 980: 7-nm-Chip hat doppelte AI-Performance
    Von Roboternetz-News im Forum Neuigkeiten / Technik-News / Nachrichten / Aktuelles
    Antworten: 0
    Letzter Beitrag: 31.08.2018, 14:20
  2. STM32 contra ARM Cortex M3 (Arduino Due, Teensy): Performance per Arduino vs. nativ C
    Von HaWe im Forum ARM - 32-bit-Mikrocontroller-Architektur
    Antworten: 14
    Letzter Beitrag: 22.11.2017, 11:53
  3. 184 PS: BMW bringt i3s als Performance-Version seines Elektroautos
    Von Roboternetz-News im Forum Neuigkeiten / Technik-News / Nachrichten / Aktuelles
    Antworten: 0
    Letzter Beitrag: 29.08.2017, 08:40

Berechtigungen

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

MultiPlus Wechselrichter Insel und Nulleinspeisung Conrad