Asi es el tema de threads y multi threads ya existía desde antes que se comercializaran los procesadores multinucleo. La diferencia es que si tienes dos nucleos, entonces 2 threads pueden correr al mismo tiempo.
Con un solo nucleo, 2 threads se dividen en intervalos, y aunque puede dar la apariencia de estar corriendo al mismo tiempo, en realidad estarían alternandose para correr.
Con respecto al source code, como trabajo con nvidia , te puedo facilitar la página para que te familiarices (si te interesa) con la tecnología CUDA:
http://developer.nvidia.com/object/c...downloads.html
Ahi viene el SDK, los source codes y la documentacion necesaria, sin embargo necesitas un GPU con CUDA compatible. Puedes darle una miradita a la página de Intel, igual tambien pueden ofrecer algo similar.