The dinamica virtual machine for geosciences
Autor(a) principal: | |
---|---|
Data de Publicação: | 2015 |
Tipo de documento: | Dissertação |
Idioma: | por |
Título da fonte: | Repositório Institucional da UFMG |
Texto Completo: | http://hdl.handle.net/1843/ESBF-9WVNYW |
Resumo: | Este trabalho descreve a DinamicaVM, a máquina virtual para execução aplicações desenvolvidas em Dinamica EGO. Dinamica EGO é uma plataforma utilizada em modelagem de uso de solo, dinâmica de paisagens e simulação ambiental. Por detrás da sua biblioteca de elementos visuais em modo gráfico, Dinamica EGO roda em cima de uma máquina virtual. Esta máquina - DinamicaVM - oferece aos desenvolvedores um rico conjunto de instruções, com elementos como o 'map' e 'reduce', que são típicos no mundo de linguagens funcional e paralelismo. Garantir que estes componentes, muito expressivos, trabalhem juntos de forma eficiente é uma tarefa desafiadora. O ambiente de execução do Dinamica vence este desafio através de um conjunto de otimizações, emprestando ideias de linguagens de programação funcional, levando ao comportamento específico esperado em programas de alta performance para geociências. Como mostramos neste trabalho algumas dessas otimizações levam speedups de quase 100 vezes, e são fundamentais para o desempenho e qualidade de uma das ferramentas de modelagem ambiental mais utilizadas do mundo. |
id |
UFMG_daacb4c15b5a6af2ac6a44ce504bdbf7 |
---|---|
oai_identifier_str |
oai:repositorio.ufmg.br:1843/ESBF-9WVNYW |
network_acronym_str |
UFMG |
network_name_str |
Repositório Institucional da UFMG |
repository_id_str |
|
spelling |
Fernando Magno Quintao PereiraBritaldo Silveira Soares FilhoRenato Antonio Celso FerreiraBruno Morais Ferreira2019-08-10T16:36:31Z2019-08-10T16:36:31Z2015-02-12http://hdl.handle.net/1843/ESBF-9WVNYWEste trabalho descreve a DinamicaVM, a máquina virtual para execução aplicações desenvolvidas em Dinamica EGO. Dinamica EGO é uma plataforma utilizada em modelagem de uso de solo, dinâmica de paisagens e simulação ambiental. Por detrás da sua biblioteca de elementos visuais em modo gráfico, Dinamica EGO roda em cima de uma máquina virtual. Esta máquina - DinamicaVM - oferece aos desenvolvedores um rico conjunto de instruções, com elementos como o 'map' e 'reduce', que são típicos no mundo de linguagens funcional e paralelismo. Garantir que estes componentes, muito expressivos, trabalhem juntos de forma eficiente é uma tarefa desafiadora. O ambiente de execução do Dinamica vence este desafio através de um conjunto de otimizações, emprestando ideias de linguagens de programação funcional, levando ao comportamento específico esperado em programas de alta performance para geociências. Como mostramos neste trabalho algumas dessas otimizações levam speedups de quase 100 vezes, e são fundamentais para o desempenho e qualidade de uma das ferramentas de modelagem ambiental mais utilizadas do mundo.This work describes DinamicaVM, the virtual machine that runs applications developed in Dinamica EGO. Dinamica EGO is a framework used in the development of geomodeling applications. Behind its multitude of visual modes and graphic elements, Dinamica EGO runs on top of a virtual machine. This machine - DinamicaVM - offers developers a rich instruction set architecture, featuring elements such as map and reduce, which are typical in the functional/parallel world. Ensuring that these very expressive components work together efficiently is a challenging endeavour. Dinamica's runtime addresses this challenge through a suite of optimizations, which borrows ideas from functional programming languages, and leverages specific behavior expected in geo-scientific programs. As we show in this work some of these optimizations deliver speedups of almost 100x, and are key to the industrial-quality performance of one of the world's most widely used geomodeling tools.Universidade Federal de Minas GeraisUFMGLinguagem de programação (Computadores)ComputaçãoModelagem de dados Aspectos ambientaisLinguagem de domínio específicoModelagem ambientalFluxos de dadosThe dinamica virtual machine for geosciencesinfo:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/masterThesisinfo:eu-repo/semantics/openAccessporreponame:Repositório Institucional da UFMGinstname:Universidade Federal de Minas Gerais (UFMG)instacron:UFMGORIGINALbrunomoraisferreira.pdfapplication/pdf2623132https://repositorio.ufmg.br/bitstream/1843/ESBF-9WVNYW/1/brunomoraisferreira.pdf5d75cca7b4a7147cad6ee47d93f5716fMD51TEXTbrunomoraisferreira.pdf.txtbrunomoraisferreira.pdf.txtExtracted texttext/plain135896https://repositorio.ufmg.br/bitstream/1843/ESBF-9WVNYW/2/brunomoraisferreira.pdf.txtd391e8accdbf8b3e44819785758e74e0MD521843/ESBF-9WVNYW2019-11-14 05:46:16.637oai:repositorio.ufmg.br:1843/ESBF-9WVNYWRepositório de PublicaçõesPUBhttps://repositorio.ufmg.br/oaiopendoar:2019-11-14T08:46:16Repositório Institucional da UFMG - Universidade Federal de Minas Gerais (UFMG)false |
dc.title.pt_BR.fl_str_mv |
The dinamica virtual machine for geosciences |
title |
The dinamica virtual machine for geosciences |
spellingShingle |
The dinamica virtual machine for geosciences Bruno Morais Ferreira Linguagem de domínio específico Modelagem ambiental Fluxos de dados Linguagem de programação (Computadores) Computação Modelagem de dados Aspectos ambientais |
title_short |
The dinamica virtual machine for geosciences |
title_full |
The dinamica virtual machine for geosciences |
title_fullStr |
The dinamica virtual machine for geosciences |
title_full_unstemmed |
The dinamica virtual machine for geosciences |
title_sort |
The dinamica virtual machine for geosciences |
author |
Bruno Morais Ferreira |
author_facet |
Bruno Morais Ferreira |
author_role |
author |
dc.contributor.advisor1.fl_str_mv |
Fernando Magno Quintao Pereira |
dc.contributor.referee1.fl_str_mv |
Britaldo Silveira Soares Filho |
dc.contributor.referee2.fl_str_mv |
Renato Antonio Celso Ferreira |
dc.contributor.author.fl_str_mv |
Bruno Morais Ferreira |
contributor_str_mv |
Fernando Magno Quintao Pereira Britaldo Silveira Soares Filho Renato Antonio Celso Ferreira |
dc.subject.por.fl_str_mv |
Linguagem de domínio específico Modelagem ambiental Fluxos de dados |
topic |
Linguagem de domínio específico Modelagem ambiental Fluxos de dados Linguagem de programação (Computadores) Computação Modelagem de dados Aspectos ambientais |
dc.subject.other.pt_BR.fl_str_mv |
Linguagem de programação (Computadores) Computação Modelagem de dados Aspectos ambientais |
description |
Este trabalho descreve a DinamicaVM, a máquina virtual para execução aplicações desenvolvidas em Dinamica EGO. Dinamica EGO é uma plataforma utilizada em modelagem de uso de solo, dinâmica de paisagens e simulação ambiental. Por detrás da sua biblioteca de elementos visuais em modo gráfico, Dinamica EGO roda em cima de uma máquina virtual. Esta máquina - DinamicaVM - oferece aos desenvolvedores um rico conjunto de instruções, com elementos como o 'map' e 'reduce', que são típicos no mundo de linguagens funcional e paralelismo. Garantir que estes componentes, muito expressivos, trabalhem juntos de forma eficiente é uma tarefa desafiadora. O ambiente de execução do Dinamica vence este desafio através de um conjunto de otimizações, emprestando ideias de linguagens de programação funcional, levando ao comportamento específico esperado em programas de alta performance para geociências. Como mostramos neste trabalho algumas dessas otimizações levam speedups de quase 100 vezes, e são fundamentais para o desempenho e qualidade de uma das ferramentas de modelagem ambiental mais utilizadas do mundo. |
publishDate |
2015 |
dc.date.issued.fl_str_mv |
2015-02-12 |
dc.date.accessioned.fl_str_mv |
2019-08-10T16:36:31Z |
dc.date.available.fl_str_mv |
2019-08-10T16:36:31Z |
dc.type.status.fl_str_mv |
info:eu-repo/semantics/publishedVersion |
dc.type.driver.fl_str_mv |
info:eu-repo/semantics/masterThesis |
format |
masterThesis |
status_str |
publishedVersion |
dc.identifier.uri.fl_str_mv |
http://hdl.handle.net/1843/ESBF-9WVNYW |
url |
http://hdl.handle.net/1843/ESBF-9WVNYW |
dc.language.iso.fl_str_mv |
por |
language |
por |
dc.rights.driver.fl_str_mv |
info:eu-repo/semantics/openAccess |
eu_rights_str_mv |
openAccess |
dc.publisher.none.fl_str_mv |
Universidade Federal de Minas Gerais |
dc.publisher.initials.fl_str_mv |
UFMG |
publisher.none.fl_str_mv |
Universidade Federal de Minas Gerais |
dc.source.none.fl_str_mv |
reponame:Repositório Institucional da UFMG instname:Universidade Federal de Minas Gerais (UFMG) instacron:UFMG |
instname_str |
Universidade Federal de Minas Gerais (UFMG) |
instacron_str |
UFMG |
institution |
UFMG |
reponame_str |
Repositório Institucional da UFMG |
collection |
Repositório Institucional da UFMG |
bitstream.url.fl_str_mv |
https://repositorio.ufmg.br/bitstream/1843/ESBF-9WVNYW/1/brunomoraisferreira.pdf https://repositorio.ufmg.br/bitstream/1843/ESBF-9WVNYW/2/brunomoraisferreira.pdf.txt |
bitstream.checksum.fl_str_mv |
5d75cca7b4a7147cad6ee47d93f5716f d391e8accdbf8b3e44819785758e74e0 |
bitstream.checksumAlgorithm.fl_str_mv |
MD5 MD5 |
repository.name.fl_str_mv |
Repositório Institucional da UFMG - Universidade Federal de Minas Gerais (UFMG) |
repository.mail.fl_str_mv |
|
_version_ |
1803589574303154176 |