Dans l'analyse comparative, vous devez toujours établir vos limites. Parce que si vous vous attendez à obtenir 100 Mo de ce réseau, vous vous trompez!
Regardez cette conception de bloc du RaspberryPI Model-B
Nous établissons donc un fait très important ici. Ethernet est goulot d’étranglement par le contrôleur USB car nous établissons qu’il est connecté au concentrateur USB. (Aucune indication claire n'utilise-t-il un autre bus ou tout simplement USB2?)
Ohh regarde - un autre diagramme,
Voilà qui jette encore plus de lumière sur la situation. Le contrôleur 10/100 est connecté au concentrateur USB. Malheureusement, encore une fois, il n’existe aucune indication sur la vitesse à laquelle le concentrateur communique avec le contrôleur de réseau local. Attendez-vous au fait que la vitesse et le réseau local sont négociés. pour les environnements usb à vitesse variable.
Où est la carte SD?
Il s’avère que la carte SD est directement connectée au BCM2835 (page 65) et qu’elle décrit en détail l’impact des performances sur différents niveaux de configuration. Une chose importante à noter est que si la carte SD a une horloge dédiée, elle peut fonctionner indépendamment de la CPU / du processeur principal à pleine vitesse (quelle que soit la carte et le standard utilisés - vous pouvez le voir supporter quelques standards.)
Alors qu'est-ce que cela signifie?
Cela signifie que si vous comparez les performances de la carte SD et du lecteur de stylo (4 Go / 8 Go), vous obtiendrez probablement des différences de performances énormes. Alors maintenant, on se demande comment le processeur / GPU gère la communication avec ce merveilleux périphérique intégré (puce USB / LAN) et à quelle vitesse est-il capable de communiquer.
Vous voyez jusqu'où peut aller la théorie avant de procéder à une analyse comparative? Un autre point clé est la suivante: comment le processeur contrôle-t-il le flux de données? Utilise-t-il le canal d'horloge séparé comme recommandé?
Dans un monde idéal, on pourrait penser que ce LAN / USB le gérera. Mais cela nécessite un MCU .. voyons-nous un MCY n'importe où dans ce diagramme .. NO!
Le processeur doit donc demander à IO DATA de lui envoyer le port USB, puis de passer au port LAN (via le même concentrateur USB) Oui.
C'est également une bonne chose de noter ce qui se passe lorsque vous copiez sur une clé USB et depuis la carte SD via un réseau local .. cela va générer du trafic.
Nous devons évaluer divers aspects
En établissant ce que nous essayons de comparer, nous pouvons poser une question du monde réel.
- À quelle vitesse l'USB interne traite-t-il les données de la carte SD?
- Combien de CPU est utilisé pour lire / écrire en SD puis en LAN?
- Quelle est la quantité de CPU utilisée pour lire / écrire sur une clé USB?
- La copie de données influence-t-elle directement l'utilisation du processeur?
- Dans quelle mesure la puce USB / LAN intégrée gère-t-elle la lecture des données de deux sources dans le port LAN et affecte-t-elle le processeur proportionnellement?
- Il n’est pas nécessaire de vérifier si le réseau local atteindra 10 Mb / s car son goulot d’étranglement est dû à l’état dans lequel se trouve le concentrateur USB.
Maintenant que vous savez pour quoi vous vous battez, je vous mets au défi d'y répondre vous-même.
Vous pourriez trouver cela un très bon point de départ.
Les références
Mais principalement,
mes propres connaissances techniques et évaluations que j'ai réalisées sur la base de ma propre expérience intégrée. Le PO a posé une très bonne question, mais il est difficile de comprendre que sans compréhension théorique d’un système, on est condamné à essayer d’évaluer / résoudre les problèmes pratiques.
Résultats
(4) Cette réponse montre quelques essais pirates terre-à-terre. Et cela prouve que les transactions intenses de données ont une influence directe sur le processeur (il n’est pas sûr que ce soit la carte SD ou le processus de transfert des données de la puce BCM vers la puce USB / LAN)
(6) Il a été prouvé que le seul goulot d'étranglement serait la source (par exemple une carte SD lente). Le concentrateur USB parvient à pomper les données à 90% +, mais les réponses aux questions 4 et 5 peuvent directement influer sur cette performance.
Ce faisant quelques recherches et la contribution des autres utilisateurs , nous commençons à établir et à obtenir des résultats préliminaires.
Voici un joli tableau pour aider à visualiser ce que nous traitons.
sudo hdparm -t /dev/sdx
comme un outil utile pour l'analyse comparative.