Yes - you could offload to another server. Just use your normal request methods to post over the data you need to have 'computed'. Since requests are async, it won't block the normal flow of Node. When the request comes back, you've got the data you need and can do any last minute alterations before pumping it up to the client.
You could then have a 'server farm' that handles these things - for example on EC2 you can create a load balancer, and then just have node make the request to that balancer. No need to do anything fancy inside of node like remembering which server was the last one hit or anything like that.
Alternatively, if this was more of a command line thing and doesn't need to be terribly scalable, you can use node's exec to make a system call, then once again the callback will be called with whatever the return is.
Whatever you do, do not do those computations inside of node :) - your anticipations are correct. It'll bomb your performance, as I learned the hard way a couple of times. Async is your friend.
long double. So I think it's worth it to write it in C++.