Nen Arduino-Dualcore ist doch völlig sinnlos, das hat man nur gemacht
weil's geht.
Man hat doch null Kontrolle über die Hardware, wie soll man da den
Überblck behalten?
Das klappt doch schon bei den kleinen ATmegas nicht...
Markus schrieb:> Python
Wie idotisch: eine schnarchlahme Programmumgebung per brute force
Rechenpower doch noch auf die mittlere Leistung eines ATmega8 zu
bringen.
MaWin schrieb:> Markus schrieb:>> Python>> Wie idotisch: eine schnarchlahme Programmumgebung per brute force> Rechenpower doch noch auf die mittlere Leistung eines ATmega8 zu> bringen.
Zum Glück haben wir ja den ATmega8.
Alle anderen Controller sind für Leute die nichts drauf haben und reine
Luschen sind. ATmega8 beschde wo gibt.
Wie würde man den im C programmieren? Brauchts da einen speziellen
Compiler / Linker um beide Kerne ansprechen zu können? Und wie tauschen
die Daten aus?
> auf welchem Core was läuft
Auf dem ersten ARD in HD und auf dem zweiten ZDF in SD.
> Und wie tauschen die Daten aus?
Das steht im öffentlich zugänglichen Datenblatt!
Das musste ich auch lesen!
>Das steht im öffentlich zugänglichen Datenblatt!>Das musste ich auch lesen!
Ein Datenblatt zum Arduino Portenta? Wo hast Du das gefunden?
Im Moment sehe ich nur das:
https://store.arduino.cc/portenta-h7
"
Two Parallel Cores
H7's main processor is the dual core STM32H747 including a Cortex® M7
running at 480 MHz and a Cortex® M4 running at 240 MHz. The two cores
communicate via a Remote Procedure Call mechanism that allows calling
functions on the other processor seamlessly. Both processors share all
the in-chip peripherals and can run:
Arduino sketches on top of the Arm® Mbed™ OS
Native Mbed™ applications
MicroPython / JavaScript via an interpreter
TensorFlow™ Lite
"
Ozodrek schrieb:> Alle anderen Controller sind für Leute die nichts drauf haben und reine> Luschen sind
Du hast nicht verstanden, was gemeint war. Mega8 kannst Du durch PIC
oder jeden anderen kleinen Prozessor ersetzen.
Wer aber mein, für seine Anwendung einen Dual-Core-Prozessor zu brauchen
und dann
chris schrieb:> MicroPython / JavaScript via an interpreter
einsetzt hat den Schuss nicht gehört.
Aber das ist ja inzwischen normal geworden, wie sollte man sonst immer
bessere Prozessoren verkaufen, wo die aktuellen doch schon zu groß sind.
Habe Leistung, brauche Anwendung.
In der nächsten Generation wird der Python-Interpreter dann in Java
geschrieben und zwei weitere Cores ausgelastet.
Horst (Gast)
>einsetzt hat den Schuss nicht gehört.
Ja, es ist Freitag ...
und ja, du bist aus dem letzten Jahrhundert: Der Trend geht zu
leistungsstarken Prozessoren. Die ganze KI arbeite mit Python, SkiPy,
TensorFlow Lite ... alles mit Python Wrappern auf C oder C++.
Investiere mal lieber in deine Weiterbildung, sonst bist du schneller
obsolet als du denken kannst.
> Der Trend geht zu leistungsstarken Prozessoren. Die ganze KI arbeite mit> Python, SkiPy, TensorFlow Lite ... alles mit Python Wrappern auf C> oder C++.
Jaein. Wir haben eine immer groessere Gruppe von durchaus faehigen
Spezialisten die zwar sehr komplexe Probleme loesen koennen, aber
niemals
die Zeit gefunden haben C oder C++ zu lernen. Da hat ja letztlich auch
Matlab seine Berechtigung her.
Wenn es aber um die endgueltige Implementierung geht dann wird man
hoffentlich eine vernuenftige nativ Sprache einsetzen. Man braucht dann
naemlich schnell ein Kraftwerk weniger, ein Handy hat ploetzlich die
doppelte Laufzeit oder das Geraet wird billiger weil man kleinere
Hardware einsetzen kann.
Olaf
Max M. schrieb:> Wie würde man den im C programmieren?
Ganz normal halt. Was hier als tolle neue Erfindung angepriesen wird,
gibts schon seit vielen Jahren. Und Arduino ist ja auch nix anderes als
C/C++.
Es handelt sich einfach nur um zwei getrennte µC im gleichen Gehäuse,
mit etwas Logik damit sie miteinander reden können. Gibts von TI (und
vermutlich auch ST) schon ziemlich lang.
Beispielsweise TI's Concerto, ein Kern ist ein Cortex M3, der andere ein
C2000 DSP, es handelt sich also sogar um komplett unterschiedliche
Architekturen. Die neuen TI Delfino bekommen bekommen sogar zwei
DSP-Kerne neben einem ARM Cortex.
Max M. schrieb:> Brauchts da einen speziellen> Compiler / Linker um beide Kerne ansprechen zu können?
Nein, es handelt sich um zwei komplett getrennte Programme, jeweils
generiert mit einem ganz normalen ARM C Compiler. Die Kommunikation
zwischen den Kernen funktioniert einfach über Interrupts, Register und
evtl. Shared Memory, ist also kein Hexenwerk.
Hauptanwendung von solchen Prozessoren (auch dem STM32H747XI, der mit
dem Cortex M7 einen DSP-light besitzt) liegt darin, am DSP-Kern
Regelungsanwendungen wie z.B. Motorregelungen laufen zu lassen, während
der andere Kern z.B. die Kommunikation über CAN, Echtzeit-Ethernet etc.
abwickelt.
chris schrieb:> Ein Datenblatt zum Arduino Portenta? Wo hast Du das gefunden?>> Im Moment sehe ich nur das:>> https://store.arduino.cc/portenta-h7
Ein Datenblatt zum STM32H747XI natürlich.
chris schrieb:> und ja, du bist aus dem letzten Jahrhundert: Der Trend geht zu> leistungsstarken Prozessoren. Die ganze KI arbeite mit Python, SkiPy,> TensorFlow Lite ... alles mit Python Wrappern auf C oder C++.> Investiere mal lieber in deine Weiterbildung, sonst bist du schneller> obsolet als du denken kannst.
Du hast es immer noch nicht verstanden. Es geht nicht um C oder C++ oder
Highperfomance-Aufgaben die die Leistung wiklich brauchen, sondern darum
einen 400MHz-Prozessor einzubauen und darauf dann eine schnarchlangsame
Scriptsprache laufen zu lassen.
Aber klar, wer aus dem KI-Hype-Eck kommt, erkennt das Problem nicht.
Olaf schrieb:> Wenn es aber um die endgueltige Implementierung geht dann wird man> hoffentlich eine vernuenftige nativ Sprache einsetzen.
Vor allem könnte man ja Python z.B. auch compilieren, und hätte
plötzlich (fast) die gleiche Performance wie mit C. Aber nein, man lässt
auf einem Microcontroller einen schnarchlangsamen Interpreter laufen...
>chris schrieb:>> und ja, du bist aus dem letzten Jahrhundert: Der Trend geht zu>> leistungsstarken Prozessoren. Die ganze KI arbeite mit Python, SkiPy,>> TensorFlow Lite ... alles mit Python Wrappern auf C oder C++.>> Investiere mal lieber in deine Weiterbildung, sonst bist du schneller>> obsolet als du denken kannst.>Du hast es immer noch nicht verstanden. Es geht nicht um C oder C++ oder>Highperfomance-Aufgaben die die Leistung wiklich brauchen, sondern darum>einen 400MHz-Prozessor einzubauen und darauf dann eine schnarchlangsame>Scriptsprache laufen zu lassen.
Zu deiner Fortbildung bekommst du jetzt eine kleine Hausaufgabe: Finde
heraus, was mit einem "Software-Wrapper" gemeint ist und nenne ein paar
der wichtigsten Algorithmik-Frameworks bei denen Wrapper eingesetzt
werden. Zeige, ab welchem Lauftzeitverhältnis und Lohnkostenverhältnis
sich ein Wrapper lohnt.
>Aber klar, wer aus dem KI-Hype-Eck kommt, erkennt das Problem nicht.
Könnte es sein, dass du genau gar nichts darüber weißt aber trotzdem
gerne urteilst?
Wenn ich
> Frameworks
lese, weiss ich, dass da nur Sch..sse rauskommen kann.
Und
> ein Wrapper
hol ich mir bei McDoof.
> hat den Schuss nicht gehört
Richtig.
chris schrieb:> Zu deiner Fortbildung bekommst du jetzt eine kleine Hausaufgabe: Finde> heraus, was mit einem "Software-Wrapper" gemeint ist und nenne ein paar> der wichtigsten Algorithmik-Frameworks bei denen Wrapper eingesetzt> werden. Zeige, ab welchem Lauftzeitverhältnis und Lohnkostenverhältnis> sich ein Wrapper lohnt.
Danke, hätte ich das nötig, wäre ich wohl kaum Senior Developer
geworden.
Aber um zu zeigen, dass du mehr als nur Klugscheissen kannst, kannst du
der Allgemeinheit sicher gern erklären, welchen Sinn ein
Pythoninterpreter auf einem Microcontroller haben soll.
Aber vermutlich kannst du nur Hypetechnologie nachlaufen, und hast das
Thema immer noch nicht verstanden.
Apollo M. schrieb:> ... an alle blinde und minderbegabte hier,> micropython macht richtig spass!
Es geht hier NICHT um Micropyhton. Micropython ist kompiliert, während
hier die Rede davon ist, dass irgendwelche Genies einen
Pythoninterpreter auf einem µC laufen lassen wollen.
chris schrieb:>>Aber klar, wer aus dem KI-Hype-Eck kommt, erkennt das Problem nicht.> Könnte es sein, dass du genau gar nichts darüber weißt aber trotzdem> gerne urteilst?
Bitte, klär mich auf. Als erstes kannst du ja mal aufklären, was du
überhaupt mit KI meinst, heute verkauft man ja schon einen Bayes-Filter,
Lineare Regression und ähnliche simple Statistik als KI. Klingt dann
gleich viel toller, und bedient den AI-Hype.
Arduino schrieb:> Es geht hier NICHT um Micropyhton. Micropython ist kompiliert, während> hier die Rede davon ist, dass irgendwelche Genies einen> Pythoninterpreter auf einem µC laufen lassen wollen.
Doch es geht um MicroPython:
https://www.arduino.cc/pro/hardware/product/portenta-h7
MicroPython ist ein Python-Interpreter.
Vincent H. schrieb:> Micropython ist kompiliert,
Ist es nicht. Und ja, das kostet Performance. Ist für den typsichen
Arduino Anwender aber wahrscheinlich egal.
Auch das ist nichts neues, gabs mit Basic Interpretern schon auf einem 4
MHz (ja 4 MHz, nicht 400 MHz) Motorola 68HCxx ... anno 1996 von Conrad
als C-Control.
DAS war richtig langsam :-P