39
A Computação de Alto Desempenho e seu papel na Ciência de Dados Grupo de Computação Científica Distribuída - LNCC

A Computação de Alto Desempenho e seu papel na Ciência de ... · Scilab Scilab inclui centenas de funções matemáticas. Possui uma linguagem de programação de alto nível,

  • Upload
    others

  • View
    1

  • Download
    0

Embed Size (px)

Citation preview

Page 1: A Computação de Alto Desempenho e seu papel na Ciência de ... · Scilab Scilab inclui centenas de funções matemáticas. Possui uma linguagem de programação de alto nível,

A Computação de Alto Desempenho e seu papel na

Ciência de Dados

Grupo de Computação Científica Distribuída - LNCC

Page 2: A Computação de Alto Desempenho e seu papel na Ciência de ... · Scilab Scilab inclui centenas de funções matemáticas. Possui uma linguagem de programação de alto nível,

7 de novembro de 2019 Grupo de Computação Científica Distribuída 2

Objetivo

● Mostrar como a computação de alto desempenho poderá ser utilizada em prol das atividades e desafios na ciência de dados.

● Mostrar, quais ferramentas você poderá utilizar,quais ferramentas você poderá utilizar, para que mesmo sem acesso a computadores para que mesmo sem acesso a computadores de alto desempenho, você possa estar de alto desempenho, você possa estar preparado para um dia vir a trabalhar e utilizá-preparado para um dia vir a trabalhar e utilizá-loslos em prol da solução destes desafios e execução destas atividades.

Page 3: A Computação de Alto Desempenho e seu papel na Ciência de ... · Scilab Scilab inclui centenas de funções matemáticas. Possui uma linguagem de programação de alto nível,

7 de novembro de 2019 Grupo de Computação Científica Distribuída 3

Computação Alto Desempenho

● A computação de alto desempenho consiste no uso em alta escala da computação para solução de problemas científicos, de engenharia e de negócios.

Page 4: A Computação de Alto Desempenho e seu papel na Ciência de ... · Scilab Scilab inclui centenas de funções matemáticas. Possui uma linguagem de programação de alto nível,

7 de novembro de 2019 Grupo de Computação Científica Distribuída 4

Ciência de Dados

● A Ciência de Dados destina-se a aquisição de conhecimento por meio da análise de dados, sendo uma atividade interdisciplinar, cujo domínio, tornou-se necessário para criação de soluções e produtos: científicos, comerciais e sócio políticos. O seu uso nos auxiliará a:– Tomar Decisões– Melhor compreensão dos fatos passados– Inferência sobre resultados futuros– Criação de novas soluções e produtos.

Page 5: A Computação de Alto Desempenho e seu papel na Ciência de ... · Scilab Scilab inclui centenas de funções matemáticas. Possui uma linguagem de programação de alto nível,

7 de novembro de 2019 Grupo de Computação Científica Distribuída 5

Situação do Mundo Moderno

● Grande quantidade de dados estruturados ou não

● Determinação do que realmente importa/impacta

● Capacidade de processar estes dados, transformando-os em informação (contexto)

● Necessidade de resposta rápida

Page 6: A Computação de Alto Desempenho e seu papel na Ciência de ... · Scilab Scilab inclui centenas de funções matemáticas. Possui uma linguagem de programação de alto nível,

7 de novembro de 2019 Grupo de Computação Científica Distribuída 6

Desafio

Processarde Dados

Coletar Dados

Análise,Hipóteses

TestesAM. IA

Tomada de Decisão

OProblema

Entender o problema (contexto), determinando o que obter (dados), ser capaz de processar esta informação, extrair valor desta informação (conhecimento) e transmitir de forma útil este conhecimento.

Page 7: A Computação de Alto Desempenho e seu papel na Ciência de ... · Scilab Scilab inclui centenas de funções matemáticas. Possui uma linguagem de programação de alto nível,

7 de novembro de 2019 Grupo de Computação Científica Distribuída 7

Universo

Drew Conway

Capacidade de aquisição, armazenamento manipulação e tratamento eletrônico dos dados

Matemáticae Estatística

Aprendizadode

Máquina

Zona Zona PerigosaPerigosa

Data Data ScienceScience

PesquisaPesquisaTradicionalTradicional

Conhecimento Conhecimento do Problemado Problema

MotivaçãoMotivação

Page 8: A Computação de Alto Desempenho e seu papel na Ciência de ... · Scilab Scilab inclui centenas de funções matemáticas. Possui uma linguagem de programação de alto nível,

7 de novembro de 2019 Grupo de Computação Científica Distribuída 8

Processamento de Alto Desempenho

Drew Conway

Capacidade de aquisição, armazenamento manipulação e tratamento eletrônico dos dados

Matemáticae Estatística

Aprendizadode

Máquina

Zona Zona PerigosaPerigosa

Data Data ScienceScience

PesquisaPesquisaTradicionalTradicional

Conhecimento Conhecimento do Problemado Problema

MotivaçãoMotivação

Page 9: A Computação de Alto Desempenho e seu papel na Ciência de ... · Scilab Scilab inclui centenas de funções matemáticas. Possui uma linguagem de programação de alto nível,

7 de novembro de 2019 Grupo de Computação Científica Distribuída 9

Processamento dos Dados

● Big Data● Machine Learning● Data Mining● Artificial Inteligence

Page 10: A Computação de Alto Desempenho e seu papel na Ciência de ... · Scilab Scilab inclui centenas de funções matemáticas. Possui uma linguagem de programação de alto nível,

7 de novembro de 2019 Grupo de Computação Científica Distribuída 10

Ciência de dados

● A Ciência de Dados destina-se a aquisição de conhecimento por meio da análise de dados, sendo uma atividade interdisciplinar, cujo domínio, tornou-se necessário para criação de soluções e produtos: científicos, comerciais e sócio políticos

Data Data ScienceScience

ComputaçãoMatemática

Problema

Page 11: A Computação de Alto Desempenho e seu papel na Ciência de ... · Scilab Scilab inclui centenas de funções matemáticas. Possui uma linguagem de programação de alto nível,

7 de novembro de 2019 Grupo de Computação Científica Distribuída 11

HPC - Contribuição

● Data Science Sparks The Gap Between HPC And Hyperscale (March, 2019)

● The convergence of HPC and BigData: What does it mean for HPC sysadmins? (February 5, 2019)

● Understanding Why AI and Analytics Have to Run on HPC Clusters (July 22, 2019)

Page 12: A Computação de Alto Desempenho e seu papel na Ciência de ... · Scilab Scilab inclui centenas de funções matemáticas. Possui uma linguagem de programação de alto nível,

7 de novembro de 2019 Grupo de Computação Científica Distribuída 12

Data Science-HPC Aceleradores

Page 13: A Computação de Alto Desempenho e seu papel na Ciência de ... · Scilab Scilab inclui centenas de funções matemáticas. Possui uma linguagem de programação de alto nível,

7 de novembro de 2019 Grupo de Computação Científica Distribuída 13

Como posso me preparar?

● Mostrar, quais ferramentas você poderá utilizar,quais ferramentas você poderá utilizar, para que mesmo sem acesso a computadores para que mesmo sem acesso a computadores de alto desempenho, você possa estar de alto desempenho, você possa estar preparado para um dia vir a trabalhar e utilizá-preparado para um dia vir a trabalhar e utilizá-loslos em prol da solução destes desafios e execução destas atividades.

Page 14: A Computação de Alto Desempenho e seu papel na Ciência de ... · Scilab Scilab inclui centenas de funções matemáticas. Possui uma linguagem de programação de alto nível,

7 de novembro de 2019 Grupo de Computação Científica Distribuída 14

ComCiDis - LNCC

● ComCiDis – Grupo de Computação Científica Distribuída– Coordenador: Professor Bruno Schulze

Page 15: A Computação de Alto Desempenho e seu papel na Ciência de ... · Scilab Scilab inclui centenas de funções matemáticas. Possui uma linguagem de programação de alto nível,

7 de novembro de 2019 Grupo de Computação Científica Distribuída 15

Ambientes Virtualizados – Nuvens Computacionais

Page 16: A Computação de Alto Desempenho e seu papel na Ciência de ... · Scilab Scilab inclui centenas de funções matemáticas. Possui uma linguagem de programação de alto nível,

7 de novembro de 2019 Grupo de Computação Científica Distribuída 16

Ambientes Virtualizados – Nuvens Computacionais

Page 17: A Computação de Alto Desempenho e seu papel na Ciência de ... · Scilab Scilab inclui centenas de funções matemáticas. Possui uma linguagem de programação de alto nível,

7 de novembro de 2019 Grupo de Computação Científica Distribuída 17

Ambientes Virtualizados – Nuvens Computacionais

Page 18: A Computação de Alto Desempenho e seu papel na Ciência de ... · Scilab Scilab inclui centenas de funções matemáticas. Possui uma linguagem de programação de alto nível,

7 de novembro de 2019 Grupo de Computação Científica Distribuída 18

Ambientes Virtualizados – Nuvens Computacionais

Page 19: A Computação de Alto Desempenho e seu papel na Ciência de ... · Scilab Scilab inclui centenas de funções matemáticas. Possui uma linguagem de programação de alto nível,

7 de novembro de 2019 Grupo de Computação Científica Distribuída 19

Ambientes Virtualizados – Nuvens Computacionais

Page 20: A Computação de Alto Desempenho e seu papel na Ciência de ... · Scilab Scilab inclui centenas de funções matemáticas. Possui uma linguagem de programação de alto nível,

7 de novembro de 2019 Grupo de Computação Científica Distribuída 20

Ambientes Virtualizados – Nuvens Computacionais

Page 21: A Computação de Alto Desempenho e seu papel na Ciência de ... · Scilab Scilab inclui centenas de funções matemáticas. Possui uma linguagem de programação de alto nível,

7 de novembro de 2019 Grupo de Computação Científica Distribuída 21

Universo Data Science

Drew Conway

Capacidade de aquisição, armazenamento manipulação e tratamento eletrônico dos dados

Matemáticae Estatística

Aprendizadode

Máquina

Zona Zona PerigosaPerigosa

Data Data ScienceScience

PesquisaPesquisaTradicionalTradicional

Conhecimento Conhecimento do Problemado Problema

MotivaçãoMotivação

Page 22: A Computação de Alto Desempenho e seu papel na Ciência de ... · Scilab Scilab inclui centenas de funções matemáticas. Possui uma linguagem de programação de alto nível,

7 de novembro de 2019 Grupo de Computação Científica Distribuída 22

HPC - Clusters

● Cluster

O SDumont possui capacidade instalada de processamento na ordem de 1,1 Petaflop/s (1,1 x 1015 float-point operations per second),

possui um total de 18.144 núcleos de CPU, distribuídos em 756 nós computacionais (24 núcleos por nó)

Page 23: A Computação de Alto Desempenho e seu papel na Ciência de ... · Scilab Scilab inclui centenas de funções matemáticas. Possui uma linguagem de programação de alto nível,

7 de novembro de 2019 Grupo de Computação Científica Distribuída 23

Primeiro PassoCluster Virtualizado

Page 24: A Computação de Alto Desempenho e seu papel na Ciência de ... · Scilab Scilab inclui centenas de funções matemáticas. Possui uma linguagem de programação de alto nível,

7 de novembro de 2019 Grupo de Computação Científica Distribuída 24

Cluster Virtualizados● Hipervisors

– KVM, VirtualBox, Vmware, HiperV

● Containers– LXC, LXD e Docker,

Open-VZ, Linux-VServer

https://insights.sei.cmu.edu/sei_blog/2017/09/virtualization-via-containers.html

Page 25: A Computação de Alto Desempenho e seu papel na Ciência de ... · Scilab Scilab inclui centenas de funções matemáticas. Possui uma linguagem de programação de alto nível,

7 de novembro de 2019 Grupo de Computação Científica Distribuída 25

Segundo Passo

● Cluster Linux– Rocks

– Kubernets

● Cloud – Openstack (SO Para Nuvens)

Page 26: A Computação de Alto Desempenho e seu papel na Ciência de ... · Scilab Scilab inclui centenas de funções matemáticas. Possui uma linguagem de programação de alto nível,

7 de novembro de 2019 Grupo de Computação Científica Distribuída 26

Segundo Passo

● Cluster Linux

Page 27: A Computação de Alto Desempenho e seu papel na Ciência de ... · Scilab Scilab inclui centenas de funções matemáticas. Possui uma linguagem de programação de alto nível,

7 de novembro de 2019 Grupo de Computação Científica Distribuída 27

Segundo Passo

● Cluster Linux

Page 28: A Computação de Alto Desempenho e seu papel na Ciência de ... · Scilab Scilab inclui centenas de funções matemáticas. Possui uma linguagem de programação de alto nível,

7 de novembro de 2019 Grupo de Computação Científica Distribuída 28

Terceiro Passo

● Python– Porquê Python

● Simplicidade, ● Multiplataforma● Grande suporte● Módulos já prontos voltados para Data ScienceMódulos já prontos voltados para Data Science

Page 29: A Computação de Alto Desempenho e seu papel na Ciência de ... · Scilab Scilab inclui centenas de funções matemáticas. Possui uma linguagem de programação de alto nível,

7 de novembro de 2019 Grupo de Computação Científica Distribuída 29

Python - Módulos

Page 30: A Computação de Alto Desempenho e seu papel na Ciência de ... · Scilab Scilab inclui centenas de funções matemáticas. Possui uma linguagem de programação de alto nível,

7 de novembro de 2019 Grupo de Computação Científica Distribuída 30

NumFocus

● Organização sem fins lucrativos responsável por hospedar projetos promovendo praticas voltadas para comunidade de pesquisa científica e de dados.

Page 31: A Computação de Alto Desempenho e seu papel na Ciência de ... · Scilab Scilab inclui centenas de funções matemáticas. Possui uma linguagem de programação de alto nível,

7 de novembro de 2019 Grupo de Computação Científica Distribuída 31

IPython

Page 32: A Computação de Alto Desempenho e seu papel na Ciência de ... · Scilab Scilab inclui centenas de funções matemáticas. Possui uma linguagem de programação de alto nível,

7 de novembro de 2019 Grupo de Computação Científica Distribuída 32

WEKA

Weka é uma coleção de algoritmos de aprendizado de máquina para tarefas de mineração de dados.

Ele contém ferramentas para preparação, classificação, regressão, clustering, mineração de regras de associação e visualização de dados.

Page 33: A Computação de Alto Desempenho e seu papel na Ciência de ... · Scilab Scilab inclui centenas de funções matemáticas. Possui uma linguagem de programação de alto nível,

7 de novembro de 2019 Grupo de Computação Científica Distribuída 33

Weka

Page 34: A Computação de Alto Desempenho e seu papel na Ciência de ... · Scilab Scilab inclui centenas de funções matemáticas. Possui uma linguagem de programação de alto nível,

7 de novembro de 2019 Grupo de Computação Científica Distribuída 34

R Project for Statistical Computing

● R é uma linguagem e ambiente para análise estatística.

● R fornece uma ampla variedade de técnicas estatísticas (modelagem linear e não linear, testes estatísticos clássicos, análise de séries temporais, classificação, agrupamento, entre outros) e técnicas gráficas.

Page 35: A Computação de Alto Desempenho e seu papel na Ciência de ... · Scilab Scilab inclui centenas de funções matemáticas. Possui uma linguagem de programação de alto nível,

7 de novembro de 2019 Grupo de Computação Científica Distribuída 35

R Project for Statistical Computing

Page 36: A Computação de Alto Desempenho e seu papel na Ciência de ... · Scilab Scilab inclui centenas de funções matemáticas. Possui uma linguagem de programação de alto nível,

7 de novembro de 2019 Grupo de Computação Científica Distribuída 36

Octave

Page 37: A Computação de Alto Desempenho e seu papel na Ciência de ... · Scilab Scilab inclui centenas de funções matemáticas. Possui uma linguagem de programação de alto nível,

7 de novembro de 2019 Grupo de Computação Científica Distribuída 37

Octave

Page 38: A Computação de Alto Desempenho e seu papel na Ciência de ... · Scilab Scilab inclui centenas de funções matemáticas. Possui uma linguagem de programação de alto nível,

7 de novembro de 2019 Grupo de Computação Científica Distribuída 38

Scilab

● Scilab inclui centenas de funções matemáticas. Possui uma linguagem de programação de alto nível, permitindo acesso a estruturas de dados avançadas, funções gráficas 2D e 3D– Controle, simulação, otimização, processamento

de sinais e simulador de sistemas dinâmicos híbridos

Page 39: A Computação de Alto Desempenho e seu papel na Ciência de ... · Scilab Scilab inclui centenas de funções matemáticas. Possui uma linguagem de programação de alto nível,

7 de novembro de 2019 Grupo de Computação Científica Distribuída 39

Data Science e HPC

Considerações Finais

Obrigado

Perguntas?