Como passar números inteiros longos e / ou não assinados para argumentos MPI?

Suponha que eu tenha uma matriz muito grande que desejo enviar ou receber com o MPI (v1). Para indexar essa matriz, eu uso um número inteiro longo sem sinal.

Agora, todas as chamadas de função MPI que eu vi usam tipos int para seus argumentos "count", como neste exemplo:

MPI_Recv(void *buf, int count, MPI_Datatype datatype, int source, int tag, MPI_Comm comm, MPI_Status *status)

Mas e se, na minha implementação, eu exigir a capacidade de enviar / receber uma matriz maior que o número máximo que um int pode conter? O compilador, naturalmente, me fornece um erro de "conversão inválida", quando tento alimentar um número inteiro não assinado para o argumento "count". Pensei em fazer um elenco, mas estou preocupado que isso diminua minha variável, então estou meio que sem saber o que fazer.

questionAnswers(2)

yourAnswerToTheQuestion