nvidia has a smoke sim and a fluid sim working on GPU, only problem it’s nvidia only… noone in their right mind would invest in anythin that but cross platform.
regarding , even if you wrote THE most awesome C or CUDA or C++ physics engine, you still would have to i/o to blender via a python api.
imagine having a ferrari, and it’s awesome to run on the streets, then you come home to the carport and it’s a woden door 1x2m … that’s the current blender api
the devs have been investigating having a C++ api, only thing is that
if you write shit code in python, it breaks, it doesn’t crash your computer.
if you have a c++ api, and write shit code, it will break your OS … and crash.
that’s the dilemma.
the future , with render api is having a small group managing the i/o in C/c++ from blender… then render engines and physics engine will play nice.
any faulty or buggy one will crash the almost “stable” 2.58 blender 
in 2.6 we’ll prolly see a render api in both python and c++