generated from maximegris/angular-electron
-
Notifications
You must be signed in to change notification settings - Fork 0
05.TheStatisticsWindow
nonodev96 edited this page Jul 2, 2022
·
4 revisions
En la sección de estadísticas mostramos el listado de datos representativos de una simulación, estos datos indican los ciclos ejecutados, decodificaciones, instrucciones en el pipeline, saltos, operaciones en coma flotante, detenciones, adelantamientos, etc. Esto nos sirve para analizar el rendimiento de nuestro programa desarrollado en DLX.
Esta sección se encuentra con traducciones en inglés y en español.
Esta sección se encuentra en ingles y en español.
Para el envío de datos con el servidor se establece el siguiente protocolo, no tenemos que enviar todo el objeto JSON en
cada paso, solo la sección que se actualiza en cada paso (Partial<TypeDataStatistics>
), esto nos permite solo
actualizar las secciones que nos interese.
export type TypeDataStatistics = {
TOTAL: {
CYCLES_EXECUTED: { cycles: number };
ID_EXECUTED: { instructions: number };
INSTRUCTIONS_IN_PIPELINE: { instructions_in_pipeline: number };
};
HARDWARE: {
MEMORY_SIZE: { size: number };
FADD_EX_STAGES: { num: number; cycles: number };
FMULT_EX_STAGES: { num: number; cycles: number };
FDIV_EX_STAGES: { num: number; cycles: number };
FORWARDING: { enabled: boolean };
};
STALLS: {
RAW_STALLS: { num: number; per: number };
LD_STALLS: { num: number; per: number };
BRANCH_STALLS: { num: number; per: number };
FLOATING_POINT_STALLS: { num: number; per: number };
WAW_STALLS: { num: number; per: number };
STRUCTURAL_STALLS: { num: number; per: number };
CONTROL_STALLS: { num: number; per: number };
TRAP_STALLS: { num: number; per: number };
TOTAL: { num: number; per: number };
};
CONDITIONAL: {
TOTAL: { num: number; per: number };
TAKEN: { num: number; per: number };
NOT_TAKEN: { num: number; per: number };
};
LOAD_STORE: {
TOTAL: { num: number; per: number };
LOADS: { num: number; per: number };
STORES: { num: number; per: number };
};
FLOATING: {
TOTAL: { num: number; per: number };
ADDITIONS: { num: number; per: number };
MULTIPLICATIONS: { num: number; per: number };
DIVISIONS: { num: number; per: number };
};
TRAPS: {
TOTAL: { num: number; per: number };
}
};