Hello,
Here is my new website of my Open source software projects:
I have just converted my website from the classic Google sites
to new Google Sites, and i have pointed the web link for downloading my
zip files to the google drive, also i have just changed the theme of
my website, and all the new web links of my website pages are the same
to the previous web link of my old website pages, so please look at my
new website here:
https://sites.google.com/site/scalable68/
I am a white arab, and i think i am smart since i have invented many
scalable algorithms..
About SOR and Conjugate gradient mathematical methods..
I have just looked at SOR(Successive Overrelaxation Method),
and i think it is much less powerful than Conjugate gradient method,
read the following to notice it:
COMPARATIVE PERFORMANCE OF THE CONJUGATE GRADIENT AND SOR METHODS
FOR COMPUTATIONAL THERMAL HYDRAULICS
https://inis.iaea.org/collection/NCLCollectionStore/_Public/19/055/19055644.pdf?r=1&r=1
This is why i have implemented in both C++ and Delphi my Parallel
Conjugate Gradient Linear System Solver Library that scales very well,
read my following thoughts about it to understand more:
About the convergence properties of the conjugate gradient method
The conjugate gradient method can theoretically be viewed as a direct
method, as it produces the exact solution after a finite number of
iterations, which is not larger than the size of the matrix, in the
absence of round-off error. However, the conjugate gradient method is
unstable with respect to even small perturbations, e.g., most directions
are not in practice conjugate, and the exact solution is never obtained. Fortunately, the conjugate gradient method can be used as an iterative
method as it provides monotonically improving approximations to the
exact solution, which may reach the required tolerance after a
relatively small (compared to the problem size) number of iterations.
The improvement is typically linear and its speed is determined by the condition number κ(A) of the system matrix A: the
larger is κ(A), the slower the improvement.
Read more here:
http://pages.stat.wisc.edu/~wahba/stat860public/pdf1/cj.pdf
So i think my Conjugate Gradient Linear System Solver Library
that scales very well is still very useful, read about it
in my writing below:
Read the following interesting news:
The finite element method finds its place in games
Read more here:
https://translate.google.com/translate?hl=en&sl=auto&tl=en&u=https%3A%2F%2Fhpc.developpez.com%2Factu%2F288260%2FLa-methode-des-elements-finis-trouve-sa-place-dans-les-jeux-AMD-propose-la-bibliotheque-FEMFX-pour-une-simulation-en-temps-reel-des-
deformations%2F
But you have to be aware that finite element method uses Conjugate
Gradient Method for Solution of Finite Element Problems, read here to
notice it:
Conjugate Gradient Method for Solution of Large Finite Element Problems
on CPU and GPU
https://pdfs.semanticscholar.org/1f4c/f080ee622aa02623b35eda947fbc169b199d.pdf
This is why i have also designed and implemented my Parallel Conjugate
Gradient Linear System Solver library that scales very well,
here it is:
My Parallel C++ Conjugate Gradient Linear System Solver Library
that scales very well version 1.76 is here..
Author: Amine Moulay Ramdane
Description:
This library contains a Parallel implementation of Conjugate Gradient
Dense Linear System Solver library that is NUMA-aware and cache-aware
that scales very well, and it contains also a Parallel implementation of Conjugate Gradient Sparse Linear System Solver library that is
cache-aware that scales very well.
Sparse linear system solvers are ubiquitous in high performance
computing (HPC) and often are the most computational intensive parts in scientific computing codes. A few of the many applications relying on
sparse linear solvers include fusion energy simulation, space weather simulation, climate modeling, and environmental modeling, and finite
element method, and large-scale reservoir simulations to enhance oil
recovery by the oil and gas industry.
Conjugate Gradient is known to converge to the exact solution in n steps
for a matrix of size n, and was historically first seen as a direct
method because of this. However, after a while people figured out that
it works really well if you just stop the iteration much earlier - often
you will get a very good approximation after much fewer than n steps. In
fact, we can analyze how fast Conjugate gradient converges. The end
result is that Conjugate gradient is used as an iterative method for
large linear systems today.
Please download the zip file and read the readme file inside the zip to
know how to use it.
You can download it from:
https://sites.google.com/site/scalable68/scalable-parallel-c-conjugate-gradient-linear-system-solver-library
Language: GNU C++ and Visual C++ and C++Builder
Operating Systems: Windows, Linux, Unix and Mac OS X on (x86)
--
As you have noticed i have just written above about my Parallel C++
Conjugate Gradient Linear System Solver Library that scales very well,
but here is my Parallel Delphi and Freepascal Conjugate Gradient Linear
System Solvers Libraries that scale very well:
Parallel implementation of Conjugate Gradient Dense Linear System solver library that is NUMA-aware and cache-aware that scales very well
https://sites.google.com/site/scalable68/scalable-parallel-implementation-of-conjugate-gradient-dense-linear-system-solver-library-that-is-numa-aware-and-cache-aware
PARALLEL IMPLEMENTATION OF CONJUGATE GRADIENT SPARSE LINEAR SYSTEM
SOLVER LIBRARY THAT SCALES VERY WELL
https://sites.google.com/site/scalable68/scalable-parallel-implementation-of-conjugate-gradient-sparse-linear-system-solver
Thank you,
Amine Moulay Ramdane.
--- SoupGate-Win32 v1.05
* Origin: fsxNet Usenet Gateway (21:1/5)