Click here to Skip to main content
15,887,436 members
Please Sign up or sign in to vote.
5.00/5 (2 votes)
See more:
I am developing a simulation software which involves solving around 10^8 simultaneous linear equations. Equations are sparse. I already made a prototype in which I implemented LU decomposition myself. But my implementation can only address less than 10^4 equation due to performance and memory constraints. I never worked with any CAS systems. Can anyone suggest some good CAS system from where I can start? Even after a long web search I was not able to get a good comparison of existing CAS systems in terms of the size of data it can process and also a performance comparison.
Development environment I am using is C# with .Net 4.0, but I can use any C++ , C or C# libraries in my system.

I found many CAS systems like Mathematica, Boost, Sage, Intel's MKL library. But i am not able to sort out a comparison from that. And how much data they can handle with a significant performance.

I am expecting answers like "I have solved 1,00,000 equations in 1,00,000 variables with xxx Library with in xxxx time in a machine with x cores and xGB Ram using xThreads"
Posted
Updated 3-Jul-13 20:22pm
v3

1 solution

I don't know what a CAS system is and info from Google doesn't seem to be helpful. You need to provide more detail and explain that in your question.

Data of this size (even if sparse) likely needs to be done on a 64 bit machine, simply to provide the expanded address space. The programming language you use (from the choices listed) should not be that important. If the problem can be can be solved, it can be solved in C#.

Make sure that you have adequate swapfile space defined on your system. Because of the huge amount of data, there will be a lot of paging/swapping activity as you run your calculation.
 
Share this answer
 
Comments
JackDingler 3-Jul-13 16:25pm    
Good advice.

If you can break the problem down into chunks, then you'll see fewer problems and a large speed increase. Also, if the data set grows larger, then your code is likely to break down again.

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)



CodeProject, 20 Bay Street, 11th Floor Toronto, Ontario, Canada M5J 2N8 +1 (416) 849-8900