# Fortran kernels for NLP

**URL:** <https://fortran-lang.discourse.group/t/fortran-kernels-for-nlp/11236>\
**Category:** Projects\
**Created:** [October 28, 2026, 10:30am UTC](https://fortran-lang.discourse.group/t/fortran-kernels-for-nlp/11236 "2026-10-28T10:30:10Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![suwesh081](https://avatars.discourse-cdn.com/v4/letter/s/bc8723/32.png) [@suwesh081](https://fortran-lang.discourse.group/u/suwesh081)\
**Post date:** [October 28, 2026, 10:30am UTC](https://fortran-lang.discourse.group/t/fortran-kernels-for-nlp/11236/1 "2026-10-28T10:30:10Z")

</div>

Hi everyone,

I recently released fortran-nlp-kernels, a Python package that uses Fortran backends for exact lexical and vector similarity search.

Current features:

- Jaccard similarity search

- Inner product, cosine and L2 vector search

- Serial and OpenMP backends

- Python bindings via C ABI + nanobind

- benchmark informed CPU autotuning and workload aware runtime dispatch, after extensive multicore CPU measurements

- PyPI wheels

This started as a personal experiment exploring modern Fortran outside traditional HPC/scientific computing and ended up becoming a packaged library.

I’d appreciate any feedback, suggestions, or ideas for future directions.

GitHub:

> **[GitHub - suwesh/fortran-nlp-kernels: Exact lexical and dense-vector similarity search...](https://github.com/suwesh/fortran-nlp-kernels)**
>
> Exact lexical and dense-vector similarity search for Python with Fortran backends, OpenMP, OpenBLAS, CPU autotuning, and workload-aware runtime dispatch.

PyPI:

> **[Client Challenge](https://pypi.org/project/fortran-nlp-kernels/)**
