Hab grad keinen RPi im Zugriff um's zu testen, aber ich würde damit
anfangen
"-mfpu=crypto-neon-fp-armv8 -mfloat-abi=hard"
aus den CXXFLAGs zu entfernen.
Dann sollte es kompilieren & laufen, wenn auch evtl. mit suboptimaler
Performance.
wenn's nicht reicht, -march=host oder so versuchen.
Εrnst B. schrieb:> Dann sollte es kompilieren & laufen, wenn auch evtl. mit suboptimaler> Performance.
Hallo,
hat funktioniert. Prima!! Tausend Dank.
Zwei Fragen aber dennoch:
1) Was bedeutet "suboptimaler Performance"? Betreffend des
Compiling-Process oder betreffend der erstellten Ausgabedatei, die dann
später schlechter performt?
2) Ich verstehe es so, dass die CXXFLAGS Angaben zum Raspberry 4 sind;
Software und Hardware, korrekt? Wo kann ich nachlesen, was das alles zu
bedeutet hat. Ich habe da schon im Internet gesucht, aber nix wirklich
gefunden, so dass ich als Laie das verstehe.
Trotzdem schon mal tausend Dank. Es läuft soweit. Mal sehen, werde jetzt
ein paar Tage es laufen lassen. Mal schauen, ob die Datei dauerhaft
funktioniert.
vg
An B. schrieb:> 1) Was bedeutet "suboptimaler Performance"? Betreffend des> Compiling-Process oder betreffend der erstellten Ausgabedatei, die dann> später schlechter performt?
letzteres.
An B. schrieb:> Ich verstehe es so, dass die CXXFLAGS Angaben zum Raspberry 4 sind;
Es sind Optionen für den Compiler, u.A. welche
Hardware/Coprozessoren/Beschleunigungsfunktionen/.... er
voraussetzen&verwenden darf.
An B. schrieb:> Es läuft soweit.
Sollte es. Evtl. etwas langsamer als möglich (=> verbraucht mehr
CPU-Leistung und damit Strom), aber solange die CPU nicht am Anschlag
ist ("top" betrachten) sollte das völlig egal sein.
Die wichtigsten Optimierungen kommen eh durch das "-O3", und das ist ja
drinnen geblieben.
Εrnst B. schrieb:> Sollte es. Evtl. etwas langsamer als möglich (=> verbraucht mehr> CPU-Leistung und damit Strom), aber solange die CPU nicht am Anschlag> ist ("top" betrachten) sollte das völlig egal sein.
Das Script dient dazu einem SDR-Receiver es zu ermöglichen
Billig-Funksender empfangen zu können. D.h. das Script auf einem
Raspberry läuft 24/7. Ich kann im Moment zwar keine erhöhte CPU
feststellen. Der SDR-Receiver und auch USB-Hub (für Stromliefdrung)
werden sehr war, fast heiß. Jetzt bin ich mir nicht sicher, ob das vlt.
(auch) am weniger guten kompelierten Script liegt.
Wir kommst Du auf: "-march=host oder so versuchen."? Wo hast Du das her?
Wie kann ich das lernen (um das Compiling verbessern zu können)?
vg
An B. schrieb:> Wir kommst Du auf: "-march=host oder so versuchen."? Wo hast Du das her?> Wie kann ich das lernen (um das Compiling verbessern zu können)?https://gcc.gnu.org/onlinedocs/gcc-11.2.0/gcc/AArch64-Options.html#g_t-march-and--mcpu-Feature-Modifiers
-march=native oder -mtune=native würden den Compiler erkennen lassen,
auf welchem System er läuft, und entsprechend optimieren.
(Unterschied: bei -mtune bleibt das binary trotzdem zu anderen CPUs
kompatibel, -march kann deshalb besser/aggresiver optimieren)
Hallo,
habe es jetzt mit -march=native compiled. Und tatsächlich, das USB-Hub
scheint bei weitem nicht mehr so heiß zu laufen und auch der
SDR-Receiver wird weniger heiß.
Aber, wenn ich mich jetzt nicht irre, braucht der SDR-Rceiver jetzt ca.
170 mA mehr an Strom. Das ist ja auch OK. Besser als das alle so heiß
wird.
Werde die Tage nochmals testen. Vlt., so wie ich gesehen habe, anstatt
der navtive-Erkennung kann man ja glaube ich, auch direkt das System
angeben... arch8-a oder so.
Ich muss jetzt mal schauen, ob man die Systemlast der compiled-Datei
sich anzeigen lassen kann. Dann würde ich mal die Datei so und anderes
laufen lassen.
Auf jeden Fall hast Du mir viel geholfen.
Tausend Dank, auch für das LINK zur Help des Compilers.
vg