This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
contrib:rsoc:dhc [2011/01/13 19:35] 50.16.249.149 WOpkhaiSxhxRlvbXBW |
contrib:rsoc:dhc [2011/01/26 20:25] razvan old revision restored |
||
---|---|---|---|
Line 1: | Line 1: | ||
- | | + | = WLoHC = |
+ | | ||
+ | == Nume și descriere proiect == | ||
+ | |||
+ | * Prin definirea logica a relațiilor Proces-Date si maximizarea potențialului unei rețele de calculatoare, | ||
+ | * Luăm in considerare un algoritm care este prea complex pentru a fi executat pe un singur procesor fie el multicore. | ||
+ | * In cadrul unei rețele sa presupunem ca majoritatea nodurilor beneficiază de o arhitectură multicore mixta (CPU+GPU). | ||
+ | * Putem astfel recolta întreaga putere a unui rețele (având în vedere ca problema poate fi împărţită) prin calcul paralel/ | ||
+ | |||
+ | == Categorie aplicație == | ||
+ | |||
+ | * low-level/ | ||
+ | == Obiective == | ||
+ | |||
+ | * crearea/ | ||
+ | * crearea/ | ||
+ | * extragerea de informatii hardware din fiecare sistem nod si centralizarea sa la server | ||
+ | * rezvolrea cel putin a unei probleme real world folosind modelul creat/ statistici referitoare le eficienta | ||
+ | == Grup țintă == | ||
+ | |||
+ | Persoane interesate si cu cunostinte de baza la: | ||
+ | * tendinte evolutie hardware | ||
+ | * calcul eterogen | ||
+ | * calcul distribuit | ||
+ | * controlul fluxului de executie procese/ | ||
+ | |||
+ | == Limbaje de programare/ | ||
+ | |||
+ | Datorita multitudinii de optiuni in calculul eterogen si a distributiei acestuia in retea parte din optiunile enumerate pot fi schimbate inainte sau de-a lungul proiectului: | ||
+ | * Programare C/C++ si/sau Java | ||
+ | * OpenCL ( INTEL/ | ||
+ | * BPEL pentru descrierea fluxului (incert) | ||
+ | * posibil MPI / Open MPI | ||
+ | == Cerințe necesare == | ||
+ | |||
+ | * cunostinte bune programare C/C++ | ||
+ | * cunostinte bune notiuni calcul paralel/ | ||
+ | * cunostinte de baza calcul eterogen | ||
+ | * cunostinte de baza arhitectura CPU-GPU | ||
+ | |||
+ | == Cerințe recomandate == | ||
+ | |||
+ | * cunostinte OpenCL/ CUDA/ Stream | ||
+ | * cunostinte aprofundate arhitectura GPU/CPU | ||
+ | * cunostinte bune alte limbaje programare Java/ | ||
+ | |||
+ | === Sisteme de calcul recomandate === | ||
+ | |||
+ | * Preferabil laptop | ||
+ | * Dual Core CPU (Intel/ | ||
+ | * 2GB RAM | ||
+ | * Placa video discreta cu suport STREAM sau CUDA. | ||
+ | ** Atentie suport dx10 != suport CUDA/ | ||
+ | ** ATI - seria HD4 minim cu exceptii | ||
+ | ** NVIDIA - seria 8 minim cu exceptii | ||
+ | == Cunoștințe/ | ||
+ | |||
+ | * diferente arhitecturi CPU-GPU | ||
+ | * programare arhitecturi eterogene | ||
+ | * aprecierea problemelor ce pot fi rezolvate cu CPU/GPU | ||
+ | * teamwork/ | ||
+ | * proiect orientat catre cercetare/ multe din tehnologiile in discutie inca in stadiu de dezvoltare | ||
+ | == Roadmap == | ||
+ | |||
+ | * Interviu + Test: 29 iunie - 1 iulie | ||
+ | * Rezultate: 1-2 iulie | ||
+ | * 5-6 iulie: **Trunchi Comun** (prezentari -- 2 zile) | ||
+ | ** prezentare generala proiect / planificare / stabilire program | ||
+ | ** prezentare arhitecturi CPU/ | ||
+ | ** tehnologii openMPI/ | ||
+ | * 7-9 iulie: **Impartire/ | ||
+ | ** impartire indivizi pe module, aprofundare / specializare | ||
+ | *** (1) Java workflow design / Job Generator / Java -> C / aplicatie OpenCL | ||
+ | *** (2) Scheduler MPI / OpenCL/ monitorizare | ||
+ | *** (1) Distributie locala openCL CPU/ | ||
+ | * Deadline 1 | ||
+ | ** Java workflow design / Job Generator: 15 iulie | ||
+ | ** Scheduller alfa: 16 iulie | ||
+ | ** Distributie locala openCL CPU/GPU: 16 iulie | ||
+ | * Deadline 2 | ||
+ | ** Scheduller beta: 20 iulie | ||
+ | ** Aplicatie OpenCL - Algoritm fractali OpenCL: 21 iulie | ||
+ | ** Unificare si testare: 21-22 iulie | ||
+ | |||
+ | == Draft arhitectură (componente principale) == | ||
+ | |||
+ | | ||
+ | | Java Workflow | ||
+ | | ||
+ | | | ||
+ | | | ||
+ | | ||
+ | | | ||
+ | | ||
+ | - | ||
+ | - | ||
+ | Nod< | ||
+ | - interogare componente/ | ||
+ | |||
+ | == Resurse disponibile == | ||
+ | |||
+ | * MPI | ||
+ | ** http://www.mcs.anl.gov/ | ||
+ | ** http:// | ||
+ | ** http:// | ||
+ | * OpenCL | ||
+ | ** http:// | ||
+ | ** http:// | ||
+ | ** http:// | ||
+ | ** http:// | ||
+ | ** http://www.nvidia.com/object/ | ||
+ | * CUDA & STREAM | ||
+ | ** http:// | ||
+ | ** http://www.amd.com/US/ | ||
+ | ** http:// | ||
+ | * Articole Stiintifice HPC, Calcul Eterogen | ||
+ | ** http://www.gpucomputing.net/ | ||
+ | * Altele | ||
+ | ** http:// | ||
+ | ** http:// |