Domande Orale

YmirYmir Posts: 183
Raccolta domande

Baiardi (2015):
- Scrivimi il microprogramma di un arbitro a richieste indipendenti
- Metodo indirizzamento diretto della cache con confronti vari, modulo e tag
- Multithreading su superscalare, come funziona
- Differenza fra eccezioni e interruzioni e come vengono gestite dal processore
- Cosa sono i benchmark
- Arbitro decentralizzato (come funziona, è fair, ecc)
- Ciclo di clock del processore (quanto, perchè, ecc.)
- Metodo associativo su insiemi (come funziona, quanti bit, ecc)
- Implementazione send e receive (classe 26, unico meteodo?, ecc)
- Metodo diretto di indirizzamento della cache
- Microprogramma arbitro a richieste indipendenti
- Calcolo del ciclo di clock
- Metodi per ridurre il degrado dei salti condizionati
- Metodo completamente associativo di indirizzamento della cache
- Prestazioni del processore, benchmark
- Automa dell'arbitro a richieste indipendenti fair
- Cooperazione tra processi mediante send e receive (vecchio ordinamento)

Danelutto (2015):
- Cosa succede se elimino la pc da una rete sequenziale
- Spiegare il multithreading interleaving e blocked
- Spiegare le dipendenze iu-eu, eu-eu e qualche nozione generale sul processore superscalare
- Memoria

Comments

  • Esame orale sostenuto stamani, do il mio piccolo contributo.
    Voto dello scritto: ammesso con non sufficiente
    Domande:
    - Implementare un arbitro a richieste indipendenti senza l'utilizzo del registro turno
    - Vettore interruzioni, e visto che avevo fatto confusione tutta la gestione dell'interruzione
    - domanda per il vecchio ordinamento : implementare la receive ( praticamente scena muta)
  • DaniloDanilo Posts: 1
    Esame sostenuto stamani con Danelutto:
    -dipendenze EU-EU (come funzionano, cosa fare per ridurne il degrado)
    -multithreading blocked e interleaving
    -condizioni di Bernstein (quali sono con esempi di microcodice)
    -memoria: come funzionano le cache di primo e secondo livello (in generale e in caso di fault)
  • RPlantRPlant Posts: 1
    Ciao a tutti, orale fatto con Danelutto:
    - trattamento delle interruzioni in maniera molto dettagliata (perché il mprogramma è fatto da 3 istruzioni, se si poteva fare con meno, ecc)
    - processore superscalare in generale e come si modificano IM, IU, DM, EU rispetto al processore pipeline
    - spiegare il multithreading blocked e interleaving
    - controllo residuo con esempio, condizioni di bernstein con piccolo codice esempio
    - realizzazione tramite componenti logici delle interfacce a transizione di livello per la sincronizzazione (RDY e ACK)
    - varie domande sulle gerarchie di memoria (come funzionano le cache, come si possono realizzare ecc)
    - cooperazione tra processi ed implementazione di send e receive (sono classe 26 altrimenti il capitolo sui processi non farebbe parte del programma).

    All'orale preferisce che abbiate capito i concetti e che sappiate ragionare rispetto a quello che vi chiede piuttosto che definizioni imparate a memoria.
    In bocca al lupo!

  • MpacMpac Posts: 10
    Domande orale con Baiardi sostenuto l'ultimo appello di luglio:

    - Arbitro a richieste indipendenti
    - Indirizzamento associativo su insiemi (gli interessa particolarmente il numero di bit di TAG, offset, modulo)
    - Gestione del rimpiazzo di una pagina in cache e le politiche write-back e write-through
    - Tecniche per eliminare le bolle dipese dai salti
    - Mix e benchmark
  • Domande orale Danelutto appello straordinerio:
    - Multithread e supporto firmware per attuarlo
    - Superscalare e supporto firmware per attuarlo
    - Differenze fra le due architetture, con alcuni esempi di possibile funzionamento
    - Casi di Riuso e Località istruzioni assembly
    Durata 1 ora e 10 minuti, molto tranquillo e disposto a farti ragionare
  • Domande di Baiardi di questa sessione:
    (vedendo uno studente che parlava con un collega appena uscito dall'orale gli ha detto: "è inutile che ti fai dire le domande, tanto le cambio")

    - Differenza fra simultaneus, interliving e blocked multithreading
    - Metodo del benchmark
    - Quali vincoli devono avere le unità per poter funzionare in pipeline?
    - Come funziona il caching con il metodo diretto
    - Trattamento interruzioni
    - Come si calcola il ciclo di clock di un'unità
    - Come si elimina il degrado dovuto alle dipendenze logiche. Se hai due compilatori diversi e devi vedere chi dei due elimina di più il degrado quale scegli?
    - Metodo del mix. Se hai una classe di applicazione rappresentata da N programmi ad alto livello, le probabilità per ogni classe di microistruzioni sono fissate? [1]
    - Cache completamente associativa. Cosa si fa se la memoria associativa costa troppo (la risposta non l'ho capita)
    - Come funziona il processore superscalare.
    - Cache associativa su insiemi.
    - Ciclo di clock del processore pipeline.
    - Ottimizzazioni sul processore pipeline. Ha senso introdurre una IU out-of-order per ridurre il degrado dovuto alle dipendenza logiche EU-EU introdotte da load? [2]

    RISPOSTE AD ALCUNE DOMANDE INTERESSANTI (attenzione, contiene spolier).
    [1] no, non sono fissate. Infatti, è vero che ogni classe di applicazioni è caratterizzata da certe operazioni (per esempio nelle applicazioni di intelligenza artificiali ci saranno molte visite di grafi e quindi molte istruzioni di salto), però i codici sono ad alto livello e il metodo del mix opera su classi di istruzioni assembler. Quindi le probabilità dipendono anche da come il compilatore traduce le istruzioni ad alto livello.

    [2] no, non ha senso. Infatti, la IU manda avanti le istruzioni che seguono la load anche se sono in dipendenza logica. ad esempio:
    LOAD r1 r2 r3
    { IU non ha una copia aggiornata di r3 }
    ADD r3 r4 r5

    La IU manda avanti la ADD pur non avendo il valore aggiornato di r3, perché la dipendenza logica verrà risolta in EU. Visto che non serve ritardare le istruzioni in situazioni di questo tipo, non ha senso introdurre una IU out-of-order solo per questo motivo.
  • 3490834908 Posts: 15
    Qualcuno ha da dare un ulteriore contributo sulle domande fatte dal Danelutto?
    Arrivo all'orale con QUASI SUFFICIENTE quindi sono abbastanza preoccupato :)
  • - Ciclo di clock del processore pipeline.

    Come dobbiamo rispondere?
  • Devo sostenere l'orale col Baiardi, e avevo un paio di domande:
    1) Chiede chiarimenti su quello che abbiamo sbagliato e non fatto sul compito, oppure fa domande random?
    2) Ho notato che spesso chiede MIX e Benchmark, spiegarli entrambi e dire la differenza, ma sul libro ci sono giusto due righe...
  • Orale fatto recentemente, appello di Luglio (scritto difficile, il prof ha ammesso che non e' andato benissimo a nessuno, e i pochi di noi che sono passati ha detto che eravamo 'i meno peggio'). Premesso questo, domande dell'orale sono partite da cio' che allo scritto avevo fatto bene, con domande sul multithreading (tutti i tipi), in particolare chiedeva come vengono formate le istruzioni lunghe nell'architettura superscalare.
    Poi siamo passati a microprogramma dell'arbitro a richieste indipendenti, e da li domande tipo:
    - mostrami la PC di questo arbitro, cosa e' una PC ecc
    - tipi di arbitri, e in particolare microprogramma dell'arbitro a token ciclante (non credo l'abbia fatto a lezione avendo seguito, ma lo voleva sapere)
    - indirizzamento della cache associativo su insiemi, con tutti i dettagli del tag, quanti bit per ogni parte, e quanti elementi per ogni insieme in cui e' divisa la cache
    - vettore delle interruzioni e anche tutta la gestione delle interruzioni.

    Ragazzi spero di aver portato info utili come le informazioni gia' presenti sono state utili a me!! Grazie a tutti quelli che hanno condiviso la loro esperienza.
  • Orale svolto neanche un'ora fa con Danelutto, aggiungo le domande che mi sono state fatte (partivo da Buono):

    - Schedulazione e commutazione di contesto di processi (in particolare nel caso del quanto di tempo e dei processi con priorità)
    - Condizioni di Bernstein: spiegazioni in termini del ciclo di clock (con esempio di codice)
    - Eu parallela: in che modo si sfrutta il modello pipeline e il modello a replicazione
    funzionale, dipendenze EU-EU
    - Cosa comporta in termini di unità di tempo l'utilizzo della EU slave e che cosa si deve considerare nel rapporto con la IU e nella gestione dei registri interni. (domanda per lode)


    Mi sembra che non mi abbia chiesto nient'altro. Il mio orale è durato circa 20-30 minuti perchè non ho esitato nel rispondere. Tiene di più e fa più domande a chi è incerto.

    Grazie a tutti coloro che hanno scritto le proprie domande!
  • NymeriaNymeria Posts: 14
    Danelutto:
    - PC con componenti standard
    - Cache: Write Back e Write Through
    - Tempo di completamento effettivo e ideale su processore monolitico e pipeline (con esempio)

  • NokiNoki Posts: 5
    Danelutto esame svolto oggi (ero l'ultimo dei preappelli, mi son seduto con "discreto")

    - Tempo necessario all'esecuzioni di due istruzioni LOAD consecutive su processore monolitico
    - Numero di stati in un atoma di Mealy/Moore necessari a rappresentare un dato numero di stati
    - Automa di Mealy e di Moore per contare la parità di una stringa binaria (e realizzazione di quello di Moore)
    - Come realizzare un processore superscalare a 4 vie (gestione dei registri nella IU)
    - Calcolo del numero di stati / tempi di una rete sequenziale che ha scritto lui sul momento

    In generale cerca di farvi ragionare, e a quanto ho visto il voto dell'orale puo impattare molto (son passato da discreto a 30)
  • Baiardi(orali del 9 gennaio 2017)
    - microprogramma di un arbitro a richieste indipendenti(fair e unfair, parte operativa e parte controllo)
    - metodi per controllare se c'è una pagina in una cache e spiegazione dell'indirizzamento diretto(è molto attento alla spiegazione del significato del numero di bit)
    - metodo del mix e del benchmark(domanda che sembra banale ma mi ci ha tenuto sopra un bel po')

    - gestione delle interruzioni(i due modi)
    - metodo associativo su insiemi
    - come si diminuisce il degrado dovuto ai salti

    - perché si usano le pagine e in che modo il numero di fpult dipende dalla grandezza della pagina
    - tipi di ottimizzazioni delle dipendenze statiche
    - cosa è il vettore delle interruzioni
  • CapsCaps Posts: 1
    Devo sostenere l'orale con Baiardi e ho una domanda: piú o meno quanto dura il suo orale?
  • Caps wrote: »
    Devo sostenere l'orale con Baiardi e ho una domanda: piú o meno quanto dura il suo orale?

    Se rispondi bene te la cavi in 15/20 minuti.
  • Orale dato con Danelutto (partivo da un Quasi Sufficiente + Sufficiente, dei compitini).

    -Processo di sintesi formale, con disegno e tutto. Per capirci, alla compito.
    - Perche', nel calcolo del tempo di ciclo di clock, insieme a omegaPC+sigmaPO, confrontiamo anche sigmaPC, nel massimo ? Tradotto, puo' essere sigmaPC > omegaPC+sigmaPO ?
    - Differenza tra rete Mealy e rete Moore.
    - Parallelismo Farm
    - Aggiungere nell'interprete fw una istruzione di MOVI che copia 32bit in un registro dalla memoria. Dopo averla scritta, aumenta il ciclo di clock?

    Danelutto tranquillissimo, ti fa ragionare. Se avete studiato non avrete problemi.


  • aoxomoxoaaoxomoxoa Posts: 4
    Orale sostenuto stamani con Baiardi (partivo da Sufficiente (almeno credo, non ha pubblicato i voti) e sono uscito con 27):

    - Gerarchie di Memoria, discorsetto generale ed entrando nello specifico: tipi di indirizzamento, cache ad indirizzamento diretto (tutti i particolari, ha molto a cuore la suddivisione dell'indirizzo proveniente da MMU nei vari campi TAG, BC e OFFSET) cosa succede in caso di fault di cache (nello specifico quale pagina di cache si va a sostituire nei vari casi)
    - Arbitro a richieste indipendenti fair : microprogramma, sintesi PC e PO e calcolo del ciclo di clock.
    - Quali sono i metodi per ridurre le dipendenze logiche?
    - Multithreading: Blocked, Interleaved ed Hyperthreading. Tutti e tre nello specifico: replicazione, quali strutture si condividono e perchè, in quali casi etc. etc.
    - Località e Riuso nei programmi, spiegare ed illustrare con esempi.

    Baiardi mi è sembrato davvero tranquillo, lascia il tempo di ragionare sulle domande che pone (in genere precise e mirate).

    Grazie a tutti per le esperienze condivise, sono state utili!
  • Alberto AlberigiAlberto Alberigi Posts: 6
    edited June 15
    Orale sostenuto stamattina, scritto sufficiente (anche se mi è parso che abbia dato solo un occhiata sommaria per capire chi era sufficiente e chi no, e poi in sede di orale lo ha ricontrollato nuovamente con più cura), voto finale 24.
    -Come si risolvono le dipendenze logiche? risp, allontanandole tra di loro e inserendo nel mezzo istruzioni non in dipendenza.
    -Come fa il compilatore a capire quali istruzioni inserire? non sapevo cosa rispondere, ho provato spiegando i semafori dei registri, ma ha detto che il compilatore non li vede, rimane tutt'ora una domanda senza risposta per me.
    -Come ridurre le probabilità di salto? Loop unfolding e espansione di macro e di funzioni e poi ho spiegato anche il delayed branch.
    -Fai il microcodice di un arbitro, poi fallo fair e poi fai la pc dell'arbitro.
    -Metodo set associative, divisione dei bit dell'indirizzo (offset, set, tag), poi mi ha chiesto come si fa a vedere se è nell'insieme o meno (ho spiegato che si confrontano i tag, voleva sapere nello specifico come, ma non mi ricordavo bene).

    Le domande sono dirette e vuole la risposta senza troppi giri di parole, vi lascia il tempo di ragionare (se di buon umore, se lo trovate nervoso è più cattivo), cercate di studiare affondo anche i principi di funzionamento dei vari meccanismi che spiegato perché ogni tanto è puntiglioso.
    Ma comunque se siete arrivati con voto >= sufficiente, a meno che non fate un pessimo orale, difficilmente vi boccerà.
Sign In or Register to comment.