NanoPi Fire3 Supercalculateur monocarte à 96 cœurs

Créez un cluster haute performance avec 12 nœuds NanoPi-Fire3 pour moins de 100 £ (550 £, dont douze Fire3)

Mon dernier cluster sur Raspberry Pi 3 l'année dernière a beaucoup intéressé le public, alors j'essaie de faire des projets similaires sur d'autres excellents ordinateurs à carte unique qui sont sur le marché. FriendlyARM de Chine m'a envoyé très généreusement 12 de ses dernières cartes ARM NanoPi-Fire3 64 bits , chacune ayant un SoC ARM A53 à huit cœurs fonctionnant à 1,4 GHz avec Gigabit Ethernet.





La taille de la grappe est de 146,4 (l) × 151 (h) × 216 mm (d) et le poids est de 1,67 kg.

Logiciel à exécuter dans un cluster?


ou ... Pourquoi est-il nécessaire ??

Les clusters sont souvent utilisés pour des tâches gourmandes en ressources (recherche médicale, modélisation météorologique, IA / deep learning, extraction de crypto-monnaie) et / ou des services à haute disponibilité (des nœuds redondants sont utilisés en cas de panne matérielle). Ce cluster est, bien sûr, lent du point de vue des superordinateurs modernes, mais un petit système portable est idéal pour la formation ou le développement de logiciels distribués, qui peuvent ensuite être transférés vers des systèmes beaucoup plus puissants.

J'ai l'intention d'écrire plusieurs articles pour évaluer ce cluster pour le minage et le deep learning.

Docker Swarm ou Kubernetes semblent être d'excellentes options pour gérer un cluster, bien que je ne les ai pas encore essayés.

NanoPi-Fire3 contre Raspberry Pi 3


Le NanoPi-Fire3 est beaucoup plus avancé par rapport au Raspberry Pi 3 à la fois en termes de performances et en termes de fonctions, dans un facteur de forme plus petit, en même temps à peu près au même prix:

NanoPi-Fire3Raspberry Pi 3 modèle B
SoCOcta-core ARM A53
S5P6818 @ 1,4 GHz
ARM quadricœur A53
BCM2837 @ 1,2 GHz
La mémoire1 Go de DDR31 Go de DDR2
GPUMali-400 MP4
500 MHz
Broadcom VideoCore IV
400 MHz
Réseau1000 Mbps100 Mbps
Wifinon802.11bgn
Bluetoothnon4.1 + BLE
StockageCarte MicroSDCarte MicroSD
USB1 connecteur
1 microUSB
4 connecteurs
VidéoMicro HDMI 1.4a, RVB-LCDHDMI, DSI
Interface caméraDVPCSI
Audionon3,5 mm
La taille75 × 40 mm85 × 56 mm
La nutrition1,2 → 3,6 W
2 A max., MicroUSB
1,2 → 2,1 watts
2,5 A max., MicroUSB
RelâchezT4 2017T1 2016
Prix ​​(UK)£ 34,30 1£ 33,59
1 35 $ ​​pour Fire3 + 5 $ d'expédition + 20% TVA + 0% droits d'importation = 34,30 £

Repères


CPU


La plupart des ordinateurs modernes ont des processeurs multicœurs capables d'exécuter deux tâches ou plus simultanément. Il peut s'agir de différentes applications (par exemple, un serveur Web qui traite trois pages Web et une base de données), ou d'une tâche divisée en plusieurs threads pour une vitesse maximale (par exemple, un ray tracer, une compression de fichier, etc.). Ce test du package hpcc utilise tous les cœurs de processeur, testant efficacement les performances globales du processeur dans les opérations en virgule flottante.


Linpack TPP v1.4.1 (solveur d'équations linéaires). Nombre de MFLOPS (millions d'opérations en virgule flottante par seconde)

La carte Fire3 a deux fois plus de cœurs, une fréquence d'horloge plus élevée et une mémoire plus rapide: en conséquence, le résultat est 6,6 fois plus élevé que sur le Pi 3.

60000 MFLOPS - pas trop selon les normes de performance actuelles, mais dès 2000, ce cluster de 12 Fire3 serait inclus dans le top 250 des supercalculateurs les plus rapides du monde (!). Un cluster de cinq Fire3 s'exécute 8,2 fois plus rapidement qu'un cluster Pi 3 de la même taille, ce qui s'explique par des cœurs de processeur supplémentaires, une mémoire plus rapide et un réseau beaucoup plus rapide pour l'échange de données entre les nœuds.

Le supercalculateur Cray C90 à 16 cœurs, sorti en 1992, a produit 10 780 MFLOPS mais a coûté 30,5 millions de dollars, pesait 10,9 tonnes et avait besoin de 495 kW de puissance!

Mettre en place un cluster pour un maximum de résultats est tout un art: optimiser le compilateur, mettre en place des bibliothèques mathématiques, etc. Mais nous avons pris des estimations du package hpcc standard dans Ubuntu 16.04.4, en utilisant la configuration par défaut.

Commandes shell pour la référence
 # Setup on each node apt install hpcc swapoff -a adduser mpiuser # Controller node setup su - mpiuser cp /usr/share/doc/hpcc/examples/_hpccinf.txt hpccinf.txt # Edit default hpccinf.txt so that NB=80, N=18560, P=8 and Q=12 (P x Q = 96 cores) sed -i "8s/.*/80\tNBs/; 6s/.*/18560\tNs/; 11s/.*/8\tPs/; 12s/.*/12\tQs/" hpccinf.txt # Generate & copy SSH keys across cluster, so controller can run benchmark on all nodes # (use the hostnames or IP addresses for your nodes) ssh-keygen -t rsa nodes=('controller' 'b1' 'b2' 'b3' 'b4' 'b5' 't1' 't2' 't3' 't4' 't5' 't6') for i in ${nodes[@]} do ssh-copy-id "fire3-$i" echo "fire3-$i slots=8" >> mycluster done mpirun -hostfile mycluster --mca plm_rsh_no_tree_spawn 1 hpcc grep -F -e HPL_Tflops -e PTRANS_GBs -e MPIRandomAccess_GUPs -e MPIFFT_Gflops -e StarSTREAM_Triad -e StarDGEMM_Gflops -e CommWorldProcs -e RandomlyOrderedRingBandwidth_GBytes -e RandomlyOrderedRingLatency_usec hpccoutf.txt 

Graphisme


Fire3 et Pi 3 utilisent des GPU quad-core pour le traitement parallèle de grandes quantités de données dans les graphiques informatiques. Récemment, ils ont également été utilisés pour l'informatique spécialisée, comme l'extraction de crypto-monnaie.


glmark2-es2 2014.03 (OpenGL ES 2.0). Noter plus c'est mieux

La carte Fire3 dans ce test s'est avérée 7,5 fois plus rapide que le Pi 3. Les résultats du cluster sont simplement mis à l'échelle par le nombre de nœuds.

Comme avec le CPU, il existe de nombreuses options pour définir des graphiques en compilant avec différents pilotes, etc. Dans ce test, nous venons d'exécuter le binaire glmark2-es2 standard sur Ubuntu 16.04.4 en utilisant la configuration par défaut. Il est lancé avec la commande suivante:

 sudo apt install glmark2-es2 glmark2-es2 --off-screen 

Le rendu OpenGL obsolète pour Pi 3 est assez faible, mais si vous passez au rendu expérimental Mesa rpi-config via rpi-config , vous obtenez des performances comme Fire3.

La plupart des ARM à carte unique ont des GPU relativement anciens qui affichent des performances très modestes par rapport aux derniers smartphones phares, sans parler des PC de bureau dotés de cartes graphiques haut de gamme coûteuses et d'énormes blocs d'alimentation. Le GPU Mali-400 MP4 dans Fire3 date de 2008 et le Broadcom VideoCore-IV dans Pi 3 date de 2010. Il existe plusieurs appareils à carte unique plus récents, tels que le RockPro64 de PINE64, avec des GPU plus puissants et plus récents (Mali-T860 MP4), tandis que le Samsung Galaxy S9 a la dernière génération Mali-G72 MP18.

Réseau


Ces tests vérifient la vitesse de transfert de données réelle dans iPerf entre deux cartes connectées à un commutateur Ethernet 100 / 1000Mpbs.

iPerf v2.0.5 (TCP, Ethernet 1000 Mbps, entre cartes), Mbps

Avec les paramètres par défaut, l'interface 1000 Mbps sur Fire3 affiche une énorme différence de vitesse de 8,5 fois par rapport à l'interface 100 Mbps sur le Pi 3.

Commandes shell pour la référence
 sudo apt install iperf # On node1 iperf -s -V # On node2 iperf -c node1 -i 1 -t 20 -V 

Si vous souhaitez augmenter les performances du réseau sur le Raspberry Pi (plus ancien que le modèle Pi 3 B +), vous pouvez installer un adaptateur Ethernet Gigabit USB au lieu de l'interface intégrée standard. Il augmentera la vitesse de 2,8 fois , mais en raison des limites de l'USB2, il sera toujours beaucoup plus lent que la vraie interface à 1000 Mbps. Cette interface réseau est intégrée dans le dernier modèle Pi 3 B +.

Performance du cluster par watt


Pour évaluer les performances par watt, j'ai pris les résultats du test Linpack plus élevés dans MFLOPS et divisé par la consommation d'énergie. Cette métrique est couramment utilisée pour classer les systèmes informatiques .


MFLOPS par watt

Un cluster Fire3 à cinq nœuds est 5,8 fois plus économe en énergie qu'un cluster Pi 3 de la même taille, bien qu'il consomme plus d'énergie à 100% de charge.

Les watts ont été mesurés à 100% de charge pour l'ensemble du cluster , y compris les commutateurs réseau, les ventilateurs et les blocs d'alimentation. WiFi, Bluetooth, HDMI et plus sont laissés dans les paramètres par défaut.

Le supercalculateur Cray C90, mentionné ci-dessus, n'a livré que 0,02 MFLOPS par watt en 1992.

Conception de corps 3D


J'ai changé la conception originale du cluster Raspberry Pi dans la version gratuite de SketchUp , en esquissant des modèles 3D NanoPi-Fire3, des commutateurs réseau, des connecteurs, etc. J'ai décidé de ne pas inclure les fentes / grilles de ventilation dans le modèle. Le boîtier est exactement de la même taille que des clusters de cinq nœuds: la tâche était d'accueillir 12 cartes, deux fois plus de ventilateurs et de commutateurs Ethernet, ainsi que tous les câbles!





Télécharger le fichier SKP pour SketchUp 2013

Découpe laser


J'utilise le programme gratuit Inkscape : il prépare des modèles 2D pour le chargement dans une découpeuse laser. Différentes couleurs correspondent à différents niveaux de puissance / vitesse laser. Tout d'abord, les contours sont coupés le long des lignes vertes avec des trous pour les ports, les boulons et la ventilation. Des encoches supplémentaires sont indiquées en rose pour faciliter le retrait des parties fragiles. Ensuite, le texte et les lignes orange sont gravés, et à la toute fin du panneau sont coupés le long des contours bleus.



Vous pouvez télécharger des fichiers à découper sur une feuille de 600 × 400 × 3 mm, bien que j'ai moi-même pris pour différents panneaux des feuilles transparentes ou noires:


Une petite partie optionnelle est un diffuseur pour un panneau LED (très lumineux!) Qui peut être découpé en acrylique mat ou tout simplement acheter le diffuseur officiel Pimoroni pour trois livres.

Pour plus d'informations sur la découpe laser et les systèmes d'assemblage de boîtier sans vis, consultez mon premier article .

Modifications de conception par rapport au cluster Pi 3


Bien que le boîtier soit resté exactement de la même taille, j'ai apporté de nombreuses modifications et améliorations:

  • La conception du rail de montage horizontal est préservée, mais dans Fire3 il y a des trous M3, pour lesquels il est plus facile de trouver des pièces que pour M2.5 dans Pi. Et les trous sont plus proches les uns des autres car la taille globale de la carte est légèrement plus petite que celle du Pi. Serrer les écrous en plastique aux rails horizontaux est un peu fastidieux, et voudrais-je imprimer des clips en plastique sur une imprimante 3D pour maintenir les planches le long de chaque rail, ou faire des rondelles élastiques serrées?
  • Alimentation externe au lieu du concentrateur USB interne : j'ai remplacé l'alimentation USB interne par une alimentation AC sans ventilateur à l'extérieur du boîtier. Cela libère de l'espace à l'intérieur (pour plus de cartes Fire3 et deux ventilateurs) et devrait aider à la dissipation de la chaleur. Chaque Fire3 peut tirer un maximum de 2A, mais en réalité le cluster tirera beaucoup moins, sans prendre en compte les périphériques supplémentaires qui pendent sur USB et GPIO.
  • Deux chaînes microUSB au lieu de 12 câbles séparés : il n'y avait pas de câbles adaptés à la vente, j'ai donc fait mes propres câbles en une "guirlande" en utilisant des fils plus courts et plus épais (cote 11A) et soudé 12 connecteurs microUSB: en conséquence, les câbles ont pris très peu d'espace à l'intérieur du boîtier ... suite
  • Deux ventilateurs au lieu d'un : j'étais sûr que les cartes Fire3 plus puissantes auraient besoin d'un refroidissement beaucoup plus actif, j'ai donc fait une place pour deux ventilateurs ultra-silencieux de 92 mm sur le boîtier: le ventilateur arrière aspire de l'air froid dans le boîtier et le ventilateur avant souffle de l'air chaud.
  • Ventilateur Gelid Solutions Silent 9 au lieu de Nanoxia Deep Silence : Je suis très satisfait des performances du ventilateur Nanoxia (et de son excellent support technique), mais je voulais essayer une option moins chère. Les joints en caoutchouc gelide sont plus épais que Nanoxia, j'ai donc augmenté le diamètre des trous de montage dans le boîtier de 0,5 mm.
  • Alimentation directe de 5 V pour les ventilateurs au lieu de 5 V de GPIO : dans les clusters précédents, les ventilateurs étaient alimentés par la sortie GPIO de l'une des cartes. Mais compte tenu de l'installation de deux ventilateurs sur 12V, j'ai branché un convertisseur élévateur avec une ligne directe depuis l'alimentation principale du boîtier.
  • Plusieurs trous de ventilation au lieu d'un grand nombre : au lieu de couper des dizaines de trous de ventilation dans tout le boîtier (ce qui prend du temps), je ne fais que des trous sur les panneaux avant et arrière, face aux ventilateurs. Peut-être que cela optimise le flux d'air à travers le boîtier?
  • Connecteurs USB sur le boîtier : ces deux connecteurs USB intégrés fonctionnaient bien dans mon cluster d'origine, mais je ne les ai jamais aimés à cause des longs câbles qui ne se plient pas normalement. Alors maintenant, j'ai pris deux ports USB séparés avec des câbles courts et des connecteurs inclinés, ce qui laisse plus d'espace à l'intérieur du boîtier.
  • Il n'y a pas d'étagère pour fixer un concentrateur USB : le déplacement de l'alimentation vers l'extérieur a simplifié la conception du boîtier, qui peut maintenant être découpé dans une feuille d'acrylique 600 × 400 mm. Le retrait de l'étagère réduit la rigidité du boîtier, mais si vous vissez les rails de montage horizontaux aux panneaux latéraux, la rigidité est normale.
  • Câbles LAN plats au lieu de câbles ronds : j'ai aimé les câbles réseau multicolores du projet RPi3, mais il est très difficile de les placer à l'intérieur du boîtier. Les câbles plats se plient beaucoup plus facilement, ce qui est encore plus important avec un paquet de cartes aussi serré. Au début, j'ai essayé des câbles de 25 cm, mais ils se sont avérés trop longs, mais des câbles de 15 cm ont laissé plus d'espace libre à l'intérieur du boîtier.
  • Câbles réseau bleus au lieu de gris ennuyeux : le bleu colore vraiment la structure grise ... plus le logo FriendlyARM est bleu avec vert.
  • Commutateur Gigabit au lieu de 10 Gigabit : Fire3 possède des ports réseau à 1000 Mbps (dix fois plus rapide que Pi), il est donc évident que le commutateur doit être d'au moins 1000 Mbps. Un commutateur de dix gigaoctets éliminera complètement le goulot d'étranglement à cet endroit: ainsi, dix Fire3 ou plus pourront échanger des données avec un réseau externe à pleine vitesse. Cependant, ces commutateurs sont toujours chers (à partir de 200 £) et trop encombrants. Le commutateur NETGEAR GS110MX semble prometteur.
  • Porte-cartes 4 mm au lieu de 6 mm : en abaissant le tableau, nous avons obtenu un peu plus d'espace pour le câblage et l'échange d'air.
  • Micro HDMI au lieu de HDMI : les cartes Fire3 ont des connecteurs Micro HDMI, j'ai donc utilisé le câble Micro HDMI → HDMI le plus court que j'ai pu trouver (50 cm). Une autre option était un câble plus court avec un adaptateur HDMI → Micro HDMI séparé, mais il est encombrant et peut bloquer l'un des ports LAN.
  • Panneaux en plexiglas noir au lieu de transparents : pour «cacher» deux ventilateurs, mais laisser toute l'électronique en vue latérale et de dessus. Le panneau avant noir attire également l'attention sur le panneau LED Unicorn.
  • Panneau LED pHAT Unicorn au lieu de simples LED sur les cartes : il y a tellement de nœuds dans le cluster qu'il est logique de mettre sur le panneau avant du boîtier une surveillance de l'état visuel qui montre la vitesse du processeur, la température, l'activité du disque et du réseau pour chaque nœud ... plus

Vous pouvez en savoir plus sur certaines décisions de conception dans le cluster Pi d'origine.

Indicateurs d'état du serveur avec MQTT


J'ai choisi l' excellent panneau Unicorn pHAT 32x RGB LED de Pimoroni pour créer un «affichage d'état» coloré du cluster. Il affiche la charge du processeur, la température, l'activité du disque et du réseau pour chaque nœud. Ces cartes bon marché se connectent généralement directement aux broches du Raspberry Pi, mais vous devez bricoler un peu pour les connecter à une autre carte. La bibliothèque rpi_ws281x de Jeremy Garff utilise un code PWM / DMA de bas niveau très intelligent spécifique au Raspberry Pi, j'ai donc changé la bibliothèque pour utiliser une seule broche SPI pour contrôler les LED, qui devrait fonctionner sur presque n'importe quel matériel.



Unicorn pHAT est connecté à la carte avec seulement trois fils: + 5V, GND et SPI0 MOSI (broche 19). Dans le prochain article, je vais décrire en détail comment tout cela fonctionne. Les LED sont très lumineuses, elles sont donc beaucoup plus belles derrière le diffuseur, qui est fixé à l'extérieur du boîtier avec deux ou quatre vis M2,5. Vous pouvez couper votre propre diffuseur en acrylique mat ou acheter un modèle Pimoroni avec vis pour 3 £.

L'état du cluster sur le nœud du contrôleur est contrôlé par le courtier léger (serveur) Mosquitto MQTT (Message Queue Telemetry Transport). Chaque nœud indique une fois par seconde au courtier la vitesse actuelle du processeur, la température, l'activité du réseau, etc.

Puissance, température et refroidissement


Sans charge, l'ensemble du système de douze Fire3, deux commutateurs réseau et deux ventilateurs 7 V ne consomme que 24 watts et à pleine charge - 55 watts.

Avez-vous besoin de radiateurs? Avec deux fois plus de cœurs, le Fire3 SoC génère beaucoup plus de chaleur que le Pi3, il est donc très important d'avoir un radiateur. Heureusement, FriendlyARM fournit un grand dissipateur thermique avec de la graisse thermique qui se monte en toute sécurité sur la carte Fire3. Il est beaucoup plus grand que les radiateurs pour les autres lecteurs à carte unique que j'ai vus sur le marché, et il réduit parfaitement la température de la pierre, mais les ventilateurs ne feront toujours pas de mal.

L'adaptateur d'alimentation fournit un maximum de 75 W (1,1 A sur Fire3), donc les périphériques USB externes (tels que les disques durs) auront très probablement besoin d'une source d'alimentation séparée. Nous mesurons la température:

 cat /sys/devices/virtual/thermal/thermal_zone0/temp 

Nous voyons que le processeur sans charge chauffe jusqu'à 39 ° C avec le refroidissement des deux ventilateurs 12V.

À une charge de 100% avec des ventilateurs, la température atteint une stabilité de 58 ° C:

 sysbench --test=cpu --cpu-max-prime=20000000 --num-threads=8 run & 

Sans ventilateur, la température atteint rapidement 80 ° C avec une baisse automatique de la fréquence d'horloge pour éviter une surchauffe supplémentaire. Les processeurs peuvent fonctionner à cette température pendant longtemps sans aucun problème, mais vous n'obtenez pas de performances maximales.

Exactement la même conception de boîtier devrait convenir aux modèles NanoPi Fire2s et Fire2As, qui ne chauffent pas autant que le Fire3, de sorte qu'un ventilateur leur suffit. Pour refroidir un Fire3, un ventilateur beaucoup plus petit, peut-être de 40 à 60 mm, convient.

Ce qui n'est pas typique des ordinateurs à carte unique, Fire3 peut se mettre en veille avec une consommation d'énergie ultra-faible (environ 5 μA), ce qui suggère l'idée de bercer et de retirer les nœuds individuels du sommeil si nécessaire. Malheureusement, il n'y a pas de prise en charge Ethernet Wake-on-LAN, mais uniquement le paramètre inflexible "réveil après X minutes" . Cependant, les cartes ont un en- tête PWR . Peut-être qu'il peut être connecté pour se réveiller à distance à partir de la broche GPIO sur le contrôleur?

Refroidissement silencieux


Pour refroidir le cluster, j'ai installé deux ventilateurs de 92 mm dans le boîtier. J'ai recherché les glacières les plus silencieuses possibles en notant Quietpc.com , et le choix s'est porté sur Gelid Silent 9 pour 5,40 £.

Pour entendre au moins le plus petit bruit d'un ventilateur à 5V, vous devez rapprocher votre oreille à une distance de 5-7 cm, et les coussinets en caoutchouc du kit isolent parfaitement le boîtier de toute vibration. Cependant, sur 12V, les ventilateurs sont assez audibles (20dBA) dans une pièce calme. Par conséquent, je cherchais une tension qui fournirait un refroidissement suffisant, mais gardait le silence. À l'aide d'un convertisseur boost, j'ai changé la vitesse des ventilateurs, en essayant des options de tension entre 5V et 12V.

Les fansDes radiateurs?Pas de charge100% de chargePerformances
Arrière 12V, 1500 rpmoui42 ° C66 ° COk
9V arrière,? tr / minoui44 ° C71 ° COk
7V arrière,? tr / minoui46 ° C75 ° Créduction de fréquence
Les deux 12V, 1500 rpmoui39 ° C58 ° COk
Les deux 7V,? tr / minoui40 ° C65 ° COk
Les deux 5V,? tr / minoui46 ° C77 ° Créduction de fréquence
(voici les températures moyennes pour différents nœuds, c'est-à-dire qu'en moyenne à 71 ° C, en réalité, deux cartes sont proches d'une réduction de fréquence d'urgence).

J'ai été surpris que le deuxième ventilateur n'affecte pas particulièrement le résultat, et au final il reste à faire un choix entre un ventilateur à 9V ou deux à 7V, tandis que la deuxième option est un peu plus froide et plus silencieuse. Je suppose que le deuxième ventilateur est plus important sur un boîtier plus grand et / ou un chemin de circulation d'air plus complexe à l'intérieur du boîtier?

Câbles d'alimentation: Saga en cinq pièces


Le plus difficile a été de trouver une bonne solution pour alimenter 12 nœuds, deux commutateurs Ethernet et deux ventilateurs. J'ai essayé d'éviter beaucoup de câbles de soudure et de fabrication artisanale ...

  1. Les Fire3 sont alimentés via microUSB, comme un Pi, mais je n'ai pas trouvé de concentrateur USB 15 ports à 12 ports. J'envisageais un concentrateur à 6 ports avec six séparateurs microUSB double face ou même deux concentrateurs USB à 6 ports distincts. Mais la première option ne fournissait pas suffisamment de puissance pour 12 nœuds et la seconde occupait trop d'espace à l'intérieur du boîtier.
  2. Avec une «brique» externe comme source CA, j'ai essayé des répartiteurs 8x et 6x standard. Les câbles sont conçus pour les caméras de surveillance avec des connecteurs microUSB → DC coudés, mais ils occupent beaucoup d'espace (mauvais pour la circulation de l'air) et ne sont pas évalués par le courant, ce qui entraîne une chute de tension sur chaque carte Fire3.
  3. Et si vous utilisez des rails de châssis en acier comme conducteur pour 5V + GND?! Ce n'est pas aussi fou qu'il y paraît: chaque rail a une faible résistance de seulement 0,5 Ohms et doit être isolé électriquement des cartes. Mais je ne pouvais pas comprendre comment établir une connexion fiable entre chaque carte et le rail, afin qu'ils puissent facilement être déconnectés en cas de remplacement d'un nœud, etc.
  4. Un nouvel espoir? Existe-t-il un autre moyen d'alimenter les cartes que de souder 12 câbles microUSB faits maison? Les cartes Fire3 ont des points 5V + GND inoccupés, comme un en-tête UART. Il serait plus simple et moins cher de souder un en-tête à deux broches sur chaque nœud et de fournir de l'énergie à l'aide de connecteurs DuPont à deux broches prêts à l'emploi au lieu de microUSB. , , … .
  5. (daisy-chain), 0,5 (11A, 6 ) microUSB. , , . , DC. , , .

Les deux commutateurs Ethernet sont également alimentés par 5 V, les connecteurs CC circulaires sont soudés.

Création d'un cluster Fire3


Le processus de construction est similaire au cluster ARM à 40 cœurs sur le NanoPC-T3 , avec seulement plus de nœuds, un commutateur réseau supplémentaire et un ventilateur. Les panneaux Fire3 sont placés à une distance de 20 mm le long de rails avec des filetages M3, chacun fixé avec huit écrous. Pour la beauté, j'ai collé la carte du convertisseur boost 5V-12V à l'arrière du châssis et ajouté des broches pour allumer et éteindre facilement les ventilateurs. Certains câbles sont acheminés et sécurisés avec de petits serre-câbles. L'écran LED Pimoroni est connecté à la carte contrôleur via trois broches GPIO ... plus .













Liste des matériaux


La plupart des articles proviennent de différents vendeurs sur AliExpress ou eBay, ce qui augmente considérablement les frais de port. S'il y a une demande suffisante de grappes, il est moins cher d'acheter des pièces en vrac.

Commutateur Gigabit Ethernet Edimax ES-5800G V3 (2 pièces)£ 19,96
Câbles plats 15 cm Cat6 LAN (12 pcs.)£ 6,79
Vis en acier M3 12 mm (8 pièces sur 10)£ 1,45
M3 laiton stand 4 mm (8 sur 50 pcs.)£ 0,99
Connecteur DC 5,5 / 2,1 mm (2 sur 5 pièces)£ 1,49
1 m de fil cavalier rouge + noirn / a
Câble d'alimentation 1 m 2 conducteurs 0,5 mm (11A) CC£ 0,99
Connecteur d'angle soudé MicroUSB (12 sur 20 pièces)£ 1,63
Connecteur DC 5,5 / 2,1 mm pour le montage sur le châssis (2 sur 10 pièces)£ 0,65
Bornier 10A (4 sur 12)£ 1,29
PSU 100 W (5 V @ 20 A) sans ventilateur, 5,5 / 2,1 mm + prise UK£ 13,51
Montage RJ45 avec filetage maman et papa (2 pcs.)£ 1,74
Vis en acier M3 8 mm (4 sur 5)£ 1,25
M3 150 (8 .)£9,20
M3 (120 150)£1,73
Micro HDMI «» HDMI «» 50£2,19
USB «» «» 25 (2 .)£2.38
3 600×400£5,32
5V-to-12V£2,04
n / a
92 Gelid Silent 9 (2 .)£11,65
(4 10)£1,75
Unicorn pHAT 32x RGB LED£10,00
M2.5 10 (2−4 20)£1,02
(10 .)n / a
£97,73
NanoPi-Fire3 $35 (12 .) 1£383,38
microSDHC- SanDisk Industrial class 10 8 (12 .)£62,16
Total£543,27
1 NanoPi-Fire3 peut être importé en franchise de droits au Royaume-Uni, et l'expédition de 12 planches en provenance de Chine ne coûte que 29 $, mais compte tenu de la TVA britannique de 20%, vous obtenez 383,38 £.

Clusters à partir d'autres ordinateurs à carte unique


À ce jour, j'ai également construit:

Source: https://habr.com/ru/post/fr429488/


All Articles