Mudanças entre as edições de "ADS29009-2019-1"
Ir para navegação
Ir para pesquisar
Linha 14: | Linha 14: | ||
==ATIVIDADE 1== | ==ATIVIDADE 1== | ||
− | O código abaixo permite estimar o tempo de execução do programa (processo) para executar um determinado loop | + | O código abaixo permite estimar o tempo de execução do programa (processo) para executar um determinado loop. |
Modificar o programa e gerar um gráfico mostrando a média do tempo de execução para uma faixa de 1 até 100 processos. | Modificar o programa e gerar um gráfico mostrando a média do tempo de execução para uma faixa de 1 até 100 processos. | ||
Discutir o resultado. Postar no SIGAA um mini-relatório com dados do PC utilizado (número de cores), código, gráfico e discussão do resultado. | Discutir o resultado. Postar no SIGAA um mini-relatório com dados do PC utilizado (número de cores), código, gráfico e discussão do resultado. |
Edição das 15h56min de 12 de fevereiro de 2019
AULA 1 - Dia 26/07/2018
- Apresentar e Discutir Plano de Ensino
- Conceitos em ADS
Plano de Ensino
SLIDES DA AULA
ATIVIDADE 1
O código abaixo permite estimar o tempo de execução do programa (processo) para executar um determinado loop. Modificar o programa e gerar um gráfico mostrando a média do tempo de execução para uma faixa de 1 até 100 processos. Discutir o resultado. Postar no SIGAA um mini-relatório com dados do PC utilizado (número de cores), código, gráfico e discussão do resultado.
//Modificado de https://www.geeksforgeeks.org/measure-execution-time-with-high-precision-in-c-c/
- include <sys/time.h>
- include <sys/types.h>
- include <unistd.h>
- include <stdio.h>
int main()
{
long int i;
double tempo_bloco;
for (i=0;i<23;i++) {
if (fork()==0) {
struct timeval start, end;
gettimeofday(&start, NULL);
for (i=0; i<10000000000L; i++) { // loop de interesse
}
gettimeofday(&end, NULL);
tempo_bloco = (end.tv_sec - start.tv_sec) * 1e6;
tempo_bloco = (tempo_bloco + (end.tv_usec -
start.tv_usec)) * 1e-6;
printf("Tempo = %lf\n", tempo_bloco);
return 0;
}
}
}
</syntaxhighlight>