jblas unter Arch Linux

Ich möchte die Matrix auch unter Arch Linux berechnen! Mit Clojure (Java)!

Verfahren

  1. Erstellen Sie eine Arch-Linux-Umgebung (neueste Java-Umgebung (openjdk), installieren Sie auch Ruby) (https://qiita.com/elect/items/328c28c310b385de7d23).

  2. Laden Sie als Nächstes die JAR-Datei von [jblas] herunter (http://jblas.org/). (Von Erste Schritte-> Laden Sie das Glas von der Downloadseite herunter)

  3. Versuchen Sie es mit Java -server -jar jblas-1.4.2.jar.

  4. Ein solcher Fehler wird zurückgegeben

    java -jar jblas-1.2.4.jar 
    -- org.jblas INFO jblas version is 1.2.4
    Simple benchmark for jblas
    Running sanity benchmarks.

    checking vector addition... ok
    -- org.jblas CONFIG BLAS native library not found in path. Copying native library from the archive. Consider installing the library somewhere in the path (for Windows: PATH, for Linux: LD_LIBRARY_PATH).
    -- org.jblas CONFIG ArchFlavor native library not found in path. Copying native library libjblas_arch_flavor from the archive. Consider installing the library somewhere in the path (for Windows: PATH, for Linux: LD_LIBRARY_PATH).
    -- org.jblas CONFIG Loading libjblas_arch_flavor.so from /lib/static/Linux/amd64/, copying to libjblas_arch_flavor.so.
    -- org.jblas ERROR Couldn't load copied link file: java.lang.UnsatisfiedLinkError: /tmp/jblas5239787082843388211/libjblas_arch_flavor.so: libgfortran.so.3: cannot open shared object file: No such file or directory.

    On Linux 64bit, you need additional support libraries.
    You need to install libgfortran3.

    For example for debian or Ubuntu, type "sudo apt-get install libgfortran3"

    For more information, see 
    https://github.com/mikiobraun/jblas/wiki/Missing-Libraries
    Exception in thread "main" java.lang.UnsatisfiedLinkError: org.jblas.NativeBlas.dgemm(CCIIID[DII[DIID[DII)V
	at org.jblas.NativeBlas.dgemm(Native Method)
	at org.jblas.SimpleBlas.gemm(SimpleBlas.java:247)
	at org.jblas.DoubleMatrix.mmuli(DoubleMatrix.java:1781)
	at org.jblas.DoubleMatrix.mmul(DoubleMatrix.java:3138)
	at org.jblas.util.SanityChecks.checkMatrixMultiplication(SanityChecks.java:91)
	at org.jblas.util.SanityChecks.main(SanityChecks.java:182)
	at org.jblas.benchmark.Main.main(Main.java:114)
    -- org.jblas INFO Deleting /tmp/jblas5239787082843388211/libjblas_arch_flavor.so
    -- org.jblas INFO Deleting /tmp/jblas5239787082843388211

Kurz gesagt bedeutet dies, dass libgfortran.so.3 nicht gefunden werden kann.

  1. Installieren Sie gcc-6. (yaourt-s gcc6) Sie benötigen libgfortran.so.3, das darin enthalten ist

  2. Link mit sudo ln -s /usr/lib/gcc/x86_64-pc-linux-gnu/6.XX/libgfortran.so.3 / usr / lib / (6.XX ist der Versionsname) / Fügen Sie es unter usr / lib ein (schreiben Sie es mit einem absoluten Pfad)

  3. Versuchen Sie java -server -jar jblas-1.2.4.jar erneut und es funktioniert gut

    java -server -jar jblas-1.2.4.jar
    -- org.jblas INFO jblas version is 1.2.4
    Simple benchmark for jblas
    Running sanity benchmarks.
    checking vector addition... ok
    -- org.jblas CONFIG BLAS native library not found in path. Copying native library from the archive. Consider installing the library somewhere in the path (for Windows: PATH, for Linux: LD_LIBRARY_PATH).
    -- org.jblas CONFIG ArchFlavor native library not found in path. Copying native library libjblas_arch_flavor from the archive. Consider installing the library somewhere in the path (for Windows: PATH, for Linux: LD_LIBRARY_PATH).
    -- org.jblas CONFIG Loading libjblas_arch_flavor.so from /lib/static/Linux/amd64/, copying to libjblas_arch_flavor.so.
    -- org.jblas CONFIG Loading libjblas.so from /lib/static/Linux/amd64/sse3/, copying to libjblas.so.
    checking matrix multiplication... ok
    checking existence of dsyev...... ok
    [-0.210656, -0.640445, -0.451188; -0.509085, -0.116445, 0.796815; -0.807515, 0.407556, -0.398408; 0.210656, 0.640445, -0.052780]
    [17.233688; 1.414214; 0.000000]
    [-0.470605, 0.782218, 0.408248; -0.571449, 0.082339, -0.816497; -0.672293, -0.617540, 0.408248]
    [17.233688; 1.414214; 0.000000]
    checking existence of dgesvd...... ok
    Checking complex return values... (z = -21.0 + 88.0i)
    Check whether we're catching XERBLA errors. If you see something like "** On entry to DGEMM  parameter number  4 had an illegal value", it didn't work!
    checking XERBLA... ok
    Sanity checks passed.

    Each benchmark will take about 5 seconds...

    Running benchmark "native matrix multiplication, single precision".
    n = 10   :  1.281 GFLOPS (3203374 iterations in 5.0 seconds)
    n = 100  : 11.192 GFLOPS (27980 iterations in 5.0 seconds)
    n = 1000 : 18.981 GFLOPS (48 iterations in 5.1 seconds)
    -- org.jblas INFO Deleting /tmp/jblas6793705967272229922/libjblas.so
    -- org.jblas INFO Deleting /tmp/jblas6793705967272229922/libjblas_arch_flavor.so
    -- org.jblas INFO Deleting /tmp/jblas6793705967272229922

Jetzt können Sie jblas verwenden.

Beispiel mit jblas (Clojure)

Werbung? : Clojure for Data Science ist gut!

Ich möchte mit dem maschinellen Lernen beginnen, aber ich möchte nicht an einem Ort beginnen, den ich nicht plötzlich verstehe! Es ist ein Buch für Leute, die sagen. Sie können eine breite Palette von der Ableitung des Durchschnitts bis zur Klassifizierung und Regression lernen. Den Quellcode finden Sie auch unter hier. Wenn Sie also sehen möchten, was Sie vorerst tun können, können Sie ihn hier ausprobieren.

Recommended Posts

jblas unter Arch Linux
Installieren Sie Minecraft unter Arch Linux
Downgrade von Mcomix mit Arch Linux
Einrichten von OpenSSH unter Arch Linux
Installieren Sie Arch Linux auf DeskMini A300
Rippen Sie Musik-CDs unter Arch Linux
Arch Linux Empfehlung
Erstellen Sie einen NFS-Server unter Arch Linux
Grundlegende Verwendung von Btrfs in Arch Linux
Erstellen Sie einen Samba-Server unter Arch Linux
Bis Sie Arch Linux auf VMware installieren
Prozesse unter Linux dämonisieren
Linux (WSL) unter Windows
NAT-Router unter Linux
Kompilieren Sie die Windows-Version von nim von arch | linux
Entwickeln Sie .NET unter Linux
Wake on Lan unter Linux
Liefern Sie OBS-Filmmaterial unter Arch Linux an Zoom
Überwachen Sie den Datenverkehr unter Linux
Aktualisieren Sie vscode unter Linux
Installationshinweise für Arch Linux
Erstellen Sie LiveUSB unter Linux
Erstellen Sie eine Arch Linux-Umgebung auf Raspai
Linux-Betrieb unter Win10
Verwendung von C216 Audio Controller unter Arch Linux
Installieren Sie Docker unter Arch Linux und führen Sie es remote aus
NTP-Konfigurationsnotiz unter Linux
Installieren Sie Linux auf Chromebox
Überwachen Sie die Festplattennutzung unter Linux
Verwenden Sie Github Desktop unter Linux
Installieren Sie JDK unter Linux
Elixier = vertraut mit Linux Mint
Aufnahme und Wiedergabe unter Linux
TTL-Prüfung mit Linux-Router
Lesen Sie die Kernspannung unter Linux
Setzen Sie jenv in Amazon Linux ein
Einfacher Befehl df unter Linux
Linux unter Windows -1-: Einführung in Debian
Installieren Sie tomcat 5.5 unter Amazon Linux.
Einführung in Elixir in Linux Mint
Installieren von Homebrew unter Amazon Linux 2
Fügen Sie den Link unter Linux ein
Aufbau einer Linux-Umgebung (in einer WSL-Umgebung)
Verwenden Sie Linux unter Windows 10 (WSL2)
Spieleverteilung auf YouTube Live unter Arch Linux (Nintendo Switch)
Verwenden Sie host.docker.internal unter Linux (Docker-Compose erforderlich)
Installieren Sie Python Pillow unter Amazon Linux
Einfaches Kopieren in die Zwischenablage unter Linux
Vollständige Installation des menschlichen Homebrew-ArchLinux-Memorandums Nr. 1
Installieren Sie Oracle Java8 unter Amazon Linux2
Versuchen Sie, OpenAM unter Amazon Linux zu installieren
Abschluss des Docker-Befehls unter Linux
Führen Sie einen Linux-Server mit GCP aus
So installieren Sie VMware-Tools unter Linux