Recent advances in multi-core and many-core processors re-quires programmers to exploit an increasing amount of par-allelism from their applications. Data parallel languages such as CUDA and OpenCL make it possible to take ad-vantage of such processors, but still require a large amount of effort from programmers. A number of parallelizing source-to-source compilers have recently been developed to ease programming of multi-core and many-core processors. This work presents and evalu-ates a number of such tools, focused in particular on C-to-CUDA transformations targeting GPUs. We compare these tools both qualitatively and quantitatively to each other and identify their strengths and weaknesses. In this paper, we address the weaknesses by pres...