Arduino Protenta: Need for Speed

Gast #6109485
Lesenswert?

Es gibt einen neuen Dual-Core Arduino:

https://hackaday.com/2020/01/15/new-part-day-arduino-goes-pro-with-the-portenta-h7/

"32-bit STM32H747XI that utilizes both an ARM Cortex M7 and an M4 
running at 480 MHz and 240 Mhz"

Python+C bin gespannt, auf welchem Core was läuft.
Gast #6110094
Lesenswert?

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.
Gast #6110176
Lesenswert?

> 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!
Gast #6110188
Lesenswert?

>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
"
Gast #6110210
Lesenswert?

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.
Gast #6110328
Lesenswert?

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.
Gast #6110432
Lesenswert?

> 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
Gast #6110443
Lesenswert?

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...
Gast #6110520
Lesenswert?

>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?
Gast #6110553
Lesenswert?

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.
Gast #6110622
Lesenswert?

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

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren