Autor
|
Tema: Paralelizar Codigo Secuencial (Leído 4,347 veces)
|
epoca
Desconectado
Mensajes: 5
|
Estoy intentando paralelizar un bucle for ¿Existe alguien que pudiera decirme por donde empezar?
Un saludo
|
|
|
En línea
|
|
|
|
eferion
Desconectado
Mensajes: 1.248
|
¿C, C++, C++11?
Si lo quieres hacer a mano, siempre puedes coger, en cada iteración del for, un hilo de un pool (si no hay disponibles, esperas) y al hilo asignarle la tarea correspondiente. Una vez finalizada la tarea devuelves el hilo al pool y continúas con la ejecución.
|
|
|
En línea
|
|
|
|
epoca
Desconectado
Mensajes: 5
|
Creo que no es tan facil, o es que yo lo veo muy dificil, lo tengo que paralizar usando CUDA dentro del for, en C, existe una función pero lo que no entiendo es como asocio esa función para queda hilo la ejecute y cree un resultado diferente. ¿Como se asocia dicha función a sus correspondiente hilos?, ¿lo realiza el compilador automaticamente?
Gracias de antemano por tu ayuda.
|
|
|
En línea
|
|
|
|
eferion
Desconectado
Mensajes: 1.248
|
Para usar CUDA tienes que cargar una extensión en el compilador. Esta extensión añade ciertas características que no están presentes en una compilación típica y es lo que permite que se puedan ejecutar ciertas sentencias de forma paralela usando la tarjeta gráfica para ello.
Por cierto, ten en cuenta que no se puede depurar el código que se ejecute en la tarjeta gráfica, así como tampoco su memoria, así que suele ser una buena práctica probar la mayor parte del código en una compilación sin CUDA.
Un saludo.
|
|
|
En línea
|
|
|
|
epoca
Desconectado
Mensajes: 5
|
Una compilación sin CUDA, te refieres a una compilación secuencial ¿verdad?. Soy consciente de que no se puede depurar el código que mandes a la gráfica pero puedes definir las funciones que vas a utilizar en la GPU como por ejemplo: __global__void ASDecisionRule(.....) Con lo que no me aclaro es: dentro de esas funciones que tu envías a la GPU ¿automáticamente se dividen en tantas como hilos haya? y ¿Como se entienden entre si?
¿Conoces la paralelizacion del problema de viajero TSP? Estoy intentando hacer algo similar.
Un saludo
|
|
|
En línea
|
|
|
|
eferion
Desconectado
Mensajes: 1.248
|
No soy experto en CUDA. Sobre este tema únicamente tengo algunas nociones básicas.
Si se que para sincronizar elementos tienes que utilizar mecanismos de exclusión mutua (si toqueteas variables comunes), pero poco más al respecto.
Quizás deberías buscar algún manual de CUDA en Internet.
Siento no ser de más ayuda.
Un saludo.
|
|
|
En línea
|
|
|
|
epoca
Desconectado
Mensajes: 5
|
Bueno, de todas formas muchas gracias por preocuparte.
Un saludo.
Te mantendre informado de lo que consigo
|
|
|
En línea
|
|
|
|
ivancea96
Desconectado
Mensajes: 3.412
ASMático
|
Sinó, también tienes los threads de C++11. Así usas threads en al CPU normal, sin gráfica.
|
|
|
En línea
|
|
|
|
epoca
Desconectado
Mensajes: 5
|
Gracias, pero eso no me vale. Me piden trabajar con la grafica
|
|
|
En línea
|
|
|
|
|
Mensajes similares |
|
Asunto |
Iniciado por |
Respuestas |
Vistas |
Último mensaje |
|
|
Db o archivo secuencial????
Programación Visual Basic
|
_Sergi_
|
1
|
1,993
|
27 Febrero 2006, 14:11 pm
por WarGhost
|
|
|
Archivo Secuencial
Programación Visual Basic
|
YEXBOND007
|
1
|
2,141
|
30 Abril 2007, 05:04 am
por Sancho.Mazorka
|
|
|
Problema en codigo. Escritura y Lectura de un archivo secuencial
Programación C/C++
|
traviatØ
|
1
|
3,524
|
26 Octubre 2012, 17:17 pm
por rir3760
|
|
|
Problema de exec secuencial de archivos[C]
Programación C/C++
|
MrJava
|
0
|
1,636
|
4 Abril 2013, 16:24 pm
por MrJava
|
|
|
Captura secuencial de fotogremas de vieos
Multimedia
|
DavidNK
|
1
|
3,004
|
20 Abril 2013, 03:09 am
por Songoku
|
|