Ho giocato in giro con il profiler NVIDIA (nvprof) e ci sono due metriche particolari che non capisco:istruzioni di comunicazione varie e inter-thread in CUDA
inst_inter_thread_communication
Number of inter-thread communication instructions executed by non-predicated threads
inst_misc
Number of miscellaneous instructions executed by non-predicated threads
Sto solo chiedendo cosa le istruzioni sarebbero istruzioni di comunicazione inter-thread e quali istruzioni rientrerebbero in miscellanea.
Riferimento: http://docs.nvidia.com/cuda/profiler-users-guide/#metrics-reference
La comunicazione tra thread è costituita da funzioni di shuffle, http://docs.nvidia.com/cuda/cuda-c-programming-guide/#warp-shuffle-functions e possibilmente funzioni di sincronizzazione dei thread o funzioni di fence della memoria. Misc è tutto ciò che non è coperto dall'altra serie di istruzioni registrate. Non ne sono del tutto sicuro, ma presumo che potrebbero seguire le linee di operazioni di char, operazioni di confronto, overhead del loop, operazioni di funzioni speciali, overhead per le funzioni del dispositivo, nella memoria del kernel malloc. –