There's no real analogue to a CPU core (or thread) on a GPU, there are warp schedulers (Nvidia) and functional units with varying throughput rates. The closest analogue to a CPU thread is the GPU warp (Nvidia), which shares a program counter and executes as a 32-wide vector. AMD wavefronts (64-wide) are a little bit different, but not by much. The CUDA "thread" is really an illusion that makes a SIMD lane easier to program to (sometimes...)
I agree, I think an SMX is the closest to a CPU core - it contains dispatch, cache, schedulers etc. CUDA threads are of course have important differences since all threads in a warp move in lockstep. IMO, all of these contrived definitions are just to ease in programmers into the CUDA/OpenCL model or for bragging rights (like how a Jetson has 192 cores!).