2 repositorios
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 es un motor de entrenamiento integral para modelos de lenguaje grandes, que ofrece un toolkit para pre-entrenamiento, ajuste fino supervisado (fine-tuning) y la optimización de modelos multimodales de visión-lenguaje. Sirve como un acelerador de entrenamiento distribuido y un framework especializado para escalar modelos de Mezcla de Expertos (MoE) y alinear el comportamiento del modelo mediante aprendizaje por refuerzo a partir de retroalimentación humana (RLHF). El proyecto se distingue por optimizaciones avanzadas de memoria y cómputo, como el paralelismo de secuencia para ventanas de contexto ultra largas y el paralelismo de pipeline entrelazado para reducir el tiempo de inactividad de la GPU. Proporciona una suite dedicada para la optimización de preferencias, implementando técnicas como Group Relative Policy Optimization y Direct Preference Optimization para refinar las políticas del modelo y los sistemas de recompensa. Las áreas de capacidad cubren el entrenamiento distribuido de modelos a través de múltiples nodos, la preparación de datasets multimodales y la gestión del ajuste fino basado en adaptadores. El motor también incluye herramientas para la evaluación de modelos, fusión de pesos y exportación de parámetros entrenados a motores de inferencia. El entrenamiento se gestiona mediante archivos de configuración estandarizados y lanzadores distribuidos para asegurar resultados consistentes a través de clusters de computación.
Reduce GPU memory waste by packing variable-length data into single sequences to eliminate excessive padding.