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.
Gibts auch als Dev-Board von ST zum gleichen Preis, aber grösser,... nicht wirklich interessant.
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...
... an alle blinde und minderbegabte hier, micropython macht richtig spass! und ich kann auch richtig gut in c/c++ ... bäh! mt
>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.
Ich hab Insiderinformationen die besagen, dass auf den verbauten STM32H7 sogar Maschinencode laufen soll!
> sogar Maschinencode laufen soll
Wie aus gut unterrichteten Kreisen verlautbarte:
Sogar zwei mal!
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
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.