- Akku Tests und Balkonkraftwerk Speicher         
Ergebnis 1 bis 10 von 16

Thema: Benchmark für Raspberry Pi

Hybrid-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #1
    HaWe
    Gast
    nein danke, ich will ja den RPi auch mit den ganzen anderen Plattformen vergleichen können, für die bereits Messergebnisse existieren (s. Tabelle).
    Er wird inzwischen auch von EV3-Software- und VM- Entwicklern (RobotC, Mono/C#, leJOS/Java) benutzt als Vergleich und zur Performanceoptimierung.
    Ich selber besitze aber auch noch gar keinen RPi, es soll ja zur Kaufentscheidung dienen.

    (ps: und mein Benchmark testet ja auch viel differenzierter in viel mehr Einzeltests in einer viel größeren Bandbreite an Rechenoperationen und Funktionen als nur dieses Primzahlending in deinem Link; andererseits ist mein Referenzcode ja bereits gpp C/C++, wie man es auch mit Eclipse auf Linux-Plattformen benutzt. )
    Geändert von HaWe (03.12.2014 um 08:24 Uhr)

  2. #2
    shedepe
    Gast
    Was willst du überhaupt alles Benchmarken ? Nur Arm CPUs oder auch 8bit Prozessoren ? Worauf kommt es dir bei der Kaufentscheidung an ?
    Aus der Erfahrung kann ich auch sagen, dass man nur selten wirklich jedes quäntchen Performance rauskitzelt (Einfach weil es abartig Zeitaufwändig ist) oder gar die Programmiersprache nach der Performance wählt. Meistens ist es sinnvoller man wählt die Programmiersprache nach den benötigten Libraries aus und danach was man besser programmieren kann.

    Desweiteren versuchst du (soweit ich das erkennen kann) gerade auch Plattformen auf denen ein komplettes Betriebssystem läuft mit Plattformen zu vergleichen die kein oder nur ein sehr rudimentäres Betriebssystem haben. Worauf ich letztendlich hinauswill. Selbst mal wenn du den Benchmark portest, die Frage ist ob du ein aussagekräftiges Ergebnis bekommen wirst und ob du wirklich etwas damit anfangen kannst.

  3. #3
    HaWe
    Gast
    ich nutze es halt zur Kaufentscheidung. Es sind typische Operationen wie ich und andere sie öfters nutzen zu unterschiedlichsten Zwecken.
    Insbesondere geht es um den Unterschied C vs. Python vs. Java, und auch vs. EV3 und vs. Arduino Due.
    Auch der EV3 ist 32-bit ARM- und Linux-basiert (TI oder Debian).
    Es muss ja nicht DICH interessieren, aber MICH interessiert es.

  4. #4
    shedepe
    Gast
    So hätte ich das jetzt nicht formuliert. Schließlich will man ja vor dem Kauf durchaus wissen, was man sich kauft. Die Frage ist aber echt wie aussagekräftig ein Benchmark ist. Für vergleichbare Ergebnisse würde ich stark eher zu Standard benchmark Tools wie sysbench oder stress raten ( Nachteil -> verschiedene Programmiersprachen werden nicht verglichen -> darauf gehe ich aber noch ein)
    Ich könnte dir aber den Benchmark in C auf nem Raspberry ausführen wenn du darauf bestehst und wenn du ihn selber anpasst und durch einen crosscompiler schiebst. (Anpassen ist echt einfach. Alle Hardware spezifischen Sachen entfernen bzw. die Timer durch ctime ersetzen)
    Für den Unterschied C - Java - Python - die werden kaum anderes sein als für andere Plattformen wobei man dran denken sollte, dass Java durch wenig Ram auch ausgebremst werden kann. Aber um für Geschwindigkeitsunterschiede zwischen einzelnen Programmiersprachen akzeptable Benchmarks zuerstellen braucht es mehr Zeit als die meisten Leute in einem Forum investieren wollen, über solche Themen wurden schon ganze wissenschaftliche Arbeiten verfasst ( http://www.azulsystems.com/blog/clif...rformanceagain ). Die Python Entwickler äußern sich sogar direkt zur Performance : https://wiki.python.org/moin/PythonSpeed -> Man kann z.B. C -Module in Python verwenden die eben stark optimiert wurden. Reine CPU Intensive Operationen wie dein Benchmark sie ausführt werden aber kaum feststellbare Unterschiede ergeben.
    Deine Testfunktionen testen vorallem die CPU Leistung und allerhöchstens noch die Zugriffgeschwindigkeit auf den L1 Cache. Zudem muss man auch noch beachten, dass einige Raspian Distros anscheinend Probleme mit der Detection des L1 Caches haben. Interessant für eine allgemeine Leistungsaussage sind jedoch noch viel mehr Daten: Speicherzugriffsraten, Zugriffszeiten, Transferzeiten zur GPU. Hier kommt es auch stark auf die später geplante Anwendung an wie diese gewisse Zugriffe macht, in wiefern sie optimiert wurde, ob sie von der Hardwarebeschleunigung profitieren kann oder nicht. Dies ist eben gerade interessant wenn man Java und Python verwendet. Hier kann man z.B. bei vielen IO Zugriffen in eine Performancefalle laufen -> kann man aber bei python durch bestimmte Optimierungen gut umgehen.

  5. #5
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    27.08.2013
    Ort
    Region Basel
    Alter
    67
    Beiträge
    2.435
    Hallo,

    Man muss auch sehr aufpassen, WAS man da misst!

    Bei einer CPU ohne Fliesskomma-Einheit, testet ein Fliesskommatest nur das Emulationspaket des Compilers. Emulierte Fliesskomma-Operationen sind in der Grössenordnung 100x langsamer als eine Hardware-Einheit. Die Frage ist dann auch noch, welches Fliesskomma-Format verwendet wird!

    Und nicht vergessen, die Steigerung von Lüge:
    Lüge - Meineid- Statistik - Benchmark


    Ein IAR-Konkurrent hatte auch mal seinen Compiler für die H8 von Hitachi mit Benchmarks beworben und wesentlich besser abgeschnitten.
    Der Trick war: Nach einem Reset läuft der H8 mit 3 Wait-States, damit er auch mit langsamem Speicher startet. Beim IAR-Paket muss man die Wait-States dann selber hoch setzen, beim Konkurrenten hat das der Compiler automatisch eingefügt (Dann muss man aber mit langsamem Speicher das von Hand ändern, sonst läuft es nicht).
    Tja.... Ist auch schon 20 Jahre her ...

    MfG Peter(TOO)
    Manchmal frage ich mich, wieso meine Generation Geräte ohne Simulation entwickeln konnte?

  6. #6
    HaWe
    Gast
    ich will jetzt nicht über denn Sinn aller Einzeltests diskutieren oder das Gesamtresultat -
    der Benchmark misst, was der Benchmark misst.

    Zufällig misst er genau das, was mich (und andere) interessiert, und er ist auf mehreren Plattformen etabliert.
    Also wird er (zunächst, mittelfristig) so bleiben, und wenn er mal verbessert wird (was ja sein kann), so müssen ntl auch alle Codes für alle anderen Plattformen neu programmiert werden.
    Das ist nicht einfach, weil viele Codes von anderen Nutzern stammen, die ich selber gar nicht ändern kann und wo ich auch gar nicht die Plattformen dazu habe und nutze (u.a. C#, Java, RobotC, Toppers C).

    Wäre also schön, wenn man als Zusatzplattform für den bestehenden Test auch den RPi hätte mit 2-3 verschiedenen Programmiersprachen.
    V.a. C und Python halt, ggf auch Java.

    ps,
    wenn man sich an die C-Vorlage hält, insb. was die "volatiles" angeht, wird hier schon was vergleichbares herauskommen.
    Außerdem kann ja jeder dann den entspr. angepassten Code selber testen und auf Fehler oder Cheats überprüfen (wer will und mag).

    pps,
    C-Module in Python gehen ntl normalerweise nicht, es sollen ja die "nackten" Codes verglichen werden. Es dürfen in einigen Fällen (z.B. sort) auch library-Implementationen verwendet werden.
    Genau das soll ja der Test widerspiegeln:
    sowohl einfache elementare und dann zunehmend kompliziertere bis hin zu hochkomplexen Berechnungen und Display-Output Operationen.
    Jeder kann sich da übrigens für sich selber herausfiltern, was ihm persönlich am wichtigsten ist.

    Für mich persönlich ist das:
    einfach alles.
    Geändert von HaWe (03.12.2014 um 13:29 Uhr)

  7. #7
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    01.03.2008
    Ort
    Niederlanden
    Beiträge
    1.170
    Das hier schon gesehen?


    http://www.roylongbottom.org.uk/Rasp...Benchmarks.htm


    Es ist aber nicht ein verlgleich von MCUs, sondern Klein-computer Prozessoren.

  8. #8
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    18.05.2007
    Ort
    Berlin
    Alter
    53
    Beiträge
    765
    Vergiss die Benchmarkgeschichte. Die sagt nichts aus. Bei dem nächsten Update oder auch nur einer anderen kleinen Lib kann es schon ganz anders aussehen. Vom Multitasking, welches mehr oder weniger bremsen kann, ganz zu schweigen.

    Sag einfach (oder besser umfangreich), was Du mit dem Raspi vorhast und evtl. hat es schon jemand so oder ähnlich gemacht und kann Dir seine Erfahrungen mitteilen.

    Edit:
    Oder kauf Dir einfach einen. Für ~30 Euro kann man da nichts falsch machen, wenn man Bastel- Programmierfreund ist sowieso nicht..
    Wenn das Herz involviert ist, steht die Logik außen vor! \/

Ähnliche Themen

  1. Antworten: 5
    Letzter Beitrag: 09.08.2014, 08:24
  2. Buchempfehlung für Raspberry Pi in C
    Von Ja ne, is klar im Forum Buchempfehlungen
    Antworten: 5
    Letzter Beitrag: 30.03.2014, 13:44
  3. Gertduino: Erweiterungsboard für Raspberry Pi
    Von Roboternetz-News im Forum Neuigkeiten / Technik-News / Nachrichten / Aktuelles
    Antworten: 2
    Letzter Beitrag: 05.12.2013, 17:21
  4. Tastatur für das Raspberry
    Von Kampi im Forum Raspberry Pi
    Antworten: 0
    Letzter Beitrag: 15.03.2013, 19:05
  5. Suche Serviceleistung Python-Programmierung für Raspberry Pi
    Von Raspy im Forum Jobs/Hilfen/Stellen - Gesuche und Angebote
    Antworten: 0
    Letzter Beitrag: 01.09.2012, 09:23

Berechtigungen

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

Labornetzteil AliExpress