https://github.com/ExtremeFLOW/neko Skip to content Navigation Menu Toggle navigation Sign in * Product + Actions Automate any workflow + Packages Host and manage packages + Security Find and fix vulnerabilities + Codespaces Instant dev environments + GitHub Copilot Write better code with AI + Code review Manage code changes + Issues Plan and track work + Discussions Collaborate outside of code Explore + All features + Documentation + GitHub Skills + Blog * Solutions For + Enterprise + Teams + Startups + Education By Solution + CI/CD & Automation + DevOps + DevSecOps Resources + Learning Pathways + White papers, Ebooks, Webinars + Customer Stories + Partners * Open Source + GitHub Sponsors Fund open source developers + The ReadME Project GitHub community articles Repositories + Topics + Trending + Collections * Enterprise + Enterprise platform AI-powered developer platform Available add-ons + Advanced Security Enterprise-grade security features + GitHub Copilot Enterprise-grade AI features + Premium Support Enterprise-grade 24/7 support * Pricing Search or jump to... Search code, repositories, users, issues, pull requests... Search [ ] Clear Search syntax tips Provide feedback We read every piece of feedback, and take your input very seriously. [ ] [ ] Include my email address so I can be contacted Cancel Submit feedback Saved searches Use saved searches to filter your results more quickly Name [ ] Query [ ] To see all available qualifiers, see our documentation. Cancel Create saved search Sign in Sign up You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert {{ message }} ExtremeFLOW / neko Public * Notifications You must be signed in to change notification settings * Fork 26 * Star 152 * /k. ..t\w\/- neko.cfd/ License View license 152 stars 26 forks Branches Tags Activity Star Notifications You must be signed in to change notification settings * Code * Issues 57 * Pull requests 21 * Discussions * Actions * Projects 5 * Wiki * Security * Insights Additional navigation options * Code * Issues * Pull requests * Discussions * Actions * Projects * Wiki * Security * Insights ExtremeFLOW/neko This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository. develop BranchesTags Go to file Code Folders and files Name Name Last commit message Last commit date Latest commit History 6,359 Commits .github .github bench bench contrib contrib doc doc examples examples logo logo m4 m4 patches patches reframe reframe src src tests tests .gitattributes .gitattributes .gitignore .gitignore AUTHORS AUTHORS CITATION.cff CITATION.cff CONTRIBUTING.md CONTRIBUTING.md COPYING COPYING Makefile.am Makefile.am README.md README.md configure.ac configure.ac flinter_rc.yml flinter_rc.yml makeneko.in makeneko.in neko.pc.in neko.pc.in regen.sh regen.sh View all files Repository files navigation * README * License Neko CI develop DOI About Neko is a portable framework for high-order spectral element flow simulations. Written in modern Fortran, Neko adopts an object-oriented approach, allowing multi-tier abstractions of the solver stack and facilitating various hardware backends ranging from general-purpose processors, CUDA and HIP enabled accelerators to SX-Aurora vector processors. Neko has its roots in the spectral element code Nek5000 from UChicago/ANL, from where many of the namings, code structure and numerical methods are adopted. Cloning the project git clone https://github.com/ExtremeFLOW/neko Documentation Documentation for Neko is available at https://neko.cfd and most things related to the code, cases, and different features are described there. The documentation is always improving, in large part due to our active users and if something is missing or hard to understand, don't be afraid to start a discussion or create a Pull request. It is a great way to help us improve and also to start getting involved in the project. Building the project To build the project you will need: A Fortran compiler supporting the Fortran-08 standard, a working MPI installation, JSON-Fortran, and BLAS/lapack. Optional dependencies are gslib and ParMETIS. We use autotools to build the project. These instructions should work in general, but as the project is quickly developing, things might change. While we assume MPI and BLAS are installed, if JSON-Fortran is not already available it can be cloned, installed, and the correct paths set with the following commands (Skip this step if you already have an installation of JSON-Fortran). export JSON_INSTALL=/path/to/json-fortran_install # Where you want to install json-fortran git clone --depth 1 https://github.com/ExtremeFLOW/json-fortran/ cmake -S json-fortran -B json-fortran/build -DCMAKE_INSTALL_PREFIX=${JSON_INSTALL} -DUSE_GNU_INSTALL_CONVENTION=ON .. cmake --build json-fortran/build --parallel cmake --install json-fortran/build export LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:${JSON_INSTALL}/lib/ #On some systems lib should be replaced with lib64 export PKG_CONFIG_PATH=${PKG_CONFIG_PATH}:${JSON_INSTALL}/lib/pkgconfig A basic CPU version of Neko can then be installed according to the following cd neko ./regen.sh ./configure --prefix=/path/to/neko_install # Where you want to install neko make install More detailed installation instructions and all the different options (such as how to install Neko for GPUs) can be found in the documentation available at https://neko.cfd. Running examples After the project has been built cd examples/tgv /path/to/neko_install/bin/makeneko tgv.f90 mpirun -np 4 ./neko tgv.case If there is not a .f90 (user) file in the example, the standard executable neko can also be used, for example: cd examples/hemi mpirun -np 4 /path/to/neko_install/bin/neko hemi.case only uses built-in functions and does not need a compiled user file. Whether you will need a user file or not depends on what functionality you want and this is also documented in the documentation. Publications using Neko * Jansson, N., 2021. Spectral Element Simulations on the NEC SX-Aurora TSUBASA. In proc. HPCAsia 2021. * Karp, M., Podobas, A., Kenter, T., Jansson, N., Plessl, C., Schlatter, P. and Markidis, S., 2022. A high-fidelity flow solver for unstructured meshes on field-programmable gate arrays: Design, evaluation, and future challenges. In proc. HPCAsia 2022. * Karp, M., Jansson, N., Podobas, A., Schlatter, P., and Markidis, S., 2022. Reducing Communication in the Conjugate Gradient Method: A Case Study on High-Order Finite Elements. In proc. PASC 2022. * Karp, M., Massaro, D., Jansson, N., Hart, A., Wahlgren, J., Schlatter, P., and Markidis, S., 2023. Large-Scale Direct Numerical Simulations of Turbulence Using GPUs and Modern Fortran . The International Journal of High Performance Computing Applications, 37, 5. * Jansson, N., Karp, M., Perez, A., Mukha, T., Ju, Y., Liu, J., Pall, S., Laure, E., Weinkauf, T., Schumacher, J., Schlatter, P., Markidis, S., 2023. Exploring the Ultimate Regime of Turbulent Rayleigh-Benard Convection Through Unprecedented Spectral-Element Simulations. SC '23: Proceedings of the International Conference for High Performance Computing, Networking, Storage and Analysis. * Jansson, N., Karp, M., Podobas, A., Markidis, S. and Schlatter, P., 2024. Neko: A modern, portable, and scalable framework for high-fidelity computational fluid dynamics. Computer & Fluids, 275. Acknowledgments The development of Neko was supported by the European Commission Horizon 2020 project grant EPiGRAM-HS: Exascale Programming Models for Heterogeneous Systems (grant reference 801039), the Swedish Research Council project grant Efficient Algorithms for Exascale Computational Fluid Dynamics (grant reference 2019-04723) and the SeRC Exascale Simulation Software Initiative (SESSI). The Neko logo was designed by Robert Hansen Jagrelius. [zul] Sponsored by Zulip, an open-source modern team chat app designed to keep both live and asynchronous conversations organized. About /k. ..t\w\/- neko.cfd/ Topics fortran hpc cfd Resources Readme License View license Activity Custom properties Stars 152 stars Watchers 8 watching Forks 26 forks Report repository Releases 24 NEKO v0.7.2 Latest Dec 30, 2023 + 23 releases Contributors 15 * @njansson * @timofeymukha * @MartinKarp * @vbaconnet * @timfelle * @Shiyu-Sandy-Du * @adperezm * @jacwah * @jonvin73 * @pschlatt1 * @steven-chien * @adampep * @pszi1ard * @muenschm * @al42and Languages * Fortran 77.2% * C++ 9.7% * C 7.1% * Cuda 3.1% * M4 1.6% * Makefile 0.8% * Other 0.5% Footer (c) 2024 GitHub, Inc. Footer navigation * Terms * Privacy * Security * Status * Docs * Contact * Manage cookies * Do not share my personal information You can't perform that action at this time.