Posts by InterGeek

    Gibt es eigentlich bereits fertige Pi Projekte die einen Audiorecorder realisieren? Also ein Pi ohne Display mit Taster und einer LED die anzeigt ob eine Aufnahme läuft oder nicht und dann über ein USB Mikrofon aufgenommen wird bei Druck auf den Taster?


    Ich zeichne ja öfter mal Dinge auf und der Laptop ist mir einfach zu sperrig. Natürlich könnte man schnell was zusammenschustern mit einem kleinen Script und arecord. Aber gibt es da nicht schon Projekte die ausgereift und flexibel sind?

    Ich sehe es genau so. Die Datenrettung sollte immer an einem anderen System stattfinden als an dem betroffenen System. Wenn an einem anderen System das Auslesen auch scheitert, dann kannst du davon ausgehen dass dein Speichermedium bereits einen Schaden hat den du mit Software nicht mehr beheben kannst. Sofern auf einem Datenträger sehr wichtige Daten liegen und man kein Backup hat, dann ist das klügste den Datenträger sofort außer Betrieb zu nehmen und einen professionellen Datenretter an die Arbeit zu lassen. Das fehlende Backup zahlt man da natürlich mit einem hohen Preis un ungewissen Ausgang. Aber in so einem Fall ist meist jeder eigene Versuch ein noch größerer Schaden.


    BTW Bei einer SSD oder anderem Flash kannst du die Daten quasi abschreiben. Da ist in der Regel nichts mehr zu machen, oder für Private Daten nicht zu bezahlen.

    Bei den pi gibt es ja Modelle aus UK und China. Berichten zufolge sollen die aus China öfter mal Mängel haben. In das stimmt weiß ich jedoch nicht. Vielleicht weil die China Modelle vielleicht auch hin und wieder ausgetauscht werden durch Clone?

    Das war auch mein erstes Gefühl, als Fedora mit swap-on-zram anfing.

    Und es passt vermutlich auch nicht in jedes Szenario.

    Ich habe dort die Erfahrung gemacht das es bei geringen Hauptspeicher eher Probleme macht. Beispiel mein Arbeitsdesktop hat 4GB Ram, während mein zweiter Rechner 32 GB hat. Auf dem zweiten läuft es einfach, aber auf dem mit 4GB wird es schnell eng. Wenn der Hauptspeicher eh knapp ist, dann ist es nicht sinnvoll noch speicher davon abzuziehen für solche Dinge und es sorgt dafür, dass schnell in eine Datei ausgelagert wird.


    Was die Sicherheit betrifft dürfte der Swap im Ram durchaus sinnvoll sein. Wenn das System abgeschaltet ist, dann ist der Inhalt weg. Auf einem Datenträger liegen die Informationen noch weiterhin für Dritte zugänglich. Ob man mit diesen Daten dann wirklich etwas anfangen kann weiß ich nicht. Aber sie sind eben da mit unbekannten Inhalt.

    Oder ist das was komplett falsches?

    Naja falsch ist es nicht, aber bitte kaufe das nicht im Moment. Bei dem Preis unterstützt du nur diese schrecklichen Methoden des Hamstern um es dann zu Mondpreisen zu verkaufen. Ein Raspberry Pi 4 mit allem Zubehör kostet je nach Ausstattung nicht mehr als 100€ komplett. Fast 300€ ist unverschämt!


    Da die Lage aktuell wirklich doof ist würde ich dann eher einen Gutschein für einen seriösen Händler verschenken den er dann einlösen kann wenn sie wieder lieferbar sind.

    Bisher hatten wir unter 10 Rückläufer in einem Zeitraum von ca. 4 Jahren.

    Wie hoch ist eigentlich die Haltbarkeit von Daten auf einer Speicherkarte? Also ich meine nicht die Lebensdauer der Speicherkarte, sondern wie lange der Speicher erhalten bleibt wenn Bereiche nicht mehr verändert werden? Irgendwann müssten ja die Ladungen verschwunden sein, oder erneuern die sich wenn die Karte aktiv ist?

    Ich persönlich habe auf meinem Pi der meine Orgel steuert und die Töne erzeugt auch keinen Swap. Wobei ich hier ein klares Anwendungsszenario habe, wo keine Veränderungen möglich sind. Daher kann ich alles auf die verfügbaren Ressourcen abstimmen und brauche keine Angst haben dass etwas unvorhergesehenes passiert.


    Würde ich einen Server betreiben darauf, dann wäre zumindest eine Swap Datei durchaus sinnvoll. Ich kann da planen und dimensionieren wie ich will, wenn ungünstig mehrere Anfragen zusammenkommen, dann kann die Verbrauch mal kurz unbestimmt erhöht sein. Da wäre es natürlich doof wenn ein Teil des Servers plötzlich abgetötet wird. Ich würde aber trotzdem Logs erstellen und wenn häufig der Swap genutzt werden muss, dann würde ich mir Gedanken machen müssen.

    rpi444 Da stimme ich dir zu. Der Normale Anwender muss sich da keine Gedanken machen. Er nutzt sein System einfach und kann sich in der Regel darauf verlassen, dass sein System sinnvolle Voreinstellungen nutzt. Eine Swap Partition/Datei, oder Auslagerungsoption tut erst einmal nicht weh. Zugegeben verbraucht diese Option natürlich auch Ressourcen, aber das kann man wohl vernachlässigen. Es kann ja auch durchaus nützlich sein dass wenn man mal zu viel braucht etwas abfedern kann. Simples Beispiel ich mache Videoschnitt in 4K und plötzlich reichen bei einer Operation kurzzeitig meine 32GB Ram nicht aus. Dann schmiert mir zumindest nicht die Anwendung ab.


    Das ist also alles legitim und in Ordnung. Was aber nicht Sinn der Sache ist, ist ein System zu nutzen für Aufgaben die es so normal und Regelmäßig nicht bewältigen kann mit der Idee dass der 8 GB Swap die fehlenden Gigabyte an Ram ausgleichen kann. Bei Leistungsspitzen oder besonderen Situationen ist es eine gute Reserve, aber keine produktive Ressource die man einplanen sollte. Man sollte es sehen wie einen Rettungschirm.

    Swap ist also ein notwendiges Übel.

    Es ist ein notwendiges Übel bei einem System was mehr leisten soll als es leisten kann.



    Salopp ausgedrückt muss das System einfach etwas unternehmen, wenn der physische Arbeitsspeicher nicht mehr ausreicht.

    Das tut das System ja schon ohne Swap. Nimm ein Linux und lasse den Swap weg. Wenn der Speicher dann voll wird, dann besitzt der Kernel eine Funktion die einfach Prozesse abwürgt. Das System wird also auch ohne Swap wunderbar laufen wenn man mehr Speicher nutzen will als man hat. Die Folgen davon sind natürlich eher unschön wenn dann gerade das Office abgewürgt wird wenn man damit Arbeitet und schon eine Stunde nicht mehr gespeichert hat. Ich nutze wie gesagt seit rund 5 Jahren keinen Swap mehr, ich hatte mit meinen 32GB Ram noch nie irgendein Problem.

    Weil zuerst die Teile ausgelagert werden, die nicht benötigt werden. Das ist unter normalen Umständen in Ordnung und auch nicht spürbar.

    Man muss ja auch unterscheiden. Früher in den ersten Jahren als Swap eine Notlösung war, da wurden eben mehr oder weniger wahllos Daten ausgelagert was gerade dann auch gerne mal in einem Absturz geendet hat.Die heutigen Betriebssysteme sind da ja schon im Vergleich recht "clever". Es kann also durchaus sein, dass gewisse Teile direkt in den Swap landen obwohl es noch überhaupt keinen Mangel an Speicher gibt. Auch die ganzen Hochsprachen optimieren das Programm darauf. Es kann also durchaus erkannt werden ob etwas nur im Speicher gehalten wird weil man es irgendwann einmal braucht, oder etwas das ständig im Ram gehalten wird weil immer wieder darauf zugegriffen wird.


    Beispiel ich schreibe eine grafische Oberfläche und lade aus meinem Verzeichnis 200 MB Grafiken zum gestalten meiner GUI. Dann wandern diese Daten ja meist zum Grafikspeicher und werden danach nicht mehr gebraucht. Also kann das System diese ewig benutzten Daten die voraussichtlich nicht gebraucht werden in den Swap/Cache verlegen damit sie noch da sind wenn sie doch noch einmal gebraucht werden aber keinen Ram belegen.


    Es scheint auch bei modernen Systemen so zu sein das Dinge die im Ram liegen und nicht mehr gebraucht werden wohl in einigen Konstellationen in den Swap geschoben werden für den Fall dass sie später doch noch einmal benötigt werden. Dann muss die Dateioperation die viele Zyklen gekostet hat nicht noch einmal verarbeitet werden, sondern kann zeitsparend vom Datenträger geladen werden. Zumindest sofern die ursprüngliche Datei nicht verändert wurde und das Ergebnis gleich wäre. Vorausgesetzt mit dem Wert wird irgendwas noch angestellt. Wenn nicht, dann wird im fertigen Programm überhaupt nichts mehr sein :)


    Betriebssysteme haben Millionen Zeilen Code und sind extrem optimiert. Wenn ein Programmierer ein Programm schreibt das nur aus einer Schleife besteht in der eine Variable mit 0 begonnen wird +1 zu rechnen in 10 Durchläufen, dann wird im fertigen compilierten Programm keine Schleife mehr stehen, sondern nur X=10 weil nichts anderes dabei rauskommen kann.

    Könnte man das Thema Swap nicht in einen eigenen Thread ausgliedern, da es ja ein spannendes Thema ist. Swap ist ja nicht gleich Swap und was Windows/Mac/Linux anzeigen sind manchmal ganz unterschiedliche Dinge. Aber es passt eben nicht zu dem Grundthema.

    Den Swap legt man obligatorisch bei Servern an, um Abstürze zu verhindern.

    Macht es eigentlich überhaupt Sinn auf einem normalen System ein Swap zu nutzen? Ich habe es bei meinem Desktop seit bestimmt 5 Jahren nicht mehr. Denn wenn es anfängt, dann kann man zwar wirklich einmal eine Spitze abfedern ohne das irgendwelche Prozesse abgetötet werden, aber bis sich das System danach wieder fängt nach so einem Fall kann es wirklich lange dauern wenn noch Teile im Swap liegen.


    Ich denke wenn die eigene Plattform bei der normalen Arbeit Swapt, dann muss man überlegen ob nicht ein allgemeines Upgrade der Plattform notwendig ist. Wobei ja auch Lecks zu Problemen führen können und am Ende auch das Speichermedium schädigen. Bei einer normalen HDD ist das primär ein Defizit bei der nutzung, weil es eben langsam ist auch bei geringen Auswirkungen. Auf einer SSD kann man es im Zweifel aber übersehen und fragt sich dann warum diese alle paar Monate defekt ist.

    Swap um Beispiel?

    Ja in der Tat wäre der Swap eine Idee. Aber auf der anderen Seite ist ein System was Swapt nicht mehr sonderlich schnell, da es doch recht langsam ist. Ich weiß jetzt nicht wie im Detail ein Swap funktioniert im Details, aber das dürfte wahrscheinlich in die Kategorie "Extrem viele kleine Zugriffe" fallen. Ob man einem solchen Medium aber einen Gefallen tut wenn man darauf den Swap liegen hat und intensiv nutzt? Dann eher einen Cache oder?



    Ich hab schon Projekte betreut wo wir 8GB/s aus dem RAM gelesen haben und es war teilweise noch zu langsam.

    Das wäre tatsächlich ein Szenario was Sinn macht. Nach den Aufgaben den Ram so schnell wie möglich freibekommen um etwas neues zu machen. Auf der anderen Seite auf einem System mit geringen IO Zeiten und eher gemächlichen LPDDR Ram ist der Flaschenhals eben meist nicht das Speichermedium. Ich denke für solche Aufgaben nicht Plattformen wie ARM eher nicht die ideale Wahl wenn man intensiv so was betreiben will. Da braucht man eine Hardware mit optimierten IO Zeiten.


    Aber mal diese Systeme beiseite. Kann man eigentlich ohne spezielle Controller solche hohen Bandbreiten überhaupt nutzen? Ich kann mir schon vorstellen das ohne spezielle Hardware die übrigen Komponenten schon lange vor dem Speichermedium in die Knie gehen und bremsen, wenn alles über die CPU geht.

    Denkst du diese Kunden lassen sich vom Hersteller ver*rschen?

    Ehm ja?


    Ich sage ja nur ja das neue Smartphone ist besser und kann die neue Android Version was auf der fast gleichen alten Hardware nicht möglich wäre.... Kostet ja auch nur 600 Euro.


    Aber zurück zur Frage, was stelle ich nun damit an von einem Medium 1600 MB/s lesen zu können? Was mache ich sinnvolles mit den so schnell gelesenen Daten und wohin damit? Ein "cp datei > /dev/null" und davon die Leserate messen ist ja kein sinnvoller Einsatz. Lese Daten und bearbeite diese mit den im Schnitt 1400 MB/s wird schwierig.

    der Hersteller selber

    Nun dem Hersteller würde ich da nicht zu sehr vertrauen. VW als Hersteller bescheinigten seinen von dem Diesel Skandal betroffenen Produkten ja auch beste Messwerte :evil:


    Nehmen wir einmal an die Angabe wäre korrekt und ich könnte technisch gesehen mit 1600 MB/s eine Datei lesen. Was würde das im Vergleich zu 400 MB/s in einem praktischen Szenario außerhalb der Angabe "Ich könnte es" für einen praktischen Vorteil geben? Ich kann diese Datenmengen ja nicht in dieser Geschwindigkeit verarbeiten oder nach außen weiterleiten. Es gibt also quasi keine Möglichkeiten diesen Datenraten nach außen zu nutzen, oder diese Intern sinnvoll auszureizen. Selbst ein Zufallszahlengenerator würde es nicht schaffen 1000 MB/s an Zufallszahlen zu erzeugen. Bei allen anderen Aufgaben wird die CPU wohl ein Flaschenhals sein.

    Du kannst mir sicher auch erklären, warum Datenraten von bis zu 1600 MB/s messbar sind, wenn solche Datenraten eigentlich garnicht verarbeitet werden können. Bin gespannt!

    Dan teile mal eine Quelle wo und wie diese Messung zustande gekommen ist. Ich schätze da eher auf theoretische/technische Werte die mit dem Praxiseinsatz wenig zutun haben. Diese Angaben zu Datenraten sind ja oft keine Angaben die man im realen Szenario erreicht. Wenn eine Schnittstelle zum Beispiel die 1600 MB/s schafft, dann bedeutet dies nicht das die Datenträger diese Datenraten auch im Ansatz schaffen und dann musst du von der Effektiven Datenrate auch noch Dinge wie Protokoll und Fehlerkorrektur abziehen und dann natürlich auch wie die Daten zusätzlich verpackt sind. In der Praxis kannst du also vermutlich einen zweistelligen Prozentbereich abziehen nachdem dein Protokoll, Fehlerkorrektur, Hardware, Dateisystem und so weiter mit reinspielt.


    Zu guter letzt, nenne mal einen praktischen Einsatzzweck für diesen Datendurchsatz auf den betreffenden Plattformen der nicht auch mit einer langsameren SSD erreichbar ist.