From f62fcf3e47919b1c893ac2335b9fdfb842f9595f Mon Sep 17 00:00:00 2001 From: Adrian Kummerlaender Date: Mon, 1 Jul 2019 22:28:27 +0200 Subject: Expand LDC benchmark scripts --- ldc_2d_benchmark.py | 46 ++-- ldc_3d_benchmark.py | 50 +++-- result/ldc_2d_benchmark_K2200.log | 442 +++++++++++++++++++++++++++----------- result/ldc_2d_benchmark_K2200.py | 2 +- result/ldc_3d_benchmark_K2200.log | 412 +++++++++++++++++++++++++---------- result/ldc_3d_benchmark_K2200.py | 2 +- simulation.py | 5 +- 7 files changed, 687 insertions(+), 272 deletions(-) diff --git a/ldc_2d_benchmark.py b/ldc_2d_benchmark.py index af2dfa6..fd15e8d 100644 --- a/ldc_2d_benchmark.py +++ b/ldc_2d_benchmark.py @@ -36,44 +36,62 @@ boundary = Template(""" 'lid_speed': lid_speed }) -sizes = [32, 64, 96, 128, 256, 512, 1024] +base_2_sizes = {32, 64, 128, 256, 512, 1024, 2048} +base_10_sizes = {50, 100, 200, 400, 600, 800, 1000} -precisions = [ 'single', 'double' ] +precisions = {'single', 'double'} -layouts = [ +base_2_layouts = { ( 16, 1), - ( 24, 1), ( 32, 1), - ( 48, 1), ( 64, 1), - ( 96, 1), ( 128, 1), ( 256, 1), ( 512, 1), (1024, 1), -] +} + +base_10_layouts = { + ( 10, 1), + ( 30, 1), + ( 50, 1), + ( 100, 1), + ( 200, 1) +} + +base_2_configs = list(filter( + lambda config: config[0] % config[1][0] == 0, + itertools.product(*[base_2_sizes, base_2_layouts, precisions, {True, False}, {True}]) +)) + +align_configs = list(filter( + lambda config: config[0] % config[1][0] == 0, + itertools.product(*[base_10_sizes, base_10_layouts, precisions, {True}, {True, False}]) +)) -configs = list(filter( - lambda config: config[0] % config[1][0] == 0 and config[0] % config[1][1] == 0, - itertools.product(*[sizes, layouts, precisions, [True, False]]) +pad_configs = list(filter( + lambda config: config[0] - config[1][0] >= -100, + itertools.product(*[base_10_sizes, base_2_layouts, precisions, {True}, {True}]) )) lbm = LBM(D2Q9) measurements = [] -for size, layout, precision, opti in configs: +for size, layout, precision, opti, align in base_2_configs + align_configs + pad_configs: lattice = Lattice( descriptor = D2Q9, geometry = Geometry(size, size), precision = precision, layout = layout, + padding = layout, + align = align, moments = lbm.moments(optimize = opti), collide = lbm.bgk(f_eq = lbm.equilibrium(), tau = relaxation_time, optimize = opti), boundary_src = boundary) lattice.setup_geometry(cavity) - nUpdates = 1000 + nUpdates = 500 nStat = 100 stats = [] @@ -89,8 +107,8 @@ for size, layout, precision, opti in configs: stats.append(mlups) lastStat = time.time() - print('%s: ~%d MLUPS' % ((size, layout, precision, opti), numpy.average(stats))) - measurements.append(((size, layout, precision, opti), stats)) + print('%s: ~%d MLUPS' % ((size, layout, precision, opti, align), numpy.average(stats))) + measurements.append(((size, layout, precision, opti, align), stats)) del lattice with open('result/ldc_2d_benchmark.data', 'w') as f: diff --git a/ldc_3d_benchmark.py b/ldc_3d_benchmark.py index d066d87..5568c62 100644 --- a/ldc_3d_benchmark.py +++ b/ldc_3d_benchmark.py @@ -39,41 +39,61 @@ boundary = Template(""" 'lid_speed': lid_speed }) -sizes = [16, 32, 48, 64, 96] +base_2_sizes = {16, 32, 48, 64, 96, 128} +base_10_sizes = {10, 20, 40, 60, 80, 100} -layouts = [ +base_2_layouts = { ( 16, 1, 1), - ( 24, 1, 1), ( 32, 1, 1), - ( 48, 1, 1), ( 64, 1, 1), - ( 96, 1, 1) -] + ( 96, 1, 1), + ( 128, 1, 1), +} -descriptors = [ D3Q19, D3Q27 ] +base_10_layouts = { + ( 10, 1, 1), + ( 20, 1, 1), + ( 30, 1, 1), + ( 50, 1, 1), + ( 100, 1, 1) +} -precisions = [ 'single', 'double' ] +descriptors = { D3Q19, D3Q27 } -configs = list(filter( - lambda config: config[0] % config[1][0] == 0 and config[0] % config[1][1] == 0, - itertools.product(*[sizes, layouts, descriptors, precisions, [True, False]]) +precisions = { 'single', 'double' } + +base_2_configs = list(filter( + lambda config: config[0] % config[1][0] == 0, + itertools.product(*[base_2_sizes, base_2_layouts, descriptors, precisions, {True, False}, {True}]) +)) + +align_configs = list(filter( + lambda config: config[0] % config[1][0] == 0, + itertools.product(*[base_10_sizes, base_10_layouts, descriptors, precisions, {True}, {True, False}]) +)) + +pad_configs = list(filter( + lambda config: config[0] - config[1][0] >= -28, + itertools.product(*[base_10_sizes, base_2_layouts, descriptors, precisions, {True}, {True}]) )) measurements = [] -for size, layout, descriptor, precision, opti in configs: +for size, layout, descriptor, precision, opti, align in base_2_configs + align_configs + pad_configs: lbm = LBM(descriptor) lattice = Lattice( descriptor = descriptor, geometry = Geometry(size, size, size), precision = precision, layout = layout, + padding = layout, + align = align, moments = lbm.moments(optimize = opti), collide = lbm.bgk(f_eq = lbm.equilibrium(), tau = relaxation_time, optimize = opti), boundary_src = boundary) lattice.setup_geometry(cavity) - nUpdates = 1000 + nUpdates = 500 nStat = 100 stats = [] @@ -89,8 +109,8 @@ for size, layout, descriptor, precision, opti in configs: stats.append(mlups) lastStat = time.time() - print('%s: ~%d MLUPS' % ((size, layout, descriptor.__name__, precision, opti), numpy.average(stats))) - measurements.append(((size, layout, descriptor.__name__, precision, opti), stats)) + print('%s: ~%d MLUPS' % ((size, layout, descriptor.__name__, precision, opti, align), numpy.average(stats))) + measurements.append(((size, layout, descriptor.__name__, precision, opti, align), stats)) del lattice, lbm with open('result/ldc_3d_benchmark.data', 'w') as f: diff --git a/result/ldc_2d_benchmark_K2200.log b/result/ldc_2d_benchmark_K2200.log index b88df82..c27b9dc 100644 --- a/result/ldc_2d_benchmark_K2200.log +++ b/result/ldc_2d_benchmark_K2200.log @@ -1,128 +1,314 @@ -(32, (16, 1), 'single', True): ~15 MLUPS -(32, (16, 1), 'single', False): ~16 MLUPS -(32, (16, 1), 'double', True): ~16 MLUPS -(32, (16, 1), 'double', False): ~13 MLUPS -(32, (32, 1), 'single', True): ~16 MLUPS -(32, (32, 1), 'single', False): ~16 MLUPS -(32, (32, 1), 'double', True): ~15 MLUPS -(32, (32, 1), 'double', False): ~14 MLUPS -(64, (16, 1), 'single', True): ~63 MLUPS -(64, (16, 1), 'single', False): ~63 MLUPS -(64, (16, 1), 'double', True): ~62 MLUPS -(64, (16, 1), 'double', False): ~13 MLUPS -(64, (32, 1), 'single', True): ~63 MLUPS -(64, (32, 1), 'single', False): ~63 MLUPS -(64, (32, 1), 'double', True): ~62 MLUPS -(64, (32, 1), 'double', False): ~27 MLUPS -(64, (64, 1), 'single', True): ~62 MLUPS -(64, (64, 1), 'single', False): ~62 MLUPS -(64, (64, 1), 'double', True): ~63 MLUPS -(64, (64, 1), 'double', False): ~27 MLUPS -(96, (16, 1), 'single', True): ~134 MLUPS -(96, (16, 1), 'single', False): ~141 MLUPS -(96, (16, 1), 'double', True): ~140 MLUPS -(96, (16, 1), 'double', False): ~15 MLUPS -(96, (24, 1), 'single', True): ~141 MLUPS -(96, (24, 1), 'single', False): ~140 MLUPS -(96, (24, 1), 'double', True): ~139 MLUPS -(96, (24, 1), 'double', False): ~21 MLUPS -(96, (32, 1), 'single', True): ~139 MLUPS -(96, (32, 1), 'single', False): ~136 MLUPS -(96, (32, 1), 'double', True): ~139 MLUPS -(96, (32, 1), 'double', False): ~28 MLUPS -(96, (48, 1), 'single', True): ~141 MLUPS -(96, (48, 1), 'single', False): ~141 MLUPS -(96, (48, 1), 'double', True): ~141 MLUPS -(96, (48, 1), 'double', False): ~21 MLUPS -(96, (96, 1), 'single', True): ~140 MLUPS -(96, (96, 1), 'single', False): ~141 MLUPS -(96, (96, 1), 'double', True): ~141 MLUPS -(96, (96, 1), 'double', False): ~28 MLUPS -(128, (16, 1), 'single', True): ~253 MLUPS -(128, (16, 1), 'single', False): ~252 MLUPS -(128, (16, 1), 'double', True): ~151 MLUPS -(128, (16, 1), 'double', False): ~15 MLUPS -(128, (32, 1), 'single', True): ~234 MLUPS -(128, (32, 1), 'single', False): ~251 MLUPS -(128, (32, 1), 'double', True): ~250 MLUPS -(128, (32, 1), 'double', False): ~29 MLUPS -(128, (64, 1), 'single', True): ~252 MLUPS -(128, (64, 1), 'single', False): ~252 MLUPS -(128, (64, 1), 'double', True): ~249 MLUPS -(128, (64, 1), 'double', False): ~29 MLUPS -(128, (128, 1), 'single', True): ~252 MLUPS -(128, (128, 1), 'single', False): ~250 MLUPS -(128, (128, 1), 'double', True): ~249 MLUPS -(128, (128, 1), 'double', False): ~28 MLUPS -(256, (16, 1), 'single', True): ~789 MLUPS -(256, (16, 1), 'single', False): ~430 MLUPS -(256, (16, 1), 'double', True): ~160 MLUPS -(256, (16, 1), 'double', False): ~15 MLUPS -(256, (32, 1), 'single', True): ~781 MLUPS -(256, (32, 1), 'single', False): ~766 MLUPS -(256, (32, 1), 'double', True): ~312 MLUPS -(256, (32, 1), 'double', False): ~30 MLUPS -(256, (64, 1), 'single', True): ~766 MLUPS -(256, (64, 1), 'single', False): ~721 MLUPS -(256, (64, 1), 'double', True): ~311 MLUPS -(256, (64, 1), 'double', False): ~30 MLUPS -(256, (128, 1), 'single', True): ~765 MLUPS -(256, (128, 1), 'single', False): ~724 MLUPS -(256, (128, 1), 'double', True): ~311 MLUPS -(256, (128, 1), 'double', False): ~30 MLUPS -(256, (256, 1), 'single', True): ~769 MLUPS -(256, (256, 1), 'single', False): ~732 MLUPS -(256, (256, 1), 'double', True): ~309 MLUPS -(256, (256, 1), 'double', False): ~29 MLUPS -(512, (16, 1), 'single', True): ~823 MLUPS -(512, (16, 1), 'single', False): ~459 MLUPS -(512, (16, 1), 'double', True): ~163 MLUPS -(512, (16, 1), 'double', False): ~15 MLUPS -(512, (32, 1), 'single', True): ~829 MLUPS -(512, (32, 1), 'single', False): ~825 MLUPS -(512, (32, 1), 'double', True): ~321 MLUPS -(512, (32, 1), 'double', False): ~30 MLUPS -(512, (64, 1), 'single', True): ~825 MLUPS -(512, (64, 1), 'single', False): ~801 MLUPS -(512, (64, 1), 'double', True): ~322 MLUPS -(512, (64, 1), 'double', False): ~30 MLUPS -(512, (128, 1), 'single', True): ~825 MLUPS -(512, (128, 1), 'single', False): ~802 MLUPS -(512, (128, 1), 'double', True): ~322 MLUPS -(512, (128, 1), 'double', False): ~30 MLUPS -(512, (256, 1), 'single', True): ~826 MLUPS -(512, (256, 1), 'single', False): ~807 MLUPS -(512, (256, 1), 'double', True): ~322 MLUPS -(512, (256, 1), 'double', False): ~30 MLUPS -(512, (512, 1), 'single', True): ~825 MLUPS -(512, (512, 1), 'single', False): ~809 MLUPS -(512, (512, 1), 'double', True): ~316 MLUPS -(512, (512, 1), 'double', False): ~30 MLUPS -(1024, (16, 1), 'single', True): ~828 MLUPS -(1024, (16, 1), 'single', False): ~476 MLUPS -(1024, (16, 1), 'double', True): ~163 MLUPS -(1024, (16, 1), 'double', False): ~15 MLUPS -(1024, (32, 1), 'single', True): ~842 MLUPS -(1024, (32, 1), 'single', False): ~836 MLUPS -(1024, (32, 1), 'double', True): ~325 MLUPS -(1024, (32, 1), 'double', False): ~31 MLUPS -(1024, (64, 1), 'single', True): ~829 MLUPS -(1024, (64, 1), 'single', False): ~813 MLUPS -(1024, (64, 1), 'double', True): ~325 MLUPS -(1024, (64, 1), 'double', False): ~31 MLUPS -(1024, (128, 1), 'single', True): ~829 MLUPS -(1024, (128, 1), 'single', False): ~813 MLUPS -(1024, (128, 1), 'double', True): ~325 MLUPS -(1024, (128, 1), 'double', False): ~31 MLUPS -(1024, (256, 1), 'single', True): ~832 MLUPS -(1024, (256, 1), 'single', False): ~821 MLUPS -(1024, (256, 1), 'double', True): ~325 MLUPS -(1024, (256, 1), 'double', False): ~31 MLUPS -(1024, (512, 1), 'single', True): ~832 MLUPS -(1024, (512, 1), 'single', False): ~825 MLUPS -(1024, (512, 1), 'double', True): ~321 MLUPS -(1024, (512, 1), 'double', False): ~31 MLUPS -(1024, (1024, 1), 'single', True): ~832 MLUPS -(1024, (1024, 1), 'single', False): ~815 MLUPS -(1024, (1024, 1), 'double', True): ~298 MLUPS -(1024, (1024, 1), 'double', False): ~30 MLUPS +(32, (32, 1), 'double', False, True): ~15 MLUPS +(32, (32, 1), 'double', True, True): ~16 MLUPS +(32, (32, 1), 'single', False, True): ~16 MLUPS +(32, (32, 1), 'single', True, True): ~16 MLUPS +(32, (16, 1), 'double', False, True): ~13 MLUPS +(32, (16, 1), 'double', True, True): ~15 MLUPS +(32, (16, 1), 'single', False, True): ~15 MLUPS +(32, (16, 1), 'single', True, True): ~14 MLUPS +(256, (256, 1), 'double', False, True): ~29 MLUPS +(256, (256, 1), 'double', True, True): ~309 MLUPS +(256, (256, 1), 'single', False, True): ~742 MLUPS +(256, (256, 1), 'single', True, True): ~773 MLUPS +(256, (32, 1), 'double', False, True): ~30 MLUPS +(256, (32, 1), 'double', True, True): ~312 MLUPS +(256, (32, 1), 'single', False, True): ~758 MLUPS +(256, (32, 1), 'single', True, True): ~779 MLUPS +(256, (64, 1), 'double', False, True): ~30 MLUPS +(256, (64, 1), 'double', True, True): ~311 MLUPS +(256, (64, 1), 'single', False, True): ~720 MLUPS +(256, (64, 1), 'single', True, True): ~787 MLUPS +(256, (128, 1), 'double', False, True): ~30 MLUPS +(256, (128, 1), 'double', True, True): ~309 MLUPS +(256, (128, 1), 'single', False, True): ~721 MLUPS +(256, (128, 1), 'single', True, True): ~773 MLUPS +(256, (16, 1), 'double', False, True): ~15 MLUPS +(256, (16, 1), 'double', True, True): ~160 MLUPS +(256, (16, 1), 'single', False, True): ~436 MLUPS +(256, (16, 1), 'single', True, True): ~787 MLUPS +(64, (32, 1), 'double', False, True): ~28 MLUPS +(64, (32, 1), 'double', True, True): ~62 MLUPS +(64, (32, 1), 'single', False, True): ~64 MLUPS +(64, (32, 1), 'single', True, True): ~63 MLUPS +(64, (64, 1), 'double', False, True): ~27 MLUPS +(64, (64, 1), 'double', True, True): ~62 MLUPS +(64, (64, 1), 'single', False, True): ~57 MLUPS +(64, (64, 1), 'single', True, True): ~63 MLUPS +(64, (16, 1), 'double', False, True): ~14 MLUPS +(64, (16, 1), 'double', True, True): ~63 MLUPS +(64, (16, 1), 'single', False, True): ~63 MLUPS +(64, (16, 1), 'single', True, True): ~63 MLUPS +(128, (32, 1), 'double', False, True): ~29 MLUPS +(128, (32, 1), 'double', True, True): ~244 MLUPS +(128, (32, 1), 'single', False, True): ~254 MLUPS +(128, (32, 1), 'single', True, True): ~254 MLUPS +(128, (64, 1), 'double', False, True): ~29 MLUPS +(128, (64, 1), 'double', True, True): ~255 MLUPS +(128, (64, 1), 'single', False, True): ~250 MLUPS +(128, (64, 1), 'single', True, True): ~251 MLUPS +(128, (128, 1), 'double', False, True): ~28 MLUPS +(128, (128, 1), 'double', True, True): ~253 MLUPS +(128, (128, 1), 'single', False, True): ~249 MLUPS +(128, (128, 1), 'single', True, True): ~255 MLUPS +(128, (16, 1), 'double', False, True): ~15 MLUPS +(128, (16, 1), 'double', True, True): ~151 MLUPS +(128, (16, 1), 'single', False, True): ~250 MLUPS +(128, (16, 1), 'single', True, True): ~254 MLUPS +(512, (256, 1), 'double', False, True): ~31 MLUPS +(512, (256, 1), 'double', True, True): ~323 MLUPS +(512, (256, 1), 'single', False, True): ~803 MLUPS +(512, (256, 1), 'single', True, True): ~819 MLUPS +(512, (32, 1), 'double', False, True): ~31 MLUPS +(512, (32, 1), 'double', True, True): ~323 MLUPS +(512, (32, 1), 'single', False, True): ~822 MLUPS +(512, (32, 1), 'single', True, True): ~830 MLUPS +(512, (64, 1), 'double', False, True): ~31 MLUPS +(512, (64, 1), 'double', True, True): ~323 MLUPS +(512, (64, 1), 'single', False, True): ~800 MLUPS +(512, (64, 1), 'single', True, True): ~820 MLUPS +(512, (128, 1), 'double', False, True): ~31 MLUPS +(512, (128, 1), 'double', True, True): ~323 MLUPS +(512, (128, 1), 'single', False, True): ~803 MLUPS +(512, (128, 1), 'single', True, True): ~811 MLUPS +(512, (512, 1), 'double', False, True): ~30 MLUPS +(512, (512, 1), 'double', True, True): ~317 MLUPS +(512, (512, 1), 'single', False, True): ~807 MLUPS +(512, (512, 1), 'single', True, True): ~822 MLUPS +(512, (16, 1), 'double', False, True): ~15 MLUPS +(512, (16, 1), 'double', True, True): ~163 MLUPS +(512, (16, 1), 'single', False, True): ~470 MLUPS +(512, (16, 1), 'single', True, True): ~820 MLUPS +(1024, (256, 1), 'double', False, True): ~32 MLUPS +(1024, (256, 1), 'double', True, True): ~326 MLUPS +(1024, (256, 1), 'single', False, True): ~822 MLUPS +(1024, (256, 1), 'single', True, True): ~819 MLUPS +(1024, (32, 1), 'double', False, True): ~32 MLUPS +(1024, (32, 1), 'double', True, True): ~326 MLUPS +(1024, (32, 1), 'single', False, True): ~822 MLUPS +(1024, (32, 1), 'single', True, True): ~824 MLUPS +(1024, (64, 1), 'double', False, True): ~32 MLUPS +(1024, (64, 1), 'double', True, True): ~326 MLUPS +(1024, (64, 1), 'single', False, True): ~786 MLUPS +(1024, (64, 1), 'single', True, True): ~815 MLUPS +(1024, (128, 1), 'double', False, True): ~32 MLUPS +(1024, (128, 1), 'double', True, True): ~326 MLUPS +(1024, (128, 1), 'single', False, True): ~786 MLUPS +(1024, (128, 1), 'single', True, True): ~819 MLUPS +(1024, (512, 1), 'double', False, True): ~32 MLUPS +(1024, (512, 1), 'double', True, True): ~322 MLUPS +(1024, (512, 1), 'single', False, True): ~821 MLUPS +(1024, (512, 1), 'single', True, True): ~821 MLUPS +(1024, (1024, 1), 'double', False, True): ~31 MLUPS +(1024, (1024, 1), 'double', True, True): ~299 MLUPS +(1024, (1024, 1), 'single', False, True): ~819 MLUPS +(1024, (1024, 1), 'single', True, True): ~826 MLUPS +(1024, (16, 1), 'double', False, True): ~16 MLUPS +(1024, (16, 1), 'double', True, True): ~163 MLUPS +(1024, (16, 1), 'single', False, True): ~488 MLUPS +(1024, (16, 1), 'single', True, True): ~819 MLUPS +(2048, (256, 1), 'double', False, True): ~33 MLUPS +(2048, (256, 1), 'double', True, True): ~326 MLUPS +(2048, (256, 1), 'single', False, True): ~828 MLUPS +(2048, (256, 1), 'single', True, True): ~836 MLUPS +(2048, (32, 1), 'double', False, True): ~33 MLUPS +(2048, (32, 1), 'double', True, True): ~326 MLUPS +(2048, (32, 1), 'single', False, True): ~839 MLUPS +(2048, (32, 1), 'single', True, True): ~843 MLUPS +(2048, (64, 1), 'double', False, True): ~33 MLUPS +(2048, (64, 1), 'double', True, True): ~326 MLUPS +(2048, (64, 1), 'single', False, True): ~824 MLUPS +(2048, (64, 1), 'single', True, True): ~834 MLUPS +(2048, (128, 1), 'double', False, True): ~33 MLUPS +(2048, (128, 1), 'double', True, True): ~326 MLUPS +(2048, (128, 1), 'single', False, True): ~821 MLUPS +(2048, (128, 1), 'single', True, True): ~833 MLUPS +(2048, (512, 1), 'double', False, True): ~33 MLUPS +(2048, (512, 1), 'double', True, True): ~321 MLUPS +(2048, (512, 1), 'single', False, True): ~826 MLUPS +(2048, (512, 1), 'single', True, True): ~837 MLUPS +(2048, (1024, 1), 'double', False, True): ~32 MLUPS +(2048, (1024, 1), 'double', True, True): ~297 MLUPS +(2048, (1024, 1), 'single', False, True): ~831 MLUPS +(2048, (1024, 1), 'single', True, True): ~835 MLUPS +(2048, (16, 1), 'double', False, True): ~16 MLUPS +(2048, (16, 1), 'double', True, True): ~163 MLUPS +(2048, (16, 1), 'single', False, True): ~477 MLUPS +(2048, (16, 1), 'single', True, True): ~835 MLUPS +(800, (200, 1), 'double', True, False): ~291 MLUPS +(800, (200, 1), 'double', True, True): ~291 MLUPS +(800, (200, 1), 'single', True, False): ~811 MLUPS +(800, (200, 1), 'single', True, True): ~813 MLUPS +(800, (10, 1), 'double', True, False): ~102 MLUPS +(800, (10, 1), 'double', True, True): ~102 MLUPS +(800, (10, 1), 'single', True, False): ~768 MLUPS +(800, (10, 1), 'single', True, True): ~768 MLUPS +(800, (100, 1), 'double', True, False): ~255 MLUPS +(800, (100, 1), 'double', True, True): ~255 MLUPS +(800, (100, 1), 'single', True, False): ~806 MLUPS +(800, (100, 1), 'single', True, True): ~804 MLUPS +(800, (50, 1), 'double', True, False): ~255 MLUPS +(800, (50, 1), 'double', True, True): ~255 MLUPS +(800, (50, 1), 'single', True, False): ~799 MLUPS +(800, (50, 1), 'single', True, True): ~801 MLUPS +(100, (10, 1), 'double', True, False): ~95 MLUPS +(100, (10, 1), 'double', True, True): ~95 MLUPS +(100, (10, 1), 'single', True, False): ~155 MLUPS +(100, (10, 1), 'single', True, True): ~156 MLUPS +(100, (100, 1), 'double', True, False): ~155 MLUPS +(100, (100, 1), 'double', True, True): ~154 MLUPS +(100, (100, 1), 'single', True, False): ~155 MLUPS +(100, (100, 1), 'single', True, True): ~155 MLUPS +(100, (50, 1), 'double', True, False): ~154 MLUPS +(100, (50, 1), 'double', True, True): ~153 MLUPS +(100, (50, 1), 'single', True, False): ~155 MLUPS +(100, (50, 1), 'single', True, True): ~154 MLUPS +(200, (200, 1), 'double', True, False): ~252 MLUPS +(200, (200, 1), 'double', True, True): ~252 MLUPS +(200, (200, 1), 'single', True, False): ~619 MLUPS +(200, (200, 1), 'single', True, True): ~621 MLUPS +(200, (10, 1), 'double', True, False): ~96 MLUPS +(200, (10, 1), 'double', True, True): ~101 MLUPS +(200, (10, 1), 'single', True, False): ~620 MLUPS +(200, (10, 1), 'single', True, True): ~575 MLUPS +(200, (100, 1), 'double', True, False): ~240 MLUPS +(200, (100, 1), 'double', True, True): ~240 MLUPS +(200, (100, 1), 'single', True, False): ~626 MLUPS +(200, (100, 1), 'single', True, True): ~616 MLUPS +(200, (50, 1), 'double', True, False): ~240 MLUPS +(200, (50, 1), 'double', True, True): ~240 MLUPS +(200, (50, 1), 'single', True, False): ~619 MLUPS +(200, (50, 1), 'single', True, True): ~619 MLUPS +(1000, (200, 1), 'double', True, False): ~291 MLUPS +(1000, (200, 1), 'double', True, True): ~291 MLUPS +(1000, (200, 1), 'single', True, False): ~817 MLUPS +(1000, (200, 1), 'single', True, True): ~811 MLUPS +(1000, (10, 1), 'double', True, False): ~102 MLUPS +(1000, (10, 1), 'double', True, True): ~102 MLUPS +(1000, (10, 1), 'single', True, False): ~770 MLUPS +(1000, (10, 1), 'single', True, True): ~769 MLUPS +(1000, (100, 1), 'double', True, False): ~255 MLUPS +(1000, (100, 1), 'double', True, True): ~255 MLUPS +(1000, (100, 1), 'single', True, False): ~814 MLUPS +(1000, (100, 1), 'single', True, True): ~814 MLUPS +(1000, (50, 1), 'double', True, False): ~255 MLUPS +(1000, (50, 1), 'double', True, True): ~255 MLUPS +(1000, (50, 1), 'single', True, False): ~806 MLUPS +(1000, (50, 1), 'single', True, True): ~793 MLUPS +(400, (200, 1), 'double', True, False): ~286 MLUPS +(400, (200, 1), 'double', True, True): ~286 MLUPS +(400, (200, 1), 'single', True, False): ~796 MLUPS +(400, (200, 1), 'single', True, True): ~801 MLUPS +(400, (10, 1), 'double', True, False): ~102 MLUPS +(400, (10, 1), 'double', True, True): ~102 MLUPS +(400, (10, 1), 'single', True, False): ~752 MLUPS +(400, (10, 1), 'single', True, True): ~753 MLUPS +(400, (100, 1), 'double', True, False): ~252 MLUPS +(400, (100, 1), 'double', True, True): ~252 MLUPS +(400, (100, 1), 'single', True, False): ~790 MLUPS +(400, (100, 1), 'single', True, True): ~794 MLUPS +(400, (50, 1), 'double', True, False): ~252 MLUPS +(400, (50, 1), 'double', True, True): ~252 MLUPS +(400, (50, 1), 'single', True, False): ~785 MLUPS +(400, (50, 1), 'single', True, True): ~787 MLUPS +(50, (10, 1), 'double', True, False): ~38 MLUPS +(50, (10, 1), 'double', True, True): ~38 MLUPS +(50, (10, 1), 'single', True, False): ~38 MLUPS +(50, (10, 1), 'single', True, True): ~38 MLUPS +(50, (50, 1), 'double', True, False): ~38 MLUPS +(50, (50, 1), 'double', True, True): ~38 MLUPS +(50, (50, 1), 'single', True, False): ~39 MLUPS +(50, (50, 1), 'single', True, True): ~39 MLUPS +(600, (30, 1), 'double', True, False): ~296 MLUPS +(600, (30, 1), 'double', True, True): ~304 MLUPS +(600, (30, 1), 'single', True, False): ~803 MLUPS +(600, (30, 1), 'single', True, True): ~824 MLUPS +(600, (200, 1), 'double', True, False): ~290 MLUPS +(600, (200, 1), 'double', True, True): ~290 MLUPS +(600, (200, 1), 'single', True, False): ~788 MLUPS +(600, (200, 1), 'single', True, True): ~812 MLUPS +(600, (10, 1), 'double', True, False): ~102 MLUPS +(600, (10, 1), 'double', True, True): ~102 MLUPS +(600, (10, 1), 'single', True, False): ~756 MLUPS +(600, (10, 1), 'single', True, True): ~765 MLUPS +(600, (100, 1), 'double', True, False): ~254 MLUPS +(600, (100, 1), 'double', True, True): ~254 MLUPS +(600, (100, 1), 'single', True, False): ~767 MLUPS +(600, (100, 1), 'single', True, True): ~800 MLUPS +(600, (50, 1), 'double', True, False): ~254 MLUPS +(600, (50, 1), 'double', True, True): ~254 MLUPS +(600, (50, 1), 'single', True, False): ~769 MLUPS +(600, (50, 1), 'single', True, True): ~792 MLUPS +(800, (256, 1), 'double', True, True): ~323 MLUPS +(800, (256, 1), 'single', True, True): ~808 MLUPS +(800, (32, 1), 'double', True, True): ~325 MLUPS +(800, (32, 1), 'single', True, True): ~827 MLUPS +(800, (64, 1), 'double', True, True): ~324 MLUPS +(800, (64, 1), 'single', True, True): ~813 MLUPS +(800, (128, 1), 'double', True, True): ~323 MLUPS +(800, (128, 1), 'single', True, True): ~809 MLUPS +(800, (512, 1), 'double', True, True): ~320 MLUPS +(800, (512, 1), 'single', True, True): ~807 MLUPS +(800, (16, 1), 'double', True, True): ~163 MLUPS +(800, (16, 1), 'single', True, True): ~816 MLUPS +(100, (32, 1), 'double', True, True): ~154 MLUPS +(100, (32, 1), 'single', True, True): ~155 MLUPS +(100, (64, 1), 'double', True, True): ~156 MLUPS +(100, (64, 1), 'single', True, True): ~156 MLUPS +(100, (128, 1), 'double', True, True): ~154 MLUPS +(100, (128, 1), 'single', True, True): ~149 MLUPS +(100, (16, 1), 'double', True, True): ~132 MLUPS +(100, (16, 1), 'single', True, True): ~153 MLUPS +(200, (256, 1), 'double', True, True): ~268 MLUPS +(200, (256, 1), 'single', True, True): ~617 MLUPS +(200, (32, 1), 'double', True, True): ~273 MLUPS +(200, (32, 1), 'single', True, True): ~615 MLUPS +(200, (64, 1), 'double', True, True): ~228 MLUPS +(200, (64, 1), 'single', True, True): ~623 MLUPS +(200, (128, 1), 'double', True, True): ~252 MLUPS +(200, (128, 1), 'single', True, True): ~610 MLUPS +(200, (16, 1), 'double', True, True): ~143 MLUPS +(200, (16, 1), 'single', True, True): ~615 MLUPS +(1000, (256, 1), 'double', True, True): ~318 MLUPS +(1000, (256, 1), 'single', True, True): ~822 MLUPS +(1000, (32, 1), 'double', True, True): ~318 MLUPS +(1000, (32, 1), 'single', True, True): ~832 MLUPS +(1000, (64, 1), 'double', True, True): ~318 MLUPS +(1000, (64, 1), 'single', True, True): ~821 MLUPS +(1000, (128, 1), 'double', True, True): ~318 MLUPS +(1000, (128, 1), 'single', True, True): ~821 MLUPS +(1000, (512, 1), 'double', True, True): ~314 MLUPS +(1000, (512, 1), 'single', True, True): ~826 MLUPS +(1000, (1024, 1), 'double', True, True): ~292 MLUPS +(1000, (1024, 1), 'single', True, True): ~826 MLUPS +(1000, (16, 1), 'double', True, True): ~162 MLUPS +(1000, (16, 1), 'single', True, True): ~816 MLUPS +(400, (256, 1), 'double', True, True): ~305 MLUPS +(400, (256, 1), 'single', True, True): ~778 MLUPS +(400, (32, 1), 'double', True, True): ~309 MLUPS +(400, (32, 1), 'single', True, True): ~811 MLUPS +(400, (64, 1), 'double', True, True): ~306 MLUPS +(400, (64, 1), 'single', True, True): ~758 MLUPS +(400, (128, 1), 'double', True, True): ~305 MLUPS +(400, (128, 1), 'single', True, True): ~781 MLUPS +(400, (16, 1), 'double', True, True): ~163 MLUPS +(400, (16, 1), 'single', True, True): ~797 MLUPS +(50, (32, 1), 'double', True, True): ~37 MLUPS +(50, (32, 1), 'single', True, True): ~38 MLUPS +(50, (64, 1), 'double', True, True): ~38 MLUPS +(50, (64, 1), 'single', True, True): ~38 MLUPS +(50, (128, 1), 'double', True, True): ~38 MLUPS +(50, (128, 1), 'single', True, True): ~38 MLUPS +(50, (16, 1), 'double', True, True): ~38 MLUPS +(50, (16, 1), 'single', True, True): ~38 MLUPS +(600, (256, 1), 'double', True, True): ~312 MLUPS +(600, (256, 1), 'single', True, True): ~797 MLUPS +(600, (32, 1), 'double', True, True): ~320 MLUPS +(600, (32, 1), 'single', True, True): ~821 MLUPS +(600, (64, 1), 'double', True, True): ~305 MLUPS +(600, (64, 1), 'single', True, True): ~804 MLUPS +(600, (128, 1), 'double', True, True): ~318 MLUPS +(600, (128, 1), 'single', True, True): ~808 MLUPS +(600, (512, 1), 'double', True, True): ~303 MLUPS +(600, (512, 1), 'single', True, True): ~775 MLUPS +(600, (16, 1), 'double', True, True): ~161 MLUPS +(600, (16, 1), 'single', True, True): ~815 MLUPS diff --git a/result/ldc_2d_benchmark_K2200.py b/result/ldc_2d_benchmark_K2200.py index ae8014c..d00a45a 100644 --- a/result/ldc_2d_benchmark_K2200.py +++ b/result/ldc_2d_benchmark_K2200.py @@ -1 +1 @@ -ldc_2d_k2200 = [((32, (16, 1), 'single', True), [15, 16, 16, 16, 16, 16, 16, 16, 16, 16]), ((32, (16, 1), 'single', False), [16, 16, 16, 16, 16, 16, 16, 16, 16, 16]), ((32, (16, 1), 'double', True), [16, 16, 16, 16, 16, 16, 16, 16, 16, 16]), ((32, (16, 1), 'double', False), [13, 13, 13, 13, 13, 13, 13, 13, 13, 13]), ((32, (32, 1), 'single', True), [16, 16, 16, 16, 16, 16, 16, 16, 16, 16]), ((32, (32, 1), 'single', False), [16, 16, 16, 16, 16, 16, 16, 16, 16, 16]), ((32, (32, 1), 'double', True), [14, 14, 16, 16, 16, 16, 16, 16, 16, 16]), ((32, (32, 1), 'double', False), [14, 14, 14, 14, 14, 14, 14, 14, 14, 14]), ((64, (16, 1), 'single', True), [63, 63, 63, 63, 63, 63, 63, 63, 63, 63]), ((64, (16, 1), 'single', False), [63, 63, 63, 63, 63, 63, 63, 63, 63, 63]), ((64, (16, 1), 'double', True), [62, 63, 63, 63, 63, 63, 63, 63, 63, 63]), ((64, (16, 1), 'double', False), [13, 13, 13, 13, 13, 14, 14, 14, 14, 14]), ((64, (32, 1), 'single', True), [63, 64, 63, 63, 63, 63, 62, 63, 63, 63]), ((64, (32, 1), 'single', False), [63, 63, 63, 63, 63, 63, 63, 63, 63, 63]), ((64, (32, 1), 'double', True), [62, 63, 63, 63, 63, 63, 63, 63, 63, 63]), ((64, (32, 1), 'double', False), [28, 28, 28, 27, 28, 28, 28, 28, 28, 28]), ((64, (64, 1), 'single', True), [62, 63, 63, 63, 63, 63, 63, 63, 63, 63]), ((64, (64, 1), 'single', False), [62, 63, 63, 63, 63, 62, 63, 63, 63, 63]), ((64, (64, 1), 'double', True), [63, 64, 63, 63, 63, 63, 63, 63, 63, 63]), ((64, (64, 1), 'double', False), [27, 27, 27, 27, 27, 27, 27, 27, 27, 27]), ((96, (16, 1), 'single', True), [134, 135, 135, 135, 133, 133, 134, 135, 135, 135]), ((96, (16, 1), 'single', False), [141, 143, 142, 142, 142, 141, 141, 142, 141, 142]), ((96, (16, 1), 'double', True), [140, 141, 141, 141, 141, 141, 140, 141, 141, 142]), ((96, (16, 1), 'double', False), [15, 15, 15, 15, 15, 15, 15, 15, 15, 15]), ((96, (24, 1), 'single', True), [140, 143, 142, 142, 142, 141, 141, 141, 142, 143]), ((96, (24, 1), 'single', False), [139, 141, 142, 140, 141, 141, 141, 141, 141, 141]), ((96, (24, 1), 'double', True), [138, 140, 140, 139, 139, 141, 140, 140, 141, 139]), ((96, (24, 1), 'double', False), [21, 22, 22, 22, 21, 22, 22, 22, 22, 22]), ((96, (32, 1), 'single', True), [139, 140, 139, 139, 138, 138, 140, 140, 140, 141]), ((96, (32, 1), 'single', False), [141, 142, 143, 142, 142, 141, 136, 125, 125, 125]), ((96, (32, 1), 'double', True), [140, 140, 141, 137, 136, 141, 140, 141, 141, 142]), ((96, (32, 1), 'double', False), [28, 28, 28, 28, 28, 28, 28, 28, 28, 28]), ((96, (48, 1), 'single', True), [141, 142, 142, 142, 142, 142, 142, 141, 142, 142]), ((96, (48, 1), 'single', False), [141, 142, 142, 142, 142, 141, 142, 140, 141, 142]), ((96, (48, 1), 'double', True), [139, 142, 141, 141, 141, 142, 141, 142, 141, 141]), ((96, (48, 1), 'double', False), [22, 21, 21, 22, 22, 22, 22, 22, 22, 21]), ((96, (96, 1), 'single', True), [141, 143, 142, 132, 137, 141, 141, 142, 141, 142]), ((96, (96, 1), 'single', False), [141, 141, 142, 140, 142, 141, 141, 141, 141, 142]), ((96, (96, 1), 'double', True), [140, 141, 141, 141, 141, 141, 142, 142, 142, 141]), ((96, (96, 1), 'double', False), [29, 28, 28, 28, 28, 28, 28, 28, 28, 28]), ((128, (16, 1), 'single', True), [251, 254, 254, 253, 253, 253, 254, 253, 253, 253]), ((128, (16, 1), 'single', False), [250, 253, 252, 252, 252, 253, 252, 252, 252, 253]), ((128, (16, 1), 'double', True), [151, 152, 152, 152, 152, 152, 152, 152, 152, 152]), ((128, (16, 1), 'double', False), [16, 15, 15, 15, 15, 15, 15, 15, 15, 15]), ((128, (32, 1), 'single', True), [221, 224, 224, 223, 223, 226, 247, 253, 253, 251]), ((128, (32, 1), 'single', False), [248, 252, 251, 251, 251, 253, 252, 253, 253, 251]), ((128, (32, 1), 'double', True), [248, 252, 251, 251, 251, 251, 251, 250, 252, 249]), ((128, (32, 1), 'double', False), [30, 29, 29, 29, 29, 29, 29, 29, 29, 29]), ((128, (64, 1), 'single', True), [250, 253, 252, 253, 252, 252, 252, 252, 252, 252]), ((128, (64, 1), 'single', False), [251, 253, 253, 253, 253, 253, 253, 252, 253, 253]), ((128, (64, 1), 'double', True), [247, 250, 250, 249, 250, 250, 250, 251, 250, 251]), ((128, (64, 1), 'double', False), [29, 29, 29, 29, 29, 29, 29, 29, 29, 29]), ((128, (128, 1), 'single', True), [250, 253, 253, 252, 253, 252, 252, 253, 253, 253]), ((128, (128, 1), 'single', False), [250, 253, 250, 246, 253, 251, 251, 251, 252, 252]), ((128, (128, 1), 'double', True), [247, 249, 249, 249, 249, 249, 249, 250, 250, 250]), ((128, (128, 1), 'double', False), [29, 28, 28, 28, 28, 28, 28, 28, 28, 28]), ((256, (16, 1), 'single', True), [786, 789, 787, 791, 789, 791, 790, 789, 787, 791]), ((256, (16, 1), 'single', False), [460, 442, 427, 424, 426, 426, 426, 426, 426, 426]), ((256, (16, 1), 'double', True), [161, 161, 161, 161, 161, 161, 160, 161, 161, 161]), ((256, (16, 1), 'double', False), [16, 15, 15, 15, 15, 15, 15, 15, 15, 15]), ((256, (32, 1), 'single', True), [774, 786, 775, 789, 774, 789, 775, 787, 775, 788]), ((256, (32, 1), 'single', False), [763, 774, 763, 770, 761, 771, 761, 772, 760, 769]), ((256, (32, 1), 'double', True), [312, 313, 313, 313, 313, 313, 313, 313, 313, 313]), ((256, (32, 1), 'double', False), [32, 30, 30, 30, 30, 30, 30, 30, 30, 30]), ((256, (64, 1), 'single', True), [759, 772, 764, 770, 760, 772, 762, 774, 761, 775]), ((256, (64, 1), 'single', False), [720, 729, 724, 719, 721, 718, 723, 717, 723, 716]), ((256, (64, 1), 'double', True), [311, 311, 311, 311, 312, 312, 312, 312, 311, 311]), ((256, (64, 1), 'double', False), [32, 30, 30, 30, 30, 30, 30, 30, 30, 30]), ((256, (128, 1), 'single', True), [762, 767, 766, 765, 765, 765, 764, 766, 767, 764]), ((256, (128, 1), 'single', False), [726, 730, 725, 723, 725, 721, 726, 720, 727, 717]), ((256, (128, 1), 'double', True), [311, 311, 311, 311, 312, 311, 312, 312, 311, 312]), ((256, (128, 1), 'double', False), [32, 30, 30, 30, 30, 30, 30, 30, 30, 28]), ((256, (256, 1), 'single', True), [768, 766, 771, 769, 772, 768, 773, 769, 774, 766]), ((256, (256, 1), 'single', False), [733, 736, 733, 732, 732, 732, 731, 732, 731, 735]), ((256, (256, 1), 'double', True), [309, 310, 310, 310, 309, 310, 310, 310, 309, 310]), ((256, (256, 1), 'double', False), [31, 30, 29, 29, 29, 29, 29, 29, 29, 29]), ((512, (16, 1), 'single', True), [822, 824, 826, 824, 824, 824, 824, 823, 823, 824]), ((512, (16, 1), 'single', False), [490, 481, 470, 460, 452, 448, 448, 448, 448, 448]), ((512, (16, 1), 'double', True), [163, 163, 163, 163, 163, 163, 163, 163, 163, 163]), ((512, (16, 1), 'double', False), [17, 16, 15, 15, 15, 15, 15, 15, 15, 15]), ((512, (32, 1), 'single', True), [812, 829, 832, 832, 832, 834, 831, 831, 831, 831]), ((512, (32, 1), 'single', False), [822, 825, 826, 827, 827, 826, 826, 828, 826, 825]), ((512, (32, 1), 'double', True), [319, 323, 323, 323, 323, 323, 316, 323, 320, 323]), ((512, (32, 1), 'double', False), [33, 32, 31, 30, 30, 30, 30, 30, 30, 30]), ((512, (64, 1), 'single', True), [821, 825, 825, 825, 825, 826, 826, 825, 829, 825]), ((512, (64, 1), 'single', False), [806, 804, 803, 802, 802, 800, 799, 800, 800, 800]), ((512, (64, 1), 'double', True), [322, 323, 323, 323, 323, 323, 323, 323, 323, 323]), ((512, (64, 1), 'double', False), [33, 32, 31, 30, 30, 30, 30, 30, 30, 30]), ((512, (128, 1), 'single', True), [823, 825, 825, 826, 828, 825, 824, 825, 825, 824]), ((512, (128, 1), 'single', False), [803, 805, 804, 804, 803, 801, 801, 801, 801, 801]), ((512, (128, 1), 'double', True), [323, 323, 323, 319, 323, 323, 323, 323, 323, 323]), ((512, (128, 1), 'double', False), [33, 32, 31, 30, 30, 30, 30, 30, 30, 30]), ((512, (256, 1), 'single', True), [828, 827, 827, 826, 825, 827, 827, 828, 826, 827]), ((512, (256, 1), 'single', False), [808, 810, 809, 809, 809, 806, 807, 807, 807, 807]), ((512, (256, 1), 'double', True), [323, 323, 323, 323, 323, 323, 323, 323, 323, 319]), ((512, (256, 1), 'double', False), [33, 32, 30, 30, 30, 30, 30, 30, 30, 30]), ((512, (512, 1), 'single', True), [826, 826, 826, 827, 827, 826, 827, 827, 827, 815]), ((512, (512, 1), 'single', False), [815, 813, 813, 812, 812, 810, 811, 810, 785, 810]), ((512, (512, 1), 'double', True), [317, 317, 313, 317, 317, 317, 317, 317, 317, 317]), ((512, (512, 1), 'double', False), [33, 31, 30, 30, 30, 30, 30, 30, 30, 30]), ((1024, (16, 1), 'single', True), [826, 829, 829, 829, 829, 828, 823, 829, 829, 830]), ((1024, (16, 1), 'single', False), [498, 494, 489, 484, 476, 473, 469, 464, 458, 455]), ((1024, (16, 1), 'double', True), [163, 163, 163, 163, 163, 163, 163, 163, 163, 163]), ((1024, (16, 1), 'double', False), [17, 17, 16, 16, 15, 15, 15, 15, 15, 15]), ((1024, (32, 1), 'single', True), [842, 842, 844, 843, 843, 843, 844, 836, 843, 843]), ((1024, (32, 1), 'single', False), [830, 838, 837, 838, 838, 838, 838, 838, 831, 838]), ((1024, (32, 1), 'double', True), [325, 326, 326, 325, 326, 326, 325, 326, 326, 326]), ((1024, (32, 1), 'double', False), [34, 33, 32, 32, 31, 30, 30, 30, 30, 30]), ((1024, (64, 1), 'single', True), [827, 830, 831, 830, 832, 824, 831, 830, 831, 831]), ((1024, (64, 1), 'single', False), [816, 816, 816, 815, 814, 814, 809, 811, 812, 812]), ((1024, (64, 1), 'double', True), [326, 326, 326, 325, 326, 326, 325, 326, 326, 325]), ((1024, (64, 1), 'double', False), [34, 33, 32, 32, 31, 30, 30, 30, 30, 30]), ((1024, (128, 1), 'single', True), [826, 830, 831, 830, 824, 829, 830, 830, 830, 831]), ((1024, (128, 1), 'single', False), [815, 816, 816, 815, 814, 809, 811, 813, 811, 812]), ((1024, (128, 1), 'double', True), [326, 326, 325, 326, 326, 325, 326, 326, 326, 325]), ((1024, (128, 1), 'double', False), [34, 33, 32, 32, 31, 30, 30, 30, 30, 30]), ((1024, (256, 1), 'single', True), [830, 833, 827, 833, 834, 833, 834, 833, 834, 832]), ((1024, (256, 1), 'single', False), [823, 824, 823, 822, 816, 821, 821, 821, 820, 820]), ((1024, (256, 1), 'double', True), [326, 325, 326, 326, 326, 325, 326, 326, 325, 326]), ((1024, (256, 1), 'double', False), [34, 33, 32, 32, 31, 30, 30, 30, 30, 30]), ((1024, (512, 1), 'single', True), [832, 825, 834, 835, 834, 835, 834, 835, 834, 828]), ((1024, (512, 1), 'single', False), [827, 827, 826, 820, 826, 826, 826, 825, 826, 825]), ((1024, (512, 1), 'double', True), [322, 321, 322, 322, 322, 322, 322, 322, 321, 322]), ((1024, (512, 1), 'double', False), [33, 33, 32, 31, 31, 30, 30, 30, 30, 30]), ((1024, (1024, 1), 'single', True), [832, 833, 834, 833, 834, 833, 834, 826, 833, 834]), ((1024, (1024, 1), 'single', False), [827, 819, 824, 821, 818, 815, 813, 811, 810, 800]), ((1024, (1024, 1), 'double', True), [298, 299, 299, 298, 299, 299, 298, 299, 299, 298]), ((1024, (1024, 1), 'double', False), [33, 32, 32, 31, 30, 30, 30, 30, 30, 30])] +ldc_2d_k2200 = [((32, (32, 1), 'double', False, True), [15, 16, 15, 16, 16]), ((32, (32, 1), 'double', True, True), [16, 16, 16, 16, 16]), ((32, (32, 1), 'single', False, True), [16, 16, 16, 16, 16]), ((32, (32, 1), 'single', True, True), [16, 16, 16, 16, 16]), ((32, (16, 1), 'double', False, True), [13, 13, 13, 13, 13]), ((32, (16, 1), 'double', True, True), [16, 15, 16, 16, 16]), ((32, (16, 1), 'single', False, True), [14, 15, 16, 16, 16]), ((32, (16, 1), 'single', True, True), [14, 14, 14, 15, 16]), ((256, (256, 1), 'double', False, True), [29, 29, 29, 29, 29]), ((256, (256, 1), 'double', True, True), [308, 310, 309, 310, 310]), ((256, (256, 1), 'single', False, True), [738, 744, 745, 742, 743]), ((256, (256, 1), 'single', True, True), [770, 782, 772, 777, 766]), ((256, (32, 1), 'double', False, True), [32, 30, 30, 30, 30]), ((256, (32, 1), 'double', True, True), [312, 312, 313, 312, 312]), ((256, (32, 1), 'single', False, True), [758, 763, 758, 759, 755]), ((256, (32, 1), 'single', True, True), [775, 779, 781, 779, 782]), ((256, (64, 1), 'double', False, True), [32, 30, 30, 30, 30]), ((256, (64, 1), 'double', True, True), [311, 311, 311, 312, 311]), ((256, (64, 1), 'single', False, True), [719, 726, 719, 721, 715]), ((256, (64, 1), 'single', True, True), [787, 787, 790, 786, 786]), ((256, (128, 1), 'double', False, True), [32, 30, 30, 30, 30]), ((256, (128, 1), 'double', True, True), [301, 311, 311, 312, 312]), ((256, (128, 1), 'single', False, True), [721, 727, 718, 723, 716]), ((256, (128, 1), 'single', True, True), [770, 776, 774, 774, 772]), ((256, (16, 1), 'double', False, True), [16, 15, 15, 15, 15]), ((256, (16, 1), 'double', True, True), [160, 161, 161, 158, 161]), ((256, (16, 1), 'single', False, True), [459, 442, 427, 426, 426]), ((256, (16, 1), 'single', True, True), [780, 794, 784, 796, 783]), ((64, (32, 1), 'double', False, True), [28, 28, 28, 28, 28]), ((64, (32, 1), 'double', True, True), [63, 64, 63, 63, 61]), ((64, (32, 1), 'single', False, True), [61, 65, 65, 65, 64]), ((64, (32, 1), 'single', True, True), [64, 64, 64, 61, 64]), ((64, (64, 1), 'double', False, True), [27, 27, 27, 27, 27]), ((64, (64, 1), 'double', True, True), [64, 62, 62, 64, 62]), ((64, (64, 1), 'single', False, True), [56, 57, 60, 59, 57]), ((64, (64, 1), 'single', True, True), [63, 64, 64, 64, 64]), ((64, (16, 1), 'double', False, True), [14, 14, 14, 14, 14]), ((64, (16, 1), 'double', True, True), [64, 64, 64, 62, 64]), ((64, (16, 1), 'single', False, True), [64, 64, 65, 64, 62]), ((64, (16, 1), 'single', True, True), [63, 63, 63, 64, 64]), ((128, (32, 1), 'double', False, True), [30, 29, 29, 29, 29]), ((128, (32, 1), 'double', True, True), [241, 248, 253, 244, 234]), ((128, (32, 1), 'single', False, True), [255, 258, 258, 258, 242]), ((128, (32, 1), 'single', True, True), [249, 252, 257, 257, 258]), ((128, (64, 1), 'double', False, True), [29, 29, 29, 29, 29]), ((128, (64, 1), 'double', True, True), [253, 257, 254, 256, 257]), ((128, (64, 1), 'single', False, True), [240, 254, 253, 253, 253]), ((128, (64, 1), 'single', True, True), [246, 247, 254, 255, 257]), ((128, (128, 1), 'double', False, True), [29, 28, 28, 28, 28]), ((128, (128, 1), 'double', True, True), [244, 257, 255, 255, 255]), ((128, (128, 1), 'single', False, True), [254, 247, 257, 236, 251]), ((128, (128, 1), 'single', True, True), [254, 256, 255, 256, 255]), ((128, (16, 1), 'double', False, True), [16, 15, 15, 15, 15]), ((128, (16, 1), 'double', True, True), [151, 152, 152, 150, 152]), ((128, (16, 1), 'single', False, True), [242, 252, 254, 254, 252]), ((128, (16, 1), 'single', True, True), [253, 253, 256, 254, 255]), ((512, (256, 1), 'double', False, True), [33, 32, 30, 30, 30]), ((512, (256, 1), 'double', True, True), [323, 323, 323, 323, 323]), ((512, (256, 1), 'single', False, True), [804, 804, 804, 804, 803]), ((512, (256, 1), 'single', True, True), [818, 820, 819, 820, 821]), ((512, (32, 1), 'double', False, True), [33, 32, 31, 30, 30]), ((512, (32, 1), 'double', True, True), [323, 324, 324, 323, 323]), ((512, (32, 1), 'single', False, True), [821, 823, 822, 823, 823]), ((512, (32, 1), 'single', True, True), [829, 830, 831, 830, 831]), ((512, (64, 1), 'double', False, True), [33, 32, 31, 30, 30]), ((512, (64, 1), 'double', True, True), [323, 323, 323, 323, 323]), ((512, (64, 1), 'single', False, True), [802, 801, 800, 800, 800]), ((512, (64, 1), 'single', True, True), [818, 821, 821, 821, 821]), ((512, (128, 1), 'double', False, True), [33, 32, 31, 30, 30]), ((512, (128, 1), 'double', True, True), [323, 323, 323, 323, 323]), ((512, (128, 1), 'single', False, True), [804, 804, 806, 803, 802]), ((512, (128, 1), 'single', True, True), [810, 812, 812, 811, 811]), ((512, (512, 1), 'double', False, True), [33, 31, 30, 30, 30]), ((512, (512, 1), 'double', True, True), [317, 317, 317, 317, 317]), ((512, (512, 1), 'single', False, True), [807, 808, 806, 809, 807]), ((512, (512, 1), 'single', True, True), [820, 825, 822, 823, 822]), ((512, (16, 1), 'double', False, True), [17, 16, 15, 15, 15]), ((512, (16, 1), 'double', True, True), [163, 163, 163, 163, 163]), ((512, (16, 1), 'single', False, True), [490, 481, 470, 461, 452]), ((512, (16, 1), 'single', True, True), [820, 820, 823, 819, 821]), ((1024, (256, 1), 'double', False, True), [34, 33, 32, 32, 31]), ((1024, (256, 1), 'double', True, True), [326, 326, 326, 326, 326]), ((1024, (256, 1), 'single', False, True), [823, 823, 823, 822, 822]), ((1024, (256, 1), 'single', True, True), [819, 819, 819, 819, 819]), ((1024, (32, 1), 'double', False, True), [34, 33, 32, 32, 31]), ((1024, (32, 1), 'double', True, True), [326, 326, 326, 326, 326]), ((1024, (32, 1), 'single', False, True), [822, 823, 823, 823, 823]), ((1024, (32, 1), 'single', True, True), [824, 825, 825, 825, 825]), ((1024, (64, 1), 'double', False, True), [34, 33, 32, 32, 31]), ((1024, (64, 1), 'double', True, True), [326, 326, 326, 326, 326]), ((1024, (64, 1), 'single', False, True), [787, 787, 786, 785, 785]), ((1024, (64, 1), 'single', True, True), [815, 815, 815, 815, 816]), ((1024, (128, 1), 'double', False, True), [34, 33, 32, 32, 31]), ((1024, (128, 1), 'double', True, True), [326, 326, 326, 326, 326]), ((1024, (128, 1), 'single', False, True), [788, 788, 787, 786, 785]), ((1024, (128, 1), 'single', True, True), [819, 820, 819, 819, 819]), ((1024, (512, 1), 'double', False, True), [33, 33, 32, 31, 31]), ((1024, (512, 1), 'double', True, True), [322, 322, 322, 322, 322]), ((1024, (512, 1), 'single', False, True), [820, 821, 822, 821, 821]), ((1024, (512, 1), 'single', True, True), [821, 821, 821, 821, 821]), ((1024, (1024, 1), 'double', False, True), [33, 32, 32, 31, 30]), ((1024, (1024, 1), 'double', True, True), [299, 299, 299, 299, 299]), ((1024, (1024, 1), 'single', False, True), [822, 821, 820, 817, 815]), ((1024, (1024, 1), 'single', True, True), [826, 826, 827, 826, 826]), ((1024, (16, 1), 'double', False, True), [17, 17, 16, 16, 16]), ((1024, (16, 1), 'double', True, True), [163, 163, 163, 163, 163]), ((1024, (16, 1), 'single', False, True), [498, 493, 489, 484, 478]), ((1024, (16, 1), 'single', True, True), [819, 820, 820, 820, 820]), ((2048, (256, 1), 'double', False, True), [34, 34, 33, 33, 32]), ((2048, (256, 1), 'double', True, True), [323, 326, 327, 327, 327]), ((2048, (256, 1), 'single', False, True), [829, 829, 829, 828, 828]), ((2048, (256, 1), 'single', True, True), [836, 836, 836, 836, 836]), ((2048, (32, 1), 'double', False, True), [34, 34, 33, 33, 33]), ((2048, (32, 1), 'double', True, True), [324, 327, 327, 327, 327]), ((2048, (32, 1), 'single', False, True), [839, 840, 840, 840, 840]), ((2048, (32, 1), 'single', True, True), [843, 844, 843, 843, 844]), ((2048, (64, 1), 'double', False, True), [34, 34, 33, 33, 33]), ((2048, (64, 1), 'double', True, True), [324, 327, 327, 327, 327]), ((2048, (64, 1), 'single', False, True), [824, 824, 824, 824, 824]), ((2048, (64, 1), 'single', True, True), [834, 834, 835, 834, 835]), ((2048, (128, 1), 'double', False, True), [34, 34, 33, 33, 33]), ((2048, (128, 1), 'double', True, True), [324, 327, 327, 327, 327]), ((2048, (128, 1), 'single', False, True), [822, 822, 822, 822, 821]), ((2048, (128, 1), 'single', True, True), [833, 833, 833, 833, 833]), ((2048, (512, 1), 'double', False, True), [34, 33, 33, 33, 32]), ((2048, (512, 1), 'double', True, True), [319, 322, 322, 322, 322]), ((2048, (512, 1), 'single', False, True), [826, 826, 826, 826, 826]), ((2048, (512, 1), 'single', True, True), [837, 837, 837, 837, 837]), ((2048, (1024, 1), 'double', False, True), [33, 33, 33, 32, 32]), ((2048, (1024, 1), 'double', True, True), [295, 298, 298, 298, 298]), ((2048, (1024, 1), 'single', False, True), [833, 832, 831, 830, 829]), ((2048, (1024, 1), 'single', True, True), [836, 836, 836, 836, 833]), ((2048, (16, 1), 'double', False, True), [17, 17, 17, 16, 16]), ((2048, (16, 1), 'double', True, True), [163, 163, 163, 163, 163]), ((2048, (16, 1), 'single', False, True), [482, 480, 478, 476, 473]), ((2048, (16, 1), 'single', True, True), [835, 835, 835, 835, 835]), ((800, (200, 1), 'double', True, False), [291, 291, 291, 291, 291]), ((800, (200, 1), 'double', True, True), [291, 291, 291, 291, 291]), ((800, (200, 1), 'single', True, False), [810, 811, 813, 811, 811]), ((800, (200, 1), 'single', True, True), [812, 813, 815, 813, 813]), ((800, (10, 1), 'double', True, False), [102, 102, 102, 102, 102]), ((800, (10, 1), 'double', True, True), [102, 102, 102, 102, 102]), ((800, (10, 1), 'single', True, False), [768, 769, 769, 769, 769]), ((800, (10, 1), 'single', True, True), [768, 769, 769, 769, 769]), ((800, (100, 1), 'double', True, False), [255, 255, 255, 255, 255]), ((800, (100, 1), 'double', True, True), [255, 255, 255, 255, 255]), ((800, (100, 1), 'single', True, False), [805, 807, 806, 808, 808]), ((800, (100, 1), 'single', True, True), [803, 804, 804, 806, 804]), ((800, (50, 1), 'double', True, False), [255, 255, 255, 255, 255]), ((800, (50, 1), 'double', True, True), [255, 255, 255, 255, 255]), ((800, (50, 1), 'single', True, False), [798, 799, 800, 799, 799]), ((800, (50, 1), 'single', True, True), [802, 801, 801, 801, 801]), ((100, (10, 1), 'double', True, False), [95, 96, 96, 96, 96]), ((100, (10, 1), 'double', True, True), [95, 96, 96, 96, 96]), ((100, (10, 1), 'single', True, False), [154, 155, 156, 155, 156]), ((100, (10, 1), 'single', True, True), [156, 157, 157, 157, 156]), ((100, (100, 1), 'double', True, False), [153, 156, 155, 156, 155]), ((100, (100, 1), 'double', True, True), [153, 156, 155, 155, 155]), ((100, (100, 1), 'single', True, False), [155, 155, 157, 155, 155]), ((100, (100, 1), 'single', True, True), [156, 156, 157, 155, 155]), ((100, (50, 1), 'double', True, False), [155, 157, 154, 156, 150]), ((100, (50, 1), 'double', True, True), [149, 155, 152, 155, 155]), ((100, (50, 1), 'single', True, False), [155, 154, 156, 156, 156]), ((100, (50, 1), 'single', True, True), [152, 155, 155, 155, 155]), ((200, (200, 1), 'double', True, False), [252, 252, 253, 253, 252]), ((200, (200, 1), 'double', True, True), [252, 252, 252, 252, 253]), ((200, (200, 1), 'single', True, False), [616, 624, 623, 617, 615]), ((200, (200, 1), 'single', True, True), [614, 622, 622, 623, 624]), ((200, (10, 1), 'double', True, False), [94, 94, 94, 99, 101]), ((200, (10, 1), 'double', True, True), [101, 101, 101, 101, 101]), ((200, (10, 1), 'single', True, False), [617, 623, 622, 621, 621]), ((200, (10, 1), 'single', True, True), [613, 462, 597, 596, 609]), ((200, (100, 1), 'double', True, False), [240, 241, 241, 241, 241]), ((200, (100, 1), 'double', True, True), [240, 241, 241, 241, 241]), ((200, (100, 1), 'single', True, False), [620, 626, 628, 628, 629]), ((200, (100, 1), 'single', True, True), [610, 619, 618, 615, 619]), ((200, (50, 1), 'double', True, False), [240, 241, 241, 241, 241]), ((200, (50, 1), 'double', True, True), [240, 241, 241, 241, 241]), ((200, (50, 1), 'single', True, False), [614, 619, 621, 622, 620]), ((200, (50, 1), 'single', True, True), [615, 620, 620, 621, 620]), ((1000, (200, 1), 'double', True, False), [291, 291, 291, 291, 291]), ((1000, (200, 1), 'double', True, True), [291, 291, 291, 291, 291]), ((1000, (200, 1), 'single', True, False), [818, 817, 818, 818, 817]), ((1000, (200, 1), 'single', True, True), [810, 812, 811, 812, 812]), ((1000, (10, 1), 'double', True, False), [102, 102, 102, 102, 102]), ((1000, (10, 1), 'double', True, True), [102, 102, 102, 102, 102]), ((1000, (10, 1), 'single', True, False), [769, 770, 770, 771, 770]), ((1000, (10, 1), 'single', True, True), [769, 769, 771, 770, 770]), ((1000, (100, 1), 'double', True, False), [255, 255, 255, 255, 255]), ((1000, (100, 1), 'double', True, True), [255, 255, 255, 255, 255]), ((1000, (100, 1), 'single', True, False), [814, 814, 815, 813, 814]), ((1000, (100, 1), 'single', True, True), [814, 815, 814, 815, 815]), ((1000, (50, 1), 'double', True, False), [255, 255, 255, 255, 255]), ((1000, (50, 1), 'double', True, True), [255, 255, 255, 255, 255]), ((1000, (50, 1), 'single', True, False), [806, 805, 807, 805, 807]), ((1000, (50, 1), 'single', True, True), [794, 793, 794, 793, 794]), ((400, (200, 1), 'double', True, False), [286, 287, 287, 287, 287]), ((400, (200, 1), 'double', True, True), [286, 287, 287, 287, 287]), ((400, (200, 1), 'single', True, False), [790, 797, 798, 798, 798]), ((400, (200, 1), 'single', True, True), [801, 796, 803, 802, 803]), ((400, (10, 1), 'double', True, False), [102, 102, 102, 102, 102]), ((400, (10, 1), 'double', True, True), [102, 102, 102, 102, 102]), ((400, (10, 1), 'single', True, False), [752, 754, 750, 754, 754]), ((400, (10, 1), 'single', True, True), [755, 751, 756, 756, 751]), ((400, (100, 1), 'double', True, False), [252, 252, 252, 252, 252]), ((400, (100, 1), 'double', True, True), [252, 252, 252, 252, 252]), ((400, (100, 1), 'single', True, False), [791, 785, 792, 792, 792]), ((400, (100, 1), 'single', True, True), [795, 796, 795, 789, 796]), ((400, (50, 1), 'double', True, False), [252, 252, 252, 252, 252]), ((400, (50, 1), 'double', True, True), [252, 252, 252, 252, 252]), ((400, (50, 1), 'single', True, False), [786, 787, 787, 780, 788]), ((400, (50, 1), 'single', True, True), [787, 781, 789, 789, 789]), ((50, (10, 1), 'double', True, False), [39, 39, 39, 36, 38]), ((50, (10, 1), 'double', True, True), [38, 39, 39, 39, 38]), ((50, (10, 1), 'single', True, False), [38, 39, 39, 39, 39]), ((50, (10, 1), 'single', True, True), [37, 38, 38, 39, 39]), ((50, (50, 1), 'double', True, False), [38, 39, 39, 39, 39]), ((50, (50, 1), 'double', True, True), [38, 39, 39, 39, 38]), ((50, (50, 1), 'single', True, False), [39, 39, 39, 39, 39]), ((50, (50, 1), 'single', True, True), [39, 39, 39, 39, 39]), ((600, (30, 1), 'double', True, False), [285, 286, 304, 304, 304]), ((600, (30, 1), 'double', True, True), [304, 304, 304, 304, 304]), ((600, (30, 1), 'single', True, False), [802, 803, 806, 803, 803]), ((600, (30, 1), 'single', True, True), [823, 827, 824, 824, 825]), ((600, (200, 1), 'double', True, False), [290, 290, 290, 290, 290]), ((600, (200, 1), 'double', True, True), [290, 290, 290, 290, 290]), ((600, (200, 1), 'single', True, False), [787, 788, 791, 789, 788]), ((600, (200, 1), 'single', True, True), [809, 814, 812, 811, 814]), ((600, (10, 1), 'double', True, False), [102, 102, 102, 102, 102]), ((600, (10, 1), 'double', True, True), [102, 102, 102, 102, 102]), ((600, (10, 1), 'single', True, False), [755, 758, 756, 756, 756]), ((600, (10, 1), 'single', True, True), [763, 767, 765, 765, 765]), ((600, (100, 1), 'double', True, False), [254, 254, 254, 254, 254]), ((600, (100, 1), 'double', True, True), [254, 254, 254, 254, 254]), ((600, (100, 1), 'single', True, False), [766, 766, 770, 767, 768]), ((600, (100, 1), 'single', True, True), [798, 800, 803, 799, 800]), ((600, (50, 1), 'double', True, False), [254, 254, 254, 254, 254]), ((600, (50, 1), 'double', True, True), [254, 254, 254, 254, 254]), ((600, (50, 1), 'single', True, False), [768, 769, 769, 768, 772]), ((600, (50, 1), 'single', True, True), [793, 791, 791, 791, 794]), ((800, (256, 1), 'double', True, True), [323, 323, 323, 323, 323]), ((800, (256, 1), 'single', True, True), [808, 808, 808, 810, 809]), ((800, (32, 1), 'double', True, True), [325, 325, 325, 325, 325]), ((800, (32, 1), 'single', True, True), [827, 828, 829, 827, 828]), ((800, (64, 1), 'double', True, True), [324, 324, 324, 324, 324]), ((800, (64, 1), 'single', True, True), [814, 813, 813, 815, 813]), ((800, (128, 1), 'double', True, True), [323, 324, 324, 324, 324]), ((800, (128, 1), 'single', True, True), [808, 809, 809, 811, 809]), ((800, (512, 1), 'double', True, True), [320, 320, 320, 320, 320]), ((800, (512, 1), 'single', True, True), [806, 807, 807, 809, 806]), ((800, (16, 1), 'double', True, True), [163, 163, 163, 163, 163]), ((800, (16, 1), 'single', True, True), [815, 816, 816, 818, 816]), ((100, (32, 1), 'double', True, True), [154, 155, 154, 155, 154]), ((100, (32, 1), 'single', True, True), [155, 156, 155, 156, 155]), ((100, (64, 1), 'double', True, True), [155, 156, 156, 157, 157]), ((100, (64, 1), 'single', True, True), [156, 157, 157, 157, 157]), ((100, (128, 1), 'double', True, True), [153, 155, 156, 155, 154]), ((100, (128, 1), 'single', True, True), [154, 155, 155, 143, 138]), ((100, (16, 1), 'double', True, True), [132, 132, 132, 132, 132]), ((100, (16, 1), 'single', True, True), [154, 155, 157, 148, 154]), ((200, (256, 1), 'double', True, True), [268, 269, 269, 269, 269]), ((200, (256, 1), 'single', True, True), [611, 621, 619, 617, 618]), ((200, (32, 1), 'double', True, True), [273, 273, 273, 273, 273]), ((200, (32, 1), 'single', True, True), [609, 620, 612, 616, 618]), ((200, (64, 1), 'double', True, True), [228, 228, 229, 229, 228]), ((200, (64, 1), 'single', True, True), [619, 626, 626, 625, 620]), ((200, (128, 1), 'double', True, True), [252, 253, 252, 253, 253]), ((200, (128, 1), 'single', True, True), [607, 609, 610, 610, 616]), ((200, (16, 1), 'double', True, True), [143, 143, 143, 143, 143]), ((200, (16, 1), 'single', True, True), [609, 615, 618, 614, 620]), ((1000, (256, 1), 'double', True, True), [318, 318, 318, 318, 318]), ((1000, (256, 1), 'single', True, True), [823, 823, 823, 822, 823]), ((1000, (32, 1), 'double', True, True), [318, 318, 318, 318, 318]), ((1000, (32, 1), 'single', True, True), [832, 831, 833, 833, 833]), ((1000, (64, 1), 'double', True, True), [318, 318, 318, 318, 318]), ((1000, (64, 1), 'single', True, True), [821, 822, 821, 822, 822]), ((1000, (128, 1), 'double', True, True), [318, 318, 318, 318, 318]), ((1000, (128, 1), 'single', True, True), [821, 822, 823, 822, 821]), ((1000, (512, 1), 'double', True, True), [314, 314, 314, 314, 314]), ((1000, (512, 1), 'single', True, True), [826, 827, 827, 826, 827]), ((1000, (1024, 1), 'double', True, True), [292, 292, 292, 292, 292]), ((1000, (1024, 1), 'single', True, True), [826, 825, 826, 827, 827]), ((1000, (16, 1), 'double', True, True), [162, 162, 162, 162, 162]), ((1000, (16, 1), 'single', True, True), [816, 817, 816, 817, 817]), ((400, (256, 1), 'double', True, True), [305, 306, 306, 306, 306]), ((400, (256, 1), 'single', True, True), [779, 773, 780, 781, 780]), ((400, (32, 1), 'double', True, True), [309, 309, 309, 309, 309]), ((400, (32, 1), 'single', True, True), [812, 814, 813, 806, 813]), ((400, (64, 1), 'double', True, True), [306, 306, 306, 307, 306]), ((400, (64, 1), 'single', True, True), [754, 761, 762, 762, 755]), ((400, (128, 1), 'double', True, True), [305, 306, 306, 306, 306]), ((400, (128, 1), 'single', True, True), [781, 783, 775, 783, 783]), ((400, (16, 1), 'double', True, True), [163, 163, 163, 163, 163]), ((400, (16, 1), 'single', True, True), [797, 793, 800, 799, 799]), ((50, (32, 1), 'double', True, True), [38, 38, 39, 36, 34]), ((50, (32, 1), 'single', True, True), [38, 38, 39, 39, 39]), ((50, (64, 1), 'double', True, True), [39, 39, 38, 39, 39]), ((50, (64, 1), 'single', True, True), [38, 39, 38, 38, 39]), ((50, (128, 1), 'double', True, True), [38, 38, 38, 38, 38]), ((50, (128, 1), 'single', True, True), [39, 39, 39, 38, 39]), ((50, (16, 1), 'double', True, True), [38, 38, 39, 38, 38]), ((50, (16, 1), 'single', True, True), [38, 39, 39, 39, 38]), ((600, (256, 1), 'double', True, True), [298, 313, 317, 317, 317]), ((600, (256, 1), 'single', True, True), [797, 797, 800, 797, 798]), ((600, (32, 1), 'double', True, True), [320, 320, 320, 320, 320]), ((600, (32, 1), 'single', True, True), [819, 824, 820, 820, 824]), ((600, (64, 1), 'double', True, True), [305, 306, 306, 306, 305]), ((600, (64, 1), 'single', True, True), [805, 803, 803, 806, 803]), ((600, (128, 1), 'double', True, True), [318, 318, 318, 318, 318]), ((600, (128, 1), 'single', True, True), [806, 808, 812, 808, 808]), ((600, (512, 1), 'double', True, True), [303, 303, 304, 304, 304]), ((600, (512, 1), 'single', True, True), [774, 774, 778, 775, 775]), ((600, (16, 1), 'double', True, True), [161, 161, 161, 161, 161]), ((600, (16, 1), 'single', True, True), [814, 815, 818, 815, 815])] diff --git a/result/ldc_3d_benchmark_K2200.log b/result/ldc_3d_benchmark_K2200.log index 7626f87..36f3f25 100644 --- a/result/ldc_3d_benchmark_K2200.log +++ b/result/ldc_3d_benchmark_K2200.log @@ -1,112 +1,300 @@ -(16, (16, 1, 1), 'symbolic.D3Q19', 'single', True): ~59 MLUPS -(16, (16, 1, 1), 'symbolic.D3Q19', 'single', False): ~59 MLUPS -(16, (16, 1, 1), 'symbolic.D3Q19', 'double', True): ~59 MLUPS -(16, (16, 1, 1), 'symbolic.D3Q19', 'double', False): ~8 MLUPS -(16, (16, 1, 1), 'symbolic.D3Q27', 'single', True): ~59 MLUPS -(16, (16, 1, 1), 'symbolic.D3Q27', 'single', False): ~59 MLUPS -(16, (16, 1, 1), 'symbolic.D3Q27', 'double', True): ~55 MLUPS -(16, (16, 1, 1), 'symbolic.D3Q27', 'double', False): ~5 MLUPS -(32, (16, 1, 1), 'symbolic.D3Q19', 'single', True): ~410 MLUPS -(32, (16, 1, 1), 'symbolic.D3Q19', 'single', False): ~172 MLUPS -(32, (16, 1, 1), 'symbolic.D3Q19', 'double', True): ~85 MLUPS -(32, (16, 1, 1), 'symbolic.D3Q19', 'double', False): ~7 MLUPS -(32, (16, 1, 1), 'symbolic.D3Q27', 'single', True): ~287 MLUPS -(32, (16, 1, 1), 'symbolic.D3Q27', 'single', False): ~111 MLUPS -(32, (16, 1, 1), 'symbolic.D3Q27', 'double', True): ~60 MLUPS -(32, (16, 1, 1), 'symbolic.D3Q27', 'double', False): ~5 MLUPS -(32, (32, 1, 1), 'symbolic.D3Q19', 'single', True): ~419 MLUPS -(32, (32, 1, 1), 'symbolic.D3Q19', 'single', False): ~313 MLUPS -(32, (32, 1, 1), 'symbolic.D3Q19', 'double', True): ~162 MLUPS -(32, (32, 1, 1), 'symbolic.D3Q19', 'double', False): ~15 MLUPS -(32, (32, 1, 1), 'symbolic.D3Q27', 'single', True): ~302 MLUPS -(32, (32, 1, 1), 'symbolic.D3Q27', 'single', False): ~201 MLUPS -(32, (32, 1, 1), 'symbolic.D3Q27', 'double', True): ~115 MLUPS -(32, (32, 1, 1), 'symbolic.D3Q27', 'double', False): ~10 MLUPS -(48, (16, 1, 1), 'symbolic.D3Q19', 'single', True): ~401 MLUPS -(48, (16, 1, 1), 'symbolic.D3Q19', 'single', False): ~175 MLUPS -(48, (16, 1, 1), 'symbolic.D3Q19', 'double', True): ~83 MLUPS -(48, (16, 1, 1), 'symbolic.D3Q19', 'double', False): ~7 MLUPS -(48, (16, 1, 1), 'symbolic.D3Q27', 'single', True): ~278 MLUPS -(48, (16, 1, 1), 'symbolic.D3Q27', 'single', False): ~109 MLUPS -(48, (16, 1, 1), 'symbolic.D3Q27', 'double', True): ~59 MLUPS -(48, (16, 1, 1), 'symbolic.D3Q27', 'double', False): ~5 MLUPS -(48, (24, 1, 1), 'symbolic.D3Q19', 'single', True): ~406 MLUPS -(48, (24, 1, 1), 'symbolic.D3Q19', 'single', False): ~253 MLUPS -(48, (24, 1, 1), 'symbolic.D3Q19', 'double', True): ~125 MLUPS -(48, (24, 1, 1), 'symbolic.D3Q19', 'double', False): ~11 MLUPS -(48, (24, 1, 1), 'symbolic.D3Q27', 'single', True): ~288 MLUPS -(48, (24, 1, 1), 'symbolic.D3Q27', 'single', False): ~158 MLUPS -(48, (24, 1, 1), 'symbolic.D3Q27', 'double', True): ~88 MLUPS -(48, (24, 1, 1), 'symbolic.D3Q27', 'double', False): ~7 MLUPS -(48, (48, 1, 1), 'symbolic.D3Q19', 'single', True): ~405 MLUPS -(48, (48, 1, 1), 'symbolic.D3Q19', 'single', False): ~254 MLUPS -(48, (48, 1, 1), 'symbolic.D3Q19', 'double', True): ~125 MLUPS -(48, (48, 1, 1), 'symbolic.D3Q19', 'double', False): ~11 MLUPS -(48, (48, 1, 1), 'symbolic.D3Q27', 'single', True): ~288 MLUPS -(48, (48, 1, 1), 'symbolic.D3Q27', 'single', False): ~160 MLUPS -(48, (48, 1, 1), 'symbolic.D3Q27', 'double', True): ~86 MLUPS -(48, (48, 1, 1), 'symbolic.D3Q27', 'double', False): ~7 MLUPS -(64, (16, 1, 1), 'symbolic.D3Q19', 'single', True): ~409 MLUPS -(64, (16, 1, 1), 'symbolic.D3Q19', 'single', False): ~162 MLUPS -(64, (16, 1, 1), 'symbolic.D3Q19', 'double', True): ~82 MLUPS -(64, (16, 1, 1), 'symbolic.D3Q19', 'double', False): ~7 MLUPS -(64, (16, 1, 1), 'symbolic.D3Q27', 'single', True): ~282 MLUPS -(64, (16, 1, 1), 'symbolic.D3Q27', 'single', False): ~99 MLUPS -(64, (16, 1, 1), 'symbolic.D3Q27', 'double', True): ~58 MLUPS -(64, (16, 1, 1), 'symbolic.D3Q27', 'double', False): ~4 MLUPS -(64, (32, 1, 1), 'symbolic.D3Q19', 'single', True): ~423 MLUPS -(64, (32, 1, 1), 'symbolic.D3Q19', 'single', False): ~327 MLUPS -(64, (32, 1, 1), 'symbolic.D3Q19', 'double', True): ~164 MLUPS -(64, (32, 1, 1), 'symbolic.D3Q19', 'double', False): ~14 MLUPS -(64, (32, 1, 1), 'symbolic.D3Q27', 'single', True): ~296 MLUPS -(64, (32, 1, 1), 'symbolic.D3Q27', 'single', False): ~205 MLUPS -(64, (32, 1, 1), 'symbolic.D3Q27', 'double', True): ~116 MLUPS -(64, (32, 1, 1), 'symbolic.D3Q27', 'double', False): ~9 MLUPS -(64, (64, 1, 1), 'symbolic.D3Q19', 'single', True): ~422 MLUPS -(64, (64, 1, 1), 'symbolic.D3Q19', 'single', False): ~326 MLUPS -(64, (64, 1, 1), 'symbolic.D3Q19', 'double', True): ~164 MLUPS -(64, (64, 1, 1), 'symbolic.D3Q19', 'double', False): ~14 MLUPS -(64, (64, 1, 1), 'symbolic.D3Q27', 'single', True): ~296 MLUPS -(64, (64, 1, 1), 'symbolic.D3Q27', 'single', False): ~204 MLUPS -(64, (64, 1, 1), 'symbolic.D3Q27', 'double', True): ~116 MLUPS -(64, (64, 1, 1), 'symbolic.D3Q27', 'double', False): ~9 MLUPS -(96, (16, 1, 1), 'symbolic.D3Q19', 'single', True): ~398 MLUPS -(96, (16, 1, 1), 'symbolic.D3Q19', 'single', False): ~171 MLUPS -(96, (16, 1, 1), 'symbolic.D3Q19', 'double', True): ~81 MLUPS -(96, (16, 1, 1), 'symbolic.D3Q19', 'double', False): ~7 MLUPS -(96, (16, 1, 1), 'symbolic.D3Q27', 'single', True): ~273 MLUPS -(96, (16, 1, 1), 'symbolic.D3Q27', 'single', False): ~107 MLUPS -(96, (16, 1, 1), 'symbolic.D3Q27', 'double', True): ~57 MLUPS -(96, (16, 1, 1), 'symbolic.D3Q27', 'double', False): ~4 MLU