1 # Une infrastructure de développement pour Sourcephile
2 - Demande de Critiques: 9
3 - De: Julien Moutinho <julm+ddc9@sourcephile.fr>
4 - À: Sourcephile <equipage@sourcephile.fr>
5 - Révision: 1 (2020-03-13)
16 ## Analyses des préoccupations
17 ### [G] Pour l’indépendance
18 #### [G] Concernant les charges
19 - [G] julm: on est sur une dépense de ~350€ de matériel neuf ce qui 3 à 4 fois moins qu'un bon NUC avec un i7 de dernière génération. C’est un prix très correct.
20 #### [T] Concernant l’autonomie
21 - [T] julm: on a la main sur le matériel (le Celeron J4005 est cependant moins ouvert que le GX-412TC de l'APU2), et le logiciel (sauf le BIOS qui est d'American Megatrends).
22 ### [T] Pour la science
23 - [T] julm: comme il s'agit d'une architecture x86_64 on peut mettre du NixOS, du Haskell et du PureScript sans nouveaux soucis. Il n'est pas certain que le CPU puisse être utilisé à pleine puissance avec la batterie actuelle. Cependant il offre une puissance de calcul légèrement supérieure à l'i7-620M de mon actuel X201.
24 ### [T] Pour la production
25 - [T] julm: si le système ne convient pas ou plus pour du dév, il pourra être réemployer ou dédié complètement à l'infrastructure de production, d'autant plus que le DL10J et le disque NVMe sont neufs.
26 ### [A] Pour l’essaimage
27 - [A] julm: rien de particulier pour favoriser l'essaimage.
28 ### [A] Pour la coopération
29 - [A] julm: les machines sont fabriquées à l'autre bout de la planète dans des conditions sociales probablement déplorables.
30 ### [A] Pour l’environnement
31 - [A] julm: c’est une machine très basse consommation (entre 5W et 17W, mais sans écran), comparé à mon actuel X201 entre (20W et 35W). Mais ça reste une consommation. Seulement une partie du matériel est du réemploi, le reste est du neuf.
36 Chacun des 4 CPU de mermet (APU2E4) plafonne à 800MHz, cette puissance de calcul convient aux services actuellement en production, mais n'est pas propice aux tâches de développement, surtout que beaucoup sont mono-thread : attendre 2 min pour `hdevtools` ou 10 min pour `stack build` sur les programmes en développement, c'est pour moi une perte de temps et de concentration.
40 Avoir une machine x86_64 assez puissante pour utiliser confortablement les outils de développement d'Haskell, Purescript et Nix.
42 Avoir une machine auto-hébergée chez un.e proche ou à très bas coût dans une association
43 ### Objectif honorable
44 Avoir une machine silencieuse et consommant suffisamment peu d'énergie.
45 ### Objectif ambitieux
46 Avoir une machine utilisable chez moi, sur une batterie que je possède déjà.
48 Avoir une machine qui ait peu de composants neufs, avec maximum de composants réemployés ou réemployables.
51 L'alimentation **doit** être en USB, et les données en USB ou HDMI sur un port différent.
52 L'écran **devrait** consommer en moyenne 5W et au maximum 10W, en 5V 2A USB-A ou USB-C.
53 Cela oriente vers une taille autour de 10 pouces.
54 Un captage tactile simple ou multi-points **peut** être supporté pour éviter d'avoir une souris (cela ne consomme en général qu'environ 0,1mA), mais nécessite généralement de l'indium (terre rare).
55 La résolution 1280x800 **devrait** être supportée.
56 Le constrate **peut** être aussi faible que 500:1, il ne s'agit pas ici de regarder des films, mais de coder et naviguer.
57 Le temps de réponse n'a pas besoin d'être très élevé comme pour des jeux vidéos, mais suffisant pour ne pas le remarquer lors de l'édition de texte, soit moins de 50ms.
58 La luminosité ne doit pas être à base de PWM, pour êviter les maux de tête.
59 Plusieurs angles d'inclination dans les modes portrait et paysage **devraient** être supportés.
60 Une fixation sur pied du type VESA **devrait** être supportée.
64 > LPDDR3 and DDR4 use about the same energy under load, however LPDDR RAM can ramp down into a low power state faster and consume far less energy while there
65 - https://www.reddit.com/r/hardware/comments/5dimal/lpddr3_vs_ddr4_power_usage/da542as/
67 Il reste des problèmes de sécurité :
68 - https://www.vusec.net/projects/trrespass/
71 - https://www.phoronix.com/scan.php?page=article&item=samsung-970-evo&num=1
74 - https://doc.ubuntu-fr.org/bluetooth_materiel-soutenu
77 - AMD: https://www.gamersnexus.net/guides/3525-amd-ryzen-tdp-explained-deep-dive-cooler-manufacturer-opinions
78 - Intel: https://www.how2shout.com/what-is/what-does-tdp-mean-thermal-design-power.html
81 #### Intel Core i7-620M
82 - https://en.wikichip.org/wiki/intel/core_i7/i7-620m
83 - CPU de mon ThinkPad X201, pour comparaison.
84 - Consommation électrique: entre 18W (powersave) et 24W (ondemand), mesuré par `powertop` pendant un `stress --cpu 4`, avec écran éteint.
88 #### AMD Ryzen Embedded V1605B
89 - https://en.wikichip.org/wiki/amd/ryzen_embedded/v1605b
95 #### Intel Pentium N4200
96 - https://en.wikichip.org/wiki/intel/pentium_(2009)/n4200
99 - Turbo Frequency: 2500MHz (1 core)
101 #### Intel Celeron J3455
102 - https://en.wikichip.org/wiki/intel/celeron/j3455
106 #### Intel Celeron J4005
107 - https://en.wikichip.org/wiki/intel/celeron/j4005
110 - Frequency: 2,000MHz
111 - Turbo Frequency: 2,700MHz (1 core)
113 #### Intel Core i7-7600U
114 - https://en.wikichip.org/wiki/intel/core_i7/i7-7600u
116 - Frequency: 2,800MHz
121 - cTDP down: 7.5W @800MHz
122 - cTDP up: 25W @2,900MHz
124 #### Intel Core i7-7660U
125 - https://en.wikichip.org/wiki/intel/core_i7/i7-7600u
127 - Frequency: 2,500MHz
128 - Turbo Frequency: 4,000MHz (1 core)
130 - cTDP down: 9.5W @800MHz
132 #### Intel Core i7-8565U
133 - https://en.wikichip.org/wiki/intel/core_i7/i7-8565u
135 - Frequency: 1,800MHz
141 - cTDP down: 10W @800MHz
142 - cTDP up: 25W @2,000MHz
144 #### Intel Core i7-8665U
145 - https://en.wikichip.org/wiki/intel/core_i7/i7-8665u
146 - https://www.notebookcheck.net/Intel-Core-i7-8665U-SoC-Whiskey-Lake.416029.0.html
148 - Frequency: 1,900MHz
149 - Turbo Frequency: 4,800MHz (1 core)
154 #### Intel Core i7-10710U
159 ## Ordinateur : Shuttle XPC Slim DL10J
160 - https://www.ldlc.com/fiche/PB00259273.html
161 - https://mitxpc.com/products/dl10j?_pos=3&_sid=997c6e4a6&_ss=r
162 - Intel Celeron J4005
163 - Seulement 8G de RAM (DDR4).
166 Dans une pièce à ~18°C et avec une cpufreq performance : ~45°C en idle et ~69°C en charge d'après `sensors`.
168 > [root@losurdo:~]# sensors
170 > Adapter: ACPI interface
171 > temp1: +45.0°C (crit = +95.0°C)
174 > Adapter: ISA adapter
175 > Package id 0: +45.0°C (high = +105.0°C, crit = +105.0°C)
176 > Core 0: +44.0°C (high = +105.0°C, crit = +105.0°C)
177 > Core 1: +44.0°C (high = +105.0°C, crit = +105.0°C)
179 Contrairement à l'APU2, `sensors` ne retourne pas la consommation électrique.
181 ### NVMe : Samsung SSD 970 EVO Plus M.2 PCIe NVMe 250 Go
182 - https://www.ldlc.com/fiche/PB00265389.html
184 Dans le BIOS il faut sélectionner PCIE pour le port M.2.
185 Malheureusement le DL10J ne sait pas encoe booter directement sur certains NVMe M.2, celui-ci en fait partie :(
187 > [root@losurdo:~]# nvme smart-log /dev/nvme0
188 > Smart Log for NVME device:nvme0 namespace-id:ffffffff
189 > critical_warning : 0
191 > available_spare : 100%
192 > available_spare_threshold : 10%
193 > percentage_used : 0%
194 > endurance group critical warning summary : 0
195 > data_units_read : 1 445
196 > data_units_written : 6 277
197 > host_read_commands : 34 269
198 > host_write_commands : 278 531
199 > controller_busy_time : 0
202 > unsafe_shutdowns : 73
204 > num_err_log_entries : 2
205 > Warning Temperature Time : 0
206 > Critical Composite Temperature Time : 0
207 > Temperature Sensor 1 : 64 C
208 > Temperature Sensor 2 : 75 C
209 > Thermal Management T1 Trans Count : 0
210 > Thermal Management T2 Trans Count : 0
211 > Thermal Management T1 Total Time : 0
212 > Thermal Management T2 Total Time : 0
215 ### Spectre et Meltown
217 > sudo ./spectre-meltdown-checker.sh
218 > SUMMARY: CVE-2017-5753:OK CVE-2017-5715:OK CVE-2017-5754:OK CVE-2018-3640:OK CVE-2018-3639:OK CVE-2018-3615:OK CVE-2018-3620:OK CVE-2018-3646:OK CVE-2018-12126:OK CVE-2018-12130:OK CVE-2018-12127:OK CVE-2019-11091:OK CVE-2019-11135:OK CVE-2018-12207:OK
220 Toutefois certains de ces correctifs peuvent être inefficaces :
221 - https://arxiv.org/pdf/2008.02307.pdf Speculative Dereferencing of Registers: Reviving Foreshadow
223 ## Bluetooth : TRENDnet TBW-107UB
224 Le Bluetooth permet de réutiliser mon clavier Keys-to-Go, que je peux utiliser sans déranger les personnes qui se reposent dans la même pièce car il est très silencieux.
225 - https://www.ldlc.com/fiche/PB00107707.html
227 ## Alimentation : USB Power ZK-DP3D
228 Pour réutiliser la batterie Anker PowerCore 26800 que j’ai (capable de délivrer du 5V 6A, répartis sur 3 USB-A à 5V 3A max),
229 il faut un élévateur de tension USB 5V vers 12V ou 19V et supportant les 15W.
231 - 11e, https://www.thanksbuyer.com/adjustable-usb-power-supply-15w-usb-fan-speed-controller-cv-cc-support-fast-charge-zk-dp3d-63918
232 - Attention : j'ai payé 3 exemplaires mais n'en ai reçu qu'un seul !
234 ## Êcran : LP101WH1 10" HD
235 Je peux commencer par essayer de réutiliser ce modèle car j'en ai déjà un, cependant c'est un écran d'ordinateur portable, il n'a pas de fixations adaptées pour le tenir au bout d'un bras. J'improvise donc un support avec du carton.
236 - https://secure.reichelt.com/de/en/raspberry-pi-display-lcd-10-1-hdmi-lp101wh1-rpi-lcd-10-1hdmi-p191307.html
238 Il tire malheureusement 6W.
241 ## Questions non-résolues
246 - http://www.akasa.com.tw/update.php?tpl=product/product.detail.tpl&no=181&type=Fanless%20Chassis&type_sub=Fanless%20NUC&model=A-NUC43-M1B
248 #### Streacom NC2 Fanless Chassis
249 - https://streacom.com/products/nc2-fanless-chassis/
252 #### Streacom FC5 Alpha Fanless Chassis
253 - Format: Mini-ITX, Micro-ATX and Full ATX
256 #### Louer un espace en ligne
257 #### ASRock iBox-V1000
258 - https://www.asrockind.com/overview.asp?Model=iBOX-V1000
259 - 500e, https://mitxpc.com/products/ibox-v1000
260 - CPU: AMD Ryzen™ Embedded V1605B (4 Cores/8 Threads – Base 2.0GHz – Turbo 3.6GHz - TDP 12-25W)
261 - Consommation: 12W-25W
262 - Stockage: M.2 jusqu'à 22x80 et SATA 2.5"
264 #### Viking D16 systems
265 - https://store.vikings.net/libre-friendly-hardware/the-server-1u
268 - Micrologiciel: Various options based on a de-blobbed coreboot, 2 - 16 MB firmware images
269 - Processor/System Bus: 2 x Socket G34, 6200 series, HyperTransport™ Technology 3.0, 6.4 GT/s per link (triple link)
270 - Carte graphique: On-board (Aspeed AST2050 with 8MB VRAM) or PCIe expansion card
271 - Ports: Total Slots: 6 Slot Location 1: PCI 32bit/33MHz Slot Location 2: PCI-E x16 (Gen2 X8 Link) Slot Location 3: PCI-E x16 (Gen2 X16 Link), Auto switch to x8 link if slot 2 is occupied Slot Location 4: PCI-E x8 (Gen2 X4 Link) Slot Location 5: PCI-E x16 (Gen2 X16 Link) Slot Location 6: PCI-E x16 (Gen2 X16 Link), Auto turn off if slot 5 is occupied, For 1U FH/FL Card, MIO supported Additional Slot 1 : PIKE Slot for Storage expansion
272 - Core Logic: AMD SR5690, AMD SP5100
273 - Form Factor: SSI-EEB
274 - On Board: I/O1 x PSU Power Connector (24-pin SSI power connector + 8-pin SSI 12V + 8-pin SSI 12V power connector), 1 x Management Connector , Onboard socket for management card, 3 x USB pin header , Up to 6 Devices, 1 x Internal A Type USB Port, 8 x Fan Header , 4pin (3pin/4pin fan dual support), 2 x SMBus, 1 x Serial Port Header, 1 x TPM header, 1 x PS/2 KB/MS portBack I/O Ports1 x External Serial Port, 2 x External USB Port, 1 x VGA Port, 2 x RJ-45, 1 x PS/2 KB/Mouse
277 Assemblage DIY basé sur le Viking D16.
280 - KPGE-D16, 224e+64e, https://www.ebay.fr/itm/ASUS-KGPE-D16-2UHS-Motherboard-2x-OS6386-CPU-with-heatsink-Fan-IO-Shield-/352941344143
283 - https://wiki.vikings.net/wiki/KGPE-D16
284 - https://libreboot.org/docs/hardware/kgpe-d16.html
285 - https://www.raptorengineering.com/coreboot/kgpe-d16-status.php
288 Coreboot ou Libreboot devraient pouvoir être installés avec un flasher CH341A pour SPI 25xx sur P-DIP8.
290 > Using a chip extraction tool for the swap, and making sure to clear my CMOS memory between each swap.
291 > Once you write coreboot.rom to your chip, remember to read it back out and do an md5sum against what you got back, to compare against your original file. This way, you can verify that the image did not get corrupted during the transfer.
292 > If you're coming from the original KGPE-D16's BIOS, you'll need to clear your CMOS (use the jumper, or just remove power and the CMOS battery and wait 5 minutes.)
296 - 6e, https://www.ebay.fr/itm/USB-Programmer-CH341A-24-25-Serie-Graveur-BIOS-Writer-SPI-Flash-de-bord-U6N2-/263081754209
299 - https://libreboot.org/docs/install/bbb_setup.html
300 - https://www.deityguard.org/flashing
301 - https://flashrom.org/Supported_hardware
302 - AMD family 10h support dropped by coreboot: https://www.reddit.com/r/coreboot/comments/dz0bkf/comment/f84ruo6
305 - https://noctua.at/en/nh-u12do-a3
306 - https://www.dynatron.co/product-page/t757
308 Un ventilateur dure environ 5 ans. Le système peut être endommagé si le ventilateur n'est pas remplacé.
311 Opteron 6272, 2-2.4-3Ghz, 16 cores, family 15h, socket G34, year 2012, 32nm
313 - Supporte la DDR3 1600 ECC registered, en UDIMM ou RDIMM
314 - Supporte l'accelération de la virtualisation par AMD-V
315 - Supporte l'accelération du chiffrement par AES-NI
318 - Deux vendus avec la carte KPGE-D16 d'occasion.
321 Kingston à éviter d'après libreboot.
324 - 52e, 1x 8Go, DDR3 1600MHz, ECC registered, Crucial, https://www.ebay.fr/p/Ram-M%C3%A9moire-Crucial-Ct102464bd160b-8-GB-Ddr3l-1600-MHz-Pc3-12800/567387997?iid=293273368349
327 Les Opteron sont des CPU pre-Ryzen, le 6272 est annoncé comme nécessitant entre 80W et 115W, à comparer aux 15W à 25W du V1605B.
329 > It requires a 24 pin SSI motherboard power connector, and 2 independent 12V 8 pin SSI CPU power connectors
331 > Other things to keep in mind with SSI EEB motherboards is that you will most likely be using 2 x 8pin (EPS12V) server power connectors, which most consumer grade power supplies do not provide.
334 > SSI EEB will fit in an EATX case or bigger. Its dimensions are exactly 12 x 13 inches. However, not all screw holes will line up (usually 3 screw holes will not line up, depending on the exact SSI EEB motherboard you have). The corners line up and some intermediate ones do, and the motherboard should be held tight enough for most usage. But you may notice some motherboard bending due to the missing screws in other areas.
336 - ~200€, Nanoxia Deep Silence 5
339 - Main Storage (SSD recommended)
340 - Samsung EVO 860, 500GB, https://www.ldlc.com/fiche/PB00243244.html
341 - Storage HDD 2x Seagate BarraCuda..
344 - https://system76.com/desktops/thelio-b1/configure
345 - ~1000€, AMD Ryzen 3 3200G, 2x 8GB Dual Channel DDR4 @3200MHz, 1x 250GB NVMe (Seq. Read: 3500MB/s, Write: 2300MB/s)
346 - ~1600€, AMD AMD Ryzen 7 3800X (3.9 up to 4.5 GHz - 8 Cores - 16 Threads), 2x 8GB Dual Channel DDR4 @3200MHz, 1x 250GB NVMe (Seq. Read: 3500MB/s, Write: 2300MB/s)
347 - ~1635€, Intel i9 9900K (3.6 up to 5 GHz - 8 Cores - 16 Threads), 2x 8GB Dual Channel DDR4 @3200MHz, 1x 250GB NVMe (Seq. Read: 3500MB/s, Write: 2300MB/s)
349 > the Core i9 9900K and the Ryzen 9 3900X. Both are amazing CPUs that are very similar in price and have a good specialty; the 3900X is featuring 4 more cores and 8 more threads than the 9900K thus making it a gaming and workstation beast, beating the 9900K by as much as 50% in rendering/editing/streaming tasks all while consuming less power and producing less heat thanks to its superior 7nm production process. The 9900K though has a small edge in gaming performance that holds even if we overclock both CPUs to the max.
351 #### System76 Meerkat
352 - https://system76.com/desktops/meerkat
353 - ~1000€, Intel i7-8559U (2.7 up to 4.5GHz – 8MB Cache - 4 Cores - 8 Threads), 16GB Dual Channel DDR4 at 2400 MHz, 250GB NVMe (Seq. Read: 3500MB/s, Write: 2300MB/s)
355 #### Talos™ II Entry-Level Developer System
356 - https://www.raptorcs.com/content/TLSDS3/intro.html
357 - CPU: IBM POWER9 (2017, 14 nm FinFET) https://en.wikipedia.org/wiki/POWER9
359 - Frais de port éĺevés.
360 - Architecture PowerPC (et non x86_64, bien supportée par NixOS et Haskell).
362 #### Onlogic CL210G-11
363 - https://www.onlogic.com/cl210g-11/
364 - Seulement 4G de RAM.
367 - https://www.notebookcheck.net/Intel-NUC-Kit-NUC7CJYH-Celeron-J4005-UHD-600-Mini-PC-Review.308466.0.html
368 - Intel Celeron J4005
369 - Seulement 8G de RAM (DDR4).
372 - Intel Provo Canyon 8th Gen NUC with i7 Processor
377 - http://simplynuc.com/8CCHKR-full/
378 - Seulement 4G de RAM.
381 - https://www.intel.com/content/www/us/en/products/boards-kits/nuc/kits/nuc8i7inh.html
382 - Seulement 8G de RAM.
386 - https://simplynuc.com/8v7pnf-full/
387 - https://ark.intel.com/content/www/us/en/ark/products/199110/intel-nuc-8-pro-kit-nuc8v7pnh.html
390 - Livraison mi-mai 2020
393 - https://www.ldlc.com/fiche/PB00239089.html
394 - Dual-Core Intel i7-7500U
397 #### TranquilPC Mini Multi display PC
398 - AMD Ryzen™ Embedded V1605B (4 Cores/8 Threads – Base 2.0GHz – Turbo 3.6GHz - TDP 12-25W)
399 - N'a pas l'air de pouvoir inclure un disque 2.5"
401 #### Simply NUC LLMv6SQ (code named Sequoia)
402 - http://simplynuc.com/sequoia-v6-full/
406 #### Fanless Quad-Core ML100G-40
407 - https://www.onlogic.com/ml100g-40/
411 - AMD Ryzen™ Embedded V1000/R1000 SoC 3.5-inch Disk-Size SBC
412 - http://ibase-usa.com/english/ProductDetail/EmbeddedComputing/IB918
415 - AMD Ryzen Embedded V1000 V1605B/V1756B/V1807B COM Express® Compact Type 6 CPU Module
416 - https://www.arbor-technology.com/gl/Product/Pro/Model/EmETXe-a10M0
419 - https://www.bleujour.com/pc-embarque/meta-u/
421 #### Prime Computer PrimeServer Pro
422 - https://primecomputer.co/products/prime-server-pro/
427 - 4e, http://www.icstation.com/adjustable-step-down-power-supply-module-fast-charging-cvcc-buck-boost-voltage-converter-p-13741.html
429 - 4e, http://www.icstation.com/mobile/adjustable-step-down-power-supply-module-cvcc-buck-boost-voltage-converter-with-shell-p-13463.html
430 - 7e, https://www.tindie.com/products/icstation/15w-adjustable-step-updown-power-module-13452/
432 - 35e, http://www.etonnet.com/varipower-700.html
433 - 35e, https://www.tindie.com/products/etonnet/varipower-usb-700/
435 Il serait également possible d'acheter une batterie avec USB-PowerDelivery et un sink négociant 12V :
436 - https://www.tindie.com/products/pier42/usb-c-pd-sink/
439 - https://www.gechic.com/en-portable-monitor-onlap1306h-specification.html
441 - https://www.gechic.com/en-portable-monitor-onlap1102e-overview.html
443 - https://www.gechic.com/en-portable-monitor-onlap1102e-overview.html
444 - Asus ZenScreen MB16AC (15,6 pouces, FHD, IPS)
445 - https://www.notebookcheck.biz/Courte-critique-de-l-ecran-Asus-ZenScreen-MB16AC-15-6-pouces-FHD-IPS.268242.0.html
446 - Elecrow Raspberry Pi Écran portable IPS 10,1" 2K 2560 x 1600