Torre de Babel

Tutoriales

Cómo hacer GPGPU con CUDA

by Francisco Charte.

A medida que se han ido incorporando en la tarjeta de vídeo funciones más avanzadas, influidas por la necesidad de satisfacer requisitos más exigentes en la generación de gráficos y también las nuevas API de programación (OpenGL y DirectX), ha surgido un nuevo concepto: el de GPU (Graphics Processor Unit),... Seguir leyendo

Cómo usar OpenCL desde Python con PyOpenCL

by Francisco Charte.

En algunos artículos previos ya he hablado de las características de Python y también he introducido algunas ideas sobre OpenCL al tratar el paralelismo en GPU. Uno de los problemas que suele plantearse durante el aprendizaje de una nueva API/lenguaje, en este caso concreto OpenCL, es que suele implicar también... Seguir leyendo

Tutorial sobre tipos de shaders

by Francisco Charte.

Al estudiar las etapas programables del pipeline de las GPU actuales se aprecia la existencia de tres tipos de shaders en la actualidad: vertex, fragment y geometry. En realidad existen distintas versiones de cada una de estas clases de shaders, pudiendo utilizarse unas u otras dependiendo del hardware con que... Seguir leyendo

Cómo programar un vertex shader simple

by Francisco Charte.

Un vertex shader es un programa que recibe como entrada una serie de argumentos y genera unos resultados, casi como cualquier programa de ordenador. Su objetivo general es transformar vértices, si bien puede también influir en otros parámetros como el color o las coordenadas de textura. En esta entrada y... Seguir leyendo

Cómo programar un pixel shader sencillo

by Francisco Charte.

Los PS son programas con una estructura muy similar a la de los VS, si bien los parámetros de entrada y salida sobre los que trabaja son diferentes. La finalidad de un PS básicamente es la de definir el color que tendrá un fragmento o pre-píxel, normalmente usando información procedente... Seguir leyendo

Cómo programar un geometry shader

by Francisco Charte.

Los GS son programas algo más complejos que los VS y PS. A diferencia de éstos, no reciben como entrada un único vértice/fragmento ni tampoco tienen que limitarse a emitir un vértice/fragmento. Un GS se ejecuta una vez por cada primitiva a procesar: punto, línea o triángulo. El resultado de... Seguir leyendo

Cómo usar los shaders desde OpenGL

by Francisco Charte.

El diseño de shaders usando programas como Shader Maker resulta bastante sencillo, pero el objetivo último es usar esos shaders en nuestras propias aplicaciones. Para ello habría que seguir el procedimiento descrito en el tutorial sobre lenguajes de shaders, concretamente el apartado sobre OGLSL. Traducido a código, dicho procedimiento se... Seguir leyendo

Introducción a R y RStudio

by Francisco Charte.

¿Qué es R? R es una herramienta y al mismo tiempo un lenguaje: Herramienta - Programa software en el que introduciremos las órdenes para analizar los datos y generar los gráficos Lenguaje - El conjunto de órdenes que entiende el software forman el lenguaje R ¿Qué es RStudio? Una herramienta... Seguir leyendo

Cómo generar gráficas básicas con R

by Francisco Charte.

La visualización es una herramienta esencial en el análisis exploratorio de datos. No obstante existen multitud de tipos de visualización distintos y no todos sirven en todos los casos. Al que tiene un martillo todo le parecen clavos, pero es importante elegir la herramienta adecuada a cada trabajo. Dependiendo de... Seguir leyendo

Cómo generar gráficas avanzadas con R

by Francisco Charte.

Las posibilidades gráficas en R son muy extensas, habiendo disponibles varias decenas de paquetes que, como ggplot, ofrecen un extenso conjunto de comandos para elaborarlas. A continuación aprenderemos a usar algunas de ellas. Combinación de múltiples gráficas La posibilidad de combinar en una misma imagen múltiples gráficas facilita la comparación... Seguir leyendo

Redes neuronales con R

by Francisco Charte.

Este es un tutorial muy básico sobre redes neuronales y R, sin asumir ningún conocimiento previo del tema salvo que se tiene R instalado en el sistema y se sabe acceder a su consola para ejecutar órdenes. Los lenguajes de programación, hojas de cálculo, bases de datos y otras aplicaciones... Seguir leyendo

Intercambio de datos entre Excel y R

by Francisco Charte.

Microsoft Excel es una de las herramientas más usadas por parte de los denominados power users (usuarios con conocimientos por encima del usuario medio) a la hora de resumir, analizar y representar gráficamente todo tipo de datos, generalmente con el objetivo de extraer información útil a partir de ellos. Personalmente... Seguir leyendo

Qué es el patrón arquitectónico MVC

by Francisco Charte.

El patrón arquitectónico MVC (Model-View-Controller) es, en la actualidad, un estándar muy asentado para el desarrollo de sistemas software que precisan interactuar con personas y que, por tanto, entre sus componentes existe una interfaz de usuario. Todo ingeniero de software conoce este patrón y en la red es posible encontrar... Seguir leyendo

Configuración de un cluster con Ubuntu y SGE

by Francisco Charte.

Los centros de cálculo utilizados por corporaciones empresariales, centros de investigación e instituciones similares utilizan desde hace años la configuración en cluster como alternativa al más tradicional mainframe, conectando un gran número de nodos entre sí para poder ofrecer así una potencia de cálculo igual o superior a la que... Seguir leyendo

Cómo generar documentos XML desde Delphi

by Francisco Charte.

El lenguaje XML (Extensible Markup Language) es actualmente la mejor opción para comunicar unas aplicaciones con otras, ya sea intercambiando información, mediante documentos XML, o incluso efectuando llamadas, con protocolos XML-RPC (Remote Procedure Call basado en XML) como SOAP (Simple Object Access Protocol). El caso más habitual es el primero:... Seguir leyendo

Cómo consumir servicios web desde Excel

by Francisco Charte.

Cada nueva versión de Excel incorpora múltiples opciones nuevas en la interfaz de usuario, pero también hay novedades menos obvias como son el medio centenar de funciones añadidas en la versión 2013 a la ya extensa biblioteca con que contaba este producto. Muchas de esas nuevas funciones extienden categorías ya... Seguir leyendo

Cómo instalar Python en Windows

by Francisco Charte.

Características de Python como lenguaje de programación Con la excepción de aquellos que tuvieron la oportunidad de cursar estudios de informática o ciencias de la computación, la mayoría de los jóvenes que apredieron a programar en la década que va de 1975 a 1985 (entre los que me cuento) lo... Seguir leyendo

Sobre la imprecisión y la lógica difusa

by Francisco Charte.

Durante nuestra actividad cotidiana, a lo largo de la vida pero también en lapsos de tiempo reducido como puede ser un día o incluso pocos segundos, tomamos infinidad de decisiones que exigen la evaluación de situaciones de diversa complejidad. Aunque de manera inconsciente, no nos paramos a pensar en cómo... Seguir leyendo

Introducción a PowerShell

by Francisco Charte.

Son muchos los usuarios de Windows que, en alguna ocasion, han recurrido a la ventana Símbolo del sistema para realizar alguna operación puntual. Los usuarios más avanzados incluso escriben sus propios guiones, los conocidos y antiguos archivos .BAT heredados del DOS, pero son pocos los que aprovechan una de las... Seguir leyendo

Cómo crear mashups con Yahoo! Pipes

by Francisco Charte.

La empresa precursora de la catalogación de contenidos en Internet, Yahoo!, te ofrece un servicio gratuito con el cual podrás construir elaborados resultados a partir de uno o más feeds RSS, Atom o RDF. Actualmente la práctica totalidad de los sitios web que se renuevan con cierta frecuencia, como los... Seguir leyendo

Cómo actualizar referencias cruzadas en Microsoft Word

by Francisco Charte.

Word, el conocido programa de procesamiento de textos de Microsoft, cuenta con las opciones necesarias para asignar automáticamente títulos a tablas, figuras e ilustraciones, generar tablas de contenidos y tablas de referencias a todos esos elementos y, además, introducir referencias cruzadas en el texto. Una referencia cruzada es, por ejemplo,... Seguir leyendo