Programación funcional multi-core y many-core del método de red de vórtices bidimensional

Autores
Ameijeiras, Mariano P.
Año de publicación
2017
Idioma
español castellano
Tipo de recurso
documento de conferencia
Estado
versión publicada
Descripción
En los últimos años, se ha extendido la utilización de técnicas de programación paralela que permitieran una disminución en el tiempo de resolución de algoritmos numéricos y un mejor aprovechamiento de hardware haciendo uso de arquitecturas redundantes en CPU (Central Processing Unit) y GPU (Graphic Processing Unit). En este informe se implementan las técnicas de programación secuencial, Multi-Core y OpenCL-GPGPU (General-Purpose Computing on Graphics Processing Units) en el software Wolfram Mathematica, para la solución de un problema de determinación de cargas circulatorias sobre una placa plana que se mueve a una velocidad V con un determinado ángulo α (de ataque) por un fluido incompresible, no viscoso (irrotacional) y sobre la que se inducen además acciones debidas a vórtices libres (estela) a través del tiempo. El método utilizado es red de vórtices (VLM, Vortice-Lattice Method). En este método, la parte computacionalmente más intensiva se debe a la evaluación de interacción de vorticidad, modelada mediante la ley de Biot–Savart. Esta ley, dentro del método, resulta altamente paralelizable sobre SIMD (Single Instruction, Multiple Data). De lo expuesto, se implementan rutinas de medición y comparación secuenciales, paralelas sobre CPU (con y sin Hyper-Threading y con granulometría gruesa y fina), paralelas sobre GPU e híbridas y se comparan los resultados obtenidos. Se muestran en detalle las implementaciones realizadas. El código desarrollado para GPU muestra reducciones de tiempos de análisis de hasta 15X frente a cómputos con núcleo simple en el problema completo y mayores si se aísla el módulo de Biot-Savart.
Publicado en: Mecánica Computacional vol. XXXV, no. 10.
Facultad de Ingeniería
Materia
Ingeniería
métodos de vórtice
VLM
GPGPU
SIMD
OpenCL
Nivel de accesibilidad
acceso abierto
Condiciones de uso
http://creativecommons.org/licenses/by-nc-sa/4.0/
Repositorio
SEDICI (UNLP)
Institución
Universidad Nacional de La Plata
OAI Identificador
oai:sedici.unlp.edu.ar:10915/94732

id SEDICI_63c8b6a5b692efacbef56135918f8a38
oai_identifier_str oai:sedici.unlp.edu.ar:10915/94732
network_acronym_str SEDICI
repository_id_str 1329
network_name_str SEDICI (UNLP)
spelling Programación funcional multi-core y many-core del método de red de vórtices bidimensionalAmeijeiras, Mariano P.Ingenieríamétodos de vórticeVLMGPGPUSIMDOpenCLEn los últimos años, se ha extendido la utilización de técnicas de programación paralela que permitieran una disminución en el tiempo de resolución de algoritmos numéricos y un mejor aprovechamiento de hardware haciendo uso de arquitecturas redundantes en CPU (Central Processing Unit) y GPU (Graphic Processing Unit). En este informe se implementan las técnicas de programación secuencial, Multi-Core y OpenCL-GPGPU (General-Purpose Computing on Graphics Processing Units) en el software Wolfram Mathematica, para la solución de un problema de determinación de cargas circulatorias sobre una placa plana que se mueve a una velocidad V con un determinado ángulo α (de ataque) por un fluido incompresible, no viscoso (irrotacional) y sobre la que se inducen además acciones debidas a vórtices libres (estela) a través del tiempo. El método utilizado es red de vórtices (VLM, Vortice-Lattice Method). En este método, la parte computacionalmente más intensiva se debe a la evaluación de interacción de vorticidad, modelada mediante la ley de Biot–Savart. Esta ley, dentro del método, resulta altamente paralelizable sobre SIMD (Single Instruction, Multiple Data). De lo expuesto, se implementan rutinas de medición y comparación secuenciales, paralelas sobre CPU (con y sin Hyper-Threading y con granulometría gruesa y fina), paralelas sobre GPU e híbridas y se comparan los resultados obtenidos. Se muestran en detalle las implementaciones realizadas. El código desarrollado para GPU muestra reducciones de tiempos de análisis de hasta 15X frente a cómputos con núcleo simple en el problema completo y mayores si se aísla el módulo de Biot-Savart.Publicado en: <i>Mecánica Computacional</i> vol. XXXV, no. 10.Facultad de Ingeniería2017-11info:eu-repo/semantics/conferenceObjectinfo:eu-repo/semantics/publishedVersionResumenhttp://purl.org/coar/resource_type/c_5794info:ar-repo/semantics/documentoDeConferenciaapplication/pdf483http://sedici.unlp.edu.ar/handle/10915/94732spainfo:eu-repo/semantics/altIdentifier/url/https://cimec.org.ar/ojs/index.php/mc/article/view/5278info:eu-repo/semantics/altIdentifier/issn/2591-3522info:eu-repo/semantics/openAccesshttp://creativecommons.org/licenses/by-nc-sa/4.0/Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International (CC BY-NC-SA 4.0)reponame:SEDICI (UNLP)instname:Universidad Nacional de La Platainstacron:UNLP2025-09-29T11:19:47Zoai:sedici.unlp.edu.ar:10915/94732Institucionalhttp://sedici.unlp.edu.ar/Universidad públicaNo correspondehttp://sedici.unlp.edu.ar/oai/snrdalira@sedici.unlp.edu.arArgentinaNo correspondeNo correspondeNo correspondeopendoar:13292025-09-29 11:19:47.347SEDICI (UNLP) - Universidad Nacional de La Platafalse
dc.title.none.fl_str_mv Programación funcional multi-core y many-core del método de red de vórtices bidimensional
title Programación funcional multi-core y many-core del método de red de vórtices bidimensional
spellingShingle Programación funcional multi-core y many-core del método de red de vórtices bidimensional
Ameijeiras, Mariano P.
Ingeniería
métodos de vórtice
VLM
GPGPU
SIMD
OpenCL
title_short Programación funcional multi-core y many-core del método de red de vórtices bidimensional
title_full Programación funcional multi-core y many-core del método de red de vórtices bidimensional
title_fullStr Programación funcional multi-core y many-core del método de red de vórtices bidimensional
title_full_unstemmed Programación funcional multi-core y many-core del método de red de vórtices bidimensional
title_sort Programación funcional multi-core y many-core del método de red de vórtices bidimensional
dc.creator.none.fl_str_mv Ameijeiras, Mariano P.
author Ameijeiras, Mariano P.
author_facet Ameijeiras, Mariano P.
author_role author
dc.subject.none.fl_str_mv Ingeniería
métodos de vórtice
VLM
GPGPU
SIMD
OpenCL
topic Ingeniería
métodos de vórtice
VLM
GPGPU
SIMD
OpenCL
dc.description.none.fl_txt_mv En los últimos años, se ha extendido la utilización de técnicas de programación paralela que permitieran una disminución en el tiempo de resolución de algoritmos numéricos y un mejor aprovechamiento de hardware haciendo uso de arquitecturas redundantes en CPU (Central Processing Unit) y GPU (Graphic Processing Unit). En este informe se implementan las técnicas de programación secuencial, Multi-Core y OpenCL-GPGPU (General-Purpose Computing on Graphics Processing Units) en el software Wolfram Mathematica, para la solución de un problema de determinación de cargas circulatorias sobre una placa plana que se mueve a una velocidad V con un determinado ángulo α (de ataque) por un fluido incompresible, no viscoso (irrotacional) y sobre la que se inducen además acciones debidas a vórtices libres (estela) a través del tiempo. El método utilizado es red de vórtices (VLM, Vortice-Lattice Method). En este método, la parte computacionalmente más intensiva se debe a la evaluación de interacción de vorticidad, modelada mediante la ley de Biot–Savart. Esta ley, dentro del método, resulta altamente paralelizable sobre SIMD (Single Instruction, Multiple Data). De lo expuesto, se implementan rutinas de medición y comparación secuenciales, paralelas sobre CPU (con y sin Hyper-Threading y con granulometría gruesa y fina), paralelas sobre GPU e híbridas y se comparan los resultados obtenidos. Se muestran en detalle las implementaciones realizadas. El código desarrollado para GPU muestra reducciones de tiempos de análisis de hasta 15X frente a cómputos con núcleo simple en el problema completo y mayores si se aísla el módulo de Biot-Savart.
Publicado en: <i>Mecánica Computacional</i> vol. XXXV, no. 10.
Facultad de Ingeniería
description En los últimos años, se ha extendido la utilización de técnicas de programación paralela que permitieran una disminución en el tiempo de resolución de algoritmos numéricos y un mejor aprovechamiento de hardware haciendo uso de arquitecturas redundantes en CPU (Central Processing Unit) y GPU (Graphic Processing Unit). En este informe se implementan las técnicas de programación secuencial, Multi-Core y OpenCL-GPGPU (General-Purpose Computing on Graphics Processing Units) en el software Wolfram Mathematica, para la solución de un problema de determinación de cargas circulatorias sobre una placa plana que se mueve a una velocidad V con un determinado ángulo α (de ataque) por un fluido incompresible, no viscoso (irrotacional) y sobre la que se inducen además acciones debidas a vórtices libres (estela) a través del tiempo. El método utilizado es red de vórtices (VLM, Vortice-Lattice Method). En este método, la parte computacionalmente más intensiva se debe a la evaluación de interacción de vorticidad, modelada mediante la ley de Biot–Savart. Esta ley, dentro del método, resulta altamente paralelizable sobre SIMD (Single Instruction, Multiple Data). De lo expuesto, se implementan rutinas de medición y comparación secuenciales, paralelas sobre CPU (con y sin Hyper-Threading y con granulometría gruesa y fina), paralelas sobre GPU e híbridas y se comparan los resultados obtenidos. Se muestran en detalle las implementaciones realizadas. El código desarrollado para GPU muestra reducciones de tiempos de análisis de hasta 15X frente a cómputos con núcleo simple en el problema completo y mayores si se aísla el módulo de Biot-Savart.
publishDate 2017
dc.date.none.fl_str_mv 2017-11
dc.type.none.fl_str_mv info:eu-repo/semantics/conferenceObject
info:eu-repo/semantics/publishedVersion
Resumen
http://purl.org/coar/resource_type/c_5794
info:ar-repo/semantics/documentoDeConferencia
format conferenceObject
status_str publishedVersion
dc.identifier.none.fl_str_mv http://sedici.unlp.edu.ar/handle/10915/94732
url http://sedici.unlp.edu.ar/handle/10915/94732
dc.language.none.fl_str_mv spa
language spa
dc.relation.none.fl_str_mv info:eu-repo/semantics/altIdentifier/url/https://cimec.org.ar/ojs/index.php/mc/article/view/5278
info:eu-repo/semantics/altIdentifier/issn/2591-3522
dc.rights.none.fl_str_mv info:eu-repo/semantics/openAccess
http://creativecommons.org/licenses/by-nc-sa/4.0/
Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International (CC BY-NC-SA 4.0)
eu_rights_str_mv openAccess
rights_invalid_str_mv http://creativecommons.org/licenses/by-nc-sa/4.0/
Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International (CC BY-NC-SA 4.0)
dc.format.none.fl_str_mv application/pdf
483
dc.source.none.fl_str_mv reponame:SEDICI (UNLP)
instname:Universidad Nacional de La Plata
instacron:UNLP
reponame_str SEDICI (UNLP)
collection SEDICI (UNLP)
instname_str Universidad Nacional de La Plata
instacron_str UNLP
institution UNLP
repository.name.fl_str_mv SEDICI (UNLP) - Universidad Nacional de La Plata
repository.mail.fl_str_mv alira@sedici.unlp.edu.ar
_version_ 1844616071907115008
score 13.070432