Análisis del impacto de sentencias condicionales y repetitivas en la arquitectura NVIDIA G80

ResumenEn este artículo se proponen y evalúan dos nuevas técnicas de optimi- zación a nivel de instrucciones enfocadas a hacer un mejor uso de los recursos de tipo hardware en la arquitectura NVDIA G80. Estas técnicas llamadas loop splitting and branch splitting incrementan de forma contro- lada la...

Full description

Autores:
Snaider Carrillo; University of Ulster
Jakob Siegel; University of Delaware
Xiaoming Li; University of Delaware
Tipo de recurso:
Fecha de publicación:
2010
Institución:
Universidad del Norte
Repositorio:
Repositorio Uninorte
Idioma:
eng
OAI Identifier:
oai:manglar.uninorte.edu.co:10584/3898
Acceso en línea:
http://rcientificas.uninorte.edu.co/index.php/ingenieria/article/view/871
http://hdl.handle.net/10584/3898
Palabra clave:
Rights
License
http://purl.org/coar/access_right/c_abf2
id REPOUNORT2_19e587141863b938458bbf4978ad6837
oai_identifier_str oai:manglar.uninorte.edu.co:10584/3898
network_acronym_str REPOUNORT2
network_name_str Repositorio Uninorte
repository_id_str
spelling Snaider Carrillo; University of UlsterJakob Siegel; University of DelawareXiaoming Li; University of DelawareColombia2013-08-31T23:09:57Z2013-08-31T23:09:57Z2010-09-08http://rcientificas.uninorte.edu.co/index.php/ingenieria/article/view/871http://hdl.handle.net/10584/3898ResumenEn este artículo se proponen y evalúan dos nuevas técnicas de optimi- zación a nivel de instrucciones enfocadas a hacer un mejor uso de los recursos de tipo hardware en la arquitectura NVDIA G80. Estas técnicas llamadas loop splitting and branch splitting incrementan de forma contro- lada la redundancia de código, lo cual puede ser considerado como “no óptimo” en una arquitectura convencional como la CPU; sin embargo, en la arquitectura multiprocesador NVIDIA G80, dicha redundancia se ve refejada en el incremento de la ocupación de sus multiprocesadores y en un aumento del paralelismo de los programas ejecutados en este tipo de arquitectura. Los resultados obtenidos a partir de los bancos de pruebas aleatorios y no aleatorios realizados en esta investigación muestran que estas técnicas incrementan la ocupación y el paralelismo de la arquitec- tura NVIDIA G80 comparado con la ejecución de la versión non-splitting del mismo algoritmo.AbstractIn this paper, we propose two novel techniques to transform control state- ments so they can be executed effciently on the NVIDIA G80 architecture. Our techniques called loop splitting and branch splitting smartly increase code redundancy, which might be deemed as “de-optimization” for CPU; but for a GPU framework these techniques improve the occupancy of a program on the GPU device and therefore improve its performance. We demonstrate our optimizations on an artifcial benchmark and the results show that these techniques are very effcient and, depending on the problem layout, can lead to an increase in occupancy and a drastic improvement in performance compared to non-split version of the same algorithm.application/pdfengUniversidad del NorteRevista Científica Ingeniería y Desarrollo; No 27 (2010): Enero - Junio; 130-150instname:Universidad del Nortereponame:Repositorio Digital de la Universidad del NorteAnálisis del impacto de sentencias condicionales y repetitivas en la arquitectura NVIDIA G80Impact analysis of conditional and loop statements for the NVIDIA G80 architecturearticlepublishedVersionhttp://purl.org/coar/version/c_970fb48d4fbd8a85http://purl.org/coar/resource_type/c_6501http://purl.org/coar/access_right/c_abf210584/3898oai:172.16.14.36:10584/38982015-10-07 01:47:19.556Repositorio Digital de la Universidad del Nortemauribe@uninorte.edu.co
dc.title.none.fl_str_mv Análisis del impacto de sentencias condicionales y repetitivas en la arquitectura NVIDIA G80
Impact analysis of conditional and loop statements for the NVIDIA G80 architecture
title Análisis del impacto de sentencias condicionales y repetitivas en la arquitectura NVIDIA G80
spellingShingle Análisis del impacto de sentencias condicionales y repetitivas en la arquitectura NVIDIA G80
title_short Análisis del impacto de sentencias condicionales y repetitivas en la arquitectura NVIDIA G80
title_full Análisis del impacto de sentencias condicionales y repetitivas en la arquitectura NVIDIA G80
title_fullStr Análisis del impacto de sentencias condicionales y repetitivas en la arquitectura NVIDIA G80
title_full_unstemmed Análisis del impacto de sentencias condicionales y repetitivas en la arquitectura NVIDIA G80
title_sort Análisis del impacto de sentencias condicionales y repetitivas en la arquitectura NVIDIA G80
dc.creator.fl_str_mv Snaider Carrillo; University of Ulster
Jakob Siegel; University of Delaware
Xiaoming Li; University of Delaware
dc.contributor.author.none.fl_str_mv Snaider Carrillo; University of Ulster
Jakob Siegel; University of Delaware
Xiaoming Li; University of Delaware
description ResumenEn este artículo se proponen y evalúan dos nuevas técnicas de optimi- zación a nivel de instrucciones enfocadas a hacer un mejor uso de los recursos de tipo hardware en la arquitectura NVDIA G80. Estas técnicas llamadas loop splitting and branch splitting incrementan de forma contro- lada la redundancia de código, lo cual puede ser considerado como “no óptimo” en una arquitectura convencional como la CPU; sin embargo, en la arquitectura multiprocesador NVIDIA G80, dicha redundancia se ve refejada en el incremento de la ocupación de sus multiprocesadores y en un aumento del paralelismo de los programas ejecutados en este tipo de arquitectura. Los resultados obtenidos a partir de los bancos de pruebas aleatorios y no aleatorios realizados en esta investigación muestran que estas técnicas incrementan la ocupación y el paralelismo de la arquitec- tura NVIDIA G80 comparado con la ejecución de la versión non-splitting del mismo algoritmo.
publishDate 2010
dc.date.issued.none.fl_str_mv 2010-09-08
dc.date.accessioned.none.fl_str_mv 2013-08-31T23:09:57Z
dc.date.available.none.fl_str_mv 2013-08-31T23:09:57Z
dc.type.none.fl_str_mv article
dc.type.coarversion.fl_str_mv http://purl.org/coar/version/c_970fb48d4fbd8a85
dc.type.coar.fl_str_mv http://purl.org/coar/resource_type/c_6501
dc.type.hasVersion.none.fl_str_mv publishedVersion
dc.identifier.other.none.fl_str_mv http://rcientificas.uninorte.edu.co/index.php/ingenieria/article/view/871
dc.identifier.uri.none.fl_str_mv http://hdl.handle.net/10584/3898
url http://rcientificas.uninorte.edu.co/index.php/ingenieria/article/view/871
http://hdl.handle.net/10584/3898
dc.language.iso.none.fl_str_mv eng
language eng
dc.relation.ispartof.none.fl_str_mv Revista Científica Ingeniería y Desarrollo; No 27 (2010): Enero - Junio; 130-150
dc.rights.coar.fl_str_mv http://purl.org/coar/access_right/c_abf2
rights_invalid_str_mv http://purl.org/coar/access_right/c_abf2
dc.format.none.fl_str_mv application/pdf
dc.coverage.spatial.none.fl_str_mv Colombia
dc.publisher.none.fl_str_mv Universidad del Norte
publisher.none.fl_str_mv Universidad del Norte
dc.source.none.fl_str_mv instname:Universidad del Norte
reponame:Repositorio Digital de la Universidad del Norte
instname_str Universidad del Norte
institution Universidad del Norte
reponame_str Repositorio Digital de la Universidad del Norte
collection Repositorio Digital de la Universidad del Norte
repository.name.fl_str_mv Repositorio Digital de la Universidad del Norte
repository.mail.fl_str_mv mauribe@uninorte.edu.co
_version_ 1812183111602012160