使用MPI发送位集

使用MPI发送位集,mpi,type-conversion,std-bitset,Mpi,Type Conversion,Std Bitset,无需转换即可从位集类发送/接收位的有效方法是什么。是否可以使用MPI_字节 如果是这样的话,那么应该将什么定义为将容纳位的数组的容器呢? 如果这是不可能的,哪种转换更有效,转换为ulong还是字符串?将其转换为“bool”数组并通过MPI_字节发送,此方法在集群上工作。位集有多大?有没有可能适合一个无符号的长型?你真的需要它有多高的效率?我有一个模板,不想让它依赖于问题,因为没有明确定义的方式来访问底层数据,你基本上可以选择:1)高效但限制在64的大小,2)高效但非常危险且完全不可移植,3)低效

无需转换即可从位集类发送/接收位的有效方法是什么。是否可以使用MPI_字节

如果是这样的话,那么应该将什么定义为将容纳位的数组的容器呢?
如果这是不可能的,哪种转换更有效,转换为ulong还是字符串?

将其转换为“bool”数组并通过MPI_字节发送,此方法在集群上工作。

位集有多大?有没有可能适合一个无符号的长型?你真的需要它有多高的效率?我有一个模板,不想让它依赖于问题,因为没有明确定义的方式来访问底层数据,你基本上可以选择:1)高效但限制在64的大小,2)高效但非常危险且完全不可移植,3)低效但通用,4)重新实现
std::bitset
。选项3听起来不错,我认为发送MPI_字节应该可以工作,你同意吗?我同意你的观点,将uint_64转换为“bool”数组并通过MPI_字节发送到集群上。。。