add nn_device function