RuntimeError: CUDA error: an illegal memory access was encountered

I was working on GeForce GTX 1080 Ti, Ubuntu 18.04

when i try to malloc two shared memory vector(share_size=527) to handle with bank conflict, i got a
<b>RuntimeError: CUDA error: an illegal memory access was encountered</b>
but no error report in cuda-memcheck

when share_size is just 512, is all fine, and Titan V is ok too !

Is Anyone can help me ?

__global__ void func(const int share_size, ...)
{
   extern __shared__ int array[];
   int *dists_idx = (int *)array;                
   float *dists = (float *)&dists_idx[share_size]; 
   ...
}
int main(){
    int share_sz = 527;
    auto share_mm = share_sz * sizeof(int) + share_sz * sizeof(float);
    func<<<blocks, threads_per_block, share_mm, stream>>>(share_sz, ...);
}