Le CPU sono progettate in una certa misura tenendo presente il software che le persone scriveranno per questo, implicitamente o esplicitamente. Mi sembra che se si guarda alla progettazione di architetture di insiemi di istruzioni, sono molto "imperativi", nel senso che ogni istruzione codifica un comando di stile imperativo. Mi …
So che questa è una domanda molto comune. Ma ho un'angolazione diversa nella mia mente. Proverò solo ad articolarlo qui. Da quello che so, ogni istruzione eseguita da una CPU è nel linguaggio macchina e tutto ciò che la CPU può fare è eseguire alcune operazioni aritmetiche grazie a ALU …
Supponiamo stiamo dato due numeri lll e e che vogliamo trovare per l \ le i, \, j \ le r .rrrmax(i⊕j)max(i⊕j)\max{(i\oplus j)}l≤i,j≤rl≤i,j≤rl\le i,\,j\le r L'algoritmo ingenuo controlla semplicemente tutte le coppie possibili; ad esempio in ruby avremmo: def max_xor(l, r) max = 0 (l..r).each do |i| (i..r).each do |j| …
Quali sono i dispositivi e le loro interconnessioni utilizzate insieme ai processori quantistici? Sono compatibili con dispositivi hardware come cache, RAM, dischi dei computer attuali?
Gli algoritmi e le strutture di dati ignari della cache sono una novità, introdotti da Frigo et al. in algoritmi cache-ignari, 1999 . La tesi di Prokop dello stesso anno introduce anche le prime idee. L'articolo di Frigo et al. presentare alcuni risultati sperimentali che mostrano il potenziale della teoria …
Quando si verifica un interrupt, il processore anticipa il processo corrente e chiama il codice del kernel per gestire l'interrupt. Come fa il processore a sapere dove inserire il kernel? Comprendo che ci sono gestori di interrupt che possono essere installati per ogni linea di interrupt. Ma poiché il processore …
Ci sono modifiche che potrebbero essere apportate alle CPU per renderle più performanti per i runtime simultanei come Rust? Ad esempio, ci sono modifiche alle implementazioni di previsione delle filiali o alle dimensioni della cache che potrebbero aiutare i runtime simultanei? Ho l'impressione che gli attuali progetti di CPU potrebbero …
Quando si riporta la complessità algoritmica di un algoritmo, si presume che i calcoli sottostanti vengano eseguiti su una macchina astratta (ad esempio RAM) che si avvicina a una CPU moderna. Tali modelli ci consentono di segnalare la complessità temporale e spaziale degli algoritmi. Ora, con la diffusione delle GPGPU …
Ho pensato che questa domanda fosse meglio servita nella parte CS di Stack Exchange. Ora che abbiamo GPGPU con lingue come CUDA e OpenCL, le estensioni SIMD multimediali (SSE / AVX / NEON) hanno ancora uno scopo? Di recente ho letto un articolo su come utilizzare le istruzioni SSE per …
I nostri computer attuali usano bit, quindi usano il sistema numerico binario. Ma ho sentito che i futuri computer quantistici useranno qubit invece di semplici bit. Dato che nella parola "qubit" c'è la parola "bi", ho pensato inizialmente che ciò significasse che i computer quantistici avrebbero usato binario (base 2). …
Ci sono molti dettagli su come aggiungere additivi lookahead come Kogge-Stone, Lander-Fischer, ecc. Nei corsi CS del college. Sono descritti come "comuni nel settore". Tuttavia, non riesco a trovare alcuna prova (a parte forse la catena di trasporto di Manchester) degli ultimi tempi che sono stati effettivamente utilizzati ovunque in …
Ho letto che i sistemi operativi come Android e iOS sono in qualche modo ottimizzati per migliorare la durata della batteria. La mia comprensione è che una CPU esegue un certo numero di operazioni in un determinato momento, quindi penso che sia possibile accelerare le applicazioni riducendo il numero di …
Ho osservato che ci sono due diversi tipi di stati nella previsione del ramo. Nell'esecuzione superscalare, dove la predizione del ramo è molto importante, ed è principalmente nel ritardo dell'esecuzione piuttosto che nel ritardo del recupero. Nella pipeline di istruzioni, in cui il recupero è più un problema poiché le …
Sto leggendo "L'anima di una nuova macchina" di Tracy Kidder in cui un team di Data General progetta una nuova macchina (nome in codice "Eagle", in seguito chiamato MV / 8000). È un'estensione a 32 bit di un'architettura precedente (Eclipse a 16 bit). Uno dei temi ruotanti sembra essere quello …
L'ho letto in vari posti come questo , che l'hyper-threading porta al degrado delle prestazioni. Non riesco a capire perché o come l'hyper-threading porta al degrado. Perché è così che anche quando Hyper-threading consente al sistema operativo di utilizzare risorse gratuite si verifica il degrado. Anche se i benchmark indicano …
We use cookies and other tracking technologies to improve your browsing experience on our website,
to show you personalized content and targeted ads, to analyze our website traffic,
and to understand where our visitors are coming from.
By continuing, you consent to our use of cookies and other tracking technologies and
affirm you're at least 16 years old or have consent from a parent or guardian.