Skip to content

roseNNa

Sep 2026 · Zenodo (CERN European Organization for Nuclear Research)

Abstract

roseNNa is now a code generator. A model is lowered to Fortran 2008 or C11 with literal loop bounds, no runtime shape logic, no allocation and no mutable global state, so infer inlines into a solver's own compute kernel -- including a device kernel. The previous runtime library (fLibrary/) is retired. It parsed a model description at startup and interpreted it; the generated code has no parser and nothing to interpret. Operators Gemm, MatMul, Conv (1-D and 2-D, grouped and depthwise), MaxPool, AveragePool, LSTM, GRU, Add, Concat, Pad (constant/edge/reflect), Softmax, Relu, Sigmoid, Tanh, and the shape ops (Reshape, Transpose, Squeeze, Unsqueeze, Flatten, Identity). An inference BatchNormalization is folded into the Conv/Gemm that feeds it, so it costs nothing at runtime. A model the generator cannot lower is refused by name at generation time, never silently mis-computed. That rule is why validate.py exists and why most of its lines are refusals. GPUs The same generated infer runs from an OpenMP-target region, an OpenACC region, or inside your own CUDA/HIP kernel. infer_batch is a native CUDA or HIP kernel, or an OpenMP/OpenACC fallback. Nothing in the loop path allocates, transfers or synchronizes. One archive serves both call paths: .c is built by your host compiler with its offload flags and _kernel.cu by nvcc/hipcc. Weights are per-device, so a multi-GPU host can hold them on several cards at once. Validated by rosenna gpu-gate, which writes a report of every command and its output: A100 (NVIDIA HPC SDK 25.11, CUDA 13.0) and MI210 (ROCm 7.2.0, AFAR 23.2.1), both PASS. Verification 25 golden models, each compiled in both languages and compared against onnxruntime rather than against recorded output -- a recorded file pins whatever the library did the day it was recorded. 506 tests; coverage floored at 97% and enforced in CI. CI builds the C backend with gcc and clang and the Fortran backend with gfortran, flang and ifx; the last two run every golden model against onnxruntime. ASan/UBSan over all of it. nvcc and hipcc compile-check the device path. Fuzzing over random small graphs with recorded seeds. Examples Five runnable solvers with a network inside the time-step loop, in C and Fortran: a Burgers closure, a FitzHugh-Nagumo patch stepper, a bubble-population LSTM, a Poisson initial guess, and a 3-D compressible Navier-Stokes solver with a learned per-cell closure. Each prints an error and exits non-zero if the surrogate did not do what its README claims. Notes Spatial ops are 1-D or 2-D; 3-D would need the global rank cap raised. GRU implements both values of linear_before_reset (the ONNX default is 0, PyTorch exports 1, and they compute different things). Intel GPUs use the OpenMP fallback; there is no SYCL backend yet.

View source

Similar papers

#computer vision Review Sep 2017

Agile Software Development Methods: Review and Analysis

This publication proposes a definition and a classification of agile software development approaches and analyses ten software development methods that can be characterized as being "agile" against the defined criterion.

P. Abrahamsson, O. Salo, Jussi Ronkainen et al. · 727 citations · ⚡54
#small language model Dataset Open access Oct 2026

Socratic guiding questions in synthetic arithmetic data: matched LoRA runs (revision v2)

Supporting data, adapters, predictions and code for the article *Low-Cost LoRA Fine-Tuning of Small Language Models for Multi-Step Arithmetic Reasoning* by Jake O'Grady, Asena Isik Gürhan, Chee Fong Ting and Effirul Ramlan (University of Galway). We generated 20,000 GSM8K-derived arithmetic problems with step-by-step s...

O'Grady, Jake, Gürhan, Asena Isik, Chee, Fong Ting et al. · 465 citations
#computer vision Jun 2008

The impact of agile practices on communication in software development

The study shows that agile practices improve both informal and formal communication, but indicates that, in larger development situations involving multiple external stakeholders, a mismatch of adequate communication mechanisms can sometimes even hinder the communication.

M. Pikkarainen, Jukka Haikara, O. Salo et al. · 401 citations · ⚡48
#machine learning Review Open access Oct 2014

Software development in startup companies: A systematic mapping study

The results indicate that software engineering work practices are chosen opportunistically, adapted and configured to provide value under the constrains imposed by the startup context.

Nicolò Paternoster, Carmine Giardino, M. Unterkalmsteiner et al. · 394 citations · ⚡54

Related blog posts

Microsoft Research Blog Sep 29, 2026

Introducing Quine: An AI research system designed for the complexity of biology

Biology doesn't operate in silos, and neither should the AI representation of it. Quine is an early-stage research effort to create a multimodal world model of biology. By connecting insights across biological scales and modalities, Quine helps scientists computationally search a space far larger than intuition allows and prioritize hypotheses before they reach the lab. Experimental results provide important feedback, helping researchers sharpen future research directions. The post Introducing Q…

Microsoft Research Blog Aug 31, 2026

GigaPath-Flash and GigaTIME-Flash: Toward population-scale discovery with efficient pathology foundation models

What if pathology foundation models could do more with less? GigaPath-Flash and GigaTIME-Flash cut computational demands while maintaining strong performance, opening the door to larger studies and broader exploration. The post GigaPath-Flash and GigaTIME-Flash: Toward population-scale discovery with efficient pathology foundation models appeared first on Microsoft Research.

We use cookies to run the site and, with your consent, for analytics and to show ads. See our Cookie Policy.