David-Durst / aetherling

Create auto-scheduled data-parallel pipelines in hardware with user-friendly Python
MIT License
12 stars 1 forks source link

Can't Make a Linebuffer at 2 px per clock for 3 px window #4

Closed David-Durst closed 6 years ago

David-Durst commented 6 years ago

Why can't I do this? See https://github.com/David-Durst/aetherling/blob/master/tests/test_linebuffer.py for the test.

(aetherling) durst@DN800caf05:~/dev/W17-8/aetherling$ py.test -s tests/test_linebuffer.py::test_linebuffer_1pxPerClock_3pxWindow
============================================================================================================ test session starts =============================================================================================================
platform darwin -- Python 3.6.4, pytest-3.4.2, py-1.5.2, pluggy-0.6.0
rootdir: /Users/durst/dev/W17-8/aetherling, inifile:
collected 1 item

tests/test_linebuffer.py In Run Generators
Done running generators
.

========================================================================================================== 1 passed in 0.12 seconds ==========================================================================================================
(aetherling) durst@DN800caf05:~/dev/W17-8/aetherling$ py.test -s tests/test_linebuffer.py::test_linebuffer_2pxPerClock_3pxWindow
============================================================================================================ test session starts =============================================================================================================
platform darwin -- Python 3.6.4, pytest-3.4.2, py-1.5.2, pluggy-0.6.0
rootdir: /Users/durst/dev/W17-8/aetherling, inifile:
collected 1 item

tests/test_linebuffer.py In Run Generators
ERROR: out_dim=3 % in_dim=2 != 0, dimension length must be divisible, becuase we can't swizzle data

0   libcoreir-commonlib.dylib           0x00000001047efd16 _ZZ27CoreIRLoadLibrary_commonlibPN6CoreIR7ContextEENK4$_26clES1_NSt3__13mapINS3_12basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEEPNS_5ValueENS3_4lessISA_EENS8_INS3_4pairIKSA_SC_EEEEEEPNS_9ModuleDefE + 12726
1   libcoreir-commonlib.dylib           0x00000001047ecb18 _ZNSt3__128__invoke_void_return_wrapperIvE6__callIJRZ27CoreIRLoadLibrary_commonlibPN6CoreIR7ContextEE4$_26S5_NS_3mapINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEPNS3_5ValueENS_4lessISE_EENSC_INS_4pairIKSE_SG_EEEEEEPNS3_9ModuleDefEEEEvDpOT_ + 280
2   libcoreir-commonlib.dylib           0x00000001047ec944 _ZNSt3__110__function6__funcIZ27CoreIRLoadLibrary_commonlibPN6CoreIR7ContextEE4$_26NS_9allocatorIS5_EEFvS4_NS_3mapINS_12basic_stringIcNS_11char_traitsIcEENS6_IcEEEEPNS2_5ValueENS_4lessISD_EENS6_INS_4pairIKSD_SF_EEEEEEPNS2_9ModuleDefEEEclEOS4_OSM_OSO_ + 100
3   libcoreir.dylib                     0x0000000103d9dd4c _ZNKSt3__18functionIFvPN6CoreIR7ContextENS_3mapINS_12basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEEPNS1_5ValueENS_4lessISA_EENS8_INS_4pairIKSA_SC_EEEEEEPNS1_9ModuleDefEEEclES3_SJ_SL_ + 188
4   libcoreir.dylib                     0x0000000103d9dc12 _ZN6CoreIR19GeneratorDefFromFun15createModuleDefEPNS_9ModuleDefENSt3__13mapINS3_12basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEEPNS_5ValueENS3_4lessISA_EENS8_INS3_4pairIKSA_SC_EEEEEE + 3730
5   libcoreir.dylib                     0x0000000103de1f5f _ZN6CoreIR6Module12runGeneratorEv + 2271
6   libcoreir.dylib                     0x000000010416ec45 _ZN6CoreIR6Passes13RunGenerators12runOnContextEPNS_7ContextE + 2549
7   libcoreir.dylib                     0x0000000103e4857f _ZN6CoreIR11PassManager14runContextPassEPNS_4PassE + 63
8   libcoreir.dylib                     0x0000000103e4b0aa _ZN6CoreIR11PassManager7runPassEPNS_4PassE + 346
9   libcoreir.dylib                     0x0000000103e4e5be _ZN6CoreIR11PassManager3runENSt3__16vectorINS1_12basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEENS6_IS8_EEEESA_ + 5166
10  libcoreir.dylib                     0x0000000103c6ced6 _ZN6CoreIR7Context9runPassesENSt3__16vectorINS1_12basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEENS6_IS8_EEEESA_ + 150
11  libcoreir-c.dylib                   0x0000000103b73cf9 COREContextRunPasses + 2105
12  libffi.6.dylib                      0x00000001018f8884 ffi_call_unix64 + 76
13  ???                                 0x00007ffeef0929a0 0x0 + 140732908775840
David-Durst commented 6 years ago

Turns out I can. I needed to deal with overlap. System currently supports it.