Sto cercando di utilizzare CUSP come risolutore lineare esterno per Mathematica per utilizzare la potenza della GPU. Ecco lo CUSP Project webpage. Sto chiedendo qualche suggerimento su come possiamo integrare CUSP con Mathematica. Sono sicuro che molti di voi qui saranno interessati a discuterne. Penso che scrivere una matrice di input e poi alimentarlo con il programma CUSP non sia la strada da percorrere. L'utilizzo di Matrixatica LibrarayFunctionLoad
sarà un modo migliore per eseguire il pipeline della matrice di input al risolutore basato su GPU al volo. Quale sarà il modo di fornire la matrice e la matrice del lato destro direttamente da Mathematica?Funzionalità delle funzioni di libreria di Mathematica
Ecco uno snippet di codice CUSP.
#include <cusp/hyb_matrix.h>
#include <cusp/io/matrix_market.h>
#include <cusp/krylov/cg.h>
int main(void)
{
// create an empty sparse matrix structure (HYB format)
cusp::hyb_matrix<int, float, cusp::device_memory> A;
// load a matrix stored in MatrixMarket format
cusp::io::read_matrix_market_file(A, "5pt_10x10.mtx");
// allocate storage for solution (x) and right hand side (b)
cusp::array1d<float, cusp::device_memory> x(A.num_rows, 0);
cusp::array1d<float, cusp::device_memory> b(A.num_rows, 1);
// solve the linear system A * x = b with the Conjugate Gradient method
cusp::krylov::cg(A, x, b);
return 0;
}
Questa domanda ci dà la possibilità di discutere le capacità di compilazione di Mathematica 8. È anche possibile richiamare il tema dell'interfaccia mathlink di MMA. Spero che le persone qui trovino questo problema degno e interessante su cui riflettere.
BR
Si prega di tenere presente che il formato di StackOverflow non è adatto per le discussioni. Non è un forum. Cerca di rimanere il più possibile nel formato di domande e risposte. –
@belisarius Ho capito il tuo punto. Dammi un po 'di tempo formerà una domanda concreta. Ma la domanda era come attaccare questo problema. Grazie per averlo ricordato.. – PlatoManiac