Skip to content
Snippets Groups Projects
  1. Sep 20, 2017
  2. Jul 26, 2017
  3. Jul 21, 2017
  4. Jul 07, 2017
  5. Mar 24, 2017
    • 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
  6. Mar 16, 2017
  7. Mar 14, 2017
    • 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
  8. Mar 13, 2017
    • 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
  9. Mar 01, 2017
    • Martin Bauer's avatar
      pystencils: cpujit · dd17cd30
      Martin Bauer authored
      - windows support
      - automatic caching and creation of shared library with all generated kernels
      - restrict keyword and function prefixes are preprocessor macros now -> easier to generate one code for linux, cuda, windows
      dd17cd30
  10. Feb 13, 2017
    • 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
  11. Feb 09, 2017
  12. Dec 08, 2016
  13. Nov 21, 2016
  14. Nov 17, 2016
  15. Nov 11, 2016
    • 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
  16. Nov 10, 2016
  17. Nov 04, 2016
    • 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
  18. Nov 03, 2016
  19. Nov 02, 2016