GNU Octave 11.1: prestazioni estreme, matrici sparse e un clone di Matlab

Punti chiave:
  • Operazioni di convoluzione e piegatura della matrice fino a 150 volte più veloci con selezione automatica del percorso.
  • Indicizzazione delle proprietà esatte delle classi in Matlab e supporto per argomenti di gestione null nelle funzioni statistiche.
  • Nuova funzione randi che consuma 3,5 volte meno memoria e algoritmo Kahan integrato per una precisione assoluta nelle norme vettoriali.
  • Il comando pkg install rileva automaticamente gli URL e i file locali, aggiungendo la convalida SHA256.
  • Esportazione PDF più veloce del 25%, icone SVG native e miglioramenti nel rendering della trasparenza OpenGL.

Logo GNU Octave

Pochi giorni fa è stato annunciato Rilascio della nuova versione di GNU Octave 11.1, una versione con la quale il progetto non solo colma le lacune critiche con la sua controparte commerciale, Matlab, ma anche iIntroduce ottimizzazioni che ridefiniscono le sue prestazioni nell'analisi dei big data.

Questa versione presenta miglioramenti che vanno dall'efficienza a basso livello nella gestione della memoria alla modernizzazione dell'interfaccia grafica e del gestore dei pacchetti.

Principali nuove caratteristiche di GNU Octave 11.1

Con il rilascio di Octave 11.1, il software è diventato una potenza di calcolo completamente rinnovata. E questo perché gli ingegneri sono riusciti enormi progressi nelle prestazioni delle operazioni di ripiegamento e convoluzione delle matriciPer array corti e larghi (in particolare vettori di riga), i tempi di esecuzione sono stati accelerati tra 10 e 150 volte, a seconda della topologia dei dati. Il sistema ora È abbastanza intelligente da analizzare l'orientamento dell'ingresso e seleziona automaticamente il percorso di calcolo algoritmico più veloce senza richiedere la trasposizione manuale da parte dell'utente.

La gestione del Anche la memoria e la precisione aritmetica sono state riscritte. rigoroso. La funzione di La generazione di numeri interi pseudocasuali è stata riprogettata da zeroraggiungendo prestazioni 4.5 volte più veloci consumando 3.5 volte meno RAM. Inoltre, ilLe funzioni di sommatoria e accumulazione elaborano gli input logici fino a 6 volte più velocemente.

Per i calcoli scientifici che non tollerano margini di errore, il La funzione norma vettoriale ora utilizza l'algoritmo di sommatoria di Kahan, riducendo drasticamente gli errori in virgola mobile, mentre la ricerca delle radici nelle funzioni non lineari raggiunge livelli di accuratezza quasi perfetti.

Convergenza strutturale con Matlab

La compatibilità incrociata è il Santo Graal di Octave, e La versione 11.1.0 rimuove enormi ostacoli per gli sviluppatori. Il sistema orientato agli oggetti è stato migliorato nell'indicizzazione delle proprietà definite con la parola chiave class. Ora, quando si invoca un elemento utilizzando la notazione a punto, l'interprete dà priorità alla ricerca del nome del simbolo come proprietà e, solo se non esiste, cerca un metodo associato, imitando perfettamente il comportamento del motore Matlab.

D'altra parte, lo si evidenzia Decine di comandi ora supportano in modo nativo gli argomenti di dimensionalità e la gestione dei valori valori nulli che in precedenza erano esclusivi del suo concorrente commerciale. La funzione di adattamento polinomiale, ad esempio, è stata migliorata per restituire il coefficiente di determinazione ($R^2$), fornendo una metrica statistica immediata su quanto bene il modello si adatti ai dati di input. Inoltre, È stata abilitata la trasmissione automatica per operazioni matematiche complesse. che mescolano matrici sparse con matrici complete, o matrici diagonali con vettori regolari.

Il flusso di lavoro per l'estensione delle capacità linguistiche è stato semplificato e reso sicuro. Il gestore interno dei pacchetti ha lasciato la sua vecchia sede di bandiere manuali. Il Il comando di installazione ora include un parser. in grado di determinare automaticamente se l'argomento fornito è un percorso di file locale, un URL diretto o un nome di pacchetto dal repository centrale e di procedere al download e all'installazione.

Per gli ambienti aziendali e di ricerca che richiedono riproducibilità, sicurezza e latenza sono state ottimizzate. Octave 11 implementa la memorizzazione nella cache locale dei metadati dei pacchetti, aggiornandoli in background solo quando strettamente necessario. Parallelamente, qualsiasi pacchetto scaricato dalla rete viene ora verificato crittograficamente utilizzando un hash SHA256 per garantire che il codice non sia stato manomesso durante il transito.

Modernizzazione visiva e grafica

L'esperienza dell'utente finale sta abbandonando la rigidità del passato. L'interfaccia utente grafica è stata ottimizzata per supportare i display ad alta risoluzione. Grazie all'implementazione di icone vettoriali SVG scalabili in modo nativo, la gestione di progetti di grandi dimensioni è semplificata da un Esplora File intelligentemente suddiviso in due schede separate: una per la navigazione nell'albero del sistema operativo e un'altra dedicata esclusivamente alla gestione dei documenti aperti nell'editor di codice. Anche il motore di rendering grafico non è da meno.

La La stampa di cifre e grafici in formato PDF è aumentata del 25%. Eliminazione di fastidiosi colli di bottiglia durante l'esportazione di report di ricerca. Gli utenti che visualizzano dati complessi su sistemi moderni potranno beneficiare di un significativo miglioramento nell'alpha blending (trasparenza) sfruttando le ultime versioni di OpenGL.

E per i puristi della presentazione dei dati, i grafici polari sono stati corretti per impedire che i cambiamenti di prospettiva oscurino l'area del grafico, mentre il motore di testo ora rispetta rigorosamente gli spazi iniziali e finali nelle etichette degli assi.

Infine, se siete interessati a saperne di più su questa nuova versione, potete consultare il dettagli nel seguente collegamento.

Come installare GNU Octave su Linux?

Per coloro interessati ad installare questa nuova versione di GNU Octave, vorrei menzionare che, Per ora, la versione contenuta nei repository del main Le distribuzioni sono un po' indietro, quindi le nuove versioni richiedono un po' di tempo per essere aggiornate nei repository. Tuttavia, è possibile eseguire l'installazione non appena disponibile utilizzando uno dei seguenti comandi.

Ad esempio, per quelli che lo sono utenti di Debian, Ubuntu o qualsiasi distribuzione derivata oppure in base a questi, possono eseguire l'installazione aprendo un terminale e digitando:

sudo apt-get install ottava

Ora, per il caso di coloro che lo sono utenti di Arch Linux, Manjaro o qualsiasi altra distribuzione basata su Arch Linux, L'installazione viene eseguita con il seguente comando:

sudo pacman -S ottava

Mentre per chi lo è Utenti OpenSUSE, Possono effettuare l'installazione con:

sudo zypper install octave

Chi preferisce utilizzare i pacchetti Flatpak può installare Octave sul proprio sistema digitando il seguente comando:

flatpak install flathub org.octave.Octave

Un altro metodo è quello di utilizzare i pacchetti Snap; l'installazione avviene digitando:

sudo snap install octave