private:
/**
- * Allocate and align @p v along 64-byte boundaries.
+ * Allocate and align @p val along 64-byte boundaries. The size
+ * of the allocated memory is determined by @p max_vec_size .
*/
- void allocate(const size_type n);
+ void allocate();
/**
* Deallocate @p val.
{
if (val) deallocate();
max_vec_size = n;
- allocate(max_vec_size);
+ allocate();
};
vec_size = n;
if (fast == false)
{
if (vec_size != 0)
{
- allocate(max_vec_size);
+ allocate();
*this = v;
}
}
{
if (vec_size != 0)
{
- allocate(max_vec_size);
+ allocate();
std::copy (v.begin(), v.end(), begin());
}
}
{
if (vec_size != 0)
{
- allocate(max_vec_size);
+ allocate();
// get a representation of the vector
// and copy it
{
if (vec_size != 0)
{
- allocate(max_vec_size);
+ allocate();
// Copy the distributed vector to
// a local one at all
{
if (vec_size != 0)
{
- allocate(max_vec_size);
+ allocate();
// get a representation of the vector
// and copy it
template <typename Number>
void
-Vector<Number>::allocate(const size_type size)
+Vector<Number>::allocate()
{
- val = static_cast<Number *>(_mm_malloc (sizeof(Number)*size, 64));
+ val = static_cast<Number *>(_mm_malloc (sizeof(Number)*max_vec_size, 64));
Assert (val != 0, ExcOutOfMemory());
}