Nowadays, it becomes more and more hard to enhance processor speed, therefore multiplying processing units seems to be the best way to achieve larger performance. It causes that multi-core and hybrid processors as well as GPU’s used as a processing units stay more and more popular for commercial and home usage. Developing programs for these “architectures” required from the programmers some additional specific knowledge about the processor architecture and parallel programming. We propose the SliCer, the hardware independent tool that in automatic way parallelized serial programs written in C language by creating the proper number of threads that can be later executed in parallel depending on the used architecture. We used virtualization that makes it possible to utilize a variety of hardware resources dynamically selected to ensure efficient execution performed in accordance to the requirements.