Guarda alcune conferenze per vedere alcuni argomenti:
ISCA: Proceedings of the 43rd International Symposium on Computer Architecture
ASPLOS: Proceedings of the Twenty-Second International Conference on Architectural Support for Programming Languages and Operating Systems
Striking ones to me are:
Deep Learning: Sulla base di alcuni dei documenti che ho sfogliato, questa è un'area di ricerca molto giovane che non è ancora vicina a raggiungere lo stato dell'arte per quanto riguarda l'apprendimento profondo, il che significa che c'è un sacco di frutta a basso costo. I documenti accettati a ISCA 2016 si concentrano generalmente sugli acceleratori per le reti neurali convoluzionali. L'apprendimento profondo è enormemente popolare nell'industria, e questa area di ricerca continuerà a crescere, anche se non sono del tutto convinto che gli acceleratori di apprendimento profondo supereranno effettivamente le GPU nel mondo reale. Tuttavia, se siete interessati a ottenere un dottorato in architettura di computer, questo è il posto in cui lo otterrete sicuramente.
Memoria: I tempi di accesso alla memoria non stanno accelerando così rapidamente come i tempi della CPU, il che in effetti significa che l'accesso alla memoria è più "lento", o meglio, richiede più cicli di CPU. L'interesse per la tecnologia e gli algoritmi che aiutano ad accelerare l'accesso alla memoria non andrà via molto presto, secondo me. Uno dei miei professori stava facendo ricerca sulle tecnologie a cambiamento di fase, anche se non ho seguito lo stato dell'arte su questo argomento.
Datacenter: Anche se forse non è così "caldo" come il Deep Learning, questo è un campo enormemente importante e d'impatto che interesserà ogni grande azienda tecnologica che ospita i propri data center (es. Google, Microsoft, Amazon). Senza connessioni con l'industria, la ricerca in quest'area è difficile, ma qualsiasi soluzione in quest'area farà letteralmente risparmiare alle aziende centinaia di milioni di dollari.
Power: La proliferazione dei dispositivi mobili così come il muro dell'alimentazione rendono necessario un bisogno di soluzioni a basso consumo. La necessità di risparmiare energia non andrà via, quindi ci dovrebbe essere un ampio interesse e opportunità in questo settore.
Questi sono alcuni altri argomenti che ricordo di aver letto nel 2013-2014 ma che potrebbero essere passati di moda da allora:
Architetture eterogenee: Siamo al punto in cui non siamo in grado di alimentare tutti i transistor che abbiamo sul chip. I modi per aggirare questo problema hanno generalmente coinvolto architetture eterogenee, dove si hanno più unità di calcolo distinte che sono ottimizzate in termini di prestazioni e potenza per compiti specifici. Poi, è possibile indirizzare il calcolo a quelle unità. Ho visto alcuni abstracts in quest'area nella tabella dei contenuti dell'ISCA, quindi sembra che questo sia ancora un campo rilevante, anche se un campo più maturo che probabilmente ha meno frutti a portata di mano rispetto ad altre discipline.
Sicurezza hardware: La sicurezza è tremendamente importante in tutte le discipline informatiche. Tuttavia, gli exploit sono molto più facili da implementare a livello di software piuttosto che a livello di hardware, e avere soluzioni hardware per la sicurezza finisce per essere piuttosto impraticabile e per ottenere benefici minimi, a mio parere. Tuttavia, questo non impedirà alle ricerche di provarci, e sono abbastanza sicuro che la gente sta ancora pubblicando articoli in quest'area.
Purtroppo, un sacco di argomenti che sono fondamentali per comprendere l'architettura dei computer sono fondamentalmente morti a questo punto:
Previsione del ramo: Questo campo è morto. La predizione delle diramazioni è già abbastanza buona.
Ottimizzazioni single-core/parallelismo a livello di istruzione: Mentre sarebbe bello avere ancora un po' di innovazione in questo campo, abbiamo sfortunatamente colpito il muro della potenza, e quindi ora otteniamo la maggior parte dei nostri benefici di performance dal multi-core. Inoltre, la nostra ultima speranza per quanto riguarda il parallelismo a livello di istruzioni erano le macchine dataflow, che purtroppo è un campo morto.