Research
Research
I'm heading a research group mainly worried about "productivity" in the context of high performance computing, or in other words, to achieve "performance without pain". Let me elaborate a little more about that. From the computer architecture point of view we are in the multi-core or many-core era. We have dual or quad core CPUs in our PCs, Intel has a prototype with 80 cores, and the Cell processor of the PlayStation III has a PowerPC and 8 companion processing elements, to give you a few examples. To fully exploit these new architectures is a challenge from the software point of view, because they are more difficult to program and error prone than the old sequential architectures. Our research goals are to find new tools and programming models to alleviate these new difficulties.
Regarding the tools, we have been working in a parallelizing compiler able to detect dynamic data structures (list, trees...) in a sequential C code, and to identify the parallel loops that traverse these data structures.
On the other hand we also explore the field of new programming models. We are interested in the Unified Parallel C (UPC) language, the Chapel parallel language, the Threading Building Blocks library, work stealing scheduling, pipeline and wavefront functional parallelism.
In my PhD (Sparse LU factorization in Multiprocessors -in spanish-), I started working in the manual parallelization of sparse algorithms, but also explored the semi-automatic and automatic parallelization approaches.
Links and News



Upcoming conferences
Grad Phd students

1.Francico Corbera (2001)
2.Adrián Tineo (2009)
3.Rosa Castillo (2009)
PHD Students

•Rafael Larrosa
•Antonio García
•Alberto Sanz
Research interests
•Parallel programming languages
•Parallelizing compilers
•Parallel architectures
Research Group
Parallel programming models and compilers
Research Project
P08-TIC-3500. Increasing the productivity in the parallelization of irregular codes
Main topics