<p>I read in <a href="http://www.ddj.com/hpc-high-performance-computing/210605281" rel="noreferrer">this article </a> that a company has created a software capable of using multiple GPU-based video cards in parallel to process hundreds of billions fixed-point calculations per second.</p>

<p>The program seems to run in Windows. Is it possible from Windows to assign a thread to a GPU? Do they create their own driver and then interact with it? Any idea of how they do it?</p>

I imagine that they are using a language like
CUDA
to program the critical sections of code on the GPUs to accelerate their computation.
The main function for the program (and its threads) would still run on the host CPU, but data are shipped off the the GPUs for processing of advanced algorithms.  CUDA is an extension to C syntax, so it makes it easier to programmer than having to learn the older shader languages like
Cg
for programming general purpose calculations on a GPU.