[an error occurred while processing this directive] [an error occurred while processing this directive][an error occurred while processing this directive] [an error occurred while processing this directive] [an error occurred while processing this directive] [an error occurred while processing this directive] (none) [an error occurred while processing this directive] [an error occurred while processing this directive] [an error occurred while processing this directive] [an error occurred while processing this directive] [an error occurred while processing this directive][an error occurred while processing this directive]
[an error occurred while processing this directive][an error occurred while processing this directive] [an error occurred while processing this directive][an error occurred while processing this directive] [an error occurred while processing this directive] [an error occurred while processing this directive] [an error occurred while processing this directive] (none) [an error occurred while processing this directive] [an error occurred while processing this directive] [an error occurred while processing this directive][an error occurred while processing this directive]![]() |
![]() |
![]() |
|||||||||||||||||||||||||
|
|||||||||||||||||||||||||||
![]() |
![]() |
![]() |
Hej Sslug'ere Jeg er ved at skrive et lille bibliotek til nogle matrice-operationer vi ofte udfører på arbejdet. Jeg har skrevet det i C++ med min egen Matrix-klasse. Jeg skal nu lave en SVD og har i den forbindelse tidligere brugt Numerical Recipes version, men den er ikke verdens bedste, og jeg vil derfor i stedet gerne bruge en funktion i Gnu Scientific Library (GSL) eller LAPACK, men: Biblioteket skal kunne compiles på tværs af operativ systemer (inkl. og nok vigtigst Windows) - dog kun PC arkitektur - og jeg vil gerne kunne compile alt koden sammen til et enkelt bibliotek (igen af hensyn til Windows-brugerne). For at gøre det endnu værre, er det desværre også nødvendigt at kunne compile det med andet end gcc... Jeg vil høre, om der er nogen, der kan svare mig på følgende: 1) Er det rigtigt, at det er nemmest at få GSL til at arbejde sammen med C-kode i fht. LAPACK? 2) Er det rigtigt, at både GSL og LAPACK bruger BLAS til beregningerne? Eller er det CBLAS? 3) Er det rigtigt, at GSL burde kunne kompiles sammen med mit eksisterende C++-kode til et enkelt bibliotek? Og kan det overhovedet lade sig gøre med LAPACK? 4) Er det rigtigt, at jeg kan erstatte BLAS eller CBLAS med ATLAS? 5) Er det rigtigt, at ATLAS er mere optimeret end BLAS/CBLAS? 6) ATLAS står til at kunne udnytte diverse CPU features som L2 cache osv (ting som jeg ikke har så meget forstand på...). Er det noget, der afgøres på kompile-tidspunktet, eller kan det afgøres run-time (altså, skal jeg kende processoren godt til den PC jeg compiler til)? 7) Er der andre ting, jeg bør forholde mig til? Er der nogen åbenlyse biblioteker, jeg har overset? Håber nogen kan give mig svar på dette noget forvirrende felt :) Mange hilsner Lars Ribe
![]() |
![]() |
![]() |
||||||||||||
|
||||||||||||||
![]() | ||||||||||||||
|
||||||||||||||
![]() |
![]() |
![]() |