0
개체를 브로드 캐스트하는 방법이 있습니까? 아니면 다른 방법으로 포함 된 모든 값을 브로드 캐스트해야합니까?MPI로 개체 브로드 캐스트
개체를 브로드 캐스트하는 방법이 있습니까? 아니면 다른 방법으로 포함 된 모든 값을 브로드 캐스트해야합니까?MPI로 개체 브로드 캐스트
저는 C++ 언어가 객체를 가지고 있고 표준에 정의 된 MPI 인터페이스를 가진 언어로만 가정합니다. 내가 틀렸다면, 그냥 말해. 다른 언어의 기본 원칙은 다음과 같습니다.
기본적으로 개체의 memcpy를 수행하거나 파일 (write
)에 저장하고 파일 (read
)에서 개체를 읽으면 개체가 저장된 메모리의 MPI_Bcast를 수행 할 수 있습니다.
개체가 더 복잡한 경우에는 보내기 전에 일부 버퍼로 직렬화 (마샬링)하고 수신 후에 비 직렬화 (언 마샬링)해야합니다. 당신은 boost serialization을 사용할 수 있습니다 -하지만 심지어이 변형 보편적없는
PS 부스트 직렬화
목적은 무엇인가
Boost.MPI
에 통합되어 (객체 직렬화로 구성 할 수있는 방법에 한계가있다)? POD (int, char, float) 및 포인터가 포함되어 있지 않습니까? – osgx