TNL aims to be STL for HPC

TNL is a collection of building blocks that facilitate the development of efficient numerical solvers and HPC algorithms. It is implemented in C++ using modern programming paradigms in order to provide flexible and user friendly interface such like STL library, for example. TNL provides native support for modern hardware architectures such as multicore CPUs, GPUs, and distributed systems, which can be managed via a unified interface.

Join us at TNL Gitlab


  • BLAS-like functions enclosed to templated vectors and expression templates for simple and efficient vector operations
  • Flexible parallel reduction for GPUs and multicore CPUs
  • Various types of matrices - dense, tridiagonal, multidiagonal and general sparse matrices based on number of different formats like CSR, Ellpack, Sliced Ellpack, Chunked Ellpack, Bisection Ellpack for the best performance tunnig
  • SolversCG, BiCGStab,GMRES, parallel CWYGMRES, TFQMR, Jacobi, SOR (CPU only)
  • PreconditionersJacobi, ILU0 (CPU only), ILUT( CPU only)
  • Runge-Kutta solvers - Euler (first order), Runge-Kutta-Merson (fourth order adaptive)
  • Orthogonal numerical grids and unstructured numerical meshes
  • Image formats - DICOM (via DCMTK), JPEG (via libjpeg), PNG (via libpng), PGM

Try out...

To try out the latest version of TNL, just copy-paste the following lines to your Unix terminal:

git clone gitlab@mmg-gitlab.fjfi.cvut.cz:tnl/tnl-dev.git

Get involved...

TNL is not a library of one or a few numerical methods. We are interested in implementing new methods and data structures which may profit from templated design and support of modern hardware. If you feel it the same way you are very welcome to ...

Join us

Get in touch...

For TNL users and developers, there is a forum.

TNL users forum

If you have questions or would like to join our team please do not hesitate to get in touch.


    This project was supported by...

    Analysis of flow character and prediction of evolution in endovascular treated arteries by magnetic resonance imaging coupled with mathematical modeling, project no. NV19-08-00071 of Ministry of Health of the Czech Republic, 2019-2022.

    Research Center for Informatics, OPVVV project no. CZ.02.1.01/0.0/0.0/16_019/0000765 of Ministry of Education, Youth and Sports of the Czech Republic, 2018-2022.

    Large structures in boundary layers over complex surfaces under high Reynolds numbers, project no. 18-09539S of the Czech Science Foundation, 2017-2019.

    Quantitative Mapping of Myocard and of Flow Dynamics by Means of MR Imaging for Patients with Nonischemic Cardiomyopathy - Development of Methodology, project No. 15-27178A of Ministry of Health of the Czech Republic, 2015-2018.