Notas de la versión

Notas de la versión de HFTKernel 7.2.x.

Explore la serie 7.2.x del kernel, de la versión más reciente a la más antigua, con los cambios upstream más relevantes para una ejecución predecible de CPU, redes estables, gestión precisa del tiempo, virtualización, comportamiento de la memoria y colas de latency medibles.

Registro público de cambios

Notas de la versión

Cada entrada se centra en los cambios upstream que respaldan los objetivos principales de HFTKernel: jitter mínimo, tail latency controlada, una ruta de datos estable, gestión precisa del tiempo y comportamiento medible bajo presión.

HFTKernel 7.2.11

Red zero-copy más sólida, colas de NIC ordenadas y hardware de tiempo más fiable

Última entrada de la serie 7.2.x

Base upstream: Linux 7.2.11. Cambios desde Linux 7.2.10. Fecha de publicación: 15 de octubre de 2026.

Propiedad de búferes AF_XDP de mlx5 más sólida

HFTKernel 7.2.11 refuerza el procesamiento de recepción zero-copy de AF_XDP en adaptadores NVIDIA mlx5.

Para las colas de recepción con pasos, los reintentos de reposición de MPWQE ahora conservan el estado explícito de propiedad de cada búfer XSK. Si una asignación falla temporalmente, un reintento posterior de NAPI ya no libera la misma trama UMEM mediante un puntero obsoleto.

La ruta de reintento ahora es idempotente:

  • cada búfer XSK original se libera una sola vez;
  • las reposiciones parcialmente completadas conservan su estado de propiedad;
  • una asignación exitosa sustituye el búfer y borra el marcador de liberación;
  • los reintentos posteriores actúan únicamente sobre los búferes que aún requieren sustitución.

Una ejecución upstream de presión AF_XDP de 20 segundos probó 1,575,262 fallos de asignación de búferes sin descriptores no válidos, errores de WQE ni advertencias del kernel.

La cola de recepción cíclica heredada recibe la misma protección de propiedad.

En la prueba upstream correspondiente, se ofreció tráfico UDP de 64 bytes a 12 Mpps. La ruta actualizada procesó 356,904,225 paquetes en 30 segundos, incluidos 571,405 eventos xdp_rx_ring_full, sin errores de propiedad ni de datos.

Para HFTKernel, esto refuerza la ingesta de datos de mercado de alta frecuencia, los manejadores de feeds AF_XDP, los sistemas de distribución de paquetes y las cargas de captura zero-copy bajo presión del anillo de recepción.

Doorbells TX ordenados de Intel ICE

El driver Intel ICE vuelve a utilizar escrituras MMIO ordenadas al publicar doorbells de colas TX.

El driver primero actualiza la contabilidad de Dynamic Queue Limits en memoria normal y luego notifica a la NIC que hay nuevos descriptores disponibles. La escritura ordenada garantiza que la contabilidad de la cola sea globalmente visible antes de que el dispositivo pueda completar el trabajo transmitido.

Esto es especialmente importante en ARM64, donde writel_relaxed() no proporciona el orden necesario entre memoria normal y MMIO.

El cambio se probó con un adaptador Intel E810-XXV bajo carga de red sostenida. La ruta ordenada mantuvo sincronizadas la finalización de la NIC y la contabilidad de la cola de software.

Para HFTKernel, esto refuerza el procesamiento TX sostenido en hardware Intel compatible y conserva una relación uniforme entre el envío de descriptores, la ejecución del hardware y la contabilidad de finalización.

Orden correcto de finalización de ICOSQ en mlx5

El driver mlx5 ahora actualiza el doorbell de la cola de finalización antes de publicar el contador consumidor de ICOSQ.

Una dma_wmb() mantiene ordenadas ambas operaciones:

  1. Se libera espacio de CQ para el dispositivo.
  2. Avanza el contador consumidor del software.
  3. El dispositivo observa la capacidad de finalización actualizada antes de que se envíe trabajo de control interno adicional.

Esto preserva el ciclo de vida de la cola de finalización y mantiene alineado entre el host y la NIC el procesamiento de las colas de envío internas de mlx5.

Ciclo de vida AF_XDP más fiable en Google GVE

Google Virtual Ethernet DQO recibe un conjunto coordinado de mejoras del ciclo de vida zero-copy de AF_XDP.

Los búferes XSK ahora se liberan cuando un descriptor de finalización RX informa de un error. Los búferes enviados a la NIC también se devuelven cuando los anillos RX se detienen o restablecen.

El cierre del conjunto XSK ahora utiliza la variante correcta de bloqueo NAPI cuando las operaciones de gestión de colas ya mantienen el bloqueo netdevice. Esto permite que la reconfiguración de colas avance sin intentar adquirir dos veces el mismo bloqueo.

Los cambios de detención de colas y del conjunto XSK cubren situaciones de producción observadas en entornos Google Cloud.

Para HFTKernel Cloud, esto permite una configuración, reconfiguración, reinicio y desmontaje limpios de AF_XDP en interfaces GVE DQO.

Estimación más precisa del retraso PCIe en OCP PTP

El driver OCP PTP ahora utiliza KTIME_MAX como límite superior inicial para la estimación del retraso PCIe.

El máximo sin signo anterior se convertía en un valor negativo al representarse como ktime_t, lo que impedía que los retrasos reales medidos lo sustituyeran. El cálculo actualizado utiliza el dominio de tiempo con signo correcto y mantiene un ajuste válido de la ventana de marcas de tiempo.

Esto mejora la compensación del retraso de la ruta PCIe para tarjetas de tiempo OCP compatibles y refuerza la relación entre la ventana de marcas de tiempo del host y la lectura del reloj de hardware.

Para HFTKernel, esto proporciona una base de hardware de tiempo más limpia para sincronización PTP, correlación de marcas de tiempo y medición de latency.

Estado de cpuset más uniforme durante cambios en el ciclo de vida de CPU

HFTKernel 7.2.11 incluye varias correcciones de cpuset relevantes para la ubicación automatizada de CPU.

Durante las operaciones de desconexión de CPU, guarantee_active_cpus() ahora tiene en cuenta el intervalo entre los cambios en la máscara de CPU activas y la propagación de las máscaras efectivas actualizadas de cpuset.

El modo de cgroup se evalúa mientras se mantiene cpuset_mutex, lo que conserva sincronizados el estado de la jerarquía y las actualizaciones de máscaras.

La comprobación de modo v2 también utiliza un indicador estable dedicado en lugar de leer un puntero a la raíz de cgroup que podría estar cambiando.

En conjunto, estos cambios refuerzan el estado de cpuset durante:

  • la conexión en caliente de CPU;
  • las operaciones de montaje y revinculación de cgroups;
  • los cambios en el ciclo de vida de los servicios;
  • la gestión automatizada de particiones de CPU.

Para HFTKernel, esto permite una separación fiable de los núcleos de trading, los núcleos de red, las CPU de mantenimiento y las cargas de servicios.

Procesamiento limitado del volcado de flujos de Open vSwitch

Los volcados de flujos netlink de Open vSwitch ahora mantienen desactivadas las mitades inferiores durante cada función de retorno de volcado limitada.

Anteriormente, las operaciones locales repetidas de activación de mitades inferiores podían hacer que el propio hilo de volcado procesara la acumulación pendiente de softIRQ. En una CPU ocupada con procesamiento de paquetes, esa acumulación podía reponerse continuamente.

La ruta actualizada mantiene la función de retorno limitada por las entradas de flujo incluidas en la respuesta netlink actual. El procesamiento de softIRQ de paquetes permanece en las rutas normales de ejecución de red en lugar de ser absorbido por el hilo de volcado de flujos del plano de control.

Para HFTKernel Cloud y los perfiles de red virtualizada, esto crea una separación más clara entre la carga de la ruta de datos y las operaciones de diagnóstico del plano de control.

Configuración predecible de anillos io_uring

Los anillos SQ, CQ y de búferes proporcionados ya no se contabilizan contra RLIMIT_MEMLOCK, lo que restaura su semántica de configuración establecida.

Esto evita que los servicios ordinarios sin privilegios reciban un límite artificial del número de anillos por memoria que ya se controla mediante el ciclo de vida de io_uring y de los cgroups de memoria.

El caso de reproducción upstream con anillos de 4,096 entradas volvió de 21 anillos a la configuración esperada de 64 anillos con el límite memlock predeterminado de 8 MiB.

Para las regiones compuestas de memoria io_uring que sí se contabilizan, la contabilidad ahora incluye todas las páginas asignadas, incluidas las páginas finales de redondeo a potencia de dos fuera de la región lógica solicitada.

Cuando la asignación compuesta superaría el límite, io_uring puede recurrir a una asignación masiva de tamaño exacto.

Esta combinación proporciona:

  • creación predecible de SQ y CQ;
  • creación predecible de anillos de búferes proporcionados;
  • contabilidad precisa de las asignaciones compuestas fijadas;
  • mejor uso de la memoria cerca de los límites configurados.

Contabilidad correcta de memoria bloqueada y remapeada

MREMAP_DONTUNMAP ahora conserva una contabilidad coherente de locked_vm en dos casos adicionales.

Las VMA anónimas bloqueadas que se fusionarían consigo mismas permanecen separadas para que el origen y el destino conserven su estado de bloqueo correcto.

Los remapeos parciales de VMA bloqueadas dividen el rango de origen antes de mover las tablas de páginas, lo que mantiene la contabilidad alineada con las páginas que permanecen en el origen y las representadas por el destino.

Para HFTKernel, esto refuerza la contabilidad del ciclo de vida de la memoria para aplicaciones que utilizan conjuntos de trabajo bloqueados junto con operaciones avanzadas de remapeo.

Análisis más fiable de AF_PACKET, Virtio, VLAN y GSO

Las rutas de red virtual y sockets de paquetes ahora aplican una secuencia uniforme de análisis de cabeceras.

Los paquetes GSO etiquetados con VLAN enviados mediante AF_PACKET SOCK_RAW se analizan después de aplicar los metadatos de Virtio. Esto conserva las posiciones correctas de las cabeceras de red y transporte y evita análisis redundantes.

Los paquetes GSO respaldados por Virtio siempre se analizan por flujo cuando los metadatos de descarga de checksum no proporcionan la posición de transporte. Esto garantiza que:

  • se valide el protocolo de red;
  • la cabecera de transporte esté presente en los datos lineales;
  • se inicialice el desplazamiento de transporte;
  • las opciones IPv4 y las cabeceras de extensión IPv6 se gestionen correctamente.

Los desplazamientos del análisis de flujos también se gestionan correctamente para búferes de paquetes mayores de 64 KiB, incluidos BIG TCP y las tramas grandes AF_PACKET PACKET_VNET_HDR. La ruta del analizador de flujos BPF recibe la misma protección.

Para HFTKernel, esto refuerza las cargas de captura y reproducción de paquetes, TUN/TAP, Virtio, clasificación BPF y puertas de enlace virtuales.

Recepción TCP zero-copy más sólida con memoria de dispositivos

La recepción TCP zero-copy ahora reconoce los fragmentos net_iov no respaldados por páginas antes de solicitar indicaciones de mapeo de páginas.

Esto cubre tanto la memoria de dispositivos respaldada por DMA-BUF como los tipos net_iov de io_uring.

Los datos legibles respaldados por páginas siguen pudiendo copiarse o mapearse normalmente. Cuando el siguiente fragmento pertenece a memoria de dispositivo, el kernel devuelve la indicación correcta de salto en lugar de tratarlo como una página convencional.

Esto refuerza la interacción entre la recepción TCP zero-copy, la memoria de dispositivos, DMA-BUF y los búferes de red respaldados por io_uring.

Configuración más segura de XDP y de separación de cabecera y datos TCP

Los dispositivos de red ahora reconocen los programas XDP de un solo búfer adjuntados mediante bpf_link al decidir si puede activarse la separación de cabecera y datos TCP.

Por lo tanto, el kernel conserva la compatibilidad entre el programa XDP adjunto y la distribución de búferes de recepción de la NIC, independientemente de que el programa se haya instalado mediante la ruta heredada o la API de enlaces BPF.

Veth también actualiza correctamente la capacidad de transmisión XDP del par tras cambios de configuración GRO mientras la interfaz está desactivada, manteniendo las rutas de redirección de contenedores y espacios de nombres alineadas con la configuración activa del par.

Mapeo IOMMU directo para recursos MMIO

Los recursos MMIO que llevan DMA_ATTR_MMIO ahora omiten la gestión de búferes intermedios de SWIOTLB.

MMIO no puede copiarse mediante un búfer intermedio. La ruta actualizada pasa directamente al mapeo IOVA de IOMMU, incluidos los recursos no alineados a página.

Para HFTKernel Hardware, esto refuerza el mapeo de recursos de dispositivos y aceleradores detrás de una IOMMU y elimina una ruta intermedia incompatible de la configuración MMIO.

Protección de invalidación TLB en AMD

HFTKernel 7.2.11 detecta AMD TLBI Erratum #1718.

En los procesadores afectados, una secuencia INVLPGB y TLBSYNC puede no invalidar la entrada TLB prevista. Cuando no hay microcódigo actualizado disponible, el kernel activa una solución alternativa de software.

Esto refuerza la corrección de las transiciones de espacio de direcciones y la invalidación TLB en sistemas AMD compatibles.

TX y recuperación PCIe más sólidos en Broadcom NetXtreme-E

El driver Broadcom bnxt_en ahora mapea la longitud completa con relleno de los paquetes TX cortos.

Esto mantiene la longitud DMA alineada con el tamaño del paquete presentado al hardware, incluidas las tramas de control pequeñas transmitidas por interfaces VLAN y macvlan en adaptadores NetXtreme-E compatibles.

La recuperación PCIe también restaura la configuración BAR de forma uniforme tanto en las rutas de restablecimiento fatales como en las no fatales. La visibilidad MMIO del dispositivo, el control del bus y la decodificación de memoria se restablecen en un orden controlado después de la recuperación.

Herramientas de medición incluidas

HFTKernel 7.2.11 incluye:

cpujitter

Para intervalos sin ejecución de CPU, interferencias del planificador, actividad de IRQ y softIRQ y colas de latency.

memjitter

Para asignación, first-touch, conjuntos de trabajo bloqueados y comportamiento bajo presión de memoria.

irqjitter

Para analizar la actividad de IRQ y softIRQ.

Estas herramientas conectan los cambios del kernel con el comportamiento de toda la pila de aplicaciones.

Resultado de HFTKernel 7.2.11

HFTKernel 7.2.11 refuerza el sistema operativo en torno a las aplicaciones sensibles a la latency:

  • los reintentos AF_XDP de mlx5 conservan la propiedad de UMEM bajo presión de anillos y asignación;
  • Google GVE gestiona los búferes AF_XDP de forma uniforme durante errores y eventos del ciclo de vida de las colas;
  • Intel ICE publica el estado de la cola TX antes de activar el doorbell de la NIC;
  • mlx5 mantiene ordenadas las actualizaciones del espacio de finalización con el avance de las colas de envío internas;
  • las tarjetas OCP PTP mantienen una compensación correcta del retraso PCIe;
  • el estado de cpuset permanece coherente durante cambios del ciclo de vida de CPU y cgroups;
  • Open vSwitch mantiene separado el trabajo de volcado de flujos de una acumulación ilimitada de softIRQ;
  • los anillos io_uring conservan una configuración predecible y una contabilidad de memoria precisa;
  • las rutas AF_PACKET, Virtio, GSO, BIG TCP, XDP y TCP zero-copy reciben una gestión más sólida de búferes y cabeceras;
  • la invalidación TLB de AMD y el mapeo MMIO de IOMMU reciben protección específica del hardware.

En conjunto, estos cambios proporcionan una base más predecible y medible para HFT, datos de mercado, puertas de enlace de ejecución, redes en la nube, procesamiento de paquetes e infraestructura con marcas de tiempo de hardware.

HFTKernel 7.2.10

Finalización más rápida de temporizadores, mayor localidad de LLC y redes zero-copy más fiables

Base upstream: Linux 7.2.10. Cambios desde Linux 7.2.9. Fecha de publicación: 11 de octubre de 2026.

Finalización más rápida de temporizadores de alta resolución

La ruta de retorno de temporizadores de alta resolución ahora borra TIF_HRTIMER_REARM utilizando la máscara de bits correcta.

Esto mantiene visible para el bucle de retorno al espacio de usuario el trabajo de tareas encolado desde una función de retorno de hrtimer. Las aplicaciones que sondean un anillo de finalización io_uring reciben las finalizaciones de temporizadores con prontitud en lugar de esperar una llamada al sistema, interrupción o replanificación posterior.

En la configuración upstream de QEMU con 2 vCPU y HZ=1000, la mediana del retraso de finalización de tiempos de espera mejoró de 30 ms a 70 µs.

Para HFTKernel, esto refuerza las máquinas de estado controladas por temporizadores, la gestión de tiempos de espera, la E/S asíncrona, la supervisión de conexiones y otras rutas de control sensibles a la latency.

Planificación consciente de la caché más sólida

Linux 7.2.10 incluye un conjunto coordinado de mejoras del planificador consciente de la caché.

Los hilos del kernel se excluyen de la contabilidad de grupos de caché del espacio de usuario, lo que impide que hereden estadísticas de caché de las aplicaciones.

El acceso a los grupos de caché en la ruta crítica del planificador ahora pasa directamente por task_struct, con una referencia independiente para cada tarea. Esto separa la vida útil del grupo de caché del planificador de la sustitución de mm_struct durante fork, exec y exit.

El balanceo activo de carga conserva la política migrate_llc_task, por lo que selecciona una tarea que realmente prefiere la LLC de destino en lugar de alejar otra tarea de su dominio de caché preferido.

La contabilidad de tareas ejecutables también sigue el conjunto exacto de tareas aptas para migración, incluidas las transiciones de extracción diferida de la cola.

En procesadores asimétricos e híbridos, la capacidad del planificador tiene prioridad cuando mover una tarea a su LLC preferida la situaría en una CPU demasiado pequeña para la carga de trabajo.

HFTKernel sigue utilizando afinidad explícita para los hilos críticos de trading. Estas mejoras del planificador refuerzan los servicios de apoyo, los componentes de supervisión, los procesos del plano de control y otras cargas que siguen gestionadas por el planificador.

Recepción zero-copy de io_uring más determinista

RECV_ZC multishot ahora registra cuándo una pasada de recepción se detiene porque se agota un recurso local.

Si se avanzó parcialmente, la solicitud vuelve a encolarse. La siguiente pasada continúa el procesamiento o devuelve una finalización de error explícita que la aplicación puede utilizar para rearmar la operación.

Esto sustituye un estado inactivo implícito por una transición determinista y observable. Los datos TCP no leídos ya no esperan un evento de socket futuro no relacionado antes de que se reanude el procesamiento de recepción.

Para HFTKernel, esto refuerza la ingesta zero-copy de datos de mercado, el procesamiento TCP de alta frecuencia y las aplicaciones de red basadas en io_uring.

Flujos fiables de marcas de tiempo TX de io_uring

Las solicitudes multishot SOCKET_URING_OP_TX_TIMESTAMP ahora terminan con una finalización visible ENOBUFS cuando la cola de finalización no tiene espacio para otro registro de marca de tiempo.

La CQE terminal llega al espacio de usuario mediante la ruta de desbordamiento. Las marcas de tiempo ya retenidas en la cola de errores del socket se entregan cuando la aplicación rearma la solicitud.

Esto proporciona a los consumidores de marcas de tiempo un ciclo de vida claro:

  1. Recibir las finalizaciones de marcas de tiempo.
  2. Detectar la saturación de la cola de finalización.
  3. Vaciar la cola.
  4. Rearmar la solicitud.
  5. Continuar con las marcas de tiempo retenidas.

El resultado es una ruta más explícita y manejable de marcas de tiempo de transmisión de hardware.

Redes Google GVE DQO más sólidas

El driver Google Virtual Ethernet DQO ahora trata gso_type como una máscara de bits al preparar paquetes TSO.

Los paquetes TSO procedentes de TUN/TAP, sockets de paquetes y máquinas virtuales suelen incluir indicadores como SKB_GSO_DODGY, SKB_GSO_TCP_ECN o SKB_GSO_TCP_FIXEDID. Estos paquetes ahora se aceptan cuando su tipo de segmentación TCP subyacente es compatible.

En una prueba upstream con una instancia GCE n4 DQO-QPL y un huésped Cloud Hypervisor, una carga de 64 MB desde el huésped mejoró de agotar un tiempo de espera de 60 segundos a aproximadamente 0.9 MB/s a completarse en 0.19 segundos. El contador tx_dropped del dispositivo permaneció estable tras el cambio.

Esto refuerza la virtualización anidada, los dispositivos de red en la nube, las puertas de enlace virtualizadas y las cargas de huéspedes que utilizan Google GVE DQO.

Estado de RTT TCP más preciso

TCP ahora actualiza TS.Recent cuando un ACK anterior aceptado también transporta datos nuevos.

Esto es importante para conexiones bidireccionales de larga duración, en las que el reordenamiento de paquetes puede entregar datos útiles junto con un acuse de recibo anterior a otro ya procesado.

El receptor ahora devuelve la marca de tiempo del paquete que completó el hueco de recepción. Por lo tanto, el emisor calcula el RTT a partir del intercambio actual de paquetes en lugar de incorporar un intervalo largo de inactividad.

En el escenario upstream con 300 segundos de inactividad, reordenamiento controlado y retransmisión, el RTT suavizado del emisor cambió de 37.5 segundos a 15.5 ms.

Para HFTKernel, esto favorece un comportamiento más estable en conexiones persistentes TCP, TLS, WebSocket, de datos de mercado y de ejecución.

Liberación de memoria basada en RCU más limpia

El asignador slab ya no activa kswapd al asignar almacenamiento interno desde __kfree_rcu_sheaf().

kfree_rcu() puede ejecutarse mientras el planificador mantiene pi_lock. Eliminar __GFP_KSWAPD_RECLAIM de esta ruta evita introducir una activación de recuperación que pueda volver al mismo bloqueo del planificador.

La gestión actualizada de sheaf también aprovecha mejor el almacenamiento local de reserva cuando la espera activa no está disponible.

Para HFTKernel, esto elimina trabajo innecesario en segundo plano de una ruta de gestión de memoria sensible al planificador y refuerza la liberación RCU por lotes.

Gestión más sólida del ciclo de vida de futex

El cambio de tamaño del hash privado de futex ahora publica el nuevo puntero del hash antes de registrar el estado del período de gracia RCU asociado.

Los lectores del hash anterior permanecen protegidos hasta que se completa el período de gracia correcto.

Esto refuerza la infraestructura de sincronización de aplicaciones multihilo que utilizan mutex basados en futex, variables de condición y coordinación en tiempo de ejecución.

Limpieza limitada de objetos BPF

Los objetos de memoria BPF añadidos mientras un período de gracia Tasks Trace RCU ya está activo ahora desencadenan otro ciclo de limpieza.

Los objetos ya no permanecen indefinidamente en free_by_rcu_ttrace, y la creación y destrucción repetidas de mapas ya no provocan retención ilimitada de objetos ni acumulación de trabajadores de limpieza.

Para HFTKernel, esto mejora el ciclo de vida de la observabilidad, el trazado, las políticas y la instrumentación de red basados en BPF.

Anillos TX de AF_PACKET más seguros

AF_PACKET ahora detiene un envío bloqueante PACKET_TX_RING antes de que su recuento positivo acumulado de bytes supere INT_MAX.

La trama restante queda pendiente para la siguiente llamada de envío, lo que conserva el avance y un resultado positivo válido incluso cuando el espacio de usuario recicla continuamente las posiciones completadas del anillo.

Esto refuerza las cargas de larga duración de reproducción de paquetes, generación de tráfico, pruebas de red y calificación de datos de mercado.

Reciclaje de page-pool más fiable

El reciclaje masivo de page-pool actualiza sus estadísticas mientras el bloqueo del productor todavía protege el conjunto.

Los últimos búferes de red en curso y el desmontaje del conjunto permanecen coordinados incluso cuando CONFIG_PAGE_POOL_STATS está activado.

Esto permite un reciclaje fiable de búferes de red de alta frecuencia y una observabilidad confiable de page-pool.

Mejor configuración de marcas de tiempo de hardware

Las operaciones netlink TSCONFIG_GET y TSCONFIG_SET de ethtool ahora llegan a dispositivos cuyo sellado de tiempo de hardware lo proporciona íntegramente el PHY.

La interfaz netlink ahora está alineada con el comportamiento ioctl establecido para proveedores de marcas de tiempo basados en PHY.

Esto refuerza la configuración y la detección del sellado de tiempo de hardware en las arquitecturas de red compatibles.

Desmontaje más limpio de marcas de tiempo AF_XDP de mlx5

El driver mlx5 ahora gestiona la finalización de descriptores TX de AF_XDP sin una CQE durante el desmontaje de colas.

Cuando no hay una CQE disponible, la función auxiliar de marcas de tiempo devuelve un resultado neutro en lugar de desreferenciar una entrada de finalización no disponible.

Esto mejora el ciclo de vida de las colas AF_XDP que utilizan marcas de tiempo TX y descarga de checksum.

Observabilidad fprobe con menor sobrecarga

Los manejadores fprobe ahora comprueban si RCU está observando antes de operar en estados inactivos o de quiescencia extendida de nohz_full.

La ruta de activación de la sonda utiliza rcu_sched_notrace, lo que elimina el trabajo anterior de rcu_read_lock() y lockdep en cada activación, conservando una sincronización segura de los períodos de gracia.

Para HFTKernel, esto alinea mejor la instrumentación del kernel con las configuraciones de CPU aisladas y sin tick.

Transiciones de estado KVM SVM más sólidas

En hosts AMD KVM, el estado pendiente de vaciado TLB se conserva cuando VMRUN no se completa correctamente.

Los requisitos de vaciado de todos los ASID se registran por CPU física, coincidiendo con el alcance de la reutilización de ASID. Los campos de control se actualizan solo después de una transición exitosa.

Esto refuerza la gestión del estado TLB en hosts de virtualización AMD.

Recorridos más seguros de la MMU sombra de KVM

KVM ahora detiene inmediatamente el recorrido de tablas de páginas sombra cuando la raíz actual no es válida o es una raíz ficticia respaldada por la página cero.

Esto mantiene la creación simultánea de memslots y la gestión de fallos de página anidados en una ruta MMU válida.

Orden correcto del mantenimiento de caché SEV

Durante la migración SEV dentro de un host, el mantenimiento de caché de la máquina virtual de origen ahora se completa antes de que esta pierda su estado SEV activo.

La memoria no puede volver al asignador del host antes de que el estado cifrado de la caché del huésped se haya escrito de vuelta en el orden requerido.

Esto refuerza la gestión del ciclo de vida de máquinas virtuales confidenciales en el perfil HFTKernel KVM Host.

PCI AtomicOps para dispositivos passthrough

Un huésped passthrough ahora reconoce las PCI AtomicOps que el hipervisor ya ha activado en un dispositivo final, incluso cuando el Root Port ascendente está oculto en la topología del huésped.

Esto permite que aceleradores y dispositivos de red compatibles utilicen su ruta de operaciones atómicas en ESXi, Hyper-V y entornos passthrough similares.

Menos trabajo en AES-GCM de x86

La implementación AES-GCM de x86 ya no trata el segmento AAD final como un segmento intermedio.

Esto elimina una copia adicional a un búfer temporal y una llamada extra a ensamblador de la ruta del segmento final.

La mejora es útil para infraestructura que utiliza la API criptográfica del kernel para redes cifradas, almacenamiento o servicios de seguridad.

Herramientas de medición incluidas

HFTKernel 7.2.10 incluye:

cpujitter

Para intervalos sin ejecución de CPU, interferencias del planificador, actividad de IRQ y softIRQ y colas de latency.

memjitter

Para asignación, first-touch, conjunto de trabajo y comportamiento bajo presión de memoria.

irqjitter

Para analizar la actividad de IRQ y softIRQ.

Las métricas de aplicación, la telemetría de finalización de temporizadores, el estado de finalización de io_uring, las estadísticas TCP, las marcas de tiempo de hardware, los contadores de red y los eventos KVM completan la capa de medición.

Resultado de HFTKernel 7.2.10

HFTKernel 7.2.10 refuerza el sistema operativo en torno a las aplicaciones sensibles a la latency:

  • las finalizaciones de temporizadores de alta resolución llegan al espacio de usuario con prontitud;
  • las cargas gestionadas por el planificador conservan una mayor localidad de LLC;
  • las recepciones zero-copy exponen explícitamente los límites de recursos;
  • los flujos de marcas de tiempo de transmisión se recuperan limpiamente de la saturación de CQ;
  • Google GVE DQO gestiona eficientemente el tráfico TSO virtualizado;
  • TCP mantiene un estado RTT preciso tras largos períodos de inactividad;
  • la liberación RCU genera menos actividad de recuperación en segundo plano;
  • los ciclos de vida de futex y BPF permanecen limitados y coordinados;
  • las rutas AF_PACKET y page-pool mantienen un avance fiable;
  • el sellado de tiempo de hardware funciona con proveedores basados en PHY;
  • fprobe se integra de forma más limpia con nohz_full;
  • las rutas KVM, SEV y PCI passthrough reciben una gestión de estado más sólida.

En conjunto, estos cambios hacen que las plataformas en la nube, bare-metal, de procesamiento de paquetes y de virtualización sean más predecibles, medibles y controlables.

HFTKernel 7.2.9

Aislamiento de CPU más sólido, anillos de paquetes más seguros y rutas de virtualización más limpias

Base upstream: Linux 7.2.9. Cambios desde Linux 7.2.8. Fecha de publicación: 3 de octubre de 2026.

Particionamiento de CPU más fiable

La gestión cpuset de cgroup v2 ahora rechaza configuraciones en las que una partición raíz remota intenta utilizar CPU ya asignadas a una partición local antecesora.

Esto conserva la propiedad exclusiva de CPU y refuerza la separación de cargas de trading, red, mantenimiento y servicios.

Para HFTKernel, el estado de las particiones de CPU permanece coherente durante la creación, reconfiguración y eliminación de servicios.

Finalización zero-copy de AF_PACKET más segura

PACKET_TX_RING ahora utiliza el mecanismo estándar de finalización zero-copy.

Una posición del anillo queda disponible solo cuando todas las referencias a los datos de su paquete se han liberado o copiado. Esto mantiene explícita la propiedad de los búferes de paquetes durante todo el ciclo de vida TX.

El cambio refuerza:

  • la reproducción de datos de mercado;
  • los generadores de tráfico;
  • las sondas de latency basadas en paquetes;
  • los entornos de prueba AF_PACKET;
  • las cargas de calificación de red.

Avance fiable de los anillos virtio-net

Virtio-net ahora libera los fragmentos zero-copy correspondientes antes de dejar los paquetes sin propietario cuando NAPI TX está desactivado.

Esto mantiene en movimiento las configuraciones limitadas de PACKET_TX_RING y devuelve las posiciones completadas al emisor sin esperar una transmisión adicional.

La misma mejora del ciclo de vida favorece las rutas de virtualización anidada que utilizan vhost-net y virtio-net.

Comportamiento limitado de los temporizadores TPACKET_V3

TPACKET_V3 ahora calcula los tiempos de espera de retirada de bloques con aritmética que admite de forma segura bloques grandes de anillos de paquetes.

Esto evita que un desbordamiento del temporizador cree un temporizador de alta resolución que se reinicie continuamente en contexto softIRQ.

Para los sistemas de captura y reproducción, el resultado es un comportamiento controlado de los temporizadores y protección frente a un anillo de paquetes que consuma toda una CPU mediante procesamiento continuo de softIRQ.

Gestión de transmisión más sólida en Google GVE DQO

El driver GVE DQO ahora valida antes la geometría TSO y GSO en la ruta de transmisión.

Los paquetes con un MSS inferior al mínimo admitido por el hardware pasan a la ruta de software adecuada antes de llegar al dispositivo. Esto evita descartes silenciosos del hardware y las retransmisiones que generan.

El procesamiento UDP GSO también utiliza la longitud correcta de la cabecera de transporte al calcular los límites de segmentos y los requisitos de descriptores.

Estos cambios mejoran la uniformidad de la transmisión de red de Google Cloud para cargas TCP y UDP que utilizan GVE DQO.

Gestión HugeTLB más resistente

El movimiento de tablas de páginas HugeTLB durante mremap() ahora conserva la relación correcta de direcciones entre los mapeos de origen y destino.

Las páginas gigantes sin compatibilidad con disolución en tiempo de ejecución permanecen en su ruta de ciclo de vida compatible, conservando la coherencia de la lista libre y del estado de las páginas.

Estos cambios refuerzan los conjuntos de trabajo HugeTLB reservados explícitamente, incluidas las configuraciones que utilizan páginas de 1 GiB en sistemas x86 compatibles.

Ordenación más sólida de memoria anónima

La inicialización de VMA anónimas ahora publica el puntero anon_vma con el orden de memoria requerido.

Todos los campos inicializados se hacen visibles antes de que otra CPU pueda utilizar la nueva estructura.

Esto refuerza las rutas simultáneas de fallos de página, first-touch, mprotect() y VMA adyacentes, especialmente en arquitecturas con ordenamiento débil como ARM64.

Desmontaje de escritura diferida de cgroups más predecible

La limpieza de escritura diferida de cgroups de memoria fuera de línea ahora informa de estados de quiescencia Tasks-RCU durante operaciones largas de vaciado.

La ruta afectada de vaciado de inodos también avanza linealmente al continuar desde la posición de escaneo anterior en lugar de recorrer repetidamente el mismo prefijo de la lista.

Esto permite que BPF, ftrace y otros usuarios de Tasks-RCU sigan avanzando durante operaciones grandes de eliminación de servicios o contenedores.

Control DPLL más preciso

La sincronización de referencias DPLL ahora utiliza una búsqueda exacta de ID de pin.

Una solicitud del espacio de usuario se aplica únicamente al pin de referencia seleccionado y no puede redirigirse a una entrada vecina con un identificador diferente.

Esto refuerza el control determinista de la topología de fuentes de reloj en hardware de temporización compatible.

Restauración del sellado de tiempo de hardware basado en PHY

Los dispositivos de red que proporcionan marcas de tiempo de hardware mediante el PHY ya no dependen de funciones de retorno de marcas de tiempo del driver MAC que no corresponden a su arquitectura.

La configuración PTP llega directamente a la ruta de marcas de tiempo del PHY, conservando el funcionamiento de las marcas de tiempo de hardware en dispositivos compatibles.

Inicialización de AWS ENA más limpia

La ruta de limpieza de detección de AWS ENA ahora libera los recursos de lectura PHC y MMIO en el orden correcto.

El registro del reloj PTP, el estado PHC, los recursos MMIO respaldados por DMA y los datos privados del driver permanecen alineados durante la inicialización parcial y la limpieza del dispositivo.

Esto refuerza la gestión del ciclo de vida de ENA en el perfil HFTKernel Cloud.

Menor sobrecarga de transiciones KVM

Las operaciones de virtualización anidada ahora utilizan llamadas estáticas en varias rutas L2 activas.

En hosts Intel compatibles, KVM también evita cambiar la configuración de DS_AREA y PEBS cuando PEBS del huésped está inactivo. La ruta afectada elimina dos o cuatro escrituras MSR innecesarias por recorrido completo de VMX.

Los procesadores con aislamiento PEBS evitan tres escrituras MSR adicionales relacionadas con PEBS en cada transición VMX.

Estas mejoras hacen que HFTKernel sea más eficiente como host KVM para cargas virtualizadas anidadas y sensibles al rendimiento.

Mediciones Intel PEBS más confiables

Intel PEBS recibe una clasificación más precisa de cargas y almacenamientos, restricciones de fuentes de datos y decodificación de estados de snoop en las microarquitecturas recientes compatibles.

Esto mejora el análisis asistido por hardware de:

  • la latency de memoria;
  • el comportamiento de la caché;
  • los bloqueos de cargas y almacenamientos;
  • los efectos de NUMA;
  • los retrasos poco frecuentes de ejecución.

El resultado es una capa de observabilidad más fiable para la ingeniería de rendimiento y las investigaciones de tail latency.

Direccionamiento de colas XPS más uniforme

XPS ahora rechaza los identificadores de clases de tráfico fuera de la configuración activa de colas.

Esto mantiene coherentes los mapas de direccionamiento de colas tras cambios de clases de tráfico y conserva metadatos válidos de ubicación de CPU a colas TX.

Herramientas de medición incluidas

Cada conjunto de paquetes HFTKernel incluye:

cpujitter

Para intervalos sin ejecución de CPU, interferencias de planificación, actividad de IRQ y softIRQ y colas de latency.

memjitter

Para asignación, first-touch, conjunto de trabajo y comportamiento bajo presión de memoria.

irqjitter

Para analizar la actividad de IRQ y softIRQ.

Las herramientas se entregan en paquetes nativos del sistema operativo alineados con la versión de HFTKernel y el perfil de plataforma.

Resultado de HFTKernel 7.2.9

HFTKernel 7.2.9 refuerza el sistema en torno a las aplicaciones sensibles a la latency:

  • la propiedad exclusiva de CPU permanece coherente;
  • la propiedad y la finalización de los anillos de paquetes son explícitas;
  • las cargas de captura conservan un comportamiento limitado de temporizadores;
  • las transiciones de HugeTLB y memoria anónima son más robustas;
  • la eliminación de cgroups genera menos interferencias prolongadas en segundo plano;
  • la configuración PTP y DPLL se vuelve más precisa;
  • la gestión del ciclo de vida de ENA es más limpia;
  • las transiciones KVM realizan menos trabajo innecesario;
  • las mediciones PEBS proporcionan datos de rendimiento más confiables.

En conjunto, estos cambios hacen que el host sea más predecible, medible y controlable en implementaciones en la nube, bare-metal, de captura de paquetes y de virtualización.

HFTKernel 7.2.8

Recuperación de memoria más limpia, captura de paquetes más sólida y mejores diagnósticos de tiempo

Base upstream: Linux 7.2.8. Cambios desde 7.2.7. Fecha de publicación upstream: 25 de septiembre de 2026.

Recuperación de memoria más predecible

Linux 7.2.8 mejora la separación entre los reductores globales del sistema de archivos y la recuperación por cgroup de memoria.

Los puntos de extensión de objetos en caché que no reconocen memcg se mantienen en la ruta de recuperación global, mientras que los puntos de extensión del sistema de archivos que sí reconocen memcg pueden seguir participando en la recuperación por memcg. Esto evita trabajo global repetido entre numerosos pares de memcg y nodo NUMA, a la vez que restaura un comportamiento útil de recuperación por memcg para rutas como la recuperación de slabs de inodos XFS.

Para HFTKernel, esto favorece un aislamiento más limpio de los servicios y menos ruido de fondo en sistemas que utilizan contenedores, cgroup v2 o límites de memoria por servicio.

Contabilidad de memoria bloqueada más precisa

La versión corrige la contabilidad de locked_vm para MREMAP_DONTUNMAP cuando se remapean VMA bloqueadas sin desmapear el origen.

También hace más seguras las actualizaciones de NR_MLOCK en rutas donde munlock(), la E/S directa, los folios de caché de páginas y la finalización de IRQ pueden interactuar en la misma CPU.

Para HFTKernel, esto refuerza la contabilidad de memoria de los conjuntos de trabajo fijados y bloqueados, habituales en aplicaciones sensibles a la latency y cargas de medición.

Comportamiento más claro de mapeos enormes para memoria gestionada por drivers

Los mapeos PFNMAP enormes ahora omiten los parámetros genéricos ajustables de THP cuando estos no son aplicables. El registro de cambios upstream señala que estos mapeos no son memoria THP recuperable normal y que una gestión incorrecta provocó degradación real del rendimiento en las configuraciones afectadas.

Para HFTKernel, esto es relevante para mapeos especializados de dispositivos, mapeos de tipo DAX y memoria gestionada por drivers, no para la política THP predeterminada de aplicaciones.

Rutas de captura y reproducción AF_PACKET más sólidas

AF_PACKET recibe dos correcciones prácticas para el procesamiento de paquetes basado en anillos.

TPACKET_V3 ahora conserva el tamaño validado del área privada sin truncarlo a un campo interno más pequeño. Esto impide que los registros de paquetes se solapen con los metadatos privados del anillo.

La ruta de error de la cabecera VNET ahora borra correctamente la propiedad RX, lo que evita que un paquete fallido deje una posición del anillo no disponible para el siguiente paquete válido.

Para HFTKernel, esto resulta directamente útil para captura de datos de mercado, reproducción de paquetes, sondas de latency, generadores de tráfico y entornos de pruebas de red basados en AF_PACKET.

Comportamiento más robusto de TCP y marcas de tiempo de sockets

TCP ahora excluye los ACK excesivamente antiguos de la ruta rápida y los envía por la ruta normal de validación. Esto mantiene alineadas las actualizaciones del estado de la conexión TCP con la validación de ACK.

La configuración de marcas de tiempo de sockets ahora adquiere el bloqueo del socket al cambiar indicadores relacionados con marcas de tiempo, conservando el caso común sin bloqueo. Esto refuerza la corrección del ciclo de vida de las marcas de tiempo en sistemas con uso intensivo de sockets.

Para HFTKernel, estos cambios mejoran la corrección de las conexiones de larga duración TCP, TLS, WebSocket, del plano de control y de observabilidad.

Mejores diagnósticos PTP y PHC

En MACB/GEM, las marcas de tiempo del sistema devueltas alrededor de una lectura PHC ahora delimitan correctamente la lectura del registro de hardware. El registro de cambios upstream informa de que el intervalo anterior podía ser irrealmente corto frente a la lectura ordenada real del registro, sesgando la sincronización basada en el punto medio.

En stmmac, phc_index ahora permanece sin establecer cuando el sellado de tiempo de hardware es compatible pero aún no se ha registrado ningún reloj PTP. Esto evita informar de un índice PHC aparentemente válido para el reloj equivocado.

Para HFTKernel, esto mejora la integridad de los diagnósticos de tiempo y reduce el riesgo de detección engañosa de PHC en configuraciones de NIC compatibles.

Gestión más sólida del ciclo de vida de RDMA, EFA e IRQ

El driver AWS EFA ahora mantiene activos los recursos EQ y las colas de administración mientras sus manejadores IRQ están registrados. El orden de inicialización y desmontaje está alineado con los recursos a los que se accede desde el contexto de interrupción.

Las rutas RDMA también reciben mejoras de ciclo de vida y ordenación, incluidas barreras locales para el registro de memoria Intel irdma y gestión de XArray segura frente a IRQ para las tablas QP y CQ de erdma.

Para HFTKernel Hardware y los entornos vinculados a la nube, esto refuerza la fiabilidad del ciclo de vida RDMA controlado por interrupciones.

Diagnósticos y observabilidad más fiables

perf mejora la limpieza de eventos PMU mediados de huéspedes cuando se descargan módulos mientras hay conexiones perf activas.

Los metadatos de grupos netlink ahora se actualizan con publicación segura para RCU y liberación diferida para lectores sin bloqueo.

drop_monitor recibe una gestión más segura del desmontaje de tracepoints, punteros por CPU y temporizadores, incluido timer_shutdown_sync() para impedir el rearme durante el desmontaje.

Para HFTKernel, estos cambios refuerzan la fiabilidad de las sesiones de diagnóstico utilizadas para investigar descartes de paquetes, ruido de planificación y eventos poco frecuentes de tail latency.

Herramientas de medición incluidas

cpujitter

Mide jitter de ejecución de CPU, interferencias de interrupciones y colas de latency.

memjitter

Mide latency de asignación, comportamiento de first-touch, conjuntos de trabajo bloqueados y comportamiento de la memoria bajo carga.

Utilice ambas herramientas junto con mediciones de la aplicación.

Valide la actualización mediante pruebas A/B controladas con la misma cadena de herramientas, configuración del kernel, ubicación de CPU e IRQ y carga de trabajo. Incluya pruebas de captura de paquetes, diagnósticos de tiempo y ciclo de vida para las funciones utilizadas en su implementación.

HFTKernel 7.2.7

Aislamiento de CPU más uniforme, rutas de control más ligeras y mediciones más fiables

Base upstream: Linux 7.2.7. Cambios desde 7.2.6. Fecha de publicación upstream: 21 de septiembre de 2026.

Aislamiento de CPU y contabilidad del planificador

La gestión cpuset de cgroup v2 conserva las CPU aisladas en el arranque en su contabilidad de aislamiento cuando se libera una partición aislada o cambia su estado. Esto mantiene cpuset.cpus.isolated alineado con el aislamiento de dominios del arranque y permite una automatización fiable de la ubicación durante los ciclos de vida de los servicios.

EEVDF ahora mantiene de forma coherente los metadatos del tiempo de ejecución virtual mínimo y de los intervalos mínimo y máximo durante las actualizaciones del árbol de la cola de ejecución, incluida la inicialización de max_slice antes del encolado. Estos ajustes favorecen la planificación de clase justa para hilos de aplicaciones y mantenimiento.

La contabilidad del tiempo medio de inactividad se actualiza solo cuando hay una marca de tiempo de inactividad válida, lo que mantiene la contabilidad del planificador vinculada a intervalos reales de inactividad.

Menos trabajo innecesario de migración RT y deadline

Los planificadores RT y deadline omiten las tareas con migración desactivada al seleccionar una tarea para enviar a otra CPU. Pueden seleccionar una candidata movible o regresar antes, evitando activaciones repetidas de CPU-stopper que no pueden avanzar. Esta mejora se aplica a las rutas de planificación RT/DL correspondientes.

Trabajo diferido de consola más eficiente

La salida diferida de consola nbcon utiliza trabajo IRQ diferido. Cuando el tick local del planificador está activo, el trabajo puede atenderse en ese tick en lugar de solicitar otra interrupción inmediata. Una CPU con el tick detenido todavía puede necesitar una interrupción, lo que conserva el avance en configuraciones sin tick.

Asignación de paquetes de control TCP más predecible

Los paquetes de restablecimiento activo de TCP utilizan indicadores de asignación atómica, evitando la recuperación directa de memoria mientras se mantiene el bloqueo de un socket. Esto mantiene ligera la asignación de restablecimientos activos en las rutas afectadas de cierre y desconexión de conexiones, incluido el desmontaje de sockets utilizado por las pilas de almacenamiento en red.

Contabilidad más precisa de búferes de recepción io_uring

Las operaciones de recepción con MSG_TRUNC contabilizan los bytes realmente copiados a los búferes proporcionados, conservando el resultado de longitud completa solicitado. El consumo incremental del búfer permanece alineado con la región disponible, lo que permite una reutilización fiable de búferes en aplicaciones que utilizan este modo.

Diagnósticos uniformes de marcas de tiempo de hardware

El driver mlx5 conserva las estadísticas acumuladas de marcas de tiempo de hardware a través de cambios en el número de canales, las clases de tráfico y los modos de marcas de tiempo DMA o de puerto. Las estadísticas persistentes también permiten que la ruta de lectura evite el mutex de estado anterior. Esto refuerza la telemetría de marcas de tiempo durante la reconfiguración de NIC.

Ciclos de vida de drivers de red más fiables

Azure MANA: la reconfiguración XDP conserva el estado válido anterior del programa cuando no puede completarse la preasignación de búferes de recepción.

Intel IDPF: el trabajo de moderación dinámica de interrupciones se detiene antes de liberar los vectores de cola. Las cabeceras VLAN también se tienen en cuenta al analizar paquetes de recepción agrupados por hardware.

GRO y reenvío: los paquetes TCP agregados por hardware se mantienen compatibles con el procesamiento GRO de fraglist y la segmentación posterior. Esto es relevante para configuraciones de reenvío de Linux que combinan estas descargas.

Observabilidad del rendimiento más confiable

El muestreo Intel PEBS coordina el apagado de PMU y el vaciado de búferes compartidos para evitar operaciones de vaciado superpuestas. Esto mejora la fiabilidad del muestreo de rendimiento asistido por hardware en sistemas Intel compatibles.

Los histogramas de trazado conservan los modificadores de porcentaje y gráfico para los valores. La configuración del histograma selecciona y valida el reloj de traza antes de publicar el disparador, lo que refuerza una configuración repetible de las sesiones de diagnóstico.

Gestión más sólida del ciclo de vida de memoria y E/S

SLUB coordina las devoluciones a la lista libre con las actualizaciones de la lista parcial bajo el bloqueo de nodo apropiado, manteniendo un estado coherente del asignador durante operaciones simultáneas.

En x86, las tablas de páginas creadas al dividir mapeos grandes del kernel utilizan la ruta estándar de asignación de tablas de páginas del kernel. Esto mantiene coordinadas la construcción, la contabilidad, la liberación diferida y la invalidación IOTLB.

Para las escrituras asíncronas de io_uring, la contabilidad de escrituras del sistema de archivos se completa desde la función de retorno real de finalización de E/S en lugar de esperar al procesamiento posterior del trabajo de tareas. Esto mejora la coordinación con los flujos de congelación y apagado del sistema de archivos.

Herramientas de medición incluidas

cpujitter

Mide jitter de ejecución de CPU y el comportamiento de las colas de latency.

memjitter

Mide asignación de memoria, first-touch, conjunto de trabajo y comportamiento bajo presión de memoria.

Utilice ambas herramientas junto con mediciones de la aplicación.

Valide la actualización mediante pruebas A/B controladas con la misma cadena de herramientas, configuración del kernel, ubicación de CPU e IRQ y carga de trabajo. Incluya mediciones de estado estable y pruebas del ciclo de vida de las funciones utilizadas en su implementación.

HFTKernel 7.2.6

Gestión del tiempo más uniforme, gestión de recursos más ligera y ciclos de vida de red más sólidos

Base upstream: Linux 7.2.6. Cambios desde 7.2.5. Fecha de publicación upstream: 14 de septiembre de 2026.

Gestión del tiempo del sistema más uniforme

La gestión del tiempo ahora contabiliza en ntp_error el ajuste de marcas de tiempo que preserva la continuidad cuando cambia el multiplicador de frecuencia del clocksource. Esto mantiene el cálculo del error de disciplina del reloj alineado con el ajuste, especialmente durante correcciones mayores de frecuencia procedentes de una referencia externa.

Gestión más eficiente de la ubicación de CPU y memoria

En cgroup v2, la gestión de conexión en caliente de cpuset evita actualizaciones redundantes de tareas cuando las máscaras efectivas de CPU y nodos NUMA se heredan de un padre. Esto reduce el trabajo innecesario de gestión de ubicación durante las actualizaciones de topología afectadas.

Menos trabajo innecesario de recuperación de memoria

Cuando se elimina un cgroup de memoria, la contabilidad de tamaño LRU se traslada a su padre en lugar de quedar duplicada en el hijo. La recuperación LRU tradicional evita recorrer repetidamente listas vacías, mientras que MGLRU se beneficia de una contabilidad más precisa del presupuesto de nodos sombra. Esto mejora la contabilidad de recursos durante reinicios de servicios, renovación de contenedores y presión de memoria.

Ritmo de envío de paquetes FQ más uniforme

FQ ahora compensa únicamente la deriva positiva de planificación al calcular los retrasos del ritmo de envío. Con la descarga del control de ritmo activada, la extracción temprana de la cola ya no acorta el siguiente intervalo en las rutas afectadas con límite de velocidad y sin EDT. La validación en ejecución de quantum e initial_quantum también mantiene la configuración FQ dentro de los límites admitidos.

Gestión más fiable de AF_XDP y búferes DMA

El driver virtio-net ahora cambia el tamaño de su matriz de búferes AF_XDP junto con el anillo RX. Esto mantiene la capacidad de los búferes alineada con la configuración de colas cuando hay una aplicación AF_XDP conectada.

El código compartido de page-pool también coordina con más cuidado el desmapeo DMA y la limpieza de metadatos de búferes durante el desmontaje y la devolución simultánea de páginas, lo que refuerza la gestión del ciclo de vida de los búferes de red.

Configuración de hardware y redes virtuales más sólida

Intel E810 PTP: el driver ICE puede recurrir a la cola de banda lateral cuando la interfaz del temporizador PHY de baja latency agota el tiempo de espera. Esto mejora la reinicialización PTP tras actualizaciones de firmware y restablecimientos relacionados, conservando la ruta normal de baja latency.

Azure MANA: la asignación MSI-X respeta la capacidad real de la tabla de vectores del dispositivo, mejorando la configuración de recursos de interrupción en máquinas virtuales muy grandes.

NVIDIA mlx5: los cambios de estado de vport en E-Switch conservan la velocidad TX máxima configurada, manteniendo coherente la configuración de puertos virtuales durante las transiciones de estado.

Diagnósticos de latency más confiables

Los diagnósticos de temporizadores de alta resolución ahora cuentan los reintentos de interrupción que se recuperan correctamente, mejorando la precisión de nr_retries en /proc/timer_list.

Intel Processor Trace recibe una gestión más fiable de detención e inicio. La herramienta perf sched actualizada requiere muestras de traza pertinentes antes de presentar una tabla de latency, haciendo explícitos los registros incompletos.

Contabilidad de E/S más completa durante la conexión en caliente de CPU

Las estadísticas de la capa de bloques recopilan y restablecen muestras de todas las CPU posibles, incluidas las que se desconectan durante una ventana de muestreo. Esto conserva las muestras pendientes de latency para las rutas de control de E/S que utilizan estas estadísticas.

Herramientas de medición incluidas

cpujitter

Mide jitter de ejecución de CPU, interferencias de interrupciones y colas de latency.

memjitter

Mide latency de asignación, comportamiento de first-touch, conjuntos de trabajo bloqueados y comportamiento de la memoria bajo carga.

HFTKernel 7.2.6 ofrece una gestión del tiempo más uniforme, una gestión de recursos más ligera y ciclos de vida de red más sólidos.

HFTKernel 7.2.5

Memoria, sincronización y diagnósticos de latency más predecibles

Basado en Linux 7.2.5. Cambios respecto a Linux 7.2.4.

Control de HugeTLB y NUMA más fiable

La asignación de páginas gigantes HugeTLB mediante CMA ahora valida el nodo NUMA preferido frente a la máscara de nodos permitidos, recurre a los límites actuales de cpuset cuando no se proporciona una máscara explícita y puede reintentar tras un cambio simultáneo de cpuset. Esto mejora el control de ubicación de búferes grandes preasignados, incluidas las páginas de 1 GiB en x86 cuando se utiliza esta ruta de asignación.

La gestión de la reserva HugeTLB conserva max_huge_pages al liberar páginas excedentes. Las páginas migradas conservan su estado migrable y su pertenencia a la lista activa incluso dentro del mismo nodo NUMA. Los contadores de cgroup se inicializan de forma uniforme independientemente de CONFIG_DEBUG_VM, incluidos los límites ilimitados informados como max.

Sincronización con herencia de prioridad más uniforme

Las funciones auxiliares dedicadas de planificación PI-futex delimitan rt_mutex_wait_proxy_lock() sin llamar a sched_submit_work() en la ruta proxy-lock. Esto mejora la contabilidad de sincronización para aplicaciones que utilizan futex con herencia de prioridad.

En PREEMPT_RT, la finalización de PI-requeue evita una llamada redundante a rcuwait_wake_up() en Q_REQUEUE_PI_LOCKED, manteniendo coherentes el traspaso de bloqueos y las activaciones de hilos en espera. Este segundo cambio es específico de PREEMPT_RT.

Diagnósticos BPF y ftrace más fiables

bpf_get_stackid() protege frente a la apropiación la recopilación de cadenas de llamadas y el acceso al búfer por CPU devuelto. La inicialización simultánea de ftrace_ops se sincroniza, conservando la ruta rápida para objetos inicializados.

Las operaciones de filtros de funciones y las lecturas de filtros/disparadores de eventos mantienen las referencias necesarias a la instancia de traza. Estos cambios refuerzan el análisis automatizado y la investigación de valores atípicos poco frecuentes de latency en sistemas PREEMPT.

Análisis de hardware más preciso

La disponibilidad de AnyThread en Intel PMU sigue la capacidad CPUID correspondiente. El filtrado solo de usuario de Intel LBR comprueba ambas direcciones de bifurcación, manteniendo las muestras dentro del alcance solicitado.

El programa BPF de argumentos ampliados de llamadas al sistema en perf trace utiliza bpf_for, lo que hace más robustas las comprobaciones de terminación de bucles del verificador frente a cambios de Clang. Esta mejora de herramientas requiere una compilación actualizada de perf.

Inicialización única de sockets más limpia

DO_ONCE_SLEEPABLE() difiere la desactivación de claves estáticas a una cola de trabajo del sistema, fuera de los bloqueos mantenidos por el llamador. Esto separa las actualizaciones globales de claves estáticas del bloqueo de sockets en rutas como __inet_hash_connect(). El cambio se aplica a la inicialización única, no al procesamiento por paquete.

Gestión más sólida de memoria y temporizadores KVM

El envejecimiento sin bloqueo de Shadow-MMU reutiliza el valor del mapeo inverso capturado durante la comprobación del bloqueo. Las actualizaciones del bit Accessed de TDP-MMU utilizan LOCK CMPXCHG para mantener la coherencia con cambios simultáneos de SPTE.

Los temporizadores sintéticos Hyper-V emulados por KVM validan las conversiones de 100 nanosegundos y limitan los plazos a KTIME_MAX, manteniendo los vencimientos lejanos en el futuro. Estos cambios se aplican al kernel del host KVM. Para un huésped en la nube, el beneficio correspondiente depende de la actualización del host del proveedor.

Almacenamiento y políticas opcionales de memoria más robustos

NVMe multipath coordina el desmontaje de espacios de nombres con los lectores SRCU. NVMe/TCP comprueba tempranamente los C2HData entrantes frente a la dirección del comando, reforzando las rutas afectadas de almacenamiento en red.

La priorización DAMOS utiliza una suma móvil de accesos para decisiones de esquema más uniformes. Con THP de tmpfs activado, MADV_HUGEPAGE pasa los indicadores VMA actualizados a khugepaged. Estas mejoras se aplican a configuraciones que utilizan los subsistemas y políticas correspondientes.

Herramientas de medición incluidas

cpujitter

Mide jitter de ejecución de CPU, interferencias de interrupciones y colas de latency.

memjitter

Mide latency de asignación, comportamiento de first-touch, conjuntos de trabajo bloqueados y comportamiento de la memoria bajo carga.

Valide la carga de trabajo con una comparación A/B de 7.2.4 y 7.2.5, manteniendo sin cambios la cadena de herramientas, la configuración del kernel, la ubicación de CPU/IRQ y la carga de trabajo.

HFTKernel 7.2.5 refuerza la ubicación de páginas enormes, la sincronización con herencia de prioridad y los diagnósticos de latency, con una gestión más uniforme de memoria y temporizadores para hosts KVM.

HFTKernel 7.2.4

Menos trabajo innecesario del kernel. Infraestructura más predecible.

Basado en Linux 7.2.4. Cambios respecto a Linux 7.2.3.

Fijación de memoria a largo plazo más eficiente

Se ha corregido la contabilidad de referencias GUP de las páginas fijadas. La ruta afectada de fijación de memoria a largo plazo ahora puede evitar vaciados locales y globales innecesarios de los búferes LRU internos.

Para HFTKernel, esto reduce el trabajo innecesario entre CPU durante la preparación de búferes fijados y apoya el objetivo de minimizar el ruido del sistema alrededor de los núcleos dedicados de trading.

Recuperación del sistema de archivos mejor acotada

JBD2 ahora cuenta cada búfer de puntos de control examinado contra el presupuesto de escaneo, incluidos los búferes ocupados. También comprueba si es necesaria una replanificación al omitir búferes ocupados.

Esto limita el trabajo realizado en una sola pasada del reductor y permite liberar con prontitud el bloqueo del diario cuando se solicita una replanificación. En nodos ext4, el cambio resulta útil cuando la actividad del sistema de archivos coincide con presión de memoria.

Gestión de memoria más coordinada

Los bucles de recuperación y migración de páginas ahora informan explícitamente de estados de quiescencia a RCU Tasks. Esto ayuda a que los períodos de gracia correspondientes se completen incluso durante un procesamiento prolongado de memoria en kernels PREEMPT. El cambio de migración es especialmente relevante para hosts KVM que utilizan funciones de retorno de notificadores MMU.

Para las configuraciones que utilizan vm.defrag_mode=1, las asignaciones no movibles se encaminan por la ruta apropiada de recuperación y compactación de pageblocks. La compactación de pageblocks completos también utiliza reglas de selección de memoria más adecuadas, permitiendo que el asignador avance mejor en este modo.

SLUB repone sheaves reutilizables sin consumir las reservas de emergencia pfmemalloc, conservándolas para sus usos previstos en el kernel.

Gestión más uniforme de colas TX de red

La pila de red común mejora la inicialización de trans_start cuando se activan las colas TX. Cada cola afectada recibe el tiempo de referencia correcto del watchdog, lo que hace más fiable la supervisión del estado de colas durante la activación de interfaces.

El driver Broadcom bnxt_en ahora activa el doorbell de los paquetes ya preparados incluso cuando falla la linealización del último paquete de una ráfaga. Se notifica al dispositivo sobre los descriptores TX encolados sin esperar otra llamada de transmisión.

Entrega más fiable de interrupciones PCI en Hyper-V

Durante la desconexión en caliente de CPU, una interrupción PCI MSI pendiente ahora puede reenviarse a su nueva CPU de destino mediante el dominio padre de interrupciones.

Para HFTKernel Cloud en Hyper-V, esto mejora la fiabilidad de los dispositivos PCI cuando cambia el conjunto de vCPU en línea. El cambio aborda específicamente la reasignación de interrupciones cuando una CPU se desconecta.

Menor sobrecarga de E/S del sistema de archivos

Para pequeñas sobrescrituras con búfer en folios grandes que ya están actualizados, el procesamiento de escritura se detiene después del rango solicitado en lugar de recorrer las cabeceras de búfer restantes. Esto reduce el trabajo innecesario de CPU, incluida la ruta de escritura ext4 afectada.

En dm-io, las solicitudes DM_IO_BIO clonan el bio original en lugar de reconstruir el vector de páginas. Se conservan el iterador y la alineación originales, simplificando la gestión de E/S en configuraciones de Device Mapper que utilizan esta ruta.

Diagnósticos de latency y jitter más fiables

La recopilación y la copia de cadenas de llamadas BPF se protegen frente a la apropiación al acceder al búfer compartido por CPU. Esto mejora la fiabilidad de la recopilación de pilas en kernels PREEMPT.

Las lecturas de trace_pipe se sincronizan con el cambio de tamaño de subbúferes de trazado, reforzando la observabilidad de eventos del kernel mientras se reconfigura el trazado.

Gestión más estricta de relojes auxiliares

__do_adjtimex() ahora comprueba si la lectura de un reloj auxiliar tuvo éxito. Cuando no hay una lectura disponible, devuelve -ENODEV en lugar de utilizar un valor de tiempo que no se obtuvo.

Esto mejora la gestión del estado de relojes auxiliares en configuraciones que utilizan esta API de gestión del tiempo.

Configuración Intel Speed Select más fiable

En plataformas Intel compatibles, se refuerza la validación de parámetros SST-CP para rangos de frecuencia, prioridad proporcional, identificadores de CPU e identificadores CLOS.

Para HFTKernel Hardware, esto mejora el control de los ajustes de rendimiento del hardware al configurar sistemas compatibles.

Herramientas de medición incluidas

cpujitter

Mide jitter de ejecución de CPU y las colas de la distribución de latency.

memjitter

Analiza latency de memoria, comportamiento de asignación, comportamiento de first-touch y conjuntos de trabajo bloqueados.

Evalúe el impacto en la carga de trabajo de destino mediante pruebas A/B reproducibles, métricas de red y distribuciones de latency de la aplicación.

HFTKernel 7.2.4 se centra en reducir el trabajo innecesario del kernel, hacer más predecible la atención de memoria y dispositivos y proporcionar una base fiable para las mediciones.

HFTKernel 7.2.3

Procesamiento de paquetes más predecible en implementaciones Cloud y Hardware

HFTKernel se ha actualizado al kernel Linux 7.2.3.

HFTKernel 7.2.3 incluye los cambios de la rama estable Linux 7.2.3 más relevantes para HFT, datos de mercado, sistemas de ejecución e infraestructura sensible a la latency.

El objetivo principal de esta versión es un ciclo de vida de paquetes más fiable, un comportamiento TX sin bloqueo predecible, un funcionamiento TCP correcto en redes asimétricas y rutas de infraestructura virtualizada más sólidas.

AF_PACKET y captura de paquetes

Se ha mejorado el ciclo de vida de AF_PACKET TX_RING respaldado por memoria vmalloc.

La memoria del anillo TX ahora permanece activa hasta que cada skb asociado se haya completado. Las actualizaciones de marcas de tiempo y TP_STATUS_AVAILABLE se completan antes de liberar la referencia pendiente, sin añadir otro bloqueo a la ruta crítica de finalización TX.

Esto resulta especialmente útil para sistemas HFTKernel utilizados para:

  • Captura de datos de mercado
  • Reproducción de paquetes
  • Sondas de latency
  • Generadores de tráfico
  • Entornos de pruebas de red
  • Sistemas de medición basados en AF_PACKET

El cambio hace más uniformes la finalización TX y la liberación de memoria del anillo sin añadir sincronización a la ruta principal de procesamiento de paquetes.

Ruta de datos VLAN más estable

Las interfaces VLAN ahora conservan un hard_header_len estable, heredan correctamente el espacio libre necesario al principio y al final, y mantienen la alineación adecuada de cabeceras para AF_PACKET SOCK_RAW.

Esto mejora la previsibilidad de las rutas TX sin bloqueo al utilizar:

  • Descarga VLAN por hardware
  • Interfaces de red virtuales
  • Contenedores y espacios de nombres de red
  • Redes en la nube
  • Captura de paquetes mediante sockets raw

Para HFTKernel, esto significa metadatos de paquetes y distribución de búferes más uniformes cuando cambia el estado de la descarga VLAN.

MSS TCP correcto en redes asimétricas

Linux 7.2.3 calcula el MSS TCP anunciado a partir de la MTU configurada de la interfaz o ruta, en lugar de una PMTU de la ruta de salida descubierta anteriormente.

Esto es especialmente relevante para configuraciones asimétricas en la nube, balanceadores de carga DSR y redes superpuestas donde el tráfico entrante y saliente puede recorrer rutas con valores MTU diferentes.

El cambio evita que una MTU menor de la red superpuesta de salida limite innecesariamente el tamaño de los segmentos TCP entrantes durante toda la vida de una conexión.

El MSS derivado de la ruta también se limita a TCP_MIN_MSS, haciendo más robusta la inicialización de la ventana de recepción TCP cuando las métricas de ruta contienen valores inusuales.

Para HFTKernel, esto mejora la previsibilidad de las conexiones TCP, TLS y WebSocket de larga duración utilizadas por sistemas de datos de mercado y ejecución.

Transición limpia entre AVX2 y SSE

La implementación de búsqueda PIPAPO AVX2 de nftables ahora ejecuta vzeroupper antes de volver a código que pueda utilizar instrucciones SSE.

Borrar las partes superiores de los registros YMM evita la penalización documentada de transición de AVX a SSE en el código SSE posterior.

Esto se aplica a sistemas en los que nftables y la búsqueda PIPAPO AVX2 permanecen activos en núcleos de infraestructura o mantenimiento. Para HFTKernel, elimina otra fuente pequeña pero evitable de sobrecarga impredecible de CPU.

Plano de control XFRM e IPsec más predecible

Los estados de mantenimiento de conexión NAT de XFRM ahora se procesan en lotes de tamaño fijo, limitando el uso temporal de memoria independientemente del número total de estados.

También se rediseñó el bloqueo para que la recopilación de referencias y el procesamiento de estados ocurran en fases separadas.

Para la infraestructura en la nube, esto proporciona:

  • Uso temporal de memoria limitado
  • Procesamiento más robusto de grandes conjuntos de estados XFRM
  • Comportamiento más predecible del plano de control IPsec
  • Interacción más uniforme con softirq y las rutas de desmontaje de estados

Estos cambios quedan fuera de la ruta crítica principal de trading, pero refuerzan la resistencia operativa de los nodos en la nube y las redes superpuestas cifradas.

Descarga TLS zero-copy más sólida

La descarga TLS a dispositivos ahora gestiona de forma más fiable el límite de fragmentos de un registro TLS abierto.

Cuando la matriz de fragmentos se llena, se envía el registro incluso cuando la aplicación utiliza MSG_MORE y rutas zero-copy de splice().

Esto refuerza:

  • Descarga TLS de NIC
  • TLS_TX_ZEROCOPY_RO
  • Rutas de envío zero-copy
  • Flujos TCP cifrados de alta carga

Para HFTKernel, el cambio resulta útil en nodos de infraestructura donde el adaptador de red realiza directamente la terminación TLS o la descarga TLS del kernel.

KVM y AMD SEV/SNP

KVM mejora la gestión de AMD SEV y SEV-SNP:

  • Los puntos de extensión guest_memfd específicos de SEV se conectan solo cuando la compatibilidad con SEV está activada
  • La infraestructura de llamadas estáticas puede eliminar un CALL+RET innecesario cuando no se utiliza SEV
  • El seguimiento de VMSA controlado por el huésped es más robusto
  • Una vCPU vuelve correctamente al estado ejecutable después de AP_CREATE
  • Se restaura la compatibilidad con memoria respaldada por archivos para huéspedes cifrados
  • Los búferes temporales de operaciones de cifrado se asignan como páginas completas

Estos cambios son relevantes principalmente cuando HFTKernel se utiliza como host KVM o con virtualización confidencial AMD. Su impacto directo dentro de una máquina virtual ordinaria en la nube depende del kernel del host del proveedor.

NVMe/TCP y Soft RoCE

El uso de page_frag_cache durante la creación simultánea de espacios de nombres NVMe/TCP ahora se serializa, mejorando el ciclo de vida de los búferes PDU durante la inicialización paralela del almacenamiento.

Soft RoCE ahora actualiza los recursos del respondedor de forma más uniforme cuando cambia IB_QP_MAX_DEST_RD_ATOMIC: las matrices de sustitución se instalan solo después de que la tarea del respondedor se haya detenido.

Estos cambios resultan útiles para infraestructura HFT que utiliza almacenamiento en red, RDMA por software, entornos de laboratorio o validación RDMA virtualizada. No cambian la ruta rápida principal de RDMA por hardware.

Validación eBPF

La autoprueba sockmap de BPF se corrige para paquetes con un skb no lineal.

El analizador sigue siendo de solo lectura, mientras que los datos de paquete necesarios se linealizan explícitamente en el programa de veredicto antes del acceso directo.

Esto mejora las pruebas de regresión de rutas sockmap de BPF y refuerza el proceso de compilación y calificación de HFTKernel.

Evaluación del impacto

Linux 7.2.3 no publica nuevas mediciones de latency mediana, p99, p99.9 ni p99.99 para estos cambios.

Por lo tanto, el efecto práctico de la versión debe verificarse con mediciones A/B controladas en la carga de trabajo de destino.

HFTKernel 7.2.3 refuerza las rutas de red de Linux donde el ciclo de vida de paquetes, los metadatos de búferes, la selección de rutas TCP y las operaciones de infraestructura en segundo plano pueden afectar a la estabilidad y repetibilidad de sistemas sensibles a la latency.

Herramientas de medición incluidas

HFTKernel 7.2.3 también incluye cpujitter y memjitter como herramientas de medición nativas alineadas con la versión.

cpujitter

mide jitter de ejecución de CPU, interferencias de IRQ y softirq y tail latency extrema.

memjitter

mide latency de asignación, comportamiento de first-touch, conjuntos de trabajo bloqueados y latency de memoria bajo carga.

El entorno de ejecución y las herramientas de medición permanecen alineados con la misma matriz de versiones inmutables Cloud y Hardware.

HFTKernel 7.2.3 refuerza el ciclo de vida de paquetes, los metadatos VLAN, la selección de MSS TCP, la descarga TLS, la E/S virtualizada, KVM cifrado, el almacenamiento y las rutas de validación para una plataforma HFT más estable y predecible.

HFTKernel 7.2.2

Gestión más fiable de fragmentos GSO en redes en la nube

HFTKernel se ha actualizado al kernel Linux 7.2.2.

Esta versión específica refuerza la gestión de paquetes IPv4 e IPv6 fragmentados en configuraciones de red virtualizadas y mediadas por el espacio de usuario.

Ruta de datos de red

Cuando un fragmento IP entra en la cola compartida de reensamblado, el kernel ahora restablece su estado GSO mediante skb_gso_reset().

  • El estado GSO ya no se traslada de los fragmentos individuales al paquete reensamblado.
  • El paquete reensamblado llega a la segmentación por software con el estado correcto.
  • La corrección compartida abarca el reensamblado de IPv4, IPv6, el seguimiento de conexiones Netfilter y 6LoWPAN.
  • La interacción entre el reensamblado de fragmentos, GSO y skb_segment() es más robusta.

El cambio se implementa en la ruta común inet_frag_queue_insert() y modifica un solo archivo del kernel.

Valor práctico para HFTKernel

La actualización es especialmente relevante para sistemas que utilizan:

  • TUN/TAP
  • AF_PACKET con PACKET_VNET_HDR
  • Virtio-net y KVM
  • Máquinas virtuales en la nube
  • Espacios de nombres de red
  • Captura y reproducción de paquetes
  • Generadores de tráfico y entornos de pruebas de red
  • Puertas de enlace virtualizadas de datos de mercado y ejecución

Para HFTKernel, esto significa una ruta de datos de red más resistente y una gestión más fiable de combinaciones poco frecuentes de fragmentación IP y metadatos GSO.

Validación upstream

Las pruebas upstream abarcaron cuatro geometrías diferentes de paquetes IPv4 e IPv6 fragmentados. Tras la corrección, todos los datagramas de prueba se entregaron por completo y sin mensajes del kernel.

Evaluación del impacto

Esta mejora está orientada a la resistencia operativa, no a acelerar la ruta rápida ordinaria de la red.

Upstream no publica nuevas mediciones de throughput, latency mediana ni tail latency para Linux 7.2.2. La formulación correcta para HFTKernel es:

HFTKernel 7.2.2 mejora la fiabilidad de las rutas GSO y de reensamblado de fragmentos en configuraciones de red virtualizadas y mediadas por el espacio de usuario.

Herramientas de medición nativas incluidas

HFTKernel 7.2.2 también incluye cpujitter y memjitter como herramientas de medición nativas.

cpujitter

mide jitter de ejecución de CPU, interferencias de IRQ y softirq y tail latency extrema.

memjitter

analiza latency de asignación, comportamiento de first-touch, conjuntos de trabajo bloqueados y comportamiento de la memoria bajo carga.

HFTKernel 7.2.2 refuerza las rutas de red utilizadas por la infraestructura en la nube, las máquinas virtuales y los sistemas de captura y reproducción de tráfico, haciendo que la plataforma Linux para HFT sea más resistente y predecible.

HFTKernel 7.2

Aislamiento de CPU más limpio, temporización más precisa y mejor control de tail latency

HFTKernel se ha actualizado al kernel Linux 7.2.

Esta versión refuerza las rutas del kernel más importantes para HFT, datos de mercado, puertas de enlace de ejecución y otras infraestructuras sensibles a la latency.

Mejoras principales

  • Aislamiento de CPU NO_HZ_FULL más limpio, con menos actividad de mantenimiento que llega a los núcleos críticos para la latency
  • Correlación más precisa entre las rutas de temporización PTP, PHC, TSC, KVMclock e Hyper-V
  • Planificación consciente de la caché y mejor localidad de caché de último nivel para cargas relacionadas
  • Mayor corrección de futex y escalabilidad específica de membarrier
  • Trabajo de tareas io_uring sin bloqueo con menor sobrecarga y rutas de red zero-copy más sólidas
  • Mejoras de NAPI, TCP y Azure MANA para una ruta de datos de red más estable
  • Mejoras de NUMA, MGLRU, memoria contigua y /proc para un comportamiento más predecible del sistema
  • Observabilidad de IRQ y RTLA con menor sobrecarga para detectar eventos poco frecuentes de latency

Herramientas de medición nativas incluidas

HFTKernel 7.2 incluye cpujitter y memjitter como paquetes nativos para todos los destinos Cloud y Hardware compatibles.

cpujitter

mide jitter de ejecución de CPU, interferencias de IRQ y softirq y tail latency extrema.

memjitter

analiza latency de asignación, comportamiento de first-touch, conjuntos de trabajo bloqueados y rendimiento de memoria bajo presión.

En conjunto, HFTKernel, cpujitter y memjitter proporcionan tanto el entorno de ejecución optimizado como las herramientas de medición necesarias para validar infraestructura sensible a la latency.

HFTKernel 7.2 refuerza el aislamiento de CPU, la precisión de temporización, la localidad de caché, el procesamiento de red, el comportamiento de memoria y la observabilidad de latency en una plataforma medible para HFT.

Filosofía de las versiones

Estabilidad upstream, políticas específicas de la carga de trabajo y resultados medibles

HFTKernel parte de una versión estable exacta de Linux, registra la cadena de herramientas y la identidad de la compilación, aplica el perfil Cloud o Hardware seleccionado, empaqueta cpujitter y memjitter con el entorno de ejecución y valida el resultado como una versión inmutable.

Base exactaCódigo fuente estable de Linux verificado y versión del kernel fijada.
Perfil controladoPolíticas de CPU, memoria, red, gestión del tiempo y aislamiento adaptadas a la plataforma.
Paquetes nativosConjuntos DEB, RPM o TGZ para la matriz de producción compatible.
Entrega con medicionescpujitter y memjitter proporcionan pruebas repetibles en la cola de latency.

Planificación de la implementación

Evalúe la versión según su topología de CPU, NIC, memoria y temporización.

La selección del paquete es solo el primer paso. El resultado en producción depende de los parámetros de arranque, la afinidad en tiempo de ejecución, la ubicación de colas, el diseño PTP/PHC, la política de memoria y un plan de medición controlado.