Ich denke, dass du vor allem auf gute Lokalität achten musst. Bei der Lösung solltest du also eben
nicht wild durch die Gegend dereferenzieren, sondern die Matrix in Teile teilen und dann lösen.
Vorteil vom Partitionieren siehe hier die blaue Kurve:
http://stackoverflow.com/q/4300663
Was da mathematisch passiert:
http://math.stackexchange.com/questi...ices-in-pieces
Falls es geht, solltest du eine aktuelle Intel-CPU hernehmen und die Intel-MKL einsetzen. Die Intel-MKL diskriminiert gegen AMD-CPUs, aber auf einer Intel-CPU macht die so ziemlich alles platt. Das gilt aber natürlich nur, falls die CPU nicht gerade auf die SSD werten muss. Bei dir spielt ja anscheinend nicht nur die Lokalität
RAM<>Cache eine Rolle, sondern auch die (viel krassere) Latenz SSD<>
RAM.
http://www.kerrywong.com/2009/03/07/...formance-in-c/
Soweit ich weiß, ist die Intel-MKL aber nur in C verfügbar. Vielleicht kannst du dir ja eine
DLL mit Subroutinen erzeugen und in Delphi benutzen...