CUDA 2.3 V0.2.1221/linux 32 bitsconvertir u_int64_t à u_char sur CUDA 2.3 nvopencc
Salut, j'ai un problème avec le code suivant:
__device__ void put_u64(void *vp, u_int64_t v) {
u_char *p = (u_char *) vp;
p[0] = (u_char) (v >> 56) & 0xff;
p[1] = (u_char) (v >> 48) & 0xff;
p[2] = (u_char) (v >> 40) & 0xff;
p[3] = (u_char) (v >> 32) & 0xff;
p[4] = (u_char) (v >> 24) & 0xff;
p[5] = (u_char) (v >> 16) & 0xff;
p[6] = (u_char) (v >> 8) & 0xff;
p[7] = (u_char) v & 0xff; }
= 1 émeu make compile et fonctionne
-
sans émulation je reçois l'erreur:
### échec assertion à la ligne 1923 ou ../../be/cg/cgemit.cxx
### classe registre incorrect pour opérande 0
nvopencc ERREUR INTERNE ... état 1
-
quelqu'un peut-il aider pls - je ai juste besoin d'un moyen de travail pour convertir u_int64_t à un char unsinged [7].
Cependant, vous résoudre ce problème, je l'espère vous signaleront également aux développeurs Cuda à NVidia, car cela est évidemment un bogue dans Cuda. –