Un altro entusiasmante sviluppo associato a JMP 7 è il rilascio di 64-bit versione di JMP per entrambi i sistemi operativi Windows e Linux. Perché è così eccitante? Anche se un'applicazione a 64 bit come JMP potrebbe non essere necessariamente più veloce della sua controparte a 32 bit, la quantità di dati che JMP può analizzare è notevolmente aumentata. Riteniamo che ciò avrà un impatto significativo sui nostri utenti, molti dei quali continuano a porre richieste sempre maggiori a JMP in termini di dimensioni del set di dati che si aspettano che JMP gestisca.
A differenza del sistema SAS, JMP deve caricare l'intero set di dati in memoria prima di poter analizzare i dati. Quindi, JMP affronta un vincolo molto fondamentale in termini di dimensioni del set di dati che può analizzare: un vincolo imposto dalla dimensione dello spazio di indirizzamento definito dal sistema operativo stesso.
In linea di principio, in un sistema operativo a 32 bit, si dispone di 2 ^ 32 bit con cui formare l'indirizzo di una posizione in memoria in cui può essere memorizzato un dato; quindi, in teoria, quando JMP gira su un sistema operativo a 32 bit, ci sono 2 ^ 32 indirizzi "teorici" ai quali può accedere e / o memorizzare dati. Si potrebbe pensare che questo sarebbe più che sufficiente "spazio" per i dati, ma alcuni dei nostri utenti, in particolare quelli che stanno usando JMP Genomics, stanno già vivendo il dolore di questa limitazione. In effetti, alcuni dei loro set di dati sono così grandi che il JMP a 32 bit non è in grado di caricare i propri dati.
Ma in un sistema operativo a 64 bit, hai 2 ^ 64 bit con cui formare un indirizzo per una posizione di memoria. Questo costituisce un limite teorico di 16 exabyte; in termini di dimensioni dell'insieme di dati, si tratta di circa due miliardi di righe di dati. In altre parole, JMP a 64 bit può caricare un set di dati sostanzialmente più grande in memoria rispetto al suo predecessore a 32 bit mai visto prima. Ciò consente a JMP Genomics di analizzare set di dati che esulano dalle capacità di JMP a 32 bit.
Va notato che la descrizione di cui sopra è piuttosto di una semplificazione eccessiva. Non è proprio vero, ad esempio, che un'applicazione in esecuzione su un sistema operativo a 32 bit possa accedere a tutte le posizioni di memoria "teoriche" 2 ^ 32. Questo perché il sistema operativo limita l'intervallo di indirizzi a cui è consentita l'accesso a un'applicazione. Alcuni indirizzi "teorici" sono "off limits" per tutte le applicazioni; questi indirizzi speciali sono riservati al sistema operativo stesso. Una qualifica simile si applica a un sistema operativo a 64 bit: non tutti gli indirizzi "teorici" di 2 ^ 64 sono accessibili a un'applicazione come JMP. Tuttavia, quando vengono rilevate tutte queste qualifiche, resta il fatto che in pratica un sistema operativo a 64 bit offre un'enorme quantità di spazio di indirizzamento aggiuntivo rispetto a un sistema operativo a 32 bit. Ciò a sua volta significa che è possibile caricare più dati nella versione a 64 bit di JMP in esecuzione su un sistema operativo a 64 bit di quanto sia possibile prima di eseguire la versione a 32 bit di JMP su un sistema operativo a 32 bit.
Circa un anno fa, Linux Journal pubblicato un articolo, JMP a 64 bit per Linux scritto da Erin Vang di SAS Institute. (Vedere Linux Journal : Issue 149, Sept. 2006, pp. 82-85.) In quell'articolo, ho previsto che i sistemi operativi a 64 bit sarebbero aumentati di popolarità e che Linux avrebbe iniziato a guadagnare terreno sul desktop mentre altri utenti hanno adottato il sistema operativo Linux a 64 bit . Tuttavia, nessuna previsione è diventata realtà. La migrazione a 64 bit è stata molto più lenta di quanto mi aspettassi. E il tasso di adozione di Linux sul desktop è fondamentalmente piatto. Per quanto riguarda Linux, credo che gli utenti si siano astenuti dal migrare sul desktop Linux in parte perché le applicazioni da cui dipendono ancora non sono disponibili - almeno, non applicazioni di qualità paragonabili a quelle trovate su Windows e il Mac. E penso che lo stesso ragionamento si applichi al lento tasso di adozione del computing a 64 bit. Ovviamente, finché un utente dispone di serie di dati relativamente piccole da analizzare, vi è poca urgenza di passare a una piattaforma a 64 bit. Ma anche se la dimensione dei dati dell'utente sta travolgendo le loro applicazioni a 32 bit, non ha molto senso adottare un sistema operativo a 64 bit se le versioni a 64 bit delle applicazioni di cui l'utente ha bisogno non ci sono!
Fortunatamente, le persone che affrontano la sfida di analizzare set di dati sempre più grandi possono ora migrare a un sistema operativo Windows o Linux a 64 bit e sapere che almeno una potente applicazione sarà presente: la versione a 64 bit di JMP 7.
Una parola sul Mac
Sfortunatamente, sebbene fosse stata pianificata anche un'implementazione a 64 bit per la versione Macintosh di JMP 7, la nostra strategia per crearla era basata sul presupposto che Mela fornirebbe supporto per la migrazione di applicazioni basate su Carbon a 32 bit (come JMP) al suo Mac OS X a 64 bit. Tuttavia, poco prima del rilascio di JMP 7 (e dopo un considerevole sforzo da parte del nostro team di sviluppo Mac sul porto la nostra applicazione basata su Carbon a Mac OS X a 64 bit), Apple ha abbandonato il proprio supporto per questo percorso di migrazione. Invece, Apple ha annunciato che se si desidera creare un'applicazione a 64 bit per Mac OS X, l'applicazione deve essere scritta per il targeting dell'API Cocoa. Questo ci ha impedito di creare una versione a 64 bit di JMP 7 per Mac, dal momento che il targeting di Cocoa avrebbe comportato una massiccia riscrittura del codice di livello "host" all'interno di JMP. Data la tempistica dell'annuncio di Apple, semplicemente non era il momento di convertire JMP come richiesto. Questa è una brutta notizia per i nostri utenti Macintosh, poiché significa che non saranno in grado di sfruttare i vantaggi offerti da uno spazio di indirizzi a 64 bit. L'unica consolazione che posso offrire è che all'interno del ciclo di sviluppo di JMP 8, pianifichiamo di riscrivere completamente l'intero livello host Macintosh di JMP in Objective C e di indirizzare l'API Cocoa, convertendo quindi JMP in un'applicazione veramente nativa basata su Cocoa. Questo ci consentirà di produrre una versione a 64 bit di JMP per il Mac in tempo utile per il rilascio di JMP 8. Ma per il momento, tutto ciò che posso fare è estendere le mie scuse ai nostri utenti Mac, molti dei quali sono stati fedeli utenti JMP per anni, alcuni risalendo fino alla versione 1 di JMP per Mac. Per favore sii paziente con noi; realizzeremo la versione a 64 bit di JMP quando rilasciamo la versione 8.
John Munoz ha scritto:
Aspettavo con impazienza la versione a 64 bit di JMP da un po 'di tempo. Ho saputo da vari fonti all'interno di JMP che è pronto per il rilascio, ma sono stato frustrato dal non avere una data certa. Puoi commentare la data di rilascio di JMP 64-bit per Windows?
Richard Potter ha scritto:
John,
Apprezzo il tuo interesse per la versione a 64 bit di JMP per Windows e
Mi scuso per il fatto che fino ad ora non siamo stati in grado di fornire una data di uscita definitiva per questo prodotto.
Abbiamo in programma di rilasciare JMP a 64 bit per Windows e Linux a metà ottobre di quest'anno. Spero che saremo in grado di annunciare la sua disponibilità durante la settimana del 15-19 ottobre.
Saluti,
--Richard
maccode ha scritto:
Mi piacerebbe dirvi che, la versione Linux di 64 bit di JMP alza il limite. Ora JMP può andare oltre i confini del limite di memoria di indirizzamento a 32 bit fino a un limite teorico di 16 exabyte, il che consentirebbe a JMP di lavorare su due miliardi di righe di dati. Anche la versione Linux di JMP a 64 bit di JMP è multithreaded e le dimensioni e la complessità dei problemi che qualcuno può risolvere usando JMP è sbalorditiva. Grazie.