Llevando la emulación RISC-V al límite

Pushing the limits of RISC-V emulation

Llevando la emulación RISC-V al límite

Este artículo explora cómo acelerar la ejecución de programas RISC-V en máquinas no RISC-V, partiendo de un intérprete básico y eliminando capas de sobrecarga hasta lograr un recompilador anticipado que genera bloques básicos conectados con llamadas de cola y usa la convención de llamada `preserve_none` de Clang para mantener el estado del invitado en registros del host. El autor, trabajando en OpenVM de Axiom, compara el rendimiento con la ejecución nativa y detalla técnicas como predecodificación, computed goto, threading de llamadas de cola, y un backend en ensamblador, culminando en la generación de C para que Clang optimice cada bloque básico.

La forma más rápida de ejecutar un programa es apartarse de su camino y dejar que el hardware lo ejecute directamente.

Más de este día

2026-08-06