`np.int32` is not guaranteed to be the same as a C `int`. And besides, we should be using `np.intp_t` to handle large datasets.