diff options
author | Adrian Kummerlaender | 2019-10-24 21:52:45 +0200 |
---|---|---|
committer | Adrian Kummerlaender | 2019-10-24 21:52:45 +0200 |
commit | 73de5f16efc696cf0c88beec086eb9a4df9098dd (patch) | |
tree | 543f1eee6f9ae8391838635268a83177dc5c1c2e /boltzgen.py | |
parent | b3d131b94f9417c0c4cd6733433c86ca780dde5e (diff) | |
download | boltzgen-73de5f16efc696cf0c88beec086eb9a4df9098dd.tar boltzgen-73de5f16efc696cf0c88beec086eb9a4df9098dd.tar.gz boltzgen-73de5f16efc696cf0c88beec086eb9a4df9098dd.tar.bz2 boltzgen-73de5f16efc696cf0c88beec086eb9a4df9098dd.tar.lz boltzgen-73de5f16efc696cf0c88beec086eb9a4df9098dd.tar.xz boltzgen-73de5f16efc696cf0c88beec086eb9a4df9098dd.tar.zst boltzgen-73de5f16efc696cf0c88beec086eb9a4df9098dd.zip |
Extract offset helper into target and layout specific classes
Diffstat (limited to 'boltzgen.py')
-rw-r--r-- | boltzgen.py | 12 |
1 files changed, 4 insertions, 8 deletions
diff --git a/boltzgen.py b/boltzgen.py index 04651e4..e5a8588 100644 --- a/boltzgen.py +++ b/boltzgen.py @@ -4,16 +4,12 @@ import string from boltzgen import * argparser = argparse.ArgumentParser(description='Generate LBM kernels in various languages using a symbolic description.') -argparser.add_argument('language', help = 'Target language (currently either "opencl" or "cpp")') -argparser.add_argument( - '--layout', dest = 'layout', - help = 'Memory layout ("aos" or "soa" for C++, ignored for OpenCL') +argparser.add_argument('language', help = 'Target language (currently either "cl" or "cpp")') +argparser.add_argument('--layout', dest = 'layout', help = 'Memory layout ("AOS" or "SOA")', required = True) +argparser.add_argument('--precision', dest = 'precision', help = 'Floating precision ("float" or "double")', required = True) args = argparser.parse_args() -if args.language == 'cpp' and args.layout is None: - raise Exception('Please specify the memory layout') - lbm = LBM(D2Q9) generator = Generator( descriptor = D2Q9, @@ -22,5 +18,5 @@ generator = Generator( geometry = Geometry(1024,1024) -src = generator.kernel(args.language, 'double', args.layout, geometry) +src = generator.kernel(args.language, args.precision, args.layout, geometry) print(src) |