1. 09 Oct, 2017 1 commit
    • Martin Bauer's avatar
      Vectorization & Type system overhaul · ea847bc5
      Martin Bauer authored
      - first vectorization tests are running
      - type system: use memoized getTypeOfExpression
      - casts are done using sp.Function('cast')
      - C backend adapted for vectorization support
      - AST nodes can required optional headers
      ea847bc5
  2. 26 Sep, 2017 2 commits
  3. 21 Jul, 2017 1 commit
  4. 01 Jul, 2017 1 commit
    • Martin Bauer's avatar
      Kerncraft coupling · 3b4deebe
      Martin Bauer authored
      - pystencils can create now a non-compilable kernel that can be
        analyzed by kerncraft
      3b4deebe
  5. 05 May, 2017 1 commit
  6. 24 Mar, 2017 1 commit
    • Martin Bauer's avatar
      Conditional AST Node & advanced CUDA indexing · ff641ec9
      Martin Bauer authored
      - abstraction layer for selecting CUDA block and grid sizes
        - line based (was implemented before)
        - block based (new, more flexible)
      -  new conditional (if/else) ast node, which is necessary for indexing schemes (guarding if)
      ff641ec9
  7. 19 Mar, 2017 1 commit
  8. 16 Mar, 2017 1 commit
  9. 14 Mar, 2017 1 commit
    • Martin Bauer's avatar
      pystencils: fields can now contain structs · ec3faf51
      Martin Bauer authored
      - this extension is necessary for more generic boundary treatment
      - cells can now be structs, i.e. contain different data types
      - instead of having numeric index dimensions, one can use the index per cell to adress struct elements
      ec3faf51
  10. 13 Mar, 2017 1 commit
    • Martin Bauer's avatar
      pystencils: Cleaned up type system · c8b455fe
      Martin Bauer authored
      - use data type class consistently instead of strings (in TypedSymbol, Field and jit module)
      - new datatype class is based on numpy types with additional specifier information (const and restrict)
      - translation between data type class and other modules (numpy, ctypes)
      c8b455fe
  11. 10 Mar, 2017 1 commit
  12. 02 Mar, 2017 1 commit
  13. 23 Feb, 2017 2 commits
  14. 14 Feb, 2017 2 commits
  15. 13 Feb, 2017 2 commits
    • Michael Kuron's avatar
      Python 2.7 compatibility · cb05590d
      Michael Kuron authored and Martin Bauer's avatar Martin Bauer committed
      This commit makes the Python code backwards compatible down to Python 2.7. Previously it would only run on Python 3.5 and up.
      
      Problems fixed included:
      - `time.perf_counter()` doesn't exist
      - all classes need to be new-style
      - `functools.lru_cache` doesn't exist
      - only the last argument to a function call can be `*`-expanded
      - the `nonlocal` keyword doesn't exist
      - metaclasses are used with a different syntax
      - `yield from` doesn't exist
      - `tempdir.TemporaryDirectory` doesn't exist
      - iterators need a `next()` method
      cb05590d
    • Martin Bauer's avatar
      pystencils: additional checks when calling kernel · 184489d0
      Martin Bauer authored
      - check that fixed size kernels are called with arrays of the correct size
      - checks that layout of compilation matches runtime layout
      - not allowed any more to mix fixed & and variable sized fields in a kernel
      184489d0
  16. 09 Feb, 2017 1 commit
  17. 16 Dec, 2016 3 commits
  18. 15 Dec, 2016 1 commit
  19. 08 Dec, 2016 1 commit
  20. 28 Nov, 2016 1 commit
  21. 25 Nov, 2016 1 commit
  22. 24 Nov, 2016 1 commit
  23. 17 Nov, 2016 2 commits
  24. 16 Nov, 2016 1 commit
  25. 15 Nov, 2016 2 commits
  26. 11 Nov, 2016 1 commit
    • Martin Bauer's avatar
      Changed symbolsRead/ symbolsDefined semantics · b207d071
      Martin Bauer authored
      problem in moveConstantBeforeLoops transformation:
      
      --> a should end up here
      {
      for() {
        const int a = 5;
      }
      for() {
        const int a = 5
      }
      }
      
      the "a" of the lower loop was not moved up, since it could not move across first loop (which is wrong)
      b207d071
  27. 10 Nov, 2016 4 commits
  28. 04 Nov, 2016 1 commit
    • Martin Bauer's avatar
      Sliced iteration · 411af476
      Martin Bauer authored
      - LoopOverDomain changed to be able to loop over rectangular sub-region of field
      - support for slicing with makeSlice
      411af476
  29. 03 Nov, 2016 1 commit
    • Martin Bauer's avatar
      Documentation & Restructuring · aea202a7
      Martin Bauer authored
      - added sphinx files for documentation generation
      - collected kernel creation functions in new "cpu" and "cudagpu" modules
      aea202a7