more cuda and sparse code