Programação

  • SSC0951 - Desenvolvimento de Código Otimizado - 1o Semestre de 2020

    Profa. Responsável: Sarita Mazzini Bruschi (sarita@icmc.usp.br)

    Horário de aula:

    • 4ª feira, das 8h10 às 9h50 (5-101)

    Horários de atendimento aos alunos:

    • 2ª feira, das 16h00 às 18h00 (sala 3-136)


    Objetivos

    Proporcionar um aprendizado mais aprofundado sobre desenvolvido de código, focando nos requisitos de desempenho, segurança e confiabilidade

    Programa

    Técnicas de otimização de código: Técnicas independentes do processador, técnicas dependentes do processador, detecção de código quente, profiling: objetivos, metodologias e ferramentas. Aceleração de Aplicações: Otimizações Simples; Otimizações na Compilação; Vetorização de Código; Bibliotecas Otimizadas; Otimizações de Acesso a Dados. Desenvolvimento de código seguro: prevenção de buffer overflow, prevenção por formatação de strings, prevenção por overflow de inteiro. Desenvolvimento de código confiável: práticas para desenvolvimento de código confiável.

    Bibliografia

    • Hager, G. and Wellein, G. Introduction to High Performance Computing for Scientists and Engineers. CRC Press, Inc., Boca Raton, FL, USA. 2010.
    • Bryant, R. and O'Hallaron, D. R. Computer Systems: A Programmer's Perspective. Prentice Hall, Third Edition, 2015.
    • Viega, J; McGraw, G. Building Secure Software: How to Avoid Security Problems the Right Way. MAddison-Wesley Professional. 2001

    Avaliação

    A avaliação da disciplina será através da entrega de trabalhos que serão definidos a cada aula. Serão no mínimo 8 trabalhos e no máximo 12.

    Critério de Avaliação:   

                   Ma:       Média aritmética dos trabalhos;

                   Mf = Ma

     

    Frequência:        De acordo com a lista de presença, sendo cada aluno responsável por sua assinatura.

                                  Cada aluno pode ter no máximo 9 faltas, correspondente a 30% de 30 aulas.