<?xml version="1.0" encoding="ISO-8859-1"?><article xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<front>
<journal-meta>
<journal-id>2227-1899</journal-id>
<journal-title><![CDATA[Revista Cubana de Ciencias Informáticas]]></journal-title>
<abbrev-journal-title><![CDATA[Rev cuba cienc informat]]></abbrev-journal-title>
<issn>2227-1899</issn>
<publisher>
<publisher-name><![CDATA[Editorial Ediciones Futuro]]></publisher-name>
</publisher>
</journal-meta>
<article-meta>
<article-id>S2227-18992016000100006</article-id>
<title-group>
<article-title xml:lang="es"><![CDATA[Técnicas de programación paralela aplicadas al procesamiento de datos ráster mediante la biblioteca GDAL]]></article-title>
<article-title xml:lang="en"><![CDATA[Parallel programming techniques applied to raster data processing using GDAL library]]></article-title>
</title-group>
<contrib-group>
<contrib contrib-type="author">
<name>
<surname><![CDATA[Castillo Reyes]]></surname>
<given-names><![CDATA[Grethell]]></given-names>
</name>
<xref ref-type="aff" rid="A01"/>
</contrib>
</contrib-group>
<aff id="A01">
<institution><![CDATA[,Universidad de las Ciencias Informáticas  ]]></institution>
<addr-line><![CDATA[La Lisa La Habana]]></addr-line>
</aff>
<pub-date pub-type="pub">
<day>01</day>
<month>03</month>
<year>2016</year>
</pub-date>
<pub-date pub-type="epub">
<day>01</day>
<month>03</month>
<year>2016</year>
</pub-date>
<volume>10</volume>
<numero>1</numero>
<fpage>71</fpage>
<lpage>94</lpage>
<copyright-statement/>
<copyright-year/>
<self-uri xlink:href="http://scielo.sld.cu/scielo.php?script=sci_arttext&amp;pid=S2227-18992016000100006&amp;lng=en&amp;nrm=iso"></self-uri><self-uri xlink:href="http://scielo.sld.cu/scielo.php?script=sci_abstract&amp;pid=S2227-18992016000100006&amp;lng=en&amp;nrm=iso"></self-uri><self-uri xlink:href="http://scielo.sld.cu/scielo.php?script=sci_pdf&amp;pid=S2227-18992016000100006&amp;lng=en&amp;nrm=iso"></self-uri><abstract abstract-type="short" xml:lang="es"><p><![CDATA[RESUMEN El modelo de datos ráster es uno de los modelos de datos geoespaciales comúnmente utilizado en el almacenamiento y análisis de información de la superficie terrestre. Generalmente, para realizar operaciones sobre este tipo de datos, se emplea la Biblioteca de Abstracción de Datos Geoespaciales, más conocida como GDAL, capaz de manejar alrededor de cien formatos de archivos ráster. El tiempo de respuesta de dicha biblioteca durante el análisis de los datos, se ha visto condicionado por la tendencia al aumento gradual del volumen de los mismos, gracias al continuo perfeccionamiento de las técnicas de obtención de datos de la superficie terrestre. Por esta razón, este trabajo se centra en el estudio crítico de las principales contribuciones que marcan su interés en la aplicación de técnicas de programación paralela al proceso de análisis de la información ráster con el fin de incrementar el rendimiento en términos de velocidad. Como resultado del estudio realizado, se logró determinar que la utilización de la computación voluntaria para el aprovechamiento de los recursos de hardware disponibles en las organizaciones y el uso de técnicas de programación paralela que permitan garantizar la heterogeneidad entre plataformas de cómputo, emergen como alternativas interesantes a combinar e incluir en el diseño de estrategias para el procesamiento paralelo de información ráster. Estas variantes resultan aplicables en las entidades dedicadas al análisis de información geoespacial en Cuba, teniendo en cuenta las limitaciones del entorno computacional que las caracterizan.]]></p></abstract>
<abstract abstract-type="short" xml:lang="en"><p><![CDATA[ABSTRACT The raster data model is one of the geospatial data models commonly used to store and analyze information of the Earth's surface. Generally, to perform operations over these data, it is used the Geospatial Data Abstraction Library, known as GDAL, capable of handling about a hundred raster file formats. The response time of these library during data analysis, has been conditioned by the trend of gradually increasing the volume of these, thanks to the continuous improvement of the technical data acquisition of the land surface. For this reason, this work focuses on the critical study of the major contributions that mark their interest in applying parallel programming techniques to process raster data analysis in order to increase performance in terms of speed. As a result of the study, it was determined that the use of volunteer computing for the utilization of hardware resources available in organizations and the use of techniques to ensure the heterogeneity between computing platforms, emerge as interesting alternatives to combine and include in the design of strategies for parallel processing of raster data. These variants are applicable in institutions dedicated to the analysis of geospatial information in Cuba, considering the limitations of the computational environment that characterize them.]]></p></abstract>
<kwd-group>
<kwd lng="es"><![CDATA[computación voluntaria]]></kwd>
<kwd lng="es"><![CDATA[heterogeneidad]]></kwd>
<kwd lng="es"><![CDATA[modelo de datos ráster]]></kwd>
<kwd lng="es"><![CDATA[técnicas de programación paralela]]></kwd>
<kwd lng="en"><![CDATA[heterogeneity]]></kwd>
<kwd lng="en"><![CDATA[parallel programming techniques]]></kwd>
<kwd lng="en"><![CDATA[raster data model]]></kwd>
<kwd lng="en"><![CDATA[volunteer computing]]></kwd>
</kwd-group>
</article-meta>
</front><body><![CDATA[ <p align="right"><font face="Verdana, Arial, Helvetica, sans-serif" size="2"><B>ART&Iacute;CULO    DE REVISI&Oacute;N </B></font></p>     <p>&nbsp;</p>     <p><font size="4"><strong><font face="Verdana, Arial, Helvetica, sans-serif">T&eacute;cnicas de programaci&oacute;n paralela aplicadas al  procesamiento de datos r&aacute;ster mediante la biblioteca GDAL</font></strong></font></p>     <p>&nbsp;</p>     <p><font size="3"><strong><font face="Verdana, Arial, Helvetica, sans-serif">Parallel programming  techniques applied to raster data processing using GDAL library</font></strong></font></p>     <p>&nbsp;</p>     <p>&nbsp;</p>     <P><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><strong>Grethell Castillo Reyes<sup>1*</sup></strong></font></p>     <p><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><sup>1 </sup>Universidad de las Ciencias  Inform&aacute;ticas. Carretera a San Antonio de los Ba&ntilde;os, km 2 &frac12;, Torrens, La Lisa,  La Habana, CP. 19370.</font></p>     <P><font face="Verdana, Arial, Helvetica, sans-serif"><span class="class"><font size="2">*Autor para la correspondencia: </font></span><font size="2"><a href="mailto:gcreyes@uci.cu">gcreyes@uci.cu</a></font></font>      ]]></body>
<body><![CDATA[<p>&nbsp;</p>     <p>&nbsp;</p> <hr>     <P><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><b>RESUMEN</b> </font>     <p><font size="2" face="Verdana, Arial, Helvetica, sans-serif">El modelo de datos r&aacute;ster es uno de los modelos de datos geoespaciales  com&uacute;nmente utilizado en el almacenamiento y an&aacute;lisis de informaci&oacute;n de la  superficie terrestre. Generalmente, para realizar operaciones sobre este tipo  de datos, se emplea la Biblioteca de Abstracci&oacute;n de Datos Geoespaciales, m&aacute;s  conocida como GDAL, capaz de manejar alrededor de cien formatos de archivos  r&aacute;ster. El tiempo de respuesta de dicha biblioteca durante el an&aacute;lisis de los  datos, se ha visto condicionado por la tendencia al aumento gradual del volumen  de los mismos, gracias al continuo perfeccionamiento de las t&eacute;cnicas de  obtenci&oacute;n de datos de la superficie terrestre. Por esta raz&oacute;n, este trabajo se  centra en el estudio cr&iacute;tico de las principales contribuciones que marcan su  inter&eacute;s en la aplicaci&oacute;n de t&eacute;cnicas de programaci&oacute;n paralela al proceso de  an&aacute;lisis de la informaci&oacute;n r&aacute;ster con el fin de incrementar el rendimiento en t&eacute;rminos  de velocidad. Como resultado del estudio realizado, se logr&oacute; determinar que la  utilizaci&oacute;n de la computaci&oacute;n voluntaria para el aprovechamiento de los  recursos de <em>hardware</em> disponibles en  las organizaciones y el uso de t&eacute;cnicas de programaci&oacute;n paralela que permitan  garantizar la heterogeneidad entre plataformas de c&oacute;mputo, emergen como  alternativas interesantes a combinar e incluir en el dise&ntilde;o de estrategias para  el procesamiento paralelo de informaci&oacute;n r&aacute;ster. Estas variantes resultan  aplicables en las entidades dedicadas al an&aacute;lisis de informaci&oacute;n geoespacial en  Cuba, teniendo en cuenta las limitaciones del entorno computacional que las  caracterizan.</font></p>     <p>  <font size="2" face="Verdana, Arial, Helvetica, sans-serif"><b><span lang=EN-GB>Palabras clave: </span></b>computaci&oacute;n voluntaria, heterogeneidad, modelo de datos r&aacute;ster, t&eacute;cnicas  de programaci&oacute;n paralela</font></p> <hr>     <p><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><b><span lang=EN-GB>ABSTRACT</span></b> </font></p>     <p><font size="2" face="Verdana, Arial, Helvetica, sans-serif">The raster data model is one  of the geospatial data models commonly used to store and analyze information of  the Earth's surface. Generally, to perform operations over these data, it is  used the Geospatial Data Abstraction Library, known as GDAL, capable of  handling about a hundred raster file formats. The response time of these  library during data analysis, has been conditioned by the trend of gradually  increasing the volume of these, thanks to the continuous improvement of the  technical data acquisition of the land surface. For this reason, this work  focuses on the critical study of the major contributions that mark their  interest in applying parallel programming techniques to process raster data  analysis in order to increase performance in terms of speed. As a result of the  study, it was determined that the use of volunteer computing for the  utilization of hardware resources available in organizations and the use of  techniques to ensure the heterogeneity between computing platforms, emerge as  interesting alternatives to combine and include in the design of strategies for  parallel processing of raster data. These variants are applicable in  institutions dedicated to the analysis of geospatial information in Cuba,  considering the limitations of the computational environment that characterize  them.</font></p>     <p><font size="2" face="Verdana, Arial, Helvetica, sans-serif"><b><span lang=EN-GB>Key words: </span></b>heterogeneity, parallel  programming techniques, raster data model, volunteer computing</font></p> <hr>     <p>&nbsp;</p>     <p>&nbsp;</p>     ]]></body>
<body><![CDATA[<p><font size="3" face="Verdana, Arial, Helvetica, sans-serif"><b>INTRODUCCI&Oacute;N</b></font></p>     <p><font size="2" face="Verdana, Arial, Helvetica, sans-serif">El vertiginoso  desarrollo de las nuevas tecnolog&iacute;as satelitales de alta resoluci&oacute;n, la  teledetecci&oacute;n y el incremento de la fotogrametr&iacute;a terrestre y a&eacute;rea para la  digitalizaci&oacute;n de la superficie, han posibilitado la obtenci&oacute;n de im&aacute;genes que  contienen informaci&oacute;n geogr&aacute;fica utilizada con diversos fines. Entre las  aplicaciones m&aacute;s significativas de las im&aacute;genes satelitales, es notable su uso  en la agricultura, la desforestaci&oacute;n, la hidrolog&iacute;a, la miner&iacute;a, la cartograf&iacute;a  y de manera general en la vigilancia del medio ambiente (Romero, 2006). La informaci&oacute;n obtenida  mediante estas tecnolog&iacute;as es almacenada y manipulada a trav&eacute;s de un modelo de  datos denominado modelo r&aacute;ster. Su estructura constituye, en esencia, una  matriz bidimensional conformada por celdas o p&iacute;xeles. Cada celda representa un  valor num&eacute;rico que describe una caracter&iacute;stica del terreno en ese punto (Smith et al., 2013) y que puede  estar sujeta a diferentes transformaciones.</font></p>     <p><font size="2" face="Verdana, Arial, Helvetica, sans-serif">Dentro del campo de los  Sistemas de Informaci&oacute;n Geogr&aacute;fica (SIG), la informaci&oacute;n georreferenciada puede  ser analizada mediante distintos modelos de datos (Peralta,  2008), entre ellos el modelo de datos r&aacute;ster es uno de los  m&aacute;s utilizados. Este modelo es la base para un gran n&uacute;mero de algoritmos de  an&aacute;lisis de superficies, que permiten extraer caracter&iacute;sticas propias del  terreno. Los mismos, revisten importancia para un porciento numeroso de los SIG  rectores de la comunidad internacional. </font></p>     <p><font size="2" face="Verdana, Arial, Helvetica, sans-serif">Una soluci&oacute;n  ampliamente utilizada por estos sistemas para el procesamiento de datos  geoespaciales en formato r&aacute;ster es la Biblioteca de Abstracci&oacute;n de Datos  Geoespaciales (GDAL). Entre los tipos de an&aacute;lisis  r&aacute;ster que son posibles realizar mediante la GDAL, son notables los algoritmos  para el estudio de la inclinaci&oacute;n de una superficie, &uacute;tiles por ejemplo, en la  determinaci&oacute;n de zonas de poca pendiente favorables para la construcci&oacute;n, o  zonas de mucha pendiente que determinan erosi&oacute;n o deslizamientos de tierra (Rodr&iacute;guez and Su&aacute;rez, 2010). Adem&aacute;s,  destacan los algoritmos para la generaci&oacute;n de mapas de sombra y de rugosidad,  empleados en la percepci&oacute;n de la profundidad de una superficie en tres  dimensiones (Jenny, 2001) y para determinar la  variabilidad de un relieve en un entorno determinado respectivamente (Seitavuopio et al., 2005). Actualmente,  estos procesos se ven afectados indistintamente por dos limitantes  fundamentales que giran en torno a la tendencia en el crecimiento del volumen  de los datos r&aacute;ster y la forma de procesamiento de estos mediante la biblioteca  GDAL.</font></p>     <p><font size="2" face="Verdana, Arial, Helvetica, sans-serif">Las  investigaciones realizadas por (Nikolakopoulos et al., 2006) demuestran que  con los avances tecnol&oacute;gicos la disponibilidad de datos de superficies del  terreno almacenados en formato r&aacute;ster ha ido en aumento sostenido y cada vez  con un mayor nivel de resoluci&oacute;n espacial y precisi&oacute;n. Este elemento es  directamente proporcional al tama&ntilde;o que pueden llegar a alcanzar dichos datos,  lo cual tiene sus consecuencias. A medida que aumenta la resoluci&oacute;n y  precisi&oacute;n, entonces mayor tama&ntilde;o tendr&aacute; el modelo utilizado para el  almacenamiento, ya que el n&uacute;mero de celdas necesarias crece significativamente.  Teniendo en cuenta esto, se considera, que uno de los problemas cuando se trata  de procesar datos r&aacute;ster, es que precisamente el tama&ntilde;o alcanzado por estos  suele ser significativo, incluso en t&eacute;rmino de gigabytes (Gao et al., 2013).</font></p>     <p><font size="2" face="Verdana, Arial, Helvetica, sans-serif">Adicionalmente,  como segunda limitante, los datos de gran tama&ntilde;o pueden condicionar el tiempo  de respuesta del actual modelo de procesamiento de la biblioteca GDAL. Mediante  este modelo, el acceso y la modificaci&oacute;n de los datos se realiza cargando en la  memoria principal fila por fila de un <em>dataset</em> r&aacute;ster de manera iterativa. Por cada una de las filas se realizan las  transformaciones pertinentes y se escriben los datos actualizados en el <em>dataset</em> de salida. Esto propicia que  mientras mayor sea el n&uacute;mero de filas y columnas en la matriz a procesar, mayor  costo computacional se necesita para transformar los datos, lo que se traduce  en aumento del tiempo de procesamiento y por lo tanto p&eacute;rdida en t&eacute;rminos de  rendimiento.</font></p>     <p><font size="2" face="Verdana, Arial, Helvetica, sans-serif">En este sentido, con la  finalidad de incrementar el rendimiento en velocidad de las aplicaciones, en  los &uacute;ltimos a&ntilde;os los procesadores han migrado hacia el paralelismo como un  cambio importante en busca de este factor (Fraire  et al., 2013). Por su parte, los paradigmas de la programaci&oacute;n  paralela est&aacute;n estrechamente condicionados por la arquitectura de <em>hardware</em> y la infraestructura de  software con la que se cuenta, lo que ha dado lugar al surgimiento de la  computaci&oacute;n de altas prestaciones y con ello a las supercomputadoras. Sin  embargo, en el caso de Cuba, no abundan los entornos con terminales de este  tipo que brinden un desempe&ntilde;o elevado. Por lo general, las organizaciones  dedicadas al procesamiento de informaci&oacute;n geoespacial en el pa&iacute;s, se  caracterizan por poseer una infraestructura de red compuesta por servidores de  bajas prestaciones, a los que se accede simult&aacute;neamente para realizar  operaciones que en ocasiones suelen ser costosas y afectan la ejecuci&oacute;n de  otras peticiones.</font></p>     <p><font size="2" face="Verdana, Arial, Helvetica, sans-serif">Por esta raz&oacute;n, se profundiza en el  an&aacute;lisis de los principales referentes te&oacute;rico-pr&aacute;cticos de la bibliograf&iacute;a,  que centran su atenci&oacute;n en el desarrollo de soluciones para procesar la  informaci&oacute;n geogr&aacute;fica almacenada en formato r&aacute;ster aplicando t&eacute;cnicas de  programaci&oacute;n paralela. Adem&aacute;s, se exponen los principales conceptos que  sustentan la investigaci&oacute;n y contribuyen a la comprensi&oacute;n de su contenido. El  objetivo principal es realizar un an&aacute;lisis cr&iacute;tico de estos trabajos, en base a  desarrollar un m&eacute;todo que pueda hacer frente a las limitaciones actuales de las  entidades cubanas que se sustentan en <em>hardware</em> de bajas prestaciones para el manejo de la informaci&oacute;n georreferenciada. </font></p>     <p>&nbsp;</p>     <p><font face="Verdana, Arial, Helvetica, sans-serif"><strong><font size="3">DESARRO</font></strong></font><font face="Verdana, Arial, Helvetica, sans-serif"><strong><font size="3">LLO</font></strong></font></p>     ]]></body>
<body><![CDATA[<p><font size="2"><strong><font face="Verdana, Arial, Helvetica, sans-serif">El modelo de datos r&aacute;ster</font></strong></font></p>     <p> <font size="2" face="Verdana, Arial, Helvetica, sans-serif">Un modelo puede definirse como una representaci&oacute;n parcial y abstracta de la realidad. En el caso de los datos geogr&aacute;ficos, (Longley et al., 2011 ) se refieren a modelo de representaci&oacute;n geoespacial, como un <em>&ldquo;(&hellip;) conjunto</em> <em>construido para la descripci&oacute;n y representaci&oacute;n del aspecto de los objetos del mundo real en el ordenador (&hellip;)</em>&rdquo;. Estos modelos son usados en diversos campos de aplicaci&oacute;n de la Geom&aacute;tica, entre los que destacan los SIG.</font></p>     <p><font size="2" face="Verdana, Arial, Helvetica, sans-serif">En el modelo r&aacute;ster, seg&uacute;n (Peralta,  2008), la informaci&oacute;n geogr&aacute;fica es representada en celdas  o p&iacute;xeles, generalmente cuadrados &ndash; aunque pueden utilizarse tri&aacute;ngulos o  hex&aacute;gonos &ndash; ordenados conformando una estructura matricial conocida como malla  regular, en la que cada celda tiene un valor y una localizaci&oacute;n determinada,  como se muestra en la <a href="/img/revistas/rcci/v10n1/f0106116.jpg" target="_blank">Figura 1</a> . La malla regular se conoce en la bibliograf&iacute;a como  estructura r&aacute;ster. Mediante este modelo, la localizaci&oacute;n de las entidades  geogr&aacute;ficas se define como la referencia directa a la matriz de datos en la que  cada celda est&aacute; asociada a una porci&oacute;n del territorio (Llopis,  2008).</font></p>     <p><font size="2"><strong><font face="Verdana, Arial, Helvetica, sans-serif">Tama&ntilde;o de celda y resoluci&oacute;n  espacial</font></strong></font></p>     <p><font size="2" face="Verdana, Arial, Helvetica, sans-serif">La celda es la  unidad m&iacute;nima de informaci&oacute;n de un r&aacute;ster, por lo tanto, su tama&ntilde;o representa  la precisi&oacute;n con la que son definidos los elementos geogr&aacute;ficos en el modelo (Llopis, 2008). A su vez la resoluci&oacute;n espacial  de una superficie representada en un r&aacute;ster, depende en gran medida del tama&ntilde;o  de las celdas de la matriz de datos, dado en metros sobre el terreno (ESRI, 2012). Cuanto menor sea el tama&ntilde;o de  dicha celda y por ende de la zona representada, mayor es el n&uacute;mero de celdas  que se representar&aacute;n mediante el r&aacute;ster. En el manual publicado por el Centro  de Recursos de ArcGIS (ESRI, 2012), se afirma que los tama&ntilde;os de  celda m&aacute;s peque&ntilde;os en modelos r&aacute;ster grandes representan una superficie  completa, por lo tanto, se necesita un espacio de almacenamiento mayor,  elemento que implica tambi&eacute;n mayor tiempo de procesamiento de los datos.</font></p>     <p><font size="2" face="Verdana, Arial, Helvetica, sans-serif">Con el  perfeccionamiento de las t&eacute;cnicas de adquisici&oacute;n de datos de la superficie  terrestre (Max, 2005), la informaci&oacute;n almacenada en  los modelos r&aacute;ster es cada vez m&aacute;s detallada. Este hecho est&aacute; dado como  consecuencia de que el tama&ntilde;o de las celdas en la matriz de datos se hace m&aacute;s  peque&ntilde;o, adquiriendo de esta forma mayores niveles de resoluci&oacute;n espacial. La  gr&aacute;fica de la <a href="/img/revistas/rcci/v10n1/f0206116.jpg" target="_blank">Figura 2</a>  fue elaborada a partir de un  estudio realizado sobre las caracter&iacute;sticas de algunas de las im&aacute;genes r&aacute;ster  obtenidas como resultado de la puesta en &oacute;rbita de sat&eacute;lites de alta resoluci&oacute;n  y muestra la tendencia en el aumento de la misma en este tipo de dato.</font></p>     <p><font size="2" face="Verdana, Arial, Helvetica, sans-serif">Seg&uacute;n la  informaci&oacute;n representada, la evoluci&oacute;n comienza en el a&ntilde;o 1972, con el  lanzamiento a la &oacute;rbita de la primera versi&oacute;n de la serie de sat&eacute;lites LANDSAT,  que logra obtener una imagen de la superficie terrestre con un nivel de  resoluci&oacute;n de 80m, resultado que fue mejorado posteriormente por la tercera  versi&oacute;n de esta serie con una resoluci&oacute;n de 40m. En los a&ntilde;os 2000 y 2009, los  proyectos SRTM y ASTER GDEM alcanzan un nivel de resoluci&oacute;n de 30m cubriendo el  80% y el 99% de la Tierra respectivamente. Estos resultados son superados por  la versi&oacute;n 8 de LANDSAT, al obtener im&aacute;genes con 15m de resoluci&oacute;n. Seg&uacute;n la  revisi&oacute;n bibliogr&aacute;fica realizada hasta el momento, los resultados m&aacute;s recientes  del a&ntilde;o 2014 fueron arrojados por el sat&eacute;lite TAnDEM-X, puesto en &oacute;rbita desde  el a&ntilde;o 2010 con el objetivo de obtener un Modelo Digital de Elevaci&oacute;n (MDE) del  100% de la superficie terrestre, lo que se traduce en 149 millones de kil&oacute;metros  cuadrados. La resoluci&oacute;n alcanzada por este sensor supera a las anteriores, con  un nivel de detalle de 3m sobre el terreno.</font></p>     <p><font size="2" face="Verdana, Arial, Helvetica, sans-serif">Como conclusi&oacute;n  del estudio realizado, es evidente que la disponibilidad de informaci&oacute;n r&aacute;ster  de la superficie terrestre es amplia y su perfeccionamiento no se detiene,  elemento que conlleva a innumerables consecuencias ben&eacute;ficas en la rama de la  Geom&aacute;tica, sobre todo para su integraci&oacute;n con SIG, pero que tambi&eacute;n tiene su contraparte,  pues exige al un&iacute;sono el perfeccionamiento de las t&eacute;cnicas utilizadas para su  procesamiento y an&aacute;lisis.</font></p>     <p><font size="2"><strong><font face="Verdana, Arial, Helvetica, sans-serif">Procesamiento r&aacute;ster con la GDAL</font></strong></font></p>     <p><font size="2" face="Verdana, Arial, Helvetica, sans-serif">A partir de la  creciente masividad de los datos geoespaciales almacenados en estructuras  r&aacute;ster, han surgido diversas teor&iacute;as sobre c&oacute;mo llevar a cabo su procesamiento.  Varias de ellas (Guan and Clarke, 2010) (Maulik and Sarkar, 2012) (Zhan and Qin, 2012), plantean una  limitante fundamental que existe en cuanto al tema: la diversidad de formatos  r&aacute;ster que han surgido como resultado de su notable utilizaci&oacute;n como modelo de  datos geoespaciales y la dificultad que existe en el procesamiento homog&eacute;neo de  estos.</font></p>     ]]></body>
<body><![CDATA[<p><font size="2" face="Verdana, Arial, Helvetica, sans-serif">Con el objetivo  de lograr el acceso gen&eacute;rico - ya sea para la lectura, escritura o traducci&oacute;n -  de la variedad de formatos de datos r&aacute;ster existentes, en el a&ntilde;o 1998, Frank  Warmendan (Warmerdam, 2008) introduce la biblioteca GDAL.  Una de sus caracter&iacute;sticas fundamentales es que presenta un &uacute;nico modelo de  datos abstracto que permite manipular la mayor&iacute;a de formatos de datos r&aacute;ster, pero  que adem&aacute;s se basa en el enfoque de la extensibilidad permitiendo la  implementaci&oacute;n de nuevos formatos en caso de que as&iacute; se requiera. Como parte de  sus utilidades, cuenta con un conjunto de herramientas de l&iacute;nea de comandos  para el procesamiento r&aacute;ster con diferentes prop&oacute;sitos (GDAL, 2014). </font></p>     <p><font size="2"><strong><em><font face="Verdana, Arial, Helvetica, sans-serif">Proceso secuencial de los datos</font></em></strong></font></p>     <p><font size="2" face="Verdana, Arial, Helvetica, sans-serif">Generalmente, un amplio rango  de los algoritmos para el procesamiento r&aacute;ster se ejecutan de forma secuencial (Qin  et al., 2014a), o sea, durante su ejecuci&oacute;n, una instrucci&oacute;n no  comienza hasta que no termine la anterior. Este es el caso de los algoritmos  para el procesamiento r&aacute;ster que implementa la GDAL. La <a href="/img/revistas/rcci/v10n1/f0306116.jpg" target="_blank">Figura 3 </a>representa un esquema que describe el flujo  secuencial de las operaciones realizadas por la biblioteca durante el  procesamiento de los datos.</font></p>     <p><font size="2" face="Verdana, Arial, Helvetica, sans-serif">La primera  operaci&oacute;n que se ejecuta para procesar los datos con la GDAL, es el registro de  los manejadores de formatos. La biblioteca cuenta con un manejador para cada  formato de datos soportado, incluyendo los nuevos formatos que sean incluidos.  En este caso, se registran todos los manejadores, con el objetivo de asegurar  su disponibilidad en las operaciones siguientes. Posteriormente, se realiza la  lectura de los metadatos del <em>dataset</em> r&aacute;ster a procesar. En (GDAL, 2014) se definen como metadatos: el  formato de archivo en el que est&aacute;n almacenados los datos, la dimensi&oacute;n de la  estructura matricial, las bandas que componen el r&aacute;ster, el sistema de  referencia espacial que utiliza, as&iacute; como su extensi&oacute;n espacial. A partir de  estos metadatos se crea el <em>dataset</em> de  salida.</font></p>     <p><font size="2" face="Verdana, Arial, Helvetica, sans-serif">Una vez realizadas las  operaciones anteriores, se procede a la lectura de los datos almacenados en la  estructura matricial, su procesamiento y luego su escritura en el <em>dataset</em> de salida. A los efectos de esta  investigaci&oacute;n, estas secuencias de operaciones son las m&aacute;s importantes.  Precisamente esto se debe a que, independientemente del tama&ntilde;o de la estructura  a analizar, la GDAL realiza el procesamiento de los datos fila por fila, como  se ilustra en el esquema de la figura anterior. Para ello ejecuta una serie de  iteraciones recorriendo la matriz de entrada. En cada iteraci&oacute;n, por cada una  de las filas realiza la lectura, procesamiento y escritura de los datos. </font></p>     <p><font size="2" face="Verdana, Arial, Helvetica, sans-serif">A pesar de que varios autores (Armstrong  and Densham, 1992; Wagner  and Scott, 1995; Guan,  2008; Guan,  2009; Guan  and Clarke, 2010; Zhan  and Qin, 2012; Guan  et al., 2013; Ouyang  et al., 2013; Qin  et al., 2014a; Qin  et al., 2014b) se han inclinado por analizar y mejorar el  procesamiento de los datos r&aacute;ster en cuestiones de rendimiento, existe poca  literatura publicada donde se realice un an&aacute;lisis profundo con respecto al  comportamiento de la GDAL en relaci&oacute;n con el tiempo de procesamiento secuencial  a medida que aumenta la resoluci&oacute;n y el tama&ntilde;o de los datos que son analizados.  Por esta raz&oacute;n, se decidi&oacute; realizar pruebas que demuestren lo anteriormente  expuesto. La <a href="/img/revistas/rcci/v10n1/t0106116.jpg" target="_blank">Tabla 1</a>  resume los resultados obtenidos.</font></p>     <p><font size="2" face="Verdana, Arial, Helvetica, sans-serif">Las pruebas fueron realizadas en dos  entornos con las siguientes configuraciones de <em>hardware</em>:</font></p>     <p><font size="2" face="Verdana, Arial, Helvetica, sans-serif"> -Entorno 1 (E1): HP Pavilion g4-1174la con 4 GB de memoria  RAM, un procesador AMD Dual-Core A4-3300M APU a 1.90 GHz y una tarjeta gr&aacute;fica  integrada Radeon HD 6480G de 512 MB.</font></p>     <p><font size="2" face="Verdana, Arial, Helvetica, sans-serif">-Entorno 2 (E2): ASUS x550L con 4 GB de memoria RAM, un  procesador Intel Core i5-4200U APU a 1.6 - 2.6 GHz y una tarjeta gr&aacute;fica  integrada Intel HD Graphics 4400 de 1600 MB.</font>&ccedil;</p>     <p> <font size="2" face="Verdana, Arial, Helvetica, sans-serif">Se procesaron cuatro MDE utilizando la herramienta <em>gdaldem</em>, con el objetivo de generar los mapas de sombra y rugosidad correspondientes a cada uno de los modelos proporcionados. Los tiempos de respuesta obtenidos, son el resultado del promedio de los tiempos arrojados en la ejecuci&oacute;n de varias iteraciones por cada uno de los modelos utilizados.</font></p>     ]]></body>
<body><![CDATA[<p><font size="2" face="Verdana, Arial, Helvetica, sans-serif">A partir de los  resultados obtenidos se deduce que la deficiencia de este mecanismo, radica en  que independientemente de las caracter&iacute;sticas de <em>hardware</em> de los entornos de procesamiento, mientras mayor sea la  resoluci&oacute;n y el tama&ntilde;o del r&aacute;ster, entonces la cantidad de filas y columnas - y  por consiguiente las celdas - de la matriz a procesar aumenta, por lo que se  incrementa el costo de c&oacute;mputo y el tiempo de procesamiento, disminuyendo el  rendimiento del proceso en cuesti&oacute;n.</font></p>     <p><font size="2" face="Verdana, Arial, Helvetica, sans-serif">Uno de los  enfoques de soluci&oacute;n m&aacute;s utilizados cuando se trata el problema de procesar  grandes vol&uacute;menes de datos en el menor tiempo posible, se basa en explotar al  m&aacute;ximo las posibilidades de ejecuci&oacute;n en paralelo que brindan las arquitecturas  multin&uacute;cleos actuales, siempre y cuando las instrucciones a ejecutar y los  datos a procesar as&iacute; lo permitan. Como plantean (Guan and Clarke, 2010) en su teor&iacute;a,  desde la perspectiva de computaci&oacute;n, el procesamiento de datos r&aacute;ster puede ser  paralelizado, dado que la estructura matricial utilizada para su almacenamiento  puede ser particionada en varias submatrices y asignadas a m&uacute;ltiples procesadores  para su c&oacute;mputo.</font></p>     <p><font size="2"><strong><font face="Verdana, Arial, Helvetica, sans-serif">Elementos de computaci&oacute;n paralela</font></strong></font></p>     <p><font size="2" face="Verdana, Arial, Helvetica, sans-serif">A partir de la  demanda de problemas que exigen un costo computacional elevado para su  resoluci&oacute;n, ha proliferado la existencia de computadores capaces de solucionar  estos problemas en un tiempo razonable. En este sentido, la velocidad de  procesamiento de los computadores secuenciales se ha incrementado continuamente  para adaptarse a las necesidades actuales, pero se han alcanzado los l&iacute;mites  f&iacute;sicos en el incremento de su capacidad para resolver problemas con alto costo  computacional.</font></p>     <p><font size="2" face="Verdana, Arial, Helvetica, sans-serif">Guiado por la  insaciable demanda de un poder computacional superior, como soluci&oacute;n a la  problem&aacute;tica anterior surge el concepto de paralelismo, que como plantea (Gove, 2011), su esencia consiste en usar  m&uacute;ltiples recursos computacionales simult&aacute;neamente para resolver un problema  dado, con el fin de lograr menor tiempo de procesamiento. </font></p>     <p><font size="2"><strong><em><font face="Verdana, Arial, Helvetica, sans-serif">Arquitecturas paralelas</font></em></strong></font></p>     <p><font size="2" face="Verdana, Arial, Helvetica, sans-serif">Existen dos variantes principales para  el intercambio de datos en entornos paralelos (Petersen and Arbenz, 2004) (Breshears, 2009) (Gebali, 2011), como muestra la <a href="/img/revistas/rcci/v10n1/f0406116.jpg" target="_blank">Figura 4</a> .</font></p>     <p><font size="2" face="Verdana, Arial, Helvetica, sans-serif">- Arquitectura de memoria compartida: Seg&uacute;n (Petersen and Arbenz, 2004), mediante esta  arquitectura todos los elementos de proceso acceden al mismo espacio de memoria  com&uacute;n, <a href="/img/revistas/rcci/v10n1/f0406116.jpg" target="_blank">Figura 4 a</a>. El acceso a la memoria debe  ser controlado por los propios algoritmos a trav&eacute;s de diferentes m&eacute;todos de  sincronizaci&oacute;n. La comunicaci&oacute;n entre los procesadores se realiza utilizando la  memoria, en el momento en que un proceso determinado escribe en un espacio de  memoria y &eacute;ste es le&iacute;do por otro proceso. Bajo esta arquitectura, se han  realizado diferentes implementaciones como es el caso de <em>Pthreads</em> (Lewis and Berg, 1997), <em>Threading Building Blocks </em>(Contreras and Martonosi, 2008) y el est&aacute;ndar <em>Open Multi &ndash; Processing</em> (OpenMP) (Dagum and Menon, 1998) (Chapman and Huang, 2007) utilizado en  diversas investigaciones relacionadas con el procesamiento de informaci&oacute;n  geogr&aacute;fica en entornos paralelos (Chen et al., 2013) (Cui and Zhang, 2013).</font></p>     <p><font size="2" face="Verdana, Arial, Helvetica, sans-serif">- Arquitectura de memoria distribuida: Mediante  esta variante, cada procesador est&aacute; asociado a un espacio de memoria f&iacute;sico  propio o local (Gebali,  2011) y existe una red de interconexi&oacute;n que une los  procesos, <a href="/img/revistas/rcci/v10n1/f0406116.jpg" target="_blank">Figura 4 b</a>. Ante los usuarios, los sistemas implementados bajo  esta arquitectura, aparecen como una &uacute;nica m&aacute;quina para resolver un determinado  problema. En este caso, la comunicaci&oacute;n entre los procesadores se realiza  mediante el mecanismo de paso de mensajes. Este mecanismo se encuentra  implementado a trav&eacute;s de diversas bibliotecas como es el caso de la M&aacute;quina  Virtual Paralela (PVM) (Geist  et al., 1994) y PARMACS (Calkin  et al., 1994). En los &uacute;ltimos a&ntilde;os, son varias las investigaciones  referidas al procesamiento de datos r&aacute;ster en paralelo que optan por el uso de  la Interfaz de Paso de Mensajes (MPI) (Guan  and Clarke, 2010; Zhan  and Qin, 2012) debido a su actualidad y disponibilidad.</font></p>     <p><font size="2"><strong><em><font face="Verdana, Arial, Helvetica, sans-serif">Sistemas distribuidos por computaci&oacute;n voluntaria</font></em></strong></font></p>     ]]></body>
<body><![CDATA[<p><font size="2" face="Verdana, Arial, Helvetica, sans-serif">Una de las  variantes de implementaci&oacute;n de sistemas distribuidos, es la computaci&oacute;n  voluntaria, a trav&eacute;s de la cual el procesamiento se realiza en terminales  identificadas en la red y no en m&aacute;quinas bajo el control y la gesti&oacute;n de un  proyecto determinado (Beberg et al., 2009) como es el caso  de los cl&uacute;ster de computadoras de alto rendimiento. Esta tecnolog&iacute;a, toma  ventaja del tiempo de inactividad de una PC, ofrecida como voluntaria, para  utilizar el poder de su Unidad Central de Procesamiento (CPU) y hacer  simulaciones significativas (Kwesi and Amoako-Yirenkyi, 2008). El esquema  b&aacute;sico de funcionamiento de la computaci&oacute;n voluntaria est&aacute; compuesto por un  servidor encargado de administrar la distribuci&oacute;n del procesamiento y que  mantiene comunicaci&oacute;n peri&oacute;dica con los voluntarios para informar nuevas tareas  y obtener los resultados de las ya completadas.</font></p>     <p><font size="2" face="Verdana, Arial, Helvetica, sans-serif">Varios autores (Sarmenta, 2001; Anderson and Fedak, 2006; Kwesi and Amoako-Yirenkyi, 2008; Beberg et al., 2009), plantean que  mediante este enfoque se proporciona una potencia de c&aacute;lculo y procesamiento  elevada, lo que permite reducir el tiempo requerido por las aplicaciones en  condiciones normales de ejecuci&oacute;n, obteniendo resultados con alto rendimiento.  En los estudios realizados por Anderson y Fedak (Anderson and Fedak, 2006) se demuestra  que el potencial de este tipo de sistemas, se extiende mucho m&aacute;s all&aacute; de las  tareas intensivas de la CPU y abarca aplicaciones que requieren elevado uso de  la memoria y el disco.</font></p>     <p><font size="2" face="Verdana, Arial, Helvetica, sans-serif">Uno de los  factores que a los efectos de esta investigaci&oacute;n y a consideraci&oacute;n de la autora,  constituye una de las caracter&iacute;sticas m&aacute;s relevantes de la computaci&oacute;n  voluntaria, es que dicha tecnolog&iacute;a emerge como una v&iacute;a econ&oacute;mica para la  implementaci&oacute;n de sistemas distribuidos para el procesamiento paralelo en  entornos de bajas prestaciones, si se tiene en cuenta que el poder de c&oacute;mputo  no recae sobre un grupo de computadoras de altas prestaciones que conforman un  cl&uacute;ster dedicado, sino que utiliza el poder de c&aacute;lculo y procesamiento de los  voluntarios distribuidos a trav&eacute;s de una red</font><font size="2" face="Verdana, Arial, Helvetica, sans-serif">. </font></p>     <p><font size="2"><strong><em><font face="Verdana, Arial, Helvetica, sans-serif">GPU: Plataformas de c&oacute;mputo de prop&oacute;sito general</font></em></strong></font></p>     <p><font size="2" face="Verdana, Arial, Helvetica, sans-serif">Por otro lado, impulsado por la demanda  del mercado de los gr&aacute;ficos en tres dimensiones, el procesamiento de im&aacute;genes  en tiempo real y la creciente industria de los video juegos, las Unidades de  Procesamiento Gr&aacute;fico (GPU) han evolucionado hasta convertirse en elementos significativos  en comparaci&oacute;n con las CPU, tomando gran ventaja sobre &eacute;stas en t&eacute;rminos de  capacidades de c&oacute;mputo (NVIDIA, 2011).</font></p>     <p><font size="2" face="Verdana, Arial, Helvetica, sans-serif">Dado que las GPU  poseen una arquitectura que toma como base la naturaleza altamente paralela de  las operaciones de c&oacute;mputo asociadas a la producci&oacute;n de gr&aacute;ficos por  computadora, dedicando la gran mayor&iacute;a de sus componentes a la realizaci&oacute;n de  grandes vol&uacute;menes de c&aacute;lculos matem&aacute;ticos (Mart&iacute;nez, 2011), son utilizadas como plataformas  de c&oacute;mputo de prop&oacute;sito general, o <em>General  Purpose GPU</em> (GPGPU). Este paradigma ha generado un creciente inter&eacute;s por  parte de la comunidad cient&iacute;fica dedicada a investigaciones (Lv et al., 2012; Steinbach and Hemmerling, 2012; Gao et al., 2013) relacionadas  con el procesamiento de datos geogr&aacute;ficos en paralelo.</font></p>     <p><font size="2" face="Verdana, Arial, Helvetica, sans-serif">A partir de la evoluci&oacute;n de  las GPU han surgido bibliotecas y plataformas que permiten el desarrollo de  aplicaciones GPGPU. Este es el caso de CUDA, arquitectura de c&oacute;mputo paralelo  de prop&oacute;sito general, que incluye un modelo de programaci&oacute;n y un conjunto de  instrucciones que aprovechan el motor de c&aacute;lculo paralelo de las tarjetas  gr&aacute;ficas NVIDIA para resolver problemas computacionales complejos en una manera  m&aacute;s eficiente (NVIDIA,  2011). Luego del surgimiento de CUDA y a partir de la  colaboraci&oacute;n entre el Grupo Khronos y AMD surge OpenCL,  est&aacute;ndar abierto para la programaci&oacute;n de colecciones heterog&eacute;neas de CPU, GPU y  otros procesadores (Munshi et al., 2012).</font></p>     <p><font size="2" face="Verdana, Arial, Helvetica, sans-serif">Varios autores (Komatsu et al., 2010) (Daga et al., 2011) (Fraire et al., 2013) coinciden en  que una de las diferencias m&aacute;s notables entre OpenCL y CUDA, es que CUDA, al  ser dependiente de la plataforma y del fabricante, hace dif&iacute;cil que el desarrollador  aproveche completamente la potencia disponible en los sistemas modernos de  computaci&oacute;n. Sin embargo, OpenCL fue dise&ntilde;ado para explotar al m&aacute;ximo el  paralelismo dentro de un mismo dispositivo, permitiendo la ejecuci&oacute;n de tareas  en m&uacute;ltiples n&uacute;cleos de m&uacute;ltiples dispositivos, independientemente de la  plataforma y su fabricante. Su objetivo, es lograr c&oacute;digos eficientes y  portables al mismo tiempo.</font></p>     <p><strong><em><font size="2" face="Verdana, Arial, Helvetica, sans-serif">Estrategias de descomposici&oacute;n del dominio de los datos</font></em></strong></p>     <p><font size="2" face="Verdana, Arial, Helvetica, sans-serif">Para obtener  beneficios en un entorno de procesamiento paralelo, (Armstrong and Densham, 1992) plantean que se  deben concebir procedimientos, a partir de los modelos secuenciales, en los que  el paralelismo pueda ser explotado al m&aacute;ximo. Este proceso es conocido como  descomposici&oacute;n de dominio, y se considera un elemento fundamental en el  procesamiento de datos r&aacute;ster en paralelo.</font></p>     ]]></body>
<body><![CDATA[<p><font size="2" face="Verdana, Arial, Helvetica, sans-serif">En la descomposici&oacute;n de dominio, los  datos se dividen en subdominios y cada una de las particiones obtenidas es  asignada a un procesador, donde se ejecuta el algoritmo secuencial  correspondiente (Wagner and Scott, 1995) utilizando los  datos del subdominio proporcionado. En los algoritmos paralelos para procesar  informaci&oacute;n r&aacute;ster, com&uacute;nmente los datos se descomponen en subdominios  rectangulares utilizando tres estrategias comunes: descomposici&oacute;n por filas,  descomposici&oacute;n por columnas o descomposici&oacute;n en bloques (Qin et al., 2014a) <a href="/img/revistas/rcci/v10n1/f0506116.jpg" target="_blank">Figura <strong>5</strong></a> . </font></p>     <p><font size="2" face="Verdana, Arial, Helvetica, sans-serif">En su  investigaci&oacute;n, (Wagner and Scott, 1995) plantean que el  rendimiento de un algoritmo paralelo con respecto a la descomposici&oacute;n de los  datos, depende en gran medida de la correspondencia que exista entre el tama&ntilde;o  de los subdominios obtenidos y el balance en la asignaci&oacute;n de estos subdominios  a cada uno de los elementos de procesamiento. En este sentido, el equilibrio  entre los procesadores se logra si se particionan los datos en subdominios del  mismo tama&ntilde;o, de manera que se logre uniformidad en la distribuci&oacute;n y en  consecuencia, que algunos procesadores no operen con mayor cantidad de datos  que otros. Por su parte, los resultados obtenidos en experimentos realizados  por (Guan and Clarke, 2010) demostraron que  los enfoques de descomposici&oacute;n por filas y columnas son m&aacute;s adecuados que la  descomposici&oacute;n por bloques en cuanto a rendimiento, tiempo de ejecuci&oacute;n y  eficiencia.</font></p>     <p><font size="2"><strong><font face="Verdana, Arial, Helvetica, sans-serif">Tendencias del procesamiento r&aacute;ster  en paralelo </font></strong></font></p>     <p><font size="2" face="Verdana, Arial, Helvetica, sans-serif">A partir del  notable avance en las Ciencias de la Informaci&oacute;n Geogr&aacute;fica (GISciences), el  incremento en el volumen y resoluci&oacute;n de los datos geoespaciales almacenados en  formato r&aacute;ster, y la complejidad de los algoritmos y m&eacute;todos utilizados para su  procesamiento, han sido fundamentadas y aplicadas diversas teor&iacute;as dentro del  campo de la computaci&oacute;n paralela con el fin de lograr mejores resultados si de  rendimiento se trata. En esta secci&oacute;n se muestra el resultado de un an&aacute;lisis  realizado sobre las principales investigaciones en el &aacute;rea del procesamiento de  modelos r&aacute;ster en entornos paralelos. Aunque en la presente investigaci&oacute;n son  de mayor inter&eacute;s las teor&iacute;as relacionadas con el procesamiento en paralelo de  datos r&aacute;ster haciendo uso de la biblioteca GDAL, s&iacute; resulta importante destacar  los trabajos que han marcado hitos en el &aacute;rea del procesamiento de modelos r&aacute;ster  en paralelo de manera general.</font></p>     <p><font size="2" face="Verdana, Arial, Helvetica, sans-serif">En (Guan, 2009; Guan and Clarke, 2010; Guan et al., 2013) los autores  exponen el desarrollo de una biblioteca de programaci&oacute;n denominada <em>parallel Raster Processing Library</em> (pRPL) aplicada a la aceleraci&oacute;n de un modelo de un aut&oacute;mata celular. Por su  parte en (Ouyang et al., 2013) se propone la  utilizaci&oacute;n de una arquitectura de acceso paralelo a la informaci&oacute;n r&aacute;ster  basada en la utilizaci&oacute;n de MPI. Bajo el mismo concepto de utilizar MPI, en (Wang et al., 2012) se desarroll&oacute; una arquitectura  para el procesamiento en paralelo de im&aacute;genes de teledetecci&oacute;n, haciendo  &eacute;nfasis en las im&aacute;genes multiespectrales por el alto costo computacional que  requieren.</font></p>     <p><font size="2" face="Verdana, Arial, Helvetica, sans-serif">En (Xia et al., 2011), los autores proponen una  metodolog&iacute;a gen&eacute;rica basada en la utilizaci&oacute;n de la GPU y el modelo de  programaci&oacute;n CUDA en el an&aacute;lisis geoespacial a trav&eacute;s de algoritmos de  interpolaci&oacute;n. El aporte expuesto en (Lv et al., 2012) se enfoca en la utilizaci&oacute;n de  la GPU para el dise&ntilde;o de algoritmos paralelos que aceleren el an&aacute;lisis  geoespacial de la pendiente o inclinaci&oacute;n de una superficie terrestre. Por su  parte (Steinbach and Hemmerling, 2012) presentan una  estrategia eficiente para el almacenamiento en cach&eacute; de los datos r&aacute;ster y la  aceleraci&oacute;n de su procesamiento utilizando la GPU. </font></p>     <p><font size="2"><strong><font face="Verdana, Arial, Helvetica, sans-serif">Principales aproximaciones al  procesamiento paralelo de la GDAL</font></strong></font></p>     <p><font size="2" face="Verdana, Arial, Helvetica, sans-serif">Actualmente se  pueden encontrar varios intentos de implementar el procesamiento de datos  r&aacute;ster con la biblioteca GDAL aplicando t&eacute;cnicas de programaci&oacute;n paralela.  Aunque no son tan abundantes las teor&iacute;as abordadas, se evidencia el inter&eacute;s de  la comunidad cient&iacute;fica sobre el &aacute;rea. Este es el caso de las investigaciones  realizadas por (Zhan and Qin, 2012; Qin et al., 2014a; Qin et al., 2014b).</font></p>     <p><font size="2" face="Verdana, Arial, Helvetica, sans-serif">La principal  contribuci&oacute;n de (Zhan and Qin, 2012) consiste en el  dise&ntilde;o de dos variantes, teniendo en cuenta las tres estrategias de  descomposici&oacute;n de dominio de los datos r&aacute;ster. En ambos casos se utiliz&oacute; en la  implementaci&oacute;n el modelo de programaci&oacute;n MPI.</font></p>     <p><font size="2" face="Verdana, Arial, Helvetica, sans-serif">En una primera  variante de soluci&oacute;n, (Zhan and Qin, 2012) plantean la  utilizaci&oacute;n de un proceso maestro encargado de almacenar todos los datos en la  memoria del sistema, con el objetivo de que otros hilos de procesos accedan a  los datos a trav&eacute;s de la comunicaci&oacute;n con el proceso maestro. La principal  deficiencia de esta variante se presenta cuando el r&aacute;ster a procesar excede en  tama&ntilde;o la capacidad de la memoria disponible en alguno de los nodos de c&oacute;mputo.</font></p>     ]]></body>
<body><![CDATA[<p><font size="2" face="Verdana, Arial, Helvetica, sans-serif">A diferencia de  esta variante, el segundo modelo que propone (Zhan and Qin, 2012) contempla la  posibilidad de que cada proceso pueda leer y escribir datos en los archivos de  entrada y salida respectivamente, como muestra la <a href="/img/revistas/rcci/v10n1/f0606116.jpg" target="_blank">Figura 6</a> . En este caso, el proceso  maestro utiliza la biblioteca GDAL para obtener los metadatos &uacute;tiles en el  procesamiento, por ejemplo, la extensi&oacute;n espacial y la proyecci&oacute;n. A partir de  estos datos crea el archivo r&aacute;ster de salida correspondiente. Luego, en  concordancia con alguna de las estrategias de descomposici&oacute;n de dominio env&iacute;a  la informaci&oacute;n extra&iacute;da a los procesos de trabajo. Bas&aacute;ndose en la informaci&oacute;n  del subdominio recibida, cada uno de los procesos de trabajo lee el subdominio  correspondiente, realiza los c&aacute;lculos y una vez obtenidos los resultados  utiliza la GDAL para abrir y escribir dichos resultados en el archivo r&aacute;ster de  salida.</font></p>     <p><font size="2" face="Verdana, Arial, Helvetica, sans-serif">Para este caso,  la dificultad radica en la carencia de flexibilidad en cuanto a la estrategia  de descomposici&oacute;n de dominio y los formatos de archivo r&aacute;ster que se emplean,  pues los resultados obtenidos en el procesamiento no siempre son confiables  cuando se utiliza la descomposici&oacute;n por columnas o por bloques, o cuando los  datos r&aacute;ster est&aacute;n almacenados en formato de imagen.</font></p>     <p><font size="2" face="Verdana, Arial, Helvetica, sans-serif">Los experimentos  aplicados por (Qin et al., 2014b) permitieron corroborar que las  deficiencias presentadas por la propuesta son atribuibles al mecanismo de  almacenamiento en cach&eacute; que implementa la GDAL. La dimensi&oacute;n del bloque de  cach&eacute; en GDAL es a menudo igual a la dimensi&oacute;n de la trama a procesar, lo que  provoca que se obtengan resultados incorrectos cuando diferentes procesos  intentan escribir en la misma regi&oacute;n de un archivo r&aacute;ster compartido. Esta  caracter&iacute;stica afecta el procesamiento en paralelo en el caso de que los datos  se dividan en columnas o en bloques, pues al realizar la lectura de los datos  r&aacute;ster estos son reorganizados como un flujo lineal contiguo de valores, que se  inicia desde la celda de la esquina superior izquierda en el matriz r&aacute;ster y  termina con la celda de la esquina inferior derecha. Como resultado, cada  proceso debe acceder a varias secciones no contiguas del archivo r&aacute;ster.</font></p>     <p><font size="2" face="Verdana, Arial, Helvetica, sans-serif">A partir de la  determinaci&oacute;n de las causas que provocan estos resultados incorrectos, (Qin et al., 2014b) propone el dise&ntilde;o de un m&oacute;dulo  de redistribuci&oacute;n de los datos. Este enfoque utiliza una estrategia de  comunicaci&oacute;n entre procesos para redistribuir los datos, de manera que cada  proceso compute un trozo contiguo de datos.</font></p>     <p><font size="2" face="Verdana, Arial, Helvetica, sans-serif">Las  investigaciones analizadas hasta el momento se enfocan en la utilizaci&oacute;n de  MPI. Aunque la aplicaci&oacute;n de esta teor&iacute;a proporciona una soluci&oacute;n eficiente, el  proceso pudiera acelerarse a&uacute;n m&aacute;s si se combina con la utilizaci&oacute;n de la  arquitectura paralela que por naturaleza caracteriza a las GPU.</font></p>     <p><font size="2" face="Verdana, Arial, Helvetica, sans-serif">Sin lugar a dudas una de las  soluciones m&aacute;s abarcadoras es la propuesta realizada recientemente por (Qin  et al., 2014a),<a href="#f07"> Figura 7</a> . En su investigaci&oacute;n, se enfocan en el dise&ntilde;o de una  biblioteca para el procesamiento r&aacute;ster que hace uso de sistemas paralelos a  trav&eacute;s de la combinaci&oacute;n MPI/OpenMP en un cl&uacute;ster SMP, as&iacute; como sistemas distribuidos  mediante cl&uacute;steres Beowulf con MPI. Su  principal contribuci&oacute;n radica en utilizar adem&aacute;s las caracter&iacute;sticas de las GPU  para acelerar el procesamiento de los datos, tarea que realiza empleando la  tecnolog&iacute;a de c&oacute;mputo de prop&oacute;sito general CUDA.</font></p>     <p align="center"><img src="/img/revistas/rcci/v10n1/f0706116.jpg" alt="07" width="574" height="213"><a name="f07"></a></p>     <p><font size="2" face="Verdana, Arial, Helvetica, sans-serif">Aunque el empleo  de CUDA se adentra ya en la utilizaci&oacute;n de la computaci&oacute;n GPGPU para lograr  mejores resultados en cuanto a la aceleraci&oacute;n de los c&aacute;lculos, presenta una  limitaci&oacute;n relevante. CUDA no est&aacute; implementado para tener en cuenta la  computaci&oacute;n heterog&eacute;nea entre diferentes plataformas de c&oacute;mputo, en otras  palabras, con su utilizaci&oacute;n no se aprovecha la potencia de los procesadores  gr&aacute;ficos unida a la de las CPU y otros dispositivos de c&oacute;mputo. </font></p>     <p><font size="2" face="Verdana, Arial, Helvetica, sans-serif">Adem&aacute;s, CUDA ha  sido implementado y optimizado para obtener alto desempe&ntilde;o en tarjetas gr&aacute;ficas  NVIDIA solamente. Como consecuencia de esto, los resultados obtenidos no pueden  ser aprovechados en cualquier plataforma o arquitectura, al contrario de esto,  son dependientes del <em>hardware</em> fabricado por NVIDIA.</font></p>     <p><font size="2" face="Verdana, Arial, Helvetica, sans-serif">Adicionalmente,  dichos resultados fueron evaluados en un cl&uacute;ster IBM SMP con 134 nodos de  c&oacute;mputo. Cada nodo consta de la siguiente configuraci&oacute;n de <em>hardware</em>: dos CPUs Intel Xeon E5650 a 2.0 GHz con seis n&uacute;cleos y 24  GB de memoria RAM DDR3, generalmente empleados como servidores por sus altas  prestaciones. La GPU utilizada es una NVIDIA Corporation Tesla M2075 con 448  n&uacute;cleos de procesamiento y 6 GB de memoria gr&aacute;fica (Qin et al., 2014a). Sin embargo, a pesar del  incremento en las velocidades de c&oacute;mputo y la disponibilidad de memoria,  terminales de estas caracter&iacute;sticas, en cuanto a sus altas prestaciones de <em>hardware</em>, no son las que predominan en  el entorno de las entidades y proyectos dedicados al procesamiento y an&aacute;lisis de  informaci&oacute;n geoespacial en Cuba.</font></p>     ]]></body>
<body><![CDATA[<p>&nbsp;</p>     <p><strong><font size="3" face="Verdana, Arial, Helvetica, sans-serif"> DISCUSI&Oacute;N </font></strong></p>     <p><font size="2" face="Verdana, Arial, Helvetica, sans-serif">En t&eacute;rminos  generales, en la <a href="/img/revistas/rcci/v10n1/t0206116.jpg" target="_blank">Tabla 2 </a>, se ilustra un an&aacute;lisis comparativo  entre las estrategias m&aacute;s relevantes de la bibliograf&iacute;a que centran su atenci&oacute;n  en la implementaci&oacute;n de alternativas para el procesamiento paralelo de  informaci&oacute;n r&aacute;ster mediante la GDAL.</font></p>     <p><font size="2" face="Verdana, Arial, Helvetica, sans-serif">A modo de  resumen del estudio realizado, en la <a href="/img/revistas/rcci/v10n1/t0306116.jpg" target="_blank">Tabla 3</a>  se muestran las  principales contribuciones de los &uacute;ltimos diez a&ntilde;os en relaci&oacute;n con el  procesamiento de datos r&aacute;ster en entornos paralelos, que a consideraci&oacute;n de la  autora, fundamentan propuestas de significaci&oacute;n para la investigaci&oacute;n.</font></p>     <p>&nbsp;</p>     <p align="left"><font face="Verdana, Arial, Helvetica, sans-serif" size="3"><B>CONCLUSIONES</B></font></p>     <p><font size="2" face="Verdana, Arial, Helvetica, sans-serif">El estudio  realizado demostr&oacute; que el perfeccionamiento de las tecnolog&iacute;as y mecanismos  para la obtenci&oacute;n de datos de la superficie terrestre ha propiciado la  obtenci&oacute;n de informaci&oacute;n r&aacute;ster cada vez m&aacute;s detallada y con mayor nivel de  resoluci&oacute;n y precisi&oacute;n espacial, lo que ha generado un crecimiento gradual del volumen  de los modelos r&aacute;ster. Por lo tanto, se requieren altas prestaciones  computacionales para apoyar su an&aacute;lisis y como alternativa, el reto fundamental  es la implementaci&oacute;n de t&eacute;cnicas que contribuyan a reducir el tiempo para su  procesamiento. Como consideraciones finales del presente trabajo se relacionan  las siguientes:</font></p>     <p><font size="2" face="Verdana, Arial, Helvetica, sans-serif">- El tiempo empleado por la GDAL en el procesamiento de los  datos r&aacute;ster, en ocasiones y teniendo en cuenta el nivel de resoluci&oacute;n de los  datos, no satisface las necesidades de los usuarios de SIG, en entornos  computacionales con bajas prestaciones.</font></p>     <p><font size="2" face="Verdana, Arial, Helvetica, sans-serif">- A pesar de que se aprecia un avance cient&iacute;fico en el &aacute;rea  del procesamiento r&aacute;ster, en su mayor&iacute;a, las propuestas estudiadas, modelan el  procesamiento paralelo en torno a la CPU a trav&eacute;s de la utilizaci&oacute;n de  estrategias paralelas mediante OpenMP y MPI o a la GPU mediante CUDA, sin  explotar al m&aacute;ximo la heterogeneidad entre diferentes plataformas de c&oacute;mputo.</font></p>     <p><font size="2" face="Verdana, Arial, Helvetica, sans-serif">- La aproximaci&oacute;n propuesta por (Qin et al., 2014a) satisface este factor, sin  embargo el empleo de CUDA limita su campo a las GPU del fabricante NVIDIA.  Adicionalmente, la configuraci&oacute;n de <em>hardware</em> del entorno computacional empleado para el despliegue de la soluci&oacute;n propuesta  no es la m&aacute;s asequible, en t&eacute;rminos de costo, a las posibilidades de las  organizaciones cubanas especializadas en el desarrollo de SIG y dedicadas al  procesamiento de informaci&oacute;n geoespacial.</font></p>     ]]></body>
<body><![CDATA[<p><font size="2" face="Verdana, Arial, Helvetica, sans-serif">- Teniendo en cuenta estos elementos, la autora se inclina  por el dise&ntilde;o de un m&eacute;todo que permita garantizar la heterogeneidad entre  diferentes plataformas de c&oacute;mputo, tomando como base la arquitectura paralela  de las GPU, adem&aacute;s del bajo coste y las potencialidades de procesamiento que  pueden llegar a alcanzar los sistemas distribuidos por computaci&oacute;n voluntaria,  con el fin complementar los medios disponibles para el procesamiento r&aacute;ster.</font></p>     <p>&nbsp;</p>     <p align="left"><font face="Verdana, Arial, Helvetica, sans-serif" size="3"><B>REFERENCIAS  BIBLIOGR&Aacute;FICAS</B></font>     <!-- ref --><p align="left"> <font size="2" face="Verdana, Arial, Helvetica, sans-serif">ANDERSON, D. P. AND G. FEDAK. The computational and storage potential of volunteer computing. In <em>Cluster Computing and the Grid. CCGRID 06. Sixth IEEE International Symposium on. </em>2006.     </font>     <p align="left"> <font size="2" face="Verdana, Arial, Helvetica, sans-serif">ARMSTRONG, M. P. AND P. J. DENSHAM Domain decomposition for parallel processing of spatial  problems. Computers, Environment and Urban Systems, 1992, 16, 497&ndash;513. </font>     <!-- ref --><p align="left"> <font size="2" face="Verdana, Arial, Helvetica, sans-serif">BEBERG, A. L., D. L. ENSIGN, J. GUHA, S. KHALIQ, et al. Folding@ home: Lessons from eight years  of volunteer distributed computing. Parallel & Distributed Processing. IPDPS 2009. IEEE International Symposium on, 2009.     </font>     <p align="left"> <font size="2" face="Verdana, Arial, Helvetica, sans-serif">BRESHEARS, C. <em>The Art of Concurrency. First Edition</em>. edited by M. LOUKIDES. Edtion ed.: O&rsquo;Reilly  Media, 2009. </font>     <p align="left"> <font size="2" face="Verdana, Arial, Helvetica, sans-serif">CALKIN, R., R. HEMPEL, H. C. HOPPE AND P. WYPIOR Portable programming with the PARMACS  message-passing library. Parallel Computing, 1994, 20, 615&ndash;632. </font>     ]]></body>
<body><![CDATA[<!-- ref --><p align="left"> <font size="2" face="Verdana, Arial, Helvetica, sans-serif">CONTRERAS, G. AND M. MARTONOSI. Characterizing and improving the performance of Intel  Threading Building Blocks. In <em>Workload Characterization. IISWC 2008. IEEE International Symposium.</em> 2008, p. 57 - 66.     </font>     <!-- ref --><p align="left"> <font size="2" face="Verdana, Arial, Helvetica, sans-serif">CUI, S. AND S. ZHANG Parallel processing of topological operations by using a hybrid MPI/OpenMP  approach. Natural Computation (ICNC), Ninth International Conference, Shenyang, IEEE, 2013, 1738 -  1742.     </font>     <!-- ref --><p align="left"> <font size="2" face="Verdana, Arial, Helvetica, sans-serif">CHAPMAN, B. AND L. HUANG Enhancing OpenMP and Its Implementation for Programming  Multicore Systems. Parallel Computing: Architectures, Algorithms and Applications. John von Neumann  Institute for Computing, Julich, NIC Series, 2007, 38, 3-18.     </font>     <!-- ref --><p align="left"> <font size="2" face="Verdana, Arial, Helvetica, sans-serif">CHEN, Z., C. ZHENJIE AND L. FEIXUE A Dynamic Data Partition Algorithm Oriented to MPI and  OpenMP. Geocomputation, 2013.     </font>     <!-- ref --><p align="left"> <font size="2" face="Verdana, Arial, Helvetica, sans-serif">DAGA, M., A. M. AJI AND W.-C. FENG. On the Efficacy of a Fused CPU+GPU Processor (or APU) for  Parallel Computing. 2011.     </font>     ]]></body>
<body><![CDATA[<!-- ref --><p align="left"> <font size="2" face="Verdana, Arial, Helvetica, sans-serif">DAGUM, L. AND R. MENON OpenMP: An Industry Standard API for Shared-Memory Programming.  IEEE Computational Science and Engineering, 1998, 6, 46 - 55.     </font>     <!-- ref --><p align="left"> <font size="2" face="Verdana, Arial, Helvetica, sans-serif">ESRI. ArcGIS Resource Center. 2012, [cited 25 de septiembre 2014]. Available from Internet:&lt;<a href="http://help.arcgis.com/es/arcgisdesktop/10.0/help/index.html%3e">http://help.arcgis.com/es/arcgisdesktop/10.0/help/index.html&gt;    </a></font><font size="2"></font>     <!-- ref --><p align="left"> <font size="2" face="Verdana, Arial, Helvetica, sans-serif">FRAIRE, J. A., P. FERREYRA AND C. MARQUES OpenCL Overview, Implementation, and  Performance Comparison. IEEE Latin America Trasactions, 2013, 11.     </font>     <!-- ref --><p align="left"> <font size="2" face="Verdana, Arial, Helvetica, sans-serif">GAO, Y., H. YU, L. LIU AND X. GUO. General neighborhood analysis model for grid DEM on CUDA.  2013.     </font>     <!-- ref --><p align="left"> <font size="2" face="Verdana, Arial, Helvetica, sans-serif">GDAL. GDAL - Geospatial Data Abstraction Library, Version 1.10. In <em>Development Team. </em>Open Source  Geospatial Foundation, 2014.     </font>     ]]></body>
<body><![CDATA[<!-- ref --><p align="left"> <font size="2" face="Verdana, Arial, Helvetica, sans-serif">GEBALI, F. <em>Algorithms and Parallel Computing</em>. Edtion ed.: John Wiley & Sons, Inc., Hoboken, New  Jersey, 2011.     </font>     <p align="left"> <font size="2" face="Verdana, Arial, Helvetica, sans-serif">GEIST, A., A. BEGUELIN, J. DONGARRA, W. JIANG, et al. <em>PVM: Parallel Virtual Machine: a users&rsquo;</em> <em>guide and tutorial for networked parallel computing</em>. Edtion ed.: MIT Press, Cambridge, MA, USA, 1994.  </font>     <!-- ref --><p align="left"><font size="2" face="Verdana, Arial, Helvetica, sans-serif">GOVE, D. <em>Multicore Application Programming. For Windows, Linux, and Oracle&reg; Solaris</em>. edited by P.  EDUCATION. Edtion ed.: Addison Wesley, 2011.    </font>     <!-- ref --><p align="left"> <font size="2" face="Verdana, Arial, Helvetica, sans-serif">GUAN, Q. Parallel algorithms for geographic processing. Tesis doctoral. University of California, Santa  Barbara, 2008.      </font>     <!-- ref --><p align="left"><font size="2" face="Verdana, Arial, Helvetica, sans-serif">GUAN, Q. pRPL: an open-source general-purpose parallel raster processing programming library.  Newsletter SIGSPATIAL Special, 2009, 19, 57-62.    </font>     <!-- ref --><p align="left"> <font size="2" face="Verdana, Arial, Helvetica, sans-serif">GUAN, Q. AND K. CLARKE A general-purpose parallel raster processing programming library test  application using a geographic cellular automata model. International Journal of Geographical Information  Science, 2010, 24, 695-722.     </font>     <p align="left"> <font size="2" face="Verdana, Arial, Helvetica, sans-serif">GUAN, Q., W. ZENG AND S. LIU. pRPL 2.0 Improving the Parallel Raster Processing Library. In <em>Proceedings of the 12th International Conference on GeoComputation, LIESMARS, Wuhan University,</em>    <br> <em>Wuhan, China. </em>2013.  </font>     <!-- ref --><p align="left"><font size="2" face="Verdana, Arial, Helvetica, sans-serif">JENNY, B. An Interactive Approach to Analytical Relief Shading. Cartographica, 2001, 30.    </font>     <!-- ref --><p align="left"> <font size="2" face="Verdana, Arial, Helvetica, sans-serif">KOMATSU, K., K. SATO, Y. ARAI, K. KOYAMA, et al. Evaluating Performance and Portability of  OpenCL Programs. 2010.      </font>     <!-- ref --><p align="left"><font size="2" face="Verdana, Arial, Helvetica, sans-serif">KWESI, A. G. N. AND P. AMOAKO-YIRENKYI Volunteer Computing: Application for African  Scientist. ICT AFRICA, 2008.    </font>     <!-- ref --><p align="left"> <font size="2" face="Verdana, Arial, Helvetica, sans-serif">LEWIS, B. AND D. J. BERG <em>Multithreaded Programming With PThreads</em>. Edtion ed.: Prentice Hall PTR,  1997.      </font>     <!-- ref --><p align="left"><font size="2" face="Verdana, Arial, Helvetica, sans-serif">LONGLEY, P., M. F. GOODCHILD, D. MAGUIRE AND D. W. RHIND <em>Geographic information</em> <em>systems \& science. 3ra Edici&oacute;n</em>. edited by WILEY. Edtion ed.: Hoboken, 2011.    </font>     <!-- ref --><p align="left"> <font size="2" face="Verdana, Arial, Helvetica, sans-serif">LV, M. H., X. WEI AND C. LEI A GPU-Based Parallel Processing Method for Slope Analysis in  Geographical Computation. Advanced Materials Research, 2012, 538, 625-631.     </font>     <!-- ref --><p align="left"> <font size="2" face="Verdana, Arial, Helvetica, sans-serif">LLOPIS, J. P. Sistemas de Informaci&oacute;n Geogr&aacute;fica aplicados a la gesti&oacute;n del territorio. Entrada, manejo,  an&aacute;lisis y salida de datos espaciales. Teor&iacute;a y pr&aacute;ctica general para ESRI ArcGIS 9. Universidad de  Alicante. Editorial Club Universitario, 2008.     </font>     <!-- ref --><p align="left"> <font size="2" face="Verdana, Arial, Helvetica, sans-serif">MART&Iacute;NEZ, Y. V. Modelo de Representaci&oacute;n de Superficies de Terreno para su Visualizaci&oacute;n en Tres  Dimensiones. Tesis doctoral Universidad de las Ciencias Inform&aacute;ticas, 2011.     </font>     <!-- ref --><p align="left"> <font size="2" face="Verdana, Arial, Helvetica, sans-serif">MAULIK, U. AND A. SARKAR Efficient parallel algorithm for pixel classification in remote sensing  imagery. Geoinformatica, 2012, 16, 391 -407.     </font>     <p align="left"> <font size="2" face="Verdana, Arial, Helvetica, sans-serif">MAX, N. Progress in scientific visualization. The Visual Computer 21, 2005, 979&ndash;984. </font>     <!-- ref --><p align="left"><font size="2" face="Verdana, Arial, Helvetica, sans-serif">MUNSHI, A., B. R. GASTER, T. G. MATTSON, J. FUNG, et al. <em>OpenCL Programming Guide</em>. edited by  P. EDUCATION. Edtion ed.: Addison Wesley, 2012.    </font>     <p align="left"> <font size="2" face="Verdana, Arial, Helvetica, sans-serif">NIKOLAKOPOULOS, K. G., E. K. KAMARATAKIS AND N. CHRYSOULAKIS SRTM vs ASTER  elevation products. Comparison for two regions in Crete, Greece. International Journal of Remote Sensing,  2006, 27, 481&ndash;483. </font>     <p align="left"><font size="2" face="Verdana, Arial, Helvetica, sans-serif"> NVIDIA. NVIDIA CUDA C Programming Guide version 4.0. 2011. Available from  Internet:&lt;http://developer.download.nvidia.com/compute/DevZone/docs/html/C/doc/CUDA C  Programming Guide.pdf&gt;.  </font>     <p align="left"><font size="2" face="Verdana, Arial, Helvetica, sans-serif">OSTERMAN, A. Implementation of the r.cuda.los module in the open source GRASS GIS by using  parallel computation on the NVIDIA CUDA graphic cards. ELEKTROTEHNISKI VESTNIK. ENGLISH  EDITION, 2012, 79, 19&ndash;24.</font>     <!-- ref --><p align="left"> <font size="2" face="Verdana, Arial, Helvetica, sans-serif">OUYANG, L., J. HUANG, X. WU AND B. YU Parallel Access Optimization Technique for Geographic  Raster Data. Geo-Informatics in Resource Management and Sustainable Ecosystem. Communications in  Computer and Information Science. Springer Berlin Heidelberg, 2013, 398, 533-542.      </font>     <!-- ref --><p align="left"><font size="2" face="Verdana, Arial, Helvetica, sans-serif">PERALTA, F. J. R. <em>An&aacute;lisis Espacial con Datos Raster en ArcGIS Desktop 9.2</em>. Edtion ed., 2008.     </font>     <!-- ref --><p align="left"> <font size="2" face="Verdana, Arial, Helvetica, sans-serif">PETERSEN, W. P. AND P. ARBENZ <em>Introduction to parallel computing. A practical guide with</em> <em>examples in C. </em>Edtion ed.: Oxford University Press Inc., New York, 2004.      </font>     <!-- ref --><p align="left"><font size="2" face="Verdana, Arial, Helvetica, sans-serif">QIN, C.-Z., L.-J. ZHAN, A.-X. ZHU AND C.-H. ZHOU A strategy for raster-based geocomputation  under different parallel computing platforms. International Journal of Geographical Information Science,  2014a, 37-41.    </font>     <!-- ref --><p align="left"> <font size="2" face="Verdana, Arial, Helvetica, sans-serif">QIN, C.-Z. AND L. ZHAN Parallelizing flow-accumulation calculations on graphics processing unitsFrom iterative DEM preprocessing algorithm to recursive multiple-flow-direction algorithm. Computers &  Geosciences, 2012, 43.     </font>     <!-- ref --><p align="left"><font size="2" face="Verdana, Arial, Helvetica, sans-serif">QIN, C. Z., L. J. ZHAN AND A. X. ZHU How to apply the Geospatial Data Abstraction Library (GDAL)  properly to parallel geospatial raster I/O? Transactions in GIS, 2014b.    </font>     <!-- ref --><p align="left"> <font size="2" face="Verdana, Arial, Helvetica, sans-serif">RODR&Iacute;GUEZ, J. L. G. AND M. C. G. SU&Aacute;REZ Comparison of mathematical algorithms for determining  the slope angle in GIS enviroment. Aqua-LAC, 2010, 2.     </font>     <!-- ref --><p align="left"><font size="2" face="Verdana, Arial, Helvetica, sans-serif">ROMERO, F. S. La Teledetecci&oacute;n satelital y los sistemas de protecci&oacute;n ambiental. AquaTIC. Revista  cient&iacute;fica de la Sociedad Espa&ntilde;ola de Acuicultura, 2006, 24, 13-41.    </font>     <!-- ref --><p align="left"> <font size="2" face="Verdana, Arial, Helvetica, sans-serif">SARMENTA, L. F. G. Volunteer Computing. Tesis doctoral. Department of Electrical Engineering and  Computer Science. Massachusetts Institute Of Technology, 2001.      </font>     <!-- ref --><p align="left"><font size="2" face="Verdana, Arial, Helvetica, sans-serif">SEITAVUOPIO, P., J. RANTANEN AND J. YLIRUUSI Use of roughness maps in visualisation of  surfaces. European Journal of Pharmaceutics and Biopharmaceutics, 2005, 59, 351 -158s.     </font>     <!-- ref --><p align="left"> S<font size="2" face="Verdana, Arial, Helvetica, sans-serif">MITH, M. J., M. F. GOODCHILD AND P. A. LONGLEY <em>Geospatial Analysis: A Comprehensive Guide</em> <em>to Principles, Techniques and Software Tools, 2nd edition</em>. Edtion ed.: Troubador Publishing, 2013.      </font>     <p align="left"><font size="2" face="Verdana, Arial, Helvetica, sans-serif">STEINBACH, M. AND R. HEMMERLING Accelerating batch processing of spatial raster analysis using  GPU. Computers & Geosciences, 2012, 45, 212&ndash;220. </font>     ]]></body>
<body><![CDATA[<!-- ref --><p align="left"> <font size="2" face="Verdana, Arial, Helvetica, sans-serif">WAGNER, D. F. AND M. S. SCOTT Improving the Performance of Raster GIS: A Comparison of  Approaches to Parallelization of Cost Volume Algorithms. Autocarto-Conference, 1995, 164-176.      </font>     <!-- ref --><p align="left"><font size="2" face="Verdana, Arial, Helvetica, sans-serif">WANG, X., Z. LI AND S. GAO Parallel Remote Sensing Image Processing: Taking Image Classification  as an Example. Computational Intelligence and Intelligent Systems. Communications in Computer and  Information Science. Springer Berlin Heidelberg, 2012, 159-169.     </font>     <!-- ref --><p align="left"> <font size="2" face="Verdana, Arial, Helvetica, sans-serif">WARMERDAM, F. The Geospatial Data Abstraction Library. Brent H and Michael LG. Open Source  Approaches in Spatial Data Handling. Springer, Berlin, 2008, 87-104.    </font>     <!-- ref --><p align="left"><font size="2" face="Verdana, Arial, Helvetica, sans-serif"> XIA, Y., L. KUANG AND X.-M. LI Accelerating geospatial analysis on GPUs using CUDA. Journal of  Zhejiang University-SCIENCE C (Computers & Electronics), 2011, 12, 990-999.     </font>     <p align="left"> <font size="2" face="Verdana, Arial, Helvetica, sans-serif">ZHAN, L.-J. AND C.-Z. QIN Parallel Geospatial Raster Processing by Geospatial Data Abstraction  Library (GDAL) &mdash; Applicability and Defects. Transactions in GIS, 2012. </font>     <!-- ref --><p align="left"><font size="2" face="Verdana, Arial, Helvetica, sans-serif">ZHAO, Y., Z. HUANG, B. CHEN AND Y. FANG Local acceleration in Distributed Geographic  Information Processing with CUDA. Geoinformatics. 18th International Conference. IEEE Xplore Digital  Library, 2010.     </font>     <p>&nbsp;</p>     <p>&nbsp;</p>      <p><font size="2" face="Verdana, Arial, Helvetica, sans-serif">Recibido: 23/01/2015      <br> Aceptado: 31/08/2015 </font></p>      ]]></body><back>
<ref-list>
<ref id="B1">
<nlm-citation citation-type="">
<person-group person-group-type="author">
<name>
<surname><![CDATA[ANDERSON]]></surname>
<given-names><![CDATA[D. P]]></given-names>
</name>
<name>
<surname><![CDATA[FEDAK]]></surname>
<given-names><![CDATA[G]]></given-names>
</name>
</person-group>
<source><![CDATA[The computational and storage potential of volunteer computing.]]></source>
<year>2006</year>
</nlm-citation>
</ref>
<ref id="B2">
<nlm-citation citation-type="">
<person-group person-group-type="author">
<name>
<surname><![CDATA[ARMSTRONG]]></surname>
<given-names><![CDATA[M. P]]></given-names>
</name>
<name>
<surname><![CDATA[DENSHAM]]></surname>
<given-names><![CDATA[P. J.]]></given-names>
</name>
</person-group>
<source><![CDATA[Domain decomposition for parallel processing of spatial problems.]]></source>
<year>1992</year>
<volume>16</volume>
<page-range>497-513</page-range></nlm-citation>
</ref>
<ref id="B3">
<nlm-citation citation-type="">
<person-group person-group-type="author">
<name>
<surname><![CDATA[BEBERG]]></surname>
<given-names><![CDATA[A. L]]></given-names>
</name>
<name>
<surname><![CDATA[ENSIGN]]></surname>
<given-names><![CDATA[D. L]]></given-names>
</name>
<name>
<surname><![CDATA[GUHA]]></surname>
<given-names><![CDATA[J]]></given-names>
</name>
<name>
<surname><![CDATA[KHALIQ]]></surname>
<given-names><![CDATA[S]]></given-names>
</name>
</person-group>
<source><![CDATA[Folding@ home:: Lessons from eight years of volunteer distributed computing.]]></source>
<year>2009</year>
</nlm-citation>
</ref>
<ref id="B4">
<nlm-citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname><![CDATA[BRESHEARS]]></surname>
<given-names><![CDATA[C]]></given-names>
</name>
</person-group>
<source><![CDATA[The Art of Concurrency]]></source>
<year>2009</year>
<publisher-name><![CDATA[O&#8217;Reilly Media]]></publisher-name>
</nlm-citation>
</ref>
<ref id="B5">
<nlm-citation citation-type="">
<person-group person-group-type="author">
<name>
<surname><![CDATA[CALKIN]]></surname>
<given-names><![CDATA[R]]></given-names>
</name>
<name>
<surname><![CDATA[HEMPEL]]></surname>
<given-names><![CDATA[R]]></given-names>
</name>
<name>
<surname><![CDATA[HOPPE]]></surname>
<given-names><![CDATA[H. C]]></given-names>
</name>
<name>
<surname><![CDATA[WYPIOR]]></surname>
<given-names><![CDATA[P]]></given-names>
</name>
</person-group>
<source><![CDATA[Portable programming with the PARMACS message-passing library.]]></source>
<year>1994</year>
<volume>20</volume>
<page-range>615-632</page-range></nlm-citation>
</ref>
<ref id="B6">
<nlm-citation citation-type="">
<person-group person-group-type="author">
<name>
<surname><![CDATA[CONTRERAS]]></surname>
<given-names><![CDATA[G]]></given-names>
</name>
<name>
<surname><![CDATA[MARTONOSI]]></surname>
<given-names><![CDATA[M]]></given-names>
</name>
</person-group>
<source><![CDATA[Characterizing and improving the performance of Intel Threading Building Blocks]]></source>
<year>2008</year>
<page-range>p. 57 - 66</page-range></nlm-citation>
</ref>
<ref id="B7">
<nlm-citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname><![CDATA[CUI]]></surname>
<given-names><![CDATA[S]]></given-names>
</name>
<name>
<surname><![CDATA[ZHANG]]></surname>
<given-names><![CDATA[S]]></given-names>
</name>
</person-group>
<source><![CDATA[Parallel processing of topological operations by using a hybrid MPI/OpenMP approach.]]></source>
<year>2013</year>
<page-range>1738 - 1742</page-range><publisher-loc><![CDATA[Shenyang ]]></publisher-loc>
<publisher-name><![CDATA[IEEE]]></publisher-name>
</nlm-citation>
</ref>
<ref id="B8">
<nlm-citation citation-type="">
<person-group person-group-type="author">
<name>
<surname><![CDATA[CHAPMAN]]></surname>
<given-names><![CDATA[B]]></given-names>
</name>
<name>
<surname><![CDATA[HUANG]]></surname>
<given-names><![CDATA[L]]></given-names>
</name>
</person-group>
<source><![CDATA[Enhancing OpenMP and Its Implementation for Programming Multicore Systems.]]></source>
<year>2007</year>
<volume>38</volume>
<page-range>3-18</page-range><publisher-loc><![CDATA[Julich ]]></publisher-loc>
</nlm-citation>
</ref>
<ref id="B9">
<nlm-citation citation-type="">
<person-group person-group-type="author">
<name>
<surname><![CDATA[CHEN]]></surname>
<given-names><![CDATA[Z]]></given-names>
</name>
<name>
<surname><![CDATA[ZHENJIE]]></surname>
<given-names><![CDATA[C]]></given-names>
</name>
<name>
<surname><![CDATA[FEIXUE]]></surname>
<given-names><![CDATA[L]]></given-names>
</name>
</person-group>
<source><![CDATA[A Dynamic Data Partition Algorithm Oriented to MPI and OpenMP]]></source>
<year>2013</year>
</nlm-citation>
</ref>
<ref id="B10">
<nlm-citation citation-type="">
<person-group person-group-type="author">
<name>
<surname><![CDATA[DAGA]]></surname>
<given-names><![CDATA[M]]></given-names>
</name>
<name>
<surname><![CDATA[AJI]]></surname>
<given-names><![CDATA[A. M]]></given-names>
</name>
<name>
<surname><![CDATA[FENG]]></surname>
<given-names><![CDATA[W.-C.]]></given-names>
</name>
</person-group>
<source><![CDATA[On the Efficacy of a Fused CPU+GPU Processor (or APU) for Parallel Computing.]]></source>
<year>2011</year>
</nlm-citation>
</ref>
<ref id="B11">
<nlm-citation citation-type="">
<person-group person-group-type="author">
<name>
<surname><![CDATA[DAGUM]]></surname>
<given-names><![CDATA[L]]></given-names>
</name>
<name>
<surname><![CDATA[MENON]]></surname>
<given-names><![CDATA[R]]></given-names>
</name>
</person-group>
<source><![CDATA[OpenMP: An Industry Standard API for Shared-Memory Programming.]]></source>
<year>1998</year>
<volume>6</volume>
<page-range>46 - 55</page-range></nlm-citation>
</ref>
<ref id="B12">
<nlm-citation citation-type="">
<source><![CDATA[ESRI]]></source>
<year>2012</year>
</nlm-citation>
</ref>
<ref id="B13">
<nlm-citation citation-type="">
<person-group person-group-type="author">
<name>
<surname><![CDATA[FRAIRE]]></surname>
<given-names><![CDATA[J. A]]></given-names>
</name>
<name>
<surname><![CDATA[FERREYRA]]></surname>
<given-names><![CDATA[P]]></given-names>
</name>
<name>
<surname><![CDATA[MARQUES]]></surname>
<given-names><![CDATA[C]]></given-names>
</name>
</person-group>
<source><![CDATA[OpenCL Overview, Implementation, and Performance Comparison]]></source>
<year>2013</year>
<volume>11</volume>
</nlm-citation>
</ref>
<ref id="B14">
<nlm-citation citation-type="">
<person-group person-group-type="author">
<name>
<surname><![CDATA[GAO]]></surname>
<given-names><![CDATA[Y]]></given-names>
</name>
<name>
<surname><![CDATA[YU]]></surname>
<given-names><![CDATA[H]]></given-names>
</name>
<name>
<surname><![CDATA[LIU]]></surname>
<given-names><![CDATA[L]]></given-names>
</name>
<name>
<surname><![CDATA[GUO]]></surname>
<given-names><![CDATA[X]]></given-names>
</name>
</person-group>
<source><![CDATA[General neighborhood analysis model for grid DEM on CUDA.]]></source>
<year>2013</year>
</nlm-citation>
</ref>
<ref id="B15">
<nlm-citation citation-type="">
<source><![CDATA[GDAL. GDAL - Geospatial Data Abstraction Library, Version 1.10.]]></source>
<year>2014</year>
</nlm-citation>
</ref>
<ref id="B16">
<nlm-citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname><![CDATA[GEBALI]]></surname>
<given-names><![CDATA[F]]></given-names>
</name>
</person-group>
<source><![CDATA[Algorithms and Parallel Computing]]></source>
<year>2011</year>
<publisher-loc><![CDATA[^eNew Jersey New Jersey]]></publisher-loc>
<publisher-name><![CDATA[Wiley & Sons, Inc., Hoboken]]></publisher-name>
</nlm-citation>
</ref>
<ref id="B17">
<nlm-citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname><![CDATA[GEIST]]></surname>
<given-names><![CDATA[A]]></given-names>
</name>
<name>
<surname><![CDATA[BEGUELIN]]></surname>
<given-names><![CDATA[A]]></given-names>
</name>
<name>
<surname><![CDATA[DONGARRA]]></surname>
<given-names><![CDATA[J]]></given-names>
</name>
<name>
<surname><![CDATA[JIANG]]></surname>
<given-names><![CDATA[W]]></given-names>
</name>
</person-group>
<source><![CDATA[PVM: Parallel Virtual Machine: a users&#8217; guide and tutorial for networked parallel computing.]]></source>
<year>1994</year>
<publisher-name><![CDATA[MIT Press, Cambridge]]></publisher-name>
</nlm-citation>
</ref>
<ref id="B18">
<nlm-citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname><![CDATA[GOVE]]></surname>
<given-names><![CDATA[D]]></given-names>
</name>
</person-group>
<source><![CDATA[Multicore Application Programming]]></source>
<year>2011</year>
<publisher-loc><![CDATA[Addison Wesley ]]></publisher-loc>
<publisher-name><![CDATA[P. EDUCATION]]></publisher-name>
</nlm-citation>
</ref>
<ref id="B19">
<nlm-citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname><![CDATA[GUAN]]></surname>
<given-names><![CDATA[Q]]></given-names>
</name>
</person-group>
<source><![CDATA[Parallel algorithms for geographic processing]]></source>
<year>2008</year>
<publisher-loc><![CDATA[Santa Barbara ]]></publisher-loc>
<publisher-name><![CDATA[University of California]]></publisher-name>
</nlm-citation>
</ref>
<ref id="B20">
<nlm-citation citation-type="">
<person-group person-group-type="author">
<name>
<surname><![CDATA[GUAN]]></surname>
<given-names><![CDATA[Q]]></given-names>
</name>
</person-group>
<source><![CDATA[pRPL: an open-source general-purpose parallel raster processing programming library]]></source>
<year>2009</year>
<volume>19</volume>
<page-range>57-62</page-range></nlm-citation>
</ref>
<ref id="B21">
<nlm-citation citation-type="">
<person-group person-group-type="author">
<name>
<surname><![CDATA[GUAN]]></surname>
<given-names><![CDATA[Q]]></given-names>
</name>
<name>
<surname><![CDATA[CLARKE]]></surname>
<given-names><![CDATA[K]]></given-names>
</name>
</person-group>
<source><![CDATA[A general-purpose parallel raster processing programming library test application using a geographic cellular automata model.]]></source>
<year>2010</year>
<volume>24</volume>
<page-range>695-722</page-range></nlm-citation>
</ref>
<ref id="B22">
<nlm-citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname><![CDATA[GUAN]]></surname>
<given-names><![CDATA[Q]]></given-names>
</name>
<name>
<surname><![CDATA[ZENG]]></surname>
<given-names><![CDATA[W]]></given-names>
</name>
<name>
<surname><![CDATA[LIU]]></surname>
<given-names><![CDATA[S]]></given-names>
</name>
</person-group>
<source><![CDATA[pRPL 2.0 Improving the Parallel Raster Processing Library.]]></source>
<year>2013</year>
<publisher-loc><![CDATA[^eWuhan Wuhan]]></publisher-loc>
<publisher-name><![CDATA[Wuhan University]]></publisher-name>
</nlm-citation>
</ref>
<ref id="B23">
<nlm-citation citation-type="">
<person-group person-group-type="author">
<name>
<surname><![CDATA[JENNY]]></surname>
<given-names><![CDATA[B]]></given-names>
</name>
</person-group>
<source><![CDATA[An Interactive Approach to Analytical Relief Shading]]></source>
<year>2001</year>
<volume>30</volume>
</nlm-citation>
</ref>
<ref id="B24">
<nlm-citation citation-type="">
<person-group person-group-type="author">
<name>
<surname><![CDATA[KOMATSU]]></surname>
<given-names><![CDATA[K]]></given-names>
</name>
<name>
<surname><![CDATA[SATO]]></surname>
<given-names><![CDATA[K]]></given-names>
</name>
<name>
<surname><![CDATA[ARAI]]></surname>
<given-names><![CDATA[Y]]></given-names>
</name>
<name>
<surname><![CDATA[KOYAMA]]></surname>
<given-names><![CDATA[K]]></given-names>
</name>
</person-group>
<source><![CDATA[Evaluating Performance and Portability of OpenCL Programs.]]></source>
<year>2010</year>
</nlm-citation>
</ref>
<ref id="B25">
<nlm-citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname><![CDATA[KWESI]]></surname>
<given-names><![CDATA[A. G. N]]></given-names>
</name>
<name>
<surname><![CDATA[AMOAKO-YIRENKYI]]></surname>
<given-names><![CDATA[P]]></given-names>
</name>
</person-group>
<source><![CDATA[Volunteer Computing: Application for African Scientist]]></source>
<year>2008</year>
<publisher-name><![CDATA[ICT AFRICA]]></publisher-name>
</nlm-citation>
</ref>
<ref id="B26">
<nlm-citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname><![CDATA[LEWIS]]></surname>
<given-names><![CDATA[B]]></given-names>
</name>
<name>
<surname><![CDATA[BERG]]></surname>
<given-names><![CDATA[D. J.]]></given-names>
</name>
</person-group>
<source><![CDATA[Multithreaded Programming With PThreads]]></source>
<year>1997</year>
<publisher-name><![CDATA[Prentice Hall PTR]]></publisher-name>
</nlm-citation>
</ref>
<ref id="B27">
<nlm-citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname><![CDATA[LONGLEY]]></surname>
<given-names><![CDATA[P]]></given-names>
</name>
<name>
<surname><![CDATA[GOODCHILD]]></surname>
<given-names><![CDATA[M. F]]></given-names>
</name>
<name>
<surname><![CDATA[MAGUIRE]]></surname>
<given-names><![CDATA[D]]></given-names>
</name>
<name>
<surname><![CDATA[RHIND]]></surname>
<given-names><![CDATA[D. W]]></given-names>
</name>
</person-group>
<source><![CDATA[Geographic information systems \& science]]></source>
<year>2011</year>
<publisher-name><![CDATA[WILEY]]></publisher-name>
</nlm-citation>
</ref>
<ref id="B28">
<nlm-citation citation-type="">
<person-group person-group-type="author">
<name>
<surname><![CDATA[LV]]></surname>
<given-names><![CDATA[M. H]]></given-names>
</name>
<name>
<surname><![CDATA[WEI]]></surname>
<given-names><![CDATA[X]]></given-names>
</name>
<name>
<surname><![CDATA[LEI]]></surname>
<given-names><![CDATA[C]]></given-names>
</name>
</person-group>
<source><![CDATA[A GPU-Based Parallel Processing Method for Slope Analysis in Geographical Computation]]></source>
<year>2012</year>
<volume>538</volume>
<page-range>625-631</page-range></nlm-citation>
</ref>
<ref id="B29">
<nlm-citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname><![CDATA[LLOPIS]]></surname>
<given-names><![CDATA[J. P]]></given-names>
</name>
</person-group>
<source><![CDATA[Sistemas de Información Geográfica aplicados a la gestión del territorio.]]></source>
<year>2008</year>
<publisher-name><![CDATA[Editorial Club Universitario]]></publisher-name>
</nlm-citation>
</ref>
<ref id="B30">
<nlm-citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname><![CDATA[MARTÍNEZ]]></surname>
<given-names><![CDATA[Y. V.]]></given-names>
</name>
</person-group>
<source><![CDATA[Modelo de Representación de Superficies de Terreno para su Visualización en Tres Dimensiones]]></source>
<year>2011</year>
<publisher-name><![CDATA[Universidad de las Ciencias Informáticas]]></publisher-name>
</nlm-citation>
</ref>
<ref id="B31">
<nlm-citation citation-type="">
<person-group person-group-type="author">
<name>
<surname><![CDATA[MAULIK]]></surname>
<given-names><![CDATA[U]]></given-names>
</name>
<name>
<surname><![CDATA[SARKAR]]></surname>
<given-names><![CDATA[A]]></given-names>
</name>
</person-group>
<source><![CDATA[Efficient parallel algorithm for pixel classification in remote sensing imagery.]]></source>
<year>2012</year>
<volume>16</volume>
<page-range>391 -407</page-range></nlm-citation>
</ref>
<ref id="B32">
<nlm-citation citation-type="">
<person-group person-group-type="author">
<name>
<surname><![CDATA[MAX]]></surname>
<given-names><![CDATA[N]]></given-names>
</name>
</person-group>
<source><![CDATA[Progress in scientific visualization]]></source>
<year>2005</year>
<page-range>979-984.</page-range></nlm-citation>
</ref>
<ref id="B33">
<nlm-citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname><![CDATA[MUNSHI]]></surname>
<given-names><![CDATA[A]]></given-names>
</name>
<name>
<surname><![CDATA[GASTER]]></surname>
<given-names><![CDATA[B. R]]></given-names>
</name>
<name>
<surname><![CDATA[MATTSON]]></surname>
<given-names><![CDATA[T. G]]></given-names>
</name>
<name>
<surname><![CDATA[FUNG]]></surname>
<given-names><![CDATA[J]]></given-names>
</name>
</person-group>
<source><![CDATA[OpenCL Programming Guide]]></source>
<year>2012</year>
<publisher-loc><![CDATA[Wesley ]]></publisher-loc>
<publisher-name><![CDATA[P. EDUCATION]]></publisher-name>
</nlm-citation>
</ref>
<ref id="B34">
<nlm-citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname><![CDATA[NIKOLAKOPOULOS]]></surname>
<given-names><![CDATA[K. G]]></given-names>
</name>
<name>
<surname><![CDATA[KAMARATAKIS]]></surname>
<given-names><![CDATA[E. K]]></given-names>
</name>
<name>
<surname><![CDATA[CHRYSOULAKIS]]></surname>
<given-names><![CDATA[N]]></given-names>
</name>
</person-group>
<source><![CDATA[SRTM vs ASTER elevation products]]></source>
<year>2006</year>
<volume>27</volume>
<page-range>481-483</page-range><publisher-name><![CDATA[International Journal of Remote Sensing]]></publisher-name>
</nlm-citation>
</ref>
<ref id="B35">
<nlm-citation citation-type="">
<source><![CDATA[NVIDIA. NVIDIA CUDA C Programming Guide version 4.0.]]></source>
<year>2011</year>
</nlm-citation>
</ref>
<ref id="B36">
<nlm-citation citation-type="">
<person-group person-group-type="author">
<name>
<surname><![CDATA[OSTERMAN]]></surname>
<given-names><![CDATA[A]]></given-names>
</name>
</person-group>
<source><![CDATA[Implementation of the r.cuda.los module in the open source GRASS GIS by using parallel computation on the NVIDIA CUDA graphic cards.]]></source>
<year>2012</year>
<volume>79</volume>
<page-range>19-24</page-range></nlm-citation>
</ref>
<ref id="B37">
<nlm-citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname><![CDATA[OUYANG]]></surname>
<given-names><![CDATA[L]]></given-names>
</name>
<name>
<surname><![CDATA[HUANG]]></surname>
<given-names><![CDATA[J]]></given-names>
</name>
<name>
<surname><![CDATA[WU]]></surname>
<given-names><![CDATA[X]]></given-names>
</name>
<name>
<surname><![CDATA[YU]]></surname>
<given-names><![CDATA[B]]></given-names>
</name>
</person-group>
<source><![CDATA[Parallel Access Optimization Technique for Geographic Raster Data.]]></source>
<year>2013</year>
<volume>398</volume>
<page-range>533-542</page-range><publisher-name><![CDATA[Springer Berlin Heidelberg]]></publisher-name>
</nlm-citation>
</ref>
<ref id="B38">
<nlm-citation citation-type="">
<person-group person-group-type="author">
<name>
<surname><![CDATA[PERALTA]]></surname>
<given-names><![CDATA[F. J. R]]></given-names>
</name>
</person-group>
<source><![CDATA[Análisis Espacial con Datos Raster en ArcGIS Desktop 9.2.]]></source>
<year>2008</year>
</nlm-citation>
</ref>
<ref id="B39">
<nlm-citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname><![CDATA[PETERSEN]]></surname>
<given-names><![CDATA[W. P]]></given-names>
</name>
<name>
<surname><![CDATA[ARBENZ]]></surname>
<given-names><![CDATA[P]]></given-names>
</name>
</person-group>
<source><![CDATA[Introduction to parallel computing.]]></source>
<year>2004</year>
<publisher-loc><![CDATA[^eNew York New York]]></publisher-loc>
<publisher-name><![CDATA[Oxford University Press Inc]]></publisher-name>
</nlm-citation>
</ref>
<ref id="B40">
<nlm-citation citation-type="">
<person-group person-group-type="author">
<name>
<surname><![CDATA[QIN]]></surname>
<given-names><![CDATA[C.-Z]]></given-names>
</name>
<name>
<surname><![CDATA[ZHAN]]></surname>
<given-names><![CDATA[L.-J.]]></given-names>
</name>
<name>
<surname><![CDATA[ZHU]]></surname>
<given-names><![CDATA[A.-X.]]></given-names>
</name>
<name>
<surname><![CDATA[ZHOU]]></surname>
<given-names><![CDATA[C.-H]]></given-names>
</name>
</person-group>
<source><![CDATA[A strategy for raster-based geocomputation under different parallel computing platforms.]]></source>
<year>2014</year>
<page-range>37-41</page-range></nlm-citation>
</ref>
<ref id="B41">
<nlm-citation citation-type="">
<person-group person-group-type="author">
<name>
<surname><![CDATA[QIN]]></surname>
<given-names><![CDATA[C.-Z]]></given-names>
</name>
<name>
<surname><![CDATA[ZHAN]]></surname>
<given-names><![CDATA[L]]></given-names>
</name>
</person-group>
<source><![CDATA[Parallelizing flow-accumulation calculations on graphics processing unitsFrom iterative DEM preprocessing algorithm to recursive multiple-flow-direction algorithm]]></source>
<year>2012</year>
</nlm-citation>
</ref>
<ref id="B42">
<nlm-citation citation-type="">
<person-group person-group-type="author">
<name>
<surname><![CDATA[QIN]]></surname>
<given-names><![CDATA[C. Z]]></given-names>
</name>
<name>
<surname><![CDATA[ZHAN]]></surname>
<given-names><![CDATA[L. J]]></given-names>
</name>
<name>
<surname><![CDATA[ZHU]]></surname>
<given-names><![CDATA[A. X]]></given-names>
</name>
</person-group>
<source><![CDATA[How to apply the Geospatial Data Abstraction Library (GDAL) properly to parallel geospatial raster I/O?]]></source>
<year>2014</year>
</nlm-citation>
</ref>
<ref id="B43">
<nlm-citation citation-type="">
<person-group person-group-type="author">
<name>
<surname><![CDATA[RODRÍGUEZ]]></surname>
<given-names><![CDATA[J. L. G]]></given-names>
</name>
<name>
<surname><![CDATA[SUÁREZ]]></surname>
<given-names><![CDATA[M. C. G]]></given-names>
</name>
</person-group>
<source><![CDATA[Comparison of mathematical algorithms for determining the slope angle in GIS enviroment.]]></source>
<year>2010</year>
</nlm-citation>
</ref>
<ref id="B44">
<nlm-citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname><![CDATA[ROMERO]]></surname>
<given-names><![CDATA[F. S]]></given-names>
</name>
</person-group>
<source><![CDATA[La Teledetección satelital y los sistemas de protección ambiental]]></source>
<year>2006</year>
<volume>24</volume>
<page-range>13-41</page-range><publisher-name><![CDATA[Revista científica de la Sociedad Española de Acuicultura]]></publisher-name>
</nlm-citation>
</ref>
<ref id="B45">
<nlm-citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname><![CDATA[SARMENTA]]></surname>
<given-names><![CDATA[L. F. G]]></given-names>
</name>
</person-group>
<source><![CDATA[Volunteer Computing]]></source>
<year>2001</year>
<publisher-name><![CDATA[Massachusetts Institute Of Technology]]></publisher-name>
</nlm-citation>
</ref>
<ref id="B46">
<nlm-citation citation-type="">
<person-group person-group-type="author">
<name>
<surname><![CDATA[SEITAVUOPIO]]></surname>
<given-names><![CDATA[P]]></given-names>
</name>
<name>
<surname><![CDATA[RANTANEN]]></surname>
<given-names><![CDATA[J]]></given-names>
</name>
<name>
<surname><![CDATA[YLIRUUSI]]></surname>
<given-names><![CDATA[J]]></given-names>
</name>
</person-group>
<source><![CDATA[Use of roughness maps in visualisation of surfaces.]]></source>
<year>2005</year>
<volume>59</volume>
<page-range>351 -158s</page-range></nlm-citation>
</ref>
<ref id="B47">
<nlm-citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname><![CDATA[SMITH]]></surname>
<given-names><![CDATA[M. J]]></given-names>
</name>
<name>
<surname><![CDATA[GOODCHILD]]></surname>
<given-names><![CDATA[M. F]]></given-names>
</name>
<name>
<surname><![CDATA[LONGLEY]]></surname>
<given-names><![CDATA[P. A]]></given-names>
</name>
</person-group>
<source><![CDATA[Geospatial Analysis: A Comprehensive Guide to Principles, Techniques and Software Tools]]></source>
<year>2013</year>
<publisher-name><![CDATA[Troubador Publishing]]></publisher-name>
</nlm-citation>
</ref>
<ref id="B48">
<nlm-citation citation-type="">
<person-group person-group-type="author">
<name>
<surname><![CDATA[STEINBACH]]></surname>
<given-names><![CDATA[M]]></given-names>
</name>
<name>
<surname><![CDATA[HEMMERLING]]></surname>
<given-names><![CDATA[R]]></given-names>
</name>
</person-group>
<source><![CDATA[Accelerating batch processing of spatial raster analysis using GPU.]]></source>
<year>2012</year>
<volume>45</volume>
<page-range>212-220</page-range></nlm-citation>
</ref>
<ref id="B49">
<nlm-citation citation-type="">
<person-group person-group-type="author">
<name>
<surname><![CDATA[WAGNER]]></surname>
<given-names><![CDATA[D. F]]></given-names>
</name>
<name>
<surname><![CDATA[SCOTT]]></surname>
<given-names><![CDATA[M. S]]></given-names>
</name>
</person-group>
<source><![CDATA[Improving the Performance of Raster GIS: A Comparison of Approaches to Parallelization of Cost Volume Algorithms]]></source>
<year>1995</year>
<page-range>164-176</page-range></nlm-citation>
</ref>
<ref id="B50">
<nlm-citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname><![CDATA[WANG]]></surname>
<given-names><![CDATA[X]]></given-names>
</name>
<name>
<surname><![CDATA[LI]]></surname>
<given-names><![CDATA[Z]]></given-names>
</name>
<name>
<surname><![CDATA[GAO]]></surname>
<given-names><![CDATA[S]]></given-names>
</name>
</person-group>
<source><![CDATA[Parallel Remote Sensing Image Processing:: Taking Image Classification as an Example]]></source>
<year>2012</year>
<page-range>159-169</page-range><publisher-name><![CDATA[Springer Berlin Heidelberg]]></publisher-name>
</nlm-citation>
</ref>
<ref id="B51">
<nlm-citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname><![CDATA[WARMERDAM]]></surname>
<given-names><![CDATA[F]]></given-names>
</name>
</person-group>
<source><![CDATA[The Geospatial Data Abstraction Library.]]></source>
<year>2008</year>
<page-range>87-104</page-range><publisher-loc><![CDATA[^eBerlin Berlin]]></publisher-loc>
<publisher-name><![CDATA[Springer]]></publisher-name>
</nlm-citation>
</ref>
<ref id="B52">
<nlm-citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname><![CDATA[XIA]]></surname>
<given-names><![CDATA[Y]]></given-names>
</name>
<name>
<surname><![CDATA[KUANG]]></surname>
<given-names><![CDATA[L]]></given-names>
</name>
<name>
<surname><![CDATA[LI]]></surname>
<given-names><![CDATA[X.-M.]]></given-names>
</name>
</person-group>
<source><![CDATA[Accelerating geospatial analysis on GPUs using CUDA.]]></source>
<year>2011</year>
<volume>12</volume>
<page-range>990-999</page-range><publisher-name><![CDATA[Journal of Zhejiang University-SCIENCE C (Computers & Electronics)]]></publisher-name>
</nlm-citation>
</ref>
<ref id="B53">
<nlm-citation citation-type="">
<person-group person-group-type="author">
<name>
<surname><![CDATA[ZHAN]]></surname>
<given-names><![CDATA[L.-J]]></given-names>
</name>
<name>
<surname><![CDATA[QIN]]></surname>
<given-names><![CDATA[C.-Z.]]></given-names>
</name>
</person-group>
<source><![CDATA[Parallel Geospatial Raster Processing by Geospatial Data Abstraction Library (GDAL)]]></source>
<year>2012</year>
</nlm-citation>
</ref>
<ref id="B54">
<nlm-citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname><![CDATA[ZHAO]]></surname>
<given-names><![CDATA[Y]]></given-names>
</name>
<name>
<surname><![CDATA[HUANG]]></surname>
<given-names><![CDATA[Z]]></given-names>
</name>
<name>
<surname><![CDATA[CHEN]]></surname>
<given-names><![CDATA[B]]></given-names>
</name>
<name>
<surname><![CDATA[FANG]]></surname>
<given-names><![CDATA[Y]]></given-names>
</name>
</person-group>
<source><![CDATA[Local acceleration in Distributed Geographic Information Processing with CUDA]]></source>
<year>2010</year>
<publisher-name><![CDATA[IEEE Xplore Digital Library]]></publisher-name>
</nlm-citation>
</ref>
</ref-list>
</back>
</article>
