I wanted to share a recent test project I’ve been working on. With the assistance of ChatGPT, I integrated the Lis (Library of Iterative Solvers for Linear Systems) solver into CalculiX (ccx) to test its performance on large-scale problems.
I am uploading the binary for anyone interested in testing and benchmarking it on their own models (Windows):
In my initial tests, the results have been very promising compared to PARDISO:
Execution Time: Dropped significantly from 3,600s down to 980s.
RAM Usage: Decreased dramatically from around 5 GB down to 480 MB.
Simple 3D box (nonlinear material)
I would appreciate it if others could give it a try and share their feedback, benchmarks, or any issues encountered across different model types.
Hi @rafal.brzegowy, thanks for testing! Could you explain a little more which type of iterative solution strategy you’re using? In particular, which preconditioner & solver? Our experience with iterative solvers in CalculiX is “mixed” for the general case, which is why we have a single precision direct solve followed by a double precision iterative solve strategy using PaStiX. I’d be interested in any better experiences with iterative solvers (like LIS).
i hope these limitations can be improved since LIS solver given promise in optimum and effectiveness of memeory usage and computational times, thank you.
maybe something wrong here on my computer, after zip file extracted it’s detect as treat by Windows security. Even for simpel case of solid with static linear analysis still not works with LIS solver, is there something blocked by the system probably.
Hi Rafal,
Unfortunately it stops also in my case without any error.
Best,
Stoli
..\Solver_LIS\ccx_i4.exe ge_bracket_coarse cpus=4
CalculiX Version 2.23, Copyright(C) 1998-2025 Guido Dhondt
CalculiX comes with ABSOLUTELY NO WARRANTY. This is free
software, and you are welcome to redistribute it under
certain conditions, see gpl.htm
You are using an executable made on Sun Oct 19 12:54:37 CEST 2025
The numbers below are estimated upper bounds
number of:
nodes: 14434
elements: 62223
one-dimensional elements: 0
two-dimensional elements: 0
integration points per element: 1
degrees of freedom per node: 3
layers per element: 1
distributed facial loads: 0
distributed volumetric loads: 0
concentrated loads: 136
single point constraints: 1053
multiple point constraints: 1
terms in all multiple point constraints: 1
tie constraints: 0
dependent nodes tied by cyclic constraints: 0
dependent nodes in pre-tension constraints: 0
sets: 17
terms in all sets: 204983
materials: 1
constants per material and temperature: 2
temperature points per material: 1
plastic data points per material: 0
orientations: 0
amplitudes: 2
data points in all amplitudes: 2
print requests: 1
transformations: 0
property cards: 0
STEP 1
Static analysis was selected
Decascading the MPC's
Determining the structure of the matrix:
Using up to 4 cpu(s) for setting up the structure of the matrix.
number of equations
42249
number of nonzero lower triangular matrix elements
789771
Using up to 4 cpu(s) for the stress calculation.
Using up to 4 cpu(s) for the symmetric stiffness/mass contributions.