From 6be5feb22705852fbad8b960bcaf72ebf9171436 Mon Sep 17 00:00:00 2001
From: Dominic Kempf <dominic.kempf@iwr.uni-heidelberg.de>
Date: Wed, 21 Mar 2018 10:08:23 +0100
Subject: [PATCH] Overallocate buffers to multiples of the vector size

---
 python/dune/perftool/loopy/target.py | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/python/dune/perftool/loopy/target.py b/python/dune/perftool/loopy/target.py
index 9a00a876..5afce149 100644
--- a/python/dune/perftool/loopy/target.py
+++ b/python/dune/perftool/loopy/target.py
@@ -9,6 +9,7 @@ from dune.perftool.generation import (include_file,
                                       retrieve_cache_functions,
                                       )
 from dune.perftool.options import get_option
+from dune.perftool.tools import round_to_multiple
 
 from loopy.symbolic import Literal
 from loopy.target import (TargetBase,
@@ -197,6 +198,7 @@ class DuneASTBuilder(CASTBuilder):
 
             alignment = max(alignment)
             size = max(size)
+            size = round_to_multiple(size, alignment)
 
             decl =  "char {}[{}] __attribute__ ((aligned({})));".format(bs, size * 8, alignment)
             ret.append(cgen.Line(decl))
-- 
GitLab