I am a research fellow on architectural prototyping and parallel programming model for (embedded) many-core architectures. I do research in three main directions:
a. Developing modular, scalar and power-efficient parallel software for modern many-cores is a hard task (aka: nightmare) for programmers. They need new abstractions and an ad-hoc software stack (libraries, drivers) to extract the maximum performance/energy by their code.
b. Integrating hardware accelerators and cores in the same chip is a common design trend, nowadays. Rapidly prototyping accelerators and the platform, and efficiently exploiting them from the application layer are still open tasks.
c. Providing Real-time guarantees on single-core GP machines is not easy at all.. and it gets even worse when you scale to multi- and many-cores!
R&D on compilers, extensions to progamming models, runtime libraries and design toolflows to tackle these issues..well, it's my work.