On Jan 1, 2009, at 3:08 AM, Angus Hendrick wrote:

For anyone who hasn't done this, I followed the instructions here.

Thanks for the link. While hotshot is what I use, he gives better explanation for the "why?"s than the standard documentation. I also not from his bio that we can look forward weather hitting us seven to ten times faster in the future.


However, I noted that when I did this in ipython, that despite the declaration of the environment variable FIPY_SOLVERS as Trilinos, my code was was still using the PySparse solvers. The solution was to import sys, and explicitly append '--Trilinos' to sys.argv before importing my code. The resulting profile data is attached.

Yeah, ipython makes for a weird environment sometimes.

It looks to me like my assumption that the python matrix manipulation is limiting is not correct. Is that how you read this?

Seems to be.

26% of your time is spent in _prepareLinearSystem(), compared to 72% in _solveLinearSystem(). So, while you could theoretically shave off *some* time by rebuilding only bits of your matrix, it's not going to have an enormous effect and, as Daniel indicated, it would not be a trivial thing to figure out how to do.


As an aside, from my efforts at profiling I can confirm that the Trilinos solvers are about 4x faster than the PySparse solvers, and the PySparse solvers are very unstable for this problem. The problem comprises a rectangular uniformly heat-generating domain with variable conductances and boundary conditions which are no-flux everywhere except for a small segment along one side.

I'm just now getting Trilinos set up on the machines I regularly use, but I know Daniel has seen huge benefits to Trilinos and, particularly, to its preconditioners.


Reply via email to