2 repository-uri
Tools that reorder data structure fields to minimize memory padding and optimize alignment.
Distinct from Greedy Sorting Strategies: Closest candidates are greedy sorting algorithms or UI field layouts; this is about low-level memory layout optimization.
Explore 2 awesome GitHub repositories matching operating systems & systems programming · Memory Padding Optimizers. Refine with filters or upvote what's useful.
go-tools is a collection of utilities for Go static analysis and memory layout optimization. It provides a toolset designed to analyze source code to detect bugs and dead code, alongside specialized tools for optimizing how structs are arranged in memory. The project includes a memory alignment visualizer to display physical memory layouts and padding, as well as a struct layout optimizer that reorders fields to minimize memory padding. Additionally, it provides a boilerplate generator to automate the creation of registration and test files required for developing custom Go analyzers. The to
Provides a greedy field reordering mechanism to minimize memory padding in Go structs.
xtuner este un motor de antrenare cuprinzător pentru modele de limbaj mari (LLM), oferind un toolkit pentru pre-antrenare, fine-tuning supervizat și optimizarea modelelor multimodale vision-language. Servește ca un accelerator de antrenare distribuită și un framework specializat pentru scalarea modelelor Mixture-of-Experts și alinierea comportamentului modelului prin învățare prin consolidare din feedback uman (RLHF). Proiectul se distinge prin optimizări avansate de memorie și calcul, cum ar fi paralelismul de secvență pentru ferestre de context ultra-lungi și paralelismul de pipeline intercalat pentru a reduce timpul de inactivitate al GPU-ului. Oferă o suită dedicată pentru optimizarea preferințelor, implementând tehnici precum Group Relative Policy Optimization și Direct Preference Optimization pentru a rafina politicile modelului și sistemele de recompensă. Zonele largi de capabilități acoperă antrenarea distribuită a modelelor pe mai multe noduri, pregătirea seturilor de date multimodale și gestionarea fine-tuning-ului bazat pe adaptoare. Motorul include, de asemenea, instrumente pentru evaluarea modelului, fuziunea ponderilor (weight merging) și exportul parametrilor antrenați către motoarele de inferență. Antrenarea este gestionată prin fișiere de configurare standardizate și launchere distribuite pentru a asigura rezultate consistente pe clusterele de calcul.
Reduce GPU memory waste by packing variable-length data into single sequences to eliminate excessive padding.