Comparación de rendimiento y esfuerzo de programación entre Rust y C en arquitecturas multicore : Caso de estudio: Simulación de N cuerpos computacionales
- Autores
- Costanzo, Manuel
- Año de publicación
- 2021
- Idioma
- español castellano
- Tipo de recurso
- tesis de maestría
- Estado
- versión aceptada
- Colaborador/a o director/a de tesis
- Naiouf, Marcelo
Rucci, Enzo - Descripción
- Históricamente, Fortran y C han sido los lenguajes de programación por defecto en la computación de alto rendimiento (High-Performance Computing, HPC). Ambos ofrecen al programador primitivas y funciones que permiten manipular la memoria del sistema e interactuar directamente con el hardware subyacente, resultando en un código eficiente tanto en tiempos de respuesta como en uso de recursos. Como contrapartida, resulta un verdadero desafío generar código que sea mantenible y escalable a lo largo del tiempo en estos tipos de lenguajes. En el 2010 surge Rust, un nuevo lenguaje de programación diseñado para aplicaciones concurrentes y seguras, que adopta características de lenguajes procedurales, orientados a objetos y funcionales. Entre sus principios de diseño, Rust busca igualar a C en términos de eficiencia pero aumentado la seguridad y la productividad del código. Este trabajo presenta un estudio comparativo entre C y Rust en términos de rendimiento y esfuerzo de programación, seleccionando como caso de estudio la simulación de N cuerpos computacionales (N-Body), un problema popular en la comunidad HPC. A partir del trabajo experimental, fue posible determinar que Rust es un lenguaje que reduce el esfuerzo de programación, manteniendo rendimientos aceptables, posicionándolo como una posible alternativa a C para HPC.
Especialista en Cómputo de Altas Prestaciones y Tecnología Grid
Universidad Nacional de La Plata
Facultad de Informática - Materia
-
Ciencias Informáticas
Lenguajes de Programación
Simulación
Gravitación - Nivel de accesibilidad
- acceso abierto
- Condiciones de uso
- http://creativecommons.org/licenses/by-nc-sa/4.0/
- Repositorio
- Institución
- Universidad Nacional de La Plata
- OAI Identificador
- oai:sedici.unlp.edu.ar:10915/120119
Ver los metadatos del registro completo
id |
SEDICI_600772285b4a840fedb8ab8de69d60d6 |
---|---|
oai_identifier_str |
oai:sedici.unlp.edu.ar:10915/120119 |
network_acronym_str |
SEDICI |
repository_id_str |
1329 |
network_name_str |
SEDICI (UNLP) |
spelling |
Comparación de rendimiento y esfuerzo de programación entre Rust y C en arquitecturas multicore : Caso de estudio: Simulación de N cuerpos computacionalesCostanzo, ManuelCiencias InformáticasLenguajes de ProgramaciónSimulaciónGravitaciónHistóricamente, Fortran y C han sido los lenguajes de programación por defecto en la computación de alto rendimiento (High-Performance Computing, HPC). Ambos ofrecen al programador primitivas y funciones que permiten manipular la memoria del sistema e interactuar directamente con el hardware subyacente, resultando en un código eficiente tanto en tiempos de respuesta como en uso de recursos. Como contrapartida, resulta un verdadero desafío generar código que sea mantenible y escalable a lo largo del tiempo en estos tipos de lenguajes. En el 2010 surge Rust, un nuevo lenguaje de programación diseñado para aplicaciones concurrentes y seguras, que adopta características de lenguajes procedurales, orientados a objetos y funcionales. Entre sus principios de diseño, Rust busca igualar a C en términos de eficiencia pero aumentado la seguridad y la productividad del código. Este trabajo presenta un estudio comparativo entre C y Rust en términos de rendimiento y esfuerzo de programación, seleccionando como caso de estudio la simulación de N cuerpos computacionales (N-Body), un problema popular en la comunidad HPC. A partir del trabajo experimental, fue posible determinar que Rust es un lenguaje que reduce el esfuerzo de programación, manteniendo rendimientos aceptables, posicionándolo como una posible alternativa a C para HPC.Especialista en Cómputo de Altas Prestaciones y Tecnología GridUniversidad Nacional de La PlataFacultad de InformáticaNaiouf, MarceloRucci, Enzo2021-05-13info:eu-repo/semantics/masterThesisinfo:eu-repo/semantics/acceptedVersionTrabajo de especializacionhttp://purl.org/coar/resource_type/c_bdccinfo:ar-repo/semantics/tesisDeMaestriaapplication/pdfhttp://sedici.unlp.edu.ar/handle/10915/120119spainfo: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:28:24Zoai:sedici.unlp.edu.ar:10915/120119Institucionalhttp://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:28:24.806SEDICI (UNLP) - Universidad Nacional de La Platafalse |
dc.title.none.fl_str_mv |
Comparación de rendimiento y esfuerzo de programación entre Rust y C en arquitecturas multicore : Caso de estudio: Simulación de N cuerpos computacionales |
title |
Comparación de rendimiento y esfuerzo de programación entre Rust y C en arquitecturas multicore : Caso de estudio: Simulación de N cuerpos computacionales |
spellingShingle |
Comparación de rendimiento y esfuerzo de programación entre Rust y C en arquitecturas multicore : Caso de estudio: Simulación de N cuerpos computacionales Costanzo, Manuel Ciencias Informáticas Lenguajes de Programación Simulación Gravitación |
title_short |
Comparación de rendimiento y esfuerzo de programación entre Rust y C en arquitecturas multicore : Caso de estudio: Simulación de N cuerpos computacionales |
title_full |
Comparación de rendimiento y esfuerzo de programación entre Rust y C en arquitecturas multicore : Caso de estudio: Simulación de N cuerpos computacionales |
title_fullStr |
Comparación de rendimiento y esfuerzo de programación entre Rust y C en arquitecturas multicore : Caso de estudio: Simulación de N cuerpos computacionales |
title_full_unstemmed |
Comparación de rendimiento y esfuerzo de programación entre Rust y C en arquitecturas multicore : Caso de estudio: Simulación de N cuerpos computacionales |
title_sort |
Comparación de rendimiento y esfuerzo de programación entre Rust y C en arquitecturas multicore : Caso de estudio: Simulación de N cuerpos computacionales |
dc.creator.none.fl_str_mv |
Costanzo, Manuel |
author |
Costanzo, Manuel |
author_facet |
Costanzo, Manuel |
author_role |
author |
dc.contributor.none.fl_str_mv |
Naiouf, Marcelo Rucci, Enzo |
dc.subject.none.fl_str_mv |
Ciencias Informáticas Lenguajes de Programación Simulación Gravitación |
topic |
Ciencias Informáticas Lenguajes de Programación Simulación Gravitación |
dc.description.none.fl_txt_mv |
Históricamente, Fortran y C han sido los lenguajes de programación por defecto en la computación de alto rendimiento (High-Performance Computing, HPC). Ambos ofrecen al programador primitivas y funciones que permiten manipular la memoria del sistema e interactuar directamente con el hardware subyacente, resultando en un código eficiente tanto en tiempos de respuesta como en uso de recursos. Como contrapartida, resulta un verdadero desafío generar código que sea mantenible y escalable a lo largo del tiempo en estos tipos de lenguajes. En el 2010 surge Rust, un nuevo lenguaje de programación diseñado para aplicaciones concurrentes y seguras, que adopta características de lenguajes procedurales, orientados a objetos y funcionales. Entre sus principios de diseño, Rust busca igualar a C en términos de eficiencia pero aumentado la seguridad y la productividad del código. Este trabajo presenta un estudio comparativo entre C y Rust en términos de rendimiento y esfuerzo de programación, seleccionando como caso de estudio la simulación de N cuerpos computacionales (N-Body), un problema popular en la comunidad HPC. A partir del trabajo experimental, fue posible determinar que Rust es un lenguaje que reduce el esfuerzo de programación, manteniendo rendimientos aceptables, posicionándolo como una posible alternativa a C para HPC. Especialista en Cómputo de Altas Prestaciones y Tecnología Grid Universidad Nacional de La Plata Facultad de Informática |
description |
Históricamente, Fortran y C han sido los lenguajes de programación por defecto en la computación de alto rendimiento (High-Performance Computing, HPC). Ambos ofrecen al programador primitivas y funciones que permiten manipular la memoria del sistema e interactuar directamente con el hardware subyacente, resultando en un código eficiente tanto en tiempos de respuesta como en uso de recursos. Como contrapartida, resulta un verdadero desafío generar código que sea mantenible y escalable a lo largo del tiempo en estos tipos de lenguajes. En el 2010 surge Rust, un nuevo lenguaje de programación diseñado para aplicaciones concurrentes y seguras, que adopta características de lenguajes procedurales, orientados a objetos y funcionales. Entre sus principios de diseño, Rust busca igualar a C en términos de eficiencia pero aumentado la seguridad y la productividad del código. Este trabajo presenta un estudio comparativo entre C y Rust en términos de rendimiento y esfuerzo de programación, seleccionando como caso de estudio la simulación de N cuerpos computacionales (N-Body), un problema popular en la comunidad HPC. A partir del trabajo experimental, fue posible determinar que Rust es un lenguaje que reduce el esfuerzo de programación, manteniendo rendimientos aceptables, posicionándolo como una posible alternativa a C para HPC. |
publishDate |
2021 |
dc.date.none.fl_str_mv |
2021-05-13 |
dc.type.none.fl_str_mv |
info:eu-repo/semantics/masterThesis info:eu-repo/semantics/acceptedVersion Trabajo de especializacion http://purl.org/coar/resource_type/c_bdcc info:ar-repo/semantics/tesisDeMaestria |
format |
masterThesis |
status_str |
acceptedVersion |
dc.identifier.none.fl_str_mv |
http://sedici.unlp.edu.ar/handle/10915/120119 |
url |
http://sedici.unlp.edu.ar/handle/10915/120119 |
dc.language.none.fl_str_mv |
spa |
language |
spa |
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 |
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_ |
1844616162448506880 |
score |
13.069144 |