Kysymys:
Mitä tehokkaita matriisitoteutuksia Java-käyttöjärjestelmässä on
demongolem
2014-02-05 07:50:11 UTC
view on stackexchange narkive permalink

Tarvitsen aika ajoin kirjastoa, joka voi suorittaa matriisikertomuksen minulle. Luulen, että olen viimeksi käyttänyt EJML: ää, mutta se ei ole välttämättä helpoin paketti käyttää, kun työskentelen ominaisuusvektorien kanssa. Hyvän paketin saaminen voi tarkoittaa eroa odotusaikoissa, jotta laskelmat saadaan päätökseen. Joten mitkä ovat tehokkaimmat paketit siellä? Onko olemassa hyviä vertailuarvoja erilaisten pakettien mahdollisesti esittämien väitteiden tueksi?

Kaksi vastused:
#1
+6
demongolem
2014-02-12 08:58:15 UTC
view on stackexchange narkive permalink

Anna minun antaa vastauksen, koska tämä kysymys on vähän hiljainen. EJML-verkkosivustolta löysin tämän kaavion:

enter image description here

Joten tämän mukaan EJML on yleisesti ottaen paras käyttää puhdasta Java-koodia pienemmille matriiseille ja MTJ on paras suurille matriisit. Jälleen piti olla varovainen yhden ehdokkaan raportoinnin kanssa, mutta tämä antaa jonkinlaisen käsityksen käytettävissä olevista paketeista.

Tämä on sellainen vastaus, joka saa minut ajattelemaan, että tämä sivusto voisi todella toimia
#2
+1
damienfrancois
2014-02-05 13:12:27 UTC
view on stackexchange narkive permalink

JBLAS vastaa C / FORTRAN-standardin BLAS-kirjastoa ja on erittäin nopea. Sen mukana toimitetaan esikäännetyt binäärit ja se käyttää laitteistoa mahdollisimman tehokkaasti vaihtamalla toteutusta laitteistotyypistä riippuen.

Toinen vaihtoehto on JAMA.

Äänestän teitä, mutta etsin tarkempaa tietoa siitä, mikä tekee niistä tehokkaita / kuinka tehokkaita ne ovat verrattuna toisiinsa.
Mitä tarkoitat C / Fortran standard blas? Tarkoitatko NetBlasia? (Mikä IIRC on olemassa vain viitteenä ja on rakennettu silmukoita varten ja on hidas.) Tarkoitatko Atlasia, joka on täydennetty omalle järjestelmällesi? Tarkoitatko erittäin optimoitua OpenBlasia? Tarkoitatko, että se etsii mitä BLAS-kirjastoa sinulla on Asennettu ja tarjoaa kääre sen ympärille? Ei ole C-vakio BLAS.
Tarkoitan alkuperäistä netBLAS API -määritystä.


Tämä Q & A käännettiin automaattisesti englanniksi.Alkuperäinen sisältö on saatavilla stackexchange-palvelussa, jota kiitämme cc by-sa 3.0-lisenssistä, jolla sitä jaetaan.
Loading...