Phobos es un lenguaje experimental de kernels creado por el desarrollador João como ejercicio personal de aprendizaje sobre la programación de bajo nivel en GPUs NVIDIA. Inspirado en Triton, el proyecto se plantea como una alternativa minimalista que compila directamente a PTX, el lenguaje ensamblador virtual de NVIDIA, sin pasar por CUDA ni por enlazado complejo.
El diseño gira en torno a los tiles (fragmentos de tensor) como tipo de primera clase, lo que permite expresar de forma natural operaciones habituales en inteligencia artificial, como la suma de vectores o la multiplicación de matrices SGEMM, con anotaciones de autotune para explorar distintos tamaños de bloque. En pruebas sobre una GeForce RTX 2080 SUPER con capacidad de cómputo 7.5, el SGEMM de Phobos alcanza alrededor del 76 % del rendimiento de cuBLAS y el 74 % del pico teórico de la tarjeta, una cifra razonable dado el carácter artesanal del compilador.
La cadena de herramientas combina un lexer y un parser escritos en Rust, generación de código hacia MLIR y, finalmente, emisión de PTX mediante el backend NVPTX de LLVM, apoyándose en bindings como inkwell y melior. El autor describe el proceso como un recorrido de derecha a izquierda: primero ejecutar PTX ya escrito, después generar MLIR y, por último, añadir el front-end del lenguaje. Incluye además ejemplos de kernels en Phobos y su equivalente en PTX, y señala que el prototipo distribuido de tipo tile-DAG solo se ha validado en una única máquina, sin benchmarks multinodo. El repositorio está disponible en GitHub bajo el nombre phobos-lang.
