GPU kernels are typically launched with block batch sizes (typically the data batch size is some multiple of warp size - 32 - since CUDA runs instructions in SIMD fashion in warps). So it is possible that between 8 and 2 the underlying CUDA kernel is actually launched with the same batch size (say 32) in which case the other rows in the batch are typically zero-filled or just discarded from the result, and you’ll see roughly the same runtime.
Can you share the runtime differences for iteration 1,2,3,…, 10,11, …? Its possible there are other operations in the pipeline that is causing the inverted performance numbers.