the smc phd implement by cuda