Domanda

C'è qualche specifici settori di Software Engineer / Computer Science dove c'è una marcata differenza nello sviluppo per i sistemi a 64 bit? Ho codifica per circa 10 anni, e dal momento che la rottura dei sistemi a 64 bit, il mio codice non è cambiato di un bit.

Quali applicazioni che un singolo programmatore può codificare come un progetto parallelo richiedono di utilizzare la tecnologia a 64 bit?

È stato utile?

Soluzione

Tutto ciò che richiede più di 4 GB di lavoro e di memoria di programma certamente qualificarsi, dal momento che è la quantità massima di memoria che un sistema a 32 bit possono indirizzare direttamente.

Poiché i numeri 64 bit possono risiedere nei registri della CPU, calcoli richiedono numero di queste dimensioni vedrebbe un miglioramento delle prestazioni.

Altri suggerimenti

A parte lo spazio indirizzo o grandi calcoli, raddoppiando la dimensione della parola aiuta più la roba di basso livello, e per lo più per le persone che stanno per essere fare kernel hacking o la scrittura dei driver di periferica. Per esempio, diciamo che si dispone di un flusso di byte da una connessione di rete e si deve elaborarli. A questo punto è possibile estrarre i byte dalla memoria principale per registri della CPU 8 alla volta, piuttosto che 4. Ma vorrei che tu abbia bisogno di una libreria stringa "64 bit consapevole" per approfittare di questo.

Aneddoticamente, abbiamo osservato un aumento delle prestazioni durante l'aggiornamento da 32 bit di SQL Server a 64 bit di SQL Server (2005) sullo stesso hardware (un computer a 64 bit).

Recentemente abbiamo portato su alcune delle nostre librerie internamente utilizzati per 64 bit. Il codice C non ha cambiato affatto; abbiamo avuto solo per ottenere le versioni a 64 bit delle librerie di terze parti che Link contro e capire quali nuove direttive del compilatore abbiamo bisogno di usare. Il più grande mal di testa è stato trovare versioni a 64 bit dei nostri dipendenze e refactoring il nostro sistema di compilazione per gestire sia a 32-bit e 64-bit.

Questo non vuol dire che altri software non richiede la modifica. Ad esempio, se si pack i dati per adattarsi all'interno dei confini di parola, si potrebbe ora essere incline a confezionare in modo diverso quando si programma per un sistema a 64 bit.

Se avete bisogno di chiedere, probabilmente non ottenere alcun vantaggio, come si sta probabilmente non costruendo nel codice alcuna ipotesi circa la dimensione di int. Piuttosto alcuni casi d'uso, e tutti abbastanza di basso livello, vedranno alcun aumento di velocità. Bignum e pesanti intero aritmetica su numeri molto grandi saranno più veloce (come cripto).

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top