Skip to content

sclc/NAEF

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

53 Commits
 
 
 
 
 
 
 
 

Repository files navigation

NAEF: Numerical Algorithms Experiment Framework

This is a framework for numerical algorithm research.

I develop this project to support my PhD research.

There are some main purpose of this project

  1. To support numerical analysis and novel numerical algorithm design.
  2. To support experiment conduction, result data processing, data anlysis and experimental data storge.
  3. To practice numerical method programing skills, and make sure you REALLY understand the algorithm procedure and implementation details. The understanding is very import when people want to implement the algorithm on a real supercomputing system using other programming languages and programming models.
  4. To understand numerical characterics of varities of numerical methods through numerical experiments.
  5. To conduct mathematical experiment for applied mathematics research. The observation of numerical properties and iterim results of the algorithm execution may deepen people's understanding to the nature of the algorithms and the maths behind it. And this can inspire new research directions to improve the existing algorithms and even re-design new decent algorithms.

What are not the purpose of this project

  1. This project will not tell you directly how algorithms works in terms of practical performance. And people should use the HPC code, for instances C/C++, OpenMP, CUDA, MPI and etc., to conduct experiment for understanding algorithm's performance and tuning the code. This is quite an engineering problem, it involves all aspects such as data structure, cache optimization, the characteristics of underlying computing system and so on. However, the understanding of numerical properties of algorithms might provide insight/clues about how to restructure the algorithm so that the performance can be improved as well as the correctness of the algorithm being guaranteed.

Technical Features

  1. This project will employ heavly OOP (Object Oriented Programming)
  2. This project will employ Python libraries, for example matplotlib, to produce figures and graphs

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages