Saltar para:
Esta página em português Ajuda Autenticar-se
ESTB
Você está em: Start > BINF021

High Performance Computing

Code: BINF021     Sigla: CAD

Áreas Científicas
Classificação Área Científica
OFICIAL Informática

Ocorrência: 2019/2020 - 2S

Ativa? Yes
Página Web: https://moodle.ips.pt/1920/course/view.php?id=2455
Unidade Responsável: Matemática e Informática
Curso/CE Responsável: Undergraduate in Bioinformatics

Ciclos de Estudo/Cursos

Sigla Nº de Estudantes Plano de Estudos Anos Curriculares Créditos UCN Créditos ECTS Horas de Contacto Horas Totais
BINF 14 Study Plan 2 - 5 52,5 135

Docência - Responsabilidades

Docente Responsabilidade
Laércio Cruvinel Júnior

Docência - Horas

Theorethical and Practical : 3,00
Type Docente Turmas Horas
Theorethical and Practical Totais 1 3,00
Norberto Luís de Jesus Albino 1,50
Laércio Cruvinel Júnior 1,50

Língua de trabalho

Portuguese

Objetivos

Acquire basic skills in the field of Operating Systems and multiprogramming.
Understand the concept of parallel and high-performance programming.
Know when to apply this knowledge to bioinformatics problems.
Understand the concept of parallel and high-performance programming and know when to apply this knowledge to bioinformatics problems.

Resultados de aprendizagem e competências

Describes the structure and functioning of an OS, identifying its constituent parts and relating it to the various physical components (hardware) of the computer.
Enunciates and compares different scheduling algorithms, or selection, by analyzing their positive and negative aspects.
Enunciates and compares various topologies of computer networks and correctly describes the functioning of local networks (wired or not) and the Internet and the client/server and peer-to-peer paradigms.
Enunciates the various models of high-performance computing.
Defines a given problem at the level of Bioinformatics, identifying its constraints.
Elaborates and describes the functioning of an OS based on process state diagrams.
Develops and describes the operation of a program that uses multiprogramming techniques such as semaphores.
Develops applications for computers that make use of computer resources efficiently using and mastering multiprogramming and synchronization of threads/processes and parallel programming from a problem. 
Solves problems in your area using different approaches to high-performance computing.

Modo de trabalho

À distância

Pré-requisitos (conhecimentos prévios) e co-requisitos (conhecimentos simultâneos)

It presupposes basic skills acquired in programming and knowledge of the most frequent uses of information technology in Bioinformatics.

Programa

Operating System Basics

  1. Historical evolution

  2. Structure and objectives of an OS

  3. State of the art

  4. Process and thread management: Competition and pseudoparallelism

  5. Communication between processes and threads

  6. Process scheduling

  7. Types of memory

  8. Virtual memory, paging and segmentation

  9. I/O: Internal implementation

  10. I/O devices, controllers and DMA

  11. Handling interruptions


Computer Networks Basics

  1. Computer Networks Concepts

  2. Models OSI and TCP/IP

  3. TCP/IP Networks and Ethernet Networks

  4. Wireless Local Networks

  5. Virtual Local Networks

  6. Models of communication and distributing processing

  7. Distributed programming interfaces for C and Java


Introduction to the concept of parallel processing and distributed computing.

  1. Client/Server Model versus Peer-to-Peer Model

  2. Communication by passing messages

  3. Challenges of parallel computing (shared state, correctness)

  4. Parallel execution mechanisms

    1. Serialization and synchronization

    2. Locks and Semaphores

    3. Conditional variables





  1. Parallel computing models and paradigms

  2. Parallel computing applications


Introduction to high-performance computing

  1. Introduction to CUDA/OpenCL and Graphics Processors (GPUs)

  2. Interfaces and development models for GPUs

  3. Performance factors

Bibliografia Obrigatória

Tanenbaum Andrew; Modern operating systems, Prentice Hall Press, 2015. ISBN: 978-0133591620
Pacheco Peter; An introduction to parallel programming, Morgan Kaufmann, 2011. ISBN: 9780123742605
Andrews Greg; Foundations of multithreading, parallel and distributed programming, Addison-Wesley Longman Publishing Co., 1999. ISBN: 978-0201357523

Bibliografia Complementar

Tanenbaum Andrew; Distributed Systems: Principles and Paradigms, Prentice Hall Press, 2006. ISBN: 978-1543057386

Métodos de ensino e atividades de aprendizagem

Synchronous classes and debates; presentations of research work of students online; Moodle questionnaires for learning reinforcement and evaluation.
Synchronous hands-on classes with licensed or free software and simulation on students' computers.
Proposal of research work on the state of the art and parallel programming project with online presentations by students.

Tipo de avaliação

Distributed evaluation without final exam

Componentes de Avaliação

Designation Peso (%)
Apresentação/discussão de um trabalho científico 30,00
Teste 35,00
Participação presencial 35,00
Total: 100,00

Componentes de Ocupação

Designation Tempo (Horas)
Apresentação/discussão de um trabalho científico 4,00
Estudo autónomo 37,00
Frequência das aulas 28,00
Trabalho de investigação 38,00
Trabalho laboratorial 28,00
Total: 135,00

Obtenção de frequência

Exceptionally this semester the attendance of students will not be computed.

Fórmula de cálculo da classificação final

Final grade = 0.35xquizzes + 0.35xtest + 0.30xproject
Recomendar Página Voltar ao Topo
Copyright 1996-2024 © Instituto Politécnico de Setúbal - Escola Superior de Tecnologia do Barreiro  I Termos e Condições  I Acessibilidade  I Índice A-Z
Página gerada em: 2024-06-17 às 10:31:27