Zweite Version der Patches mit einer Umstrukturierung der Header-Dateien des Linux-Kernels

Ingo Molnar hat die zweite Version eines Patch-Sets vorgestellt, das die Neuaufbauzeit des Kernels erheblich verkürzt, indem die Hierarchie der Header-Dateien umstrukturiert und die Anzahl der gegenseitigen Abhängigkeiten reduziert wird. Diese neue Variante unterscheidet sich von der vor einigen Tagen vorgeschlagenen ersten Version durch die Anpassung für den Kernel 5.16-rc8, zusätzliche Optimierungen und die Implementierung der Unterstützung für den Bau mit dem Compiler Clang. Bei Verwendung von Clang führte die Anwendung der Patches zu einer Verkürzung der Bauzeit um 88 % oder um 77 % in den CPU-Ressourcennutzungskennzahlen. Bei einem kompletten Neuaufbau des Kernels mit dem Befehl „make -j96 vmlinux“ verkürzte sich die Bauzeit von 337,788 auf 179,773 Sekunden.

In der neuen Version wurde auch ein Problem mit den GCC-Plugins gelöst, die während der ersten Überprüfung gefundenen Fehler wurden behoben und eine Vereinheitlichung der doppelten Deklarationen der Struktur „task_struct_per_task“ durchgeführt. Darüber hinaus wurde die Optimierung der Header-Datei linux/sched.h fortgesetzt und eine Optimierung der Header-Dateien des RDMA-Subsystems (Infiniband) implementiert, die die Bauzeit im Vergleich zur ersten Version der Patches um weitere 9 % verkürzte. Die Anzahl der Kernel-C-Dateien, die die Header-Datei linux/sched.h einbinden, wurde von 68 % auf 36 % im Vergleich zur ersten Version der Patches reduziert (von 99 % auf 36 % im Vergleich zum ursprünglichen Kernel).

Quelle: opennet.ru

60GB SSD 8Gb DDR4