On Mon, 13 Oct 2008, John Peterson wrote:
> Okay. For some reason I thought tiny structs like that might get
> padded out to a 4 or 8-byte boundary in memory.
The reason for padding is to avoid misaligned data in memory. So if
you had a struct containing a char and a short, for example, a padd
On Mon, Oct 13, 2008 at 1:58 PM, Roy Stogner <[EMAIL PROTECTED]> wrote:
>
>
> On Mon, 13 Oct 2008, John Peterson wrote:
>
>> I checked out GCC's implementation of std::complex and I see the
>> class contains two T's rather than e.g. a length=2 array such as: "T
>> array[2];". So in the (purely aca
On Mon, 13 Oct 2008, John Peterson wrote:
> I checked out GCC's implementation of std::complex and I see the
> class contains two T's rather than e.g. a length=2 array such as: "T
> array[2];". So in the (purely academic) case where someone had a
> vector> I would be a little worried about the
On Mon, Oct 13, 2008 at 11:12 AM, Roy Stogner <[EMAIL PROTECTED]> wrote:
>
>
> On Mon, 13 Oct 2008, John Peterson wrote:
>
>> Hmm...
>>
>> I'm not sure I see how this function works. r and r_src are
>> vector> but we are MPI gathering them as datatype, where
>> T=Real. Surely the layouts of an ar
On Mon, 13 Oct 2008, John Peterson wrote:
> On Mon, Oct 13, 2008 at 9:04 AM, Gong Ding <[EMAIL PROTECTED]> wrote:
>> In function
>>
>> template
>>
>> inline void gather(const unsigned int root_id,
>>
>> std::vector > &r)
>>
>> line 1454 to 1457 should be
>> // now resize r to
On Mon, Oct 13, 2008 at 9:04 AM, Gong Ding <[EMAIL PROTECTED]> wrote:
> In function
>
> template
>
> inline void gather(const unsigned int root_id,
>
> std::vector > &r)
>
> line 1454 to 1457 should be
> // now resize r to hold the global data
>
> // on the receiving processor
>
In function
template
inline void gather(const unsigned int root_id,
std::vector > &r)
line 1454 to 1457 should be
// now resize r to hold the global data
// on the receiving processor
if (root_id == libMesh::processor_id())
r.resize(globalsize/2);
since mysize