Add cuda and opti