![]() |
Sistemas de Computação |
Semana: 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15
Ultima Modificação:17 Jun 2008
departamento de informática | |
Nota 1: Os sumários das aulas que já ocorreram estão a preto, enquanto as propostas de sumário para as sessões seguintes estão a cinzento. Sempre que haja documentação a disponibilizar pertinente para uma sessão que ainda não decorreu, essa indicação deixa de estar a cinzento.
Nota 2: As referências nos sumários a textos de consulta estão abreviadas para Sta (livro/resumo de Stallings), Bry (livro/resumo de Bryant), ISC (Introdução aos Sistemas de Computação, notas de estudo), P&H (livro de Patterson & Hennessy ), e Tan (livro de Tanenbaum); são normalmente seguidas do respectivo capítulo/secção, e quando existe em formato electrónico é indicado o respectivo link.
Semana
1
25-Fev-08 (TP1+TP2)
Sistemas de numeração e conversão
de bases. Representação binária
de valores positivos e negativos (sinal e amplitude, complemento para
1, complemento para
2, e representação por excesso).
(Notas de estudo: texto sobre
representação binária de números; complementar: Sta
(Ch
8.2, 8.3), Tan (Annex A);
enunciado do TPC1, para ser entregue, impreterivelmente, até à hora de início da sessão TP
seguinte).
25-Fev-08 (T)
Metodologia de funcionamento da disciplina: princípios básicos, objectivos
de formação, resultados da aprendizagem, modo de funcionamento,
elementos e modelos de avaliação, informação complementar (em formato electrónico, e relativo ao ano em
curso, em
gec.di.uminho.pt/lcc/sc/).
(Slides apresentados: IntroSC ).
26-Fev-08 (TP3)
Sistemas de numeração e conversão
de bases. Representação binária
de valores positivos e negativos (sinal e amplitude, complemento para
1, complemento para
2, e representação por excesso).
(Notas de estudo: texto sobre
representação binária de números; complementar: Sta
(Ch
8.2, 8.3), Tan (Annex A);
enunciado do TPC1, para ser entregue,
impreterivelmente, até à hora de início da sessão TP
seguinte).
26-Fev-08 (T)
Introdução aos conceitos de "computador" e de "informação" no contexto
de um computador.
Representação da informação no
computador utilizando números binários (bits): texto (ASCII), números
(referência a inteiros e reais) e comandos para o processador (noção de instruction
set).
(Notas de estudo: cópia dos
slides ISC_1 e texto
ISC
(Cap.1); complementar: Sta (Ch1.1
e 1.2) ).
27-Fev-08 (TP4)
Sistemas de numeração e conversão
de bases. Representação binária
de valores positivos e negativos (sinal e amplitude, complemento para
1, complemento para
2, e representação por excesso).
(Notas de estudo: texto sobre
representação binária de números; complementar: Sta
(Ch
8.2, 8.3), Tan (Annex A);
enunciado do TPC1, para ser entregue,
impreterivelmente, até à hora de início da sessão TP
seguinte).
Semana 2
04-Mar-08 (TP1+TP2)
Resolução de exercícios com
binários inteiros.
Representação binária de
valores reais em vírgula flutuante (noção e vantagens duma
normalização) e apresentação da norma IEEE 754 na representação de
valores em vírgula flutuante.
(Notas de estudo: texto sobre
representação binária de números; complementar: Sta
(Ch8.4), Tan (Annex
B); ficheiro
TPC1r com os resultados
dos exercícios propostos em TPC1; enunciado do
TPC2,
cuja resolução deverá ser entregue no início da sessão TP seguinte.
04-Mar-08
(T)
Representação da informação no computador (cont.): texto e respectivos
alfabetos (análise dos códigos Baudot, ASCII 7/8 bits e UNICODE,
codificação de informação audiovisual com introdução a técnicas de
compactação;
formatos de representação de textos em ficheiros de
documentos.
(Notas de estudo: cópia dos
slides ISC_1 e texto
ISC
(Cap.1); complementar: Sta (Ch1.1
e 1.2) ).
05-Mar-08
(TP3)
Resolução de exercícios com
binários inteiros.
Representação binária de
valores reais em vírgula flutuante (noção e vantagens duma
normalização) e apresentação da norma IEEE 754 na representação de
valores em vírgula flutuante.
(Notas de estudo: texto sobre
representação binária de números; complementar: Sta
(Ch8.4), Tan (Annex
B); ficheiro
TPC1r com os resultados
dos exercícios propostos em TPC1; enunciado do
TPC2,
cuja resolução deverá ser entregue no início da sessão TP seguinte.
05-Mar-08 (T)
Estrutura interna dum computador:
estrutura e funções do processador (a unidade de controlo, o conjunto
de registos e as unidades funcionais), a organização da memória (noção
de endereço e de célula) e o sistema de interligação (conjunto de
sinais em cada módulo, CPU, memória, I/O).
Interligação de componentes
num computador: interacções entre componentes, análise de ligações - do
CPU, da memória primária e dos módulos de I/O - e caracterização das
estruturas de ligação, com destaque para os barramentos (bus) e para a arquitectura típica de
um PC.
(Notas de estudo: cópia dos
slides
ISC_2 e texto ISC
(Cap. 2); complementar: Sta (Ch
3.1, 3.2) ).
06-Mar-08 (TP4)
Resolução de exercícios com
binários inteiros.
Representação binária de
valores reais em vírgula flutuante (noção e vantagens duma
normalização) e apresentação da norma IEEE 754 na representação de
valores em vírgula flutuante.
(Notas de estudo: texto sobre
representação binária de números; complementar: Sta
(Ch8.4), Tan (Annex
B); ficheiro
TPC1r com os resultados
dos exercícios propostos em TPC1; enunciado do
TPC2,
cuja resolução deverá ser entregue no início da sessão TP seguinte.
Semana
3
11-Mar-08 (TP1+TP2)
Análise crítica da resolução
de exercícios com valores em vírgula flutuante.
(Notas de estudo: texto do
enunciado do TPC3 (e respectivo guião teatral), cuja
resolução deverá ser entregue no início da sessão TP seguinte; ficheiro
TPC2r com os resultados dos exercícios
propostos em TPC2).
11-Mar-08
(T)
Estrutura interna dum computador:
estrutura e funções do processador (a unidade de controlo, o conjunto
de registos e as unidades funcionais), a organização da memória (noção
de endereço e de célula) e o sistema de interligação (conjunto de
sinais em cada módulo, CPU, memória, I/O).
Interligação de componentes
num computador: interacções entre componentes, análise de ligações - do
CPU, da memória primária e dos módulos de I/O - e caracterização das
estruturas de ligação, com destaque para os barramentos (bus) e para a arquitectura típica de
um PC.
(Notas de estudo: cópia dos
slides
ISC_2 e texto ISC
(Cap. 2); complementar: Sta (Ch
3.1, 3.2) ).
12-Mar-08
(TP3)
Análise crítica da resolução
de exercícios com valores em vírgula flutuante.
(Notas de estudo: texto do
enunciado do TPC3 (e respectivo guião teatral), cuja
resolução deverá ser entregue no início da sessão TP seguinte; ficheiro
TPC2r com os resultados dos exercícios
propostos em TPC2).
12-Mar-08 (T)
Introdução aos níveis de abstracção presentes num computador (o nível
HLL, o nível da linguagem assembly e o da linguagem máquina) e
respectivos mecanismos de conversão (compilação, assembly (montagem) e
interpretação); análise detalhada dos mecanismos na execução de um
programa em C numa arquitectura IA32.
Análise detalhada da execução de uma instrução em linguagem máquina:
a busca de uma instrução à memória, caracterizando os barramentos
de endereços, controlo e de dados, a actualização do apontador para a
próxima instrução (IP), a descodificação duma instrução e a sua
execução (incluindo a eventual busca de operando(s) à memória).
(Notas de estudo: texto ISC (Cap. 3, 4.1 e 4.2) e slides
ISC_3 ;
complementar: Sta (Ch 3.2) )
13-Mar-08 (TP4)
Análise crítica da resolução
de exercícios com valores em vírgula flutuante.
(Notas de estudo: texto do
enunciado do TPC3 (e respectivo guião teatral), cuja
resolução deverá ser entregue no início da sessão TP seguinte; ficheiro
TPC2r com os resultados dos exercícios
propostos em TPC2).
Semana 4
25-Mar-08 (TP1+TP2)
Férias da Páscoa
25-Mar-08
(T)
Férias da Páscoa
26-Mar-08
(TP3)
Debate com resolução dos exercícios propostos no TPC3, como preparação para
a sessão experimental baseada numa representação teatral.
(Notas de estudo: incluídas no enunciado do TPC3, tal como o texto do
guião teatral para a próxima aula)
26-Mar-08 (T)
Análise do funcionamento dum processador ao nível da arquitectura do
instruction set: (i) introdução às operações num processador, com
análise do n.º de operandos em cada instrução e à localização de
operandos (escalares em registos, e estruturados em memória), (ii)
registos visíveis ao programador (em arquitecturas RISC e no IA32), e
(iii) modos de acesso aos operandos (em arquitecturas RISC e no IA32).
(Notas de estudo: ISC (Cap. 5.1 e 5.2) e slides ISC_4 ; recomenda-se
ainda a leitura dos slides ISC_5, relativo a comunicação de dados e
redes, elaborados essencialmente com base no livro "Introdução às
Tecnologias de Informação. Bloco II", de Artur A. Azul, Porto Editora,
2005 (Cap. 6.1))
27-Mar-08 (TP4)
Debate com resolução dos exercícios propostos no TPC3, como preparação para
a sessão experimental baseada numa representação teatral.
(Notas de estudo: incluídas no enunciado do TPC3, tal como o texto do
guião teatral para a próxima aula)
01-Abr-08 (TP1+TP2)
Debate com resolução dos exercícios propostos no
TPC3, como preparação para a sessão experimental baseada numa representação
teatral.
(Notas de estudo: incluídas no enunciado do TPC3, tal como o texto do
guião teatral para a próxima aula)
01-Abr-08
(T)
Análise
do processador ao nível da arquitectura do instruction set (ISA): tipos de instruções presentes num processador (para
transferência de informação, operações aritméticas e lógicas, para
controlo do fluxo de execução); análise de formatos de instruções (em
processadores RISC e no Pentium); instruções de input/output; ordenação de
bytes numa palavra (little-endian, big-endian).
(Notas de estudo: ISC
(Cap. 4.3 a 4.5, 5,2, 5.3 e 5.7), Bry (Ch.1.5 e 1.6); slides
ISC_4,
já disponibilizados)
02-Abr-08
(TP3)
Treino das capacidades de visualização de
conceitos sobre sistemas de computação, através de um exercício experimental com
estudantes-actores: 8 actores irão representar a execução de instruções em
linguagem máquina (corpo de uma função em C compilada para IA16).
(Notas de estudo: o texto do
guião teatral foi divulgado com o TPC3; enunciado do
TPC4,
com guião laboratorial incluído, cuja resolução dos exercícios propostos deverá
ser entregue até à hora de início da sessão TP da semana seguinte)
02-Abr-08 (T)
Análise do nível ISA do IA32
em Linux: evolução da arquitectura IA32 e modelo de desenvolvimento de programas.
(Notas de estudo: a
bibliografia de base desta e das próximas aulas sobre o nível ISA segue
quase exclusivamente o livro CSAPP, com destaque para o Ch.3;
as noções apresentadas
e analisadas nos dois primeiros capítulos do livro foi sendo coberta
pelo texto entretanto disponibilizado (ISC), enquanto esta aula e a
seguinte seguem essencialmente as secções 3.4 e 3.5 do livro; o
ficheiro electrónico com a versão preliminar dos três primeiros
capítulos do livro encontra-se disponível, para estudo,
aqui,
1.51MB; slides
ISA_1 )
02-Abr-08 (TP1+TP2)
(sessão extra em substituição por antecipação das aulas TP de 15-Abr-08)
Treino das capacidades de visualização de
conceitos sobre sistemas de computação, através de um exercício experimental com
estudantes-actores: 8 actores irão representar a execução de instruções em
linguagem máquina (corpo de uma função em C compilada para IA16).
(Notas de estudo: o texto do
guião teatral foi divulgado com o TPC3; enunciado do
TPC4,
com guião laboratorial incluído, cuja resolução dos exercícios propostos deverá
ser entregue até à hora de início da sessão TP da semana seguinte)
03-Abr-08 (TP4)
Treino das capacidades de visualização de
conceitos sobre sistemas de computação, através de um exercício experimental com
estudantes-actores: 8 actores irão representar a execução de instruções em
linguagem máquina (corpo de uma função em C compilada para IA16).
(Notas de estudo: o texto do
guião teatral foi divulgado com o TPC3; enunciado do
TPC4,
com guião laboratorial incluído, cuja resolução dos exercícios propostos deverá
ser entregue até à hora de início da sessão TP da semana seguinte)
08-Abr-08 (TP1+TP2)
Introdução aos níveis de
abstracção dum computador, em ambiente laboratorial em Linux/IA32, e
respectivos mecanismos de conversão e análise
(gcc,
objdump,
gdb).
(Notas de estudo: exercícios resolvidos do
TPC3r
; o texto do guião laboratorial foi divulgado com o enunciado do TPC4,
na semana anterior; enunciado do
TPC5,
cuja resolução deverá ser entregue no início da sessão
TP seguinte)
08-Abr-08
(T)
Análise
do nível ISA do IA32 em Linux (cont.): análise das instruções mais
comuns para transferência de informação, e para execução de operações
aritméticas/lógicas
(Notas de estudo: incluídas nos slides disponibilizados na aula anterior)
09-Abr-08
(TP3)
Introdução aos níveis de
abstracção dum computador, em ambiente laboratorial em Linux/IA32, e
respectivos mecanismos de conversão e análise
(gcc,
objdump,
gdb).
(Notas de estudo: exercícios resolvidos do
TPC3r ; o texto do guião laboratorial foi
divulgado com o enunciado do TPC4, na semana anterior; enunciado do
TPC5,
cuja resolução deverá ser entregue no início da sessão
TP seguinte)
09-Abr-08 (T)
Análise do nível ISA do IA-32 em Linux:
instruções específicas para manuseamento de apontadores e
para controlo do fluxo de execução de instruções (conceito de códigos
de condição e estrutura da codificação de jumps)
(Notas de estudo: Bry (Ch 3.6),
e
slides
ISA_2 ;
já está disponível a descrição da Fase 1 do Projecto;
exercícios resolvidos do TPC4)
09-Abr-08 (T)
(sessão extra em substituição por antecipação da aula de 15-Abr-08)
Análise do nível ISA do IA-32 em Linux:
técnicas de codificação de
estruturas de controlo presentes em C: if-else, do-while,
while,
for.
(Notas de estudo: os mesmos que da aula anterior)
10-Abr-08 (TP4)
Introdução aos níveis de
abstracção dum computador, em ambiente laboratorial em Linux/IA32, e
respectivos mecanismos de conversão e análise
(gcc,
objdump,
gdb).
(Notas de estudo: exercícios resolvidos do
TPC3r ; o texto do guião laboratorial foi
divulgado com o enunciado do TPC4, na semana anterior; enunciado do
TPC5,
cuja resolução deverá ser entregue no início da sessão
TP seguinte)
Semana 7
15-Abr-08 (TP1+TP2)
Aula leccionada por substituição a 02-Abr-08.
15-Abr-08
(T)
Aula leccionada por
substituição a 09-Abr-08.
16-Abr-08
(TP3)
Não houve aula para equilibrar o funcionamento das 4
turmas.
16-Abr-08 (T)
Aula a leccionar por
substituição a 23-Abr-08.
17-Abr-08 (TP4)
Não houve aula para
equilibrar o funcionamento das 4 turmas.
Semana 8
22-Abr-08 (TP1+TP2)
Resolução de alguns exercícios do TPC5 (operações e
acessos a operandos, e instruções de salto, do IA32 em Linux).
(Notas de estudo: enunciado do TPC6,
com guião laboratorial incluído, cuja resolução deverá ser entregue até
à hora de início da sessão TP após o teste)
22-Abr-08
(T)
Análise do nível ISA do IA-32 em Linux:
introdução às propriedades das funções em C para análise do suporte
requerido ao nível do ISA.
(Notas de estudo: Bry (Ch 3.7) e slides
ISA_3 )
23-Abr-08
(TP3)
Resolução de alguns exercícios do TPC5 (operações e
acessos a operandos, e instruções de salto, do IA32 em Linux).
(Notas de estudo: enunciado do
TPC6,
com guião laboratorial incluído, cuja resolução deverá ser entregue até
à hora de início da sessão TP após o teste)
23-Abr-08 (T)
Análise do nível ISA do IA-32 em Linux: análise detalhada da
estrutura do código e dos contextos para suporte à invocação de
procedimentos/funções em HLL (C em particular).
(Notas de estudo: mesmas
que da aula anterior, e com um subconjunto desses slides, com
animações,
em PowerPoint;
exercícios resolvidos do TPC5r )
23-Abr-08 (T)
(sessão extra em substituição da aula de 16-Abr-08)
Introdução de paralelismo no CPU: noção de pipeline e de superescalaridade.
Introdução aos conceitos de
hierarquia de memória e de cache.
Resumo das características das
arquitecturas RISC.
(Notas de estudo: ISC (Cap.
4.3 a 4.5), slides ISC_4, já disponibilizados.)
24-Abr-08 (TP4)
Resolução de
alguns exercícios do TPC5 (operações e
acessos a operandos, e instruções de salto, do IA32 em Linux).
(Notas de estudo: enunciado do
TPC6,
com guião laboratorial incluído, cuja resolução deverá ser entregue até
à hora de início da sessão TP após o teste)
Semana 9 (Semana reservada para avaliações)
29-Abr-08 (TP1+TP2)
Exercícios de revisão.
29-Abr-08
(T)
Exercícios de revisão.
30-Abr-08
(TP3)
Exercícios de revisão.
30-Abr-08 (T)
Teste de avaliação sumativa.
01-Mai-08 (TP4)
Feriado
Semana 10
06-Mai-08 (TP1+TP2)
Análise laboratorial de código
C compilado por ferramentas da GNU em Linux para o IA32, contendo
acesso a uma função e uma estrutura de controlo
while (com utilização do depurador
gdb).
(Notas de estudo: o manual de
utilização do depurador disponibilizado pela GNU está em
Debugging
with DBG , mas existe
uma cópia local da versão em PDF
aqui (2.04MB); J. Clark na Univ. Nebraska disponibiliza um pequeno
tutorial de
introdução ao GDB que recomendo)
06-Mai-08
(T)
Análise do
nível ISA do IA-32 em Linux: exemplo com análise
detalhada da estrutura do código e dos contextos para suporte à
invocação de procedimentos/funções em HLL; análise da
stack no caso de funções aninhadas e recursivas;
revisão
dos modelos RISC e CISC.
(Notas de estudo: Bry (Ch 3.7 e 3.8) e slides
ISA_4 ; )
06-Mai-08
(TP3)
Análise laboratorial de código
C compilado por ferramentas da GNU em Linux para o IA32, contendo
acesso a uma função e uma estrutura de controlo
while (com utilização do depurador
gdb).
(Notas de estudo: o manual de
utilização do depurador disponibilizado pela GNU está em
Debugging
with DBG , mas existe
uma cópia local da versão em PDF
aqui (2.04MB); J. Clark na Univ. Nebraska disponibiliza um pequeno
tutorial de
introdução ao GDB que recomendo)
06-Mai-08 (T)
Análise do nível ISA do IA-32 em Linux:
análise comparativa do modelo de implementação de funções numa
arquitectura RISC (MIPS) versus IA-32;
organização em memória e métodos de acesso e manipulação de
dados
estruturados em C, com respectiva análise da codificação para assembly
(arrays uni-dimensionais e multi-dimensionais).
(Notas de estudo: Bry (Ch 3.9); conclusão dos slides da aula anterior e
slides ISA_5 )
07-Mai-08 (TP4)
Análise laboratorial de código
C compilado por ferramentas da GNU em Linux para o IA32, contendo
acesso a uma função e uma estrutura de controlo
while (com utilização do depurador
gdb).
(Notas de estudo: o manual de
utilização do depurador disponibilizado pela GNU está em
Debugging
with DBG , mas existe
uma cópia local da versão em PDF
aqui (2.04MB); J. Clark na Univ. Nebraska disponibiliza um pequeno
tutorial de
introdução ao GDB que recomendo)
Semana 11 (Semana do Enterro da Gata)
13-Mai-08 (TP1+TP2)
Avaliação da Fase 1 do Projecto em ambiente laboratorial
13-Mai-08
(T)
Não houve aula.
14-Mai-08
(TP3)
Avaliação da Fase 1 do Projecto em ambiente laboratorial
14-Mai-08 (T)
Não houve aula.
15-Mai-08 (TP4)
Avaliação da Fase 1 do Projecto em ambiente laboratorial
Semana 12
20-Mai-08 (TP1+TP2)
Conclusão da utilização de ferramentas laboratoriais
de depuração de código, numa função contendo uma estrutura de controlo
while.
(Notas de estudo:
enunciado do
TPC7,
com guião laboratorial incluído, cuja resolução deverá ser entregue até
à hora de início da sessão TP seguinte; exercícios resolvidos do
TPC6r
)
20-Mai-08
(T)
Análise do nível ISA do IA-32 em Linux:
métodos de acesso e manipulação de dados
estruturados em C, com respectiva análise da codificação para assembly
(structures).
Reflexão sobre os objectivos de avaliação do 1º teste.
(Notas de estudo: Bry (Ch 3.9); conclusão dos slides da aula anterior)
21-Mai-08
(TP3)
Conclusão da utilização de ferramentas laboratoriais de depuração de código,
numa função contendo uma estrutura de controlo
while.
(Notas de estudo:
enunciado do
TPC7,
com guião laboratorial incluído, cuja resolução deverá ser entregue até
à hora de início da sessão TP seguinte; exercícios resolvidos do
TPC6r
)
21-Mai-08 (T)
Avaliação de desempenho na
execução de programas: objectivos e
metodologias.
Objectivos: (i) construção/
avaliação do desempenho de computadores -
introdução às métricas e relação da expressão de cálculo
do CPUtime para um dado programa, com
factores da arquitectura que
influenciam o seu desempenho; (ii) melhorar o desempenho da execução de
programas - introdução às técnicas de optimização
(independente/dependente
da máquina) e de medição (microscópica e macroscópica).
(Notas de estudo: Bry (Ch.
3.15, Ch. 5.1 a 5.3, Ch. 9.0 e 9.3); sugere-se a leitura de P&H
(Ch2.2, e 2.3), resumido
aqui, para uma melhor
compreensão das métricas orientadas à construção/avaliação do
desempenho de computadores; e slides
AvDes_1 )
22-Mai-08 (TP4)
Feriado (os estudantes
inscritos nesta sessão frequentaram as sessões paralelas na mesma semana)
Semana 13
27-Mai-08 (TP1+TP2)
Análise laboratorial do código
C compilado por ferramentas da GNU em Linux para o IA32, contendo
acesso a função e a estrutura de controlo
for, com
utilização do depurador
gdb.
(Notas
de estudo: enunciado do
TPC8, com guião laboratorial incluído,
cuja resolução deverá ser entregue até à hora de início da sessão TP
seguinte;
exercícios
resolvidos do
TPC7r
)
27-Mai-08
(T)
Metodologias: de optimização independente da máquina (code motion,
strength
reduction, partilha de sub-expressões), e de medição (escalas
temporais,
utilização de contadores de ciclos com extensões ASM em C).
(Notas de estudo: Bry (Ch. 5.3 a 5.6); slides: os mesmos que da aula
anterior )
28-Mai-08
(TP3)
Análise laboratorial do código
C compilado por ferramentas da GNU em Linux para o IA32, contendo
acesso a função e a estrutura de controlo
for, com
utilização do depurador
gdb.
(Notas
de estudo: enunciado do
TPC8, com guião laboratorial incluído,
cuja resolução deverá ser entregue até à hora de início da sessão TP
seguinte;
exercícios
resolvidos do
TPC7r
)
28-Mai-08 (T)
Avaliação de desempenho na execução de programas: aprofundamento da
análise
de algumas técnicas de optimização independentes da máquina, com
discussão de
métrica de avaliação de desempenho de aplicações de processamento
numérico
de arrays (nomeadamente as componentes para o cálculo dos Ciclos
Por
Elemento, CPE).
(Notas de estudo: Bry (Ch. 5.3 a 5.6); slides: os mesmos que da aula
anterior )
29-Mai-08 (TP4)
Análise laboratorial do código
C compilado por ferramentas da GNU em Linux para o IA32, contendo
acesso a função e a estrutura de controlo
for, com
utilização do depurador
gdb.
(Notas
de estudo: enunciado do
TPC8, com guião laboratorial incluído,
cuja resolução deverá ser entregue até à hora de início da sessão TP
seguinte;
exercícios
resolvidos do
TPC7r
)
Semana 14
03-Jun-08 (TP1+TP2)
Execução de funções com deficiências (no IA32 em Linux), e respectiva
análise do código gerado pelo compilador (em ambiente laboratorial).
(Notas de estudo: exercícios
resolvidos do
TPC8r )
03-Jun-08
(T)
Avaliação
de desempenho na execução de programas: introdução aos factores da
arquitectura que maior impacto têm no desempenho (pipeline, superescalaridade, hierarquia de
memória), indispensável à compreensão das técnicas de optimização
dependentes da máquina; introdução ao modelo de
representação de um par processador-memória (chip do Pentium III), com
destaque para os modelos de representação do pipeline e da superescalaridade; análise de
técnicas de optimização dependentes da máquina, nomeadamente a análise
do comportamento dum Pentium em operações iterativas e respectivas
consequências - loop
unroll,.
(Notas de estudo: Bry (Ch.
5.7) e slides
AvDes_2 )
04-Jun-08
(TP3)
Execução de funções com
deficiências (no IA32 em Linux), e respectiva análise do código gerado
pelo compilador (em ambiente laboratorial).
(Notas de estudo: exercícios
resolvidos do
TPC8r )
04-Jun-08 (T)
Avaliação de desempenho na
execução de programas: análise do comportamento dum Pentium em
operações iterativas com a introdução de paralelismo e de hierarquia de
memória.
(Notas de estudo: Bry (Ch.
5.8, 5.10, 5.11, 5.14, 5.15); slides AvDes_3 )
05-Jun-08 (TP4)
Execução de funções com
deficiências (no IA32 em Linux), e respectiva análise do código gerado
pelo compilador (em ambiente laboratorial).
(Notas de estudo: exercícios
resolvidos do
TPC8r )
Semana 15
10-Jun-08 (TP1+TP2)
Feriado
10-Jun-08
(T)
Feriado
11-Jun-08
(TP3)
Avaliação da Fase 2 do Projecto em ambiente laboratorial
11-Jun-08 (T)
Outras
técnicas de optimização de desempenho na execução de programas: análise
de técnicas usadas pelo GCC; uso de program profilers na identificação dos gargalos de
desempenho; análise da lei de Amdahl e do impacto dos acessos à memória
no desempenho.
Organização hierárquica da
memória: o princípio da localidade, conceitos associados à cache e seu desempenho, regras de
codificação orientada ao desempenho.
Realização dos inquéritos de
avaliação da disciplina.
(Notas de estudo: slides: os
mesmos que os da aula anterior )
12-Jun-08 (TP4)
Avaliação da Fase 2 do Projecto em ambiente laboratorial