Actualizado el 21 de Marzo del 2018 (Publicado el 15 de Febrero del 2018)
850 visualizaciones desde el 15 de Febrero del 2018
2,9 MB
116 paginas
Creado hace 10a (01/07/2013)
Subsecretaría de Educación Superior
Dirección General de Educación Superior Tecnológica
Instituto Tecnológico de La Paz
INSTITUTO TECNOLÓGICO DE LA PAZ
DIVISIÓN DE ESTUDIOS DE POSGRADO E INVESTIGACIÓN
MAESTRÍA EN SISTEMAS COMPUTACIONALES
ANÁLISIS DE EXPRESIÓN GENÉTICA EN
MICROARREGLOS UTILIZANDO ALGORITMOS
IMPLEMENTADOS EN GPU
T E S I S
QUE PARA OBTENER EL GRADO DE
MAESTRO EN SISTEMAS COMPUTACIONALES
PRESENTA:
ISAAC VILLA MEDINA
DIRECTOR DE TESIS:
MC. Jesús Antonio Castro
CODIRECTOR DE TESIS:
Dr. Eduardo Romero Vivas
MIEMBROS DEL JURADO:
MC. Jesús Antonio Castro, ITLP
PRESIDENTE
MSC. Iliana Castro Liera, ITLP
SECRETARIO
Dr. Saúl Martínez Díaz, ITLP
VOCAL
LA PAZ, BAJA CALIFORNIA SUR, MÉXICO, JUNIO 2013.
CONTENIDO.
Página
Índice de Figuras
Resumen
Abstract
Capítulo 1. Introducción.
1.1. Introducción.
1.2. Planteamiento del Problema.
1.3. Objetivo.
1.4. Objetivos Específicos.
Capítulo 2. Microarreglos.
2.1. Introducción a Microarreglos.
2.2. Herramienta Spotfinder.
2.3. Diseño del Microarreglo.
2.4. Análisis Estadístico de Expresión Diferencial.
2.5. Análisis Bootstrap.
2.6. Obtención de datos.
2.7. Formateo de Datos.
2.8. Taxonomía de Flynn.
iii
vi
vii
1
2
4
5
5
6
7
10
11
13
14
16
21
23
i
Capítulo 3. CUDA.
3.1. Tarjetas Gráficas.
3.2. CUDA.
3.3. Instalación de CUDA en Fedora 12 Linux.
Capítulo 4. Implementación de Algoritmos.
4.1. Diseño del Algoritmo.
4.2. Descripción de Rutinas del Algoritmo.
4.3. Implementación Paralela del Algoritmo en CUDA.
Capítulo 5. Resultados y Conclusiones.
5.1. Desempeño del Algoritmo.
5.2. Conclusiones.
5.3. Recomendaciones.
Apéndice 1. Código de Algoritmo Secuencial.
Apéndice 2. Código de Algoritmo Paralelo.
Apéndice 3. Código de Rutinas para Formateo de Datos.
Apéndice 4. Características de equipos de pruebas.
Referencias.
Página
28
29
35
38
42
43
46
47
50
51
54
54
55
75
100
105
107
ii
INDICE DE FIGURAS
Página
2.1 Metodología básica de un Microarreglo de ADN.
2.2 Imagen de microarreglo y acercamiento.
2.3 Histograma de resultados del estadístico t-student
2.4 Imágenes del microarreglo Cy3, Cy5 y un acercamiento a Cy5.
2.5 Página oficial de Spotfinder.
2.6 Archivos obtenidos tras descomprimir Spotfinder321xxx.zip.
2.7 Menú Image->Open Images.
2.8 Cuadro de diálogo abrir imágenes.
2.9 Contenido de opción: Menu Grid->Load Grid from file.
2.10 Malla colocada sobre las imágenes.
2.11 Ajustes del Grid.
2.12 Guardando datos en archivo MEV.
8
12
15
16
17
17
18
18
18
19
19
20
2.13 Archivo MEV antes (a) y después (b) de quitar los encabezados.
21
2.14 Archivo de salida con los ratios obtenidos.
2.15 Archivo de ratios ordenados por columnas.
2.16 Arquitectura SISD.
2.17 Arquitectura SIMD.
2.18 Arquitectura MISD.
2.19 Arquitectura MIMD.
22
22
23
24
25
26
iii
3.1 Tarjeta gráfica Nvidia Gforce GTX 460.
3.2 Esquema de Tarjeta gráfica.
3.3 Operaciones de punto flotante por segundo.
3.4 Cantidad de memoria leída.
3.5 Esquema de Diseño de una CPU y una GPU.
3.6 Modo de ejecución secuencial en CPU.
3.7 Modo de ejecución paralela en CPU.
3.8 Modo de ejecución paralela en GPU.
3.9 Arquitectura CUDA.
3.10 Distribución de bloques en los núcleos.
3.11 Archivo /etc/modprobe.d/blacklist.conf
3.12 Archivo /boot/grub/grub.conf
3.13 Comando para instalar driver de desarrollo de CUDA.
3.14 Cambiando a superusuario (root).
3.15 Comando para instalar el kit de herramientas CUDA.
3.16 Comando para editar el archivo .bashrc
3.17 Comando para instalar el CUDA SDK.
3.18 Comandos para instalar las dependencias del CUDA SDK.
3.19 Compilación del SDK.
4.1 Diagrama para realizar el cálculo del estadístico t-student.
Página
29
30
31
32
32
33
34
34
36
37
39
39
40
40
40
40
41
41
41
43
iv
Página
4.2 Desglose del cálculo del promedio.
4.3 Desglose del cálculo de la desviación estándar.
4.4 Desglose del cálculo del estadístico t-student.
4.5 Cálculos realizados por la función sumatoria().
4.6 Cálculos realizados por la función divisionesc().
4.7 Cálculos realizados por la función restapow2().
4.8 Cálculos realizados por la función raiz().
4.9 Cálculos realizados por la función divisionmat().
5.1 Tiempos de procesamiento de algoritmos.
5.2 Tiempos de procesamiento del análisis Bootstrap.
44
44
45
47
47
48
48
49
51
52
v
Resumen
Los microarreglos de ADN permiten analizar simultáneamente el nivel de expresión
de miles de genes ante condiciones múltiples. Su uso ha revolucionado la biología
molecular impactando en áreas tales como la académica, médica y farmacéutica,
biotecnológica, agroquímica y la industria alimenticia. Una de las principales
características de los microarreglos es el gran volumen de datos que se generan.
Por tanto, uno de los grandes retos en este campo involucra el manejo e
interpretación de estos datos. La Bioinformática (entendida ésta como la aplicación
de matemáticas, estadística y tecnologías de la información para el análisis de
señales genómicas y proteómicas) dan respuesta a este reto. La dimensión de la
información generada y su análisis hace de los microarreglos candidatos ideales
para procesamiento masivamente paralelo y dentro de las tecnologías disponibles,
el procesamiento en tarjetas gráficas de video (GPU) constituye una excelente
alternativa. En este trabajo se presenta la implementación de algoritmos basados
en la Arquitectura de Dispositivos de Computo Unificado (CUDA) para determinar la
significancia estadística en la evaluación de los niveles de expresión genes para un
experimento de hibridación de microarreglos diseñado en el Centro de
Investigaciones Biológicas del Noroeste S.C.
vi
Abstract
The microarrays of DNA are used to analyze simultaneously the expression level of
thousands of genes under multiple conditions. Its use has revolutionized the
molecular biology impacting on areas such as academic, medic and pharmaceutical,
biotechnology, agrochemical and the food industries. One of the main features of
microarrays is the generation of massive amount of data. Therefore, one of the
major challenges in this field involves the management and interpretation of big
volumes of data. Bioinformatics (understood as the application of mathematics,
statistics and information technology for the analysis of genomic and proteomic
signals) responds to this challenge. The dimension of the information generated
and the analysis of microarrays makes them ideal candidates for massive parallel
processing and within the available technologies, processing in video graphics cards
(GPU) is an excellent alternative. This work presents the implementation of
algorithms using Compute Unified Device Architecture (CUDA) to determine
statistical significance in the evaluation of gene expression levels for of microarrays
hybridization experiments, designed in Centro de Investigaciones Biológicas del
Noroeste, S.C.
vii
Capítulo 1
Introducción.
1
1.1. Introducción
El ADN es el ácido desoxirribonucleico responsable de contener toda la
información genética de un individuo o ser vivo, información que es única e
irrepetible en cada ser ya que la combinación de elementos se construye de
manera única. Este ácido contiene, además, los datos genéticos que serán
hereditarios de generación en generación, por lo cual su análisis y comprensión
es de gran importancia para realizar cualquier tipo de investigación científica
que verse sobre la identidad o sobre las características de un individuo.
La información que nos ofrece el ácido desoxirribonucleico o ADN es aquella
que se vincula directamente con la conformación de cualquier tipo de células en
un ser vivo. Esta información se transporta a través de los segmentos conocidos
como genes, construcciones responsables de dar forma a los diferentes
complejos celulares de un organismo.
El descubri
Comentarios de: Análisis de expresión genética en microarreglos utilizando algoritmos implementados en GPU (0)
No hay comentarios