Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente |
configurer:processeur [2023/06/03 22:19] – [quel processeur ?] david | configurer:processeur [2024/03/15 21:12] (Version actuelle) – david |
---|
Installez [[https://codeberg.org/mystical/cpuc|cpuc]] pour plus de précisions, ou ''llvm-tblgen''. | Installez [[https://codeberg.org/mystical/cpuc|cpuc]] pour plus de précisions, ou ''llvm-tblgen''. |
| |
Ici, c'est un modèle dit ''haswell'' d'après la [[https://www.intel.fr/content/www/fr/fr/products/sku/63697/intel-core-i73930k-processor-12m-cache-up-to-3-80-ghz/specifications.html|documentation]]. | Ici, c'est un modèle dit ''haswell'' d'après la [[https://www.intel.fr/content/www/fr/fr/products/sku/77490/intel-core-i34170-processor-3m-cache-3-70-ghz/specifications.html?wapkw=i3-4170|documentation]]. |
| |
| Obtenez la topologie de votre système: |
| |
| <code bash> |
| sysctl kern.sched.topology_spec |
| |
| kern.sched.topology_spec: <groups> |
| <group level="1" cache-level="3"> |
| <cpu count="12" mask="fff,0,0,0">0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11</cpu> |
| <children> |
| <group level="2" cache-level="2"> |
| <cpu count="2" mask="3,0,0,0">0, 1</cpu> |
| <flags><flag name="THREAD">THREAD group</flag><flag name="SMT">SMT group</flag></flags> |
| </group> |
| <group level="2" cache-level="2"> |
| <cpu count="2" mask="c,0,0,0">2, 3</cpu> |
| <flags><flag name="THREAD">THREAD group</flag><flag name="SMT">SMT group</flag></flags> |
| </group> |
| <group level="2" cache-level="2"> |
| <cpu count="2" mask="30,0,0,0">4, 5</cpu> |
| <flags><flag name="THREAD">THREAD group</flag><flag name="SMT">SMT group</flag></flags> |
| </group> |
| <group level="2" cache-level="2"> |
| <cpu count="2" mask="c0,0,0,0">6, 7</cpu> |
| <flags><flag name="THREAD">THREAD group</flag><flag name="SMT">SMT group</flag></flags> |
| </group> |
| <group level="2" cache-level="2"> |
| <cpu count="2" mask="300,0,0,0">8, 9</cpu> |
| <flags><flag name="THREAD">THREAD group</flag><flag name="SMT">SMT group</flag></flags> |
| </group> |
| <group level="2" cache-level="2"> |
| <cpu count="2" mask="c00,0,0,0">10, 11</cpu> |
| <flags><flag name="THREAD">THREAD group</flag><flag name="SMT">SMT group</flag></flags> |
| </group> |
| </children> |
| </group> |
| </groups> |
| </code> |
| |
==== Makefile ==== | ==== Makefile ==== |
| |
Puisque l'on est sur de l'architecture (''MACHINE_CPUARCH'') ''amd64''. | Puisque l'on est sur de l'architecture (''MACHINE_CPUARCH'') ''amd64''. |
==== Resultat ==== | |
| ==== Résultat ==== |
| |
<code bash> | <code bash> |
| |
''Popeye'' est donné comme ''i7-3930K'', soit un //Intel Core// (à ne pas confondre avec ''core2''). Il suffit de consulter la [[https://www.intel.fr/content/www/fr/fr/products/sku/63697/intel-core-i73930k-processor-12m-cache-up-to-3-80-ghz/specifications.html|datasheet]] pour y voir le modèle ''sandybridge''. | ''Popeye'' est donné comme ''i7-3930K'', soit un //Intel Core// (à ne pas confondre avec ''core2''). Il suffit de consulter la [[https://www.intel.fr/content/www/fr/fr/products/sku/63697/intel-core-i73930k-processor-12m-cache-up-to-3-80-ghz/specifications.html|datasheet]] pour y voir le modèle ''sandybridge''. |
| |
| ===== Micro-codes ===== |
| |
| Les architectures de type //x86// (Intel ou AMD) sont composés de couches successive dont un //micro-code// qui émule les fonctions les plus complexes. |
| Ce micro-code est souvent mis à jour dans le cadre de correctifs, notamment lors de la découverte de failles de sécurités. |
| |
| Installez le port [[https://www.freshports.org/sysutils/cpu-microcode|sysutils/cpu-microcode]] ou [[https://www.freshports.org/sysutils/cpu-microcode-rc|sysutils/cpu-microcode-rc]] pour mettre à jour automatiquement au démarrage ce code, au besoin. Notez qu'il existe des ports séparés selon le constructeur: |
| * [[https://www.freshports.org/sysutils/cpu-microcode-intel|sysutils/cpu-microcode-intel]] |
| * [[https://www.freshports.org/sysutils/cpu-microcode-amd|sysutils/cpu-microcode-amd]] |
| |
| Le port ''-rc'' ne permet une mise à jour qu'à la fin du processus de démarrage. C'est un service qui se règle dans ''/etc/rc.conf'': |
| <file ini /etc/rc.conf> |
| microcode_update_enable="YES" |
| </file> |
| |
| Lancez le: |
| <code bash> |
| service microcode_update onestart |
| </code> |
| |
| Le premier port permet aussi une mise à jour dès le début du processus de démarrage et se règle dans le ''/boot/loader.conf'': |
| |
| <file ini /boot/loader.conf> |
| cpu_microcode_load="YES" |
| cpu_microcode_name="/boot/firmware/intel-ucode.bin" |
| # cpu_microcode_name="/boot/firmware/amd-ucode.bin" |
| </file> |
| |
| Lancez une mise jour sans redémarrer: |
| <code bash> |
| service microcode_update onestart |
| </code> |
| |
| |
| |
| |
| |
| |
| |