Размер
MPI_Offset
не определен стандартом - он примерно настолько велик, насколько это возможно.ROMIO, широко используемая базовая реализация MPI-IO, использует 8-байтовые целые числа в системах, которые их поддерживают.Вы можете наверняка узнать это, посмотрев в mpi.h вашей системы.
MPI_Offset очень точно подписан;Существуют функции, такие как MPI_File_seek, где вполне разумно, чтобы значения типа MPI_Offset принимали отрицательные значения.
MPI_Get_count возвращает целое число нормального целого размера, что, безусловно, может вызвать проблемы для некоторых стратегий ввода-вывода больших файлов.
Как правило, по ряду причин лучше не использовать небольшие низкоуровневые блоки ввода-вывода, подобные байту, при выполнении MPI-IO;с точки зрения производительности и читабельности кода лучше выражать ввод-вывод в единицах базовых типов данных.При этом эти ограничения по размеру становятся меньше проблемой.Однако если ваш базовый тип данных действительно байтовый, вариантов не так много.