1. 02 Dec, 2024 1 commit
  2. 29 Nov, 2024 1 commit
  3. 16 Aug, 2024 1 commit
  4. 05 Mar, 2024 1 commit
  5. 23 Jan, 2024 1 commit
  6. 18 Nov, 2023 1 commit
  7. 18 Feb, 2023 1 commit
  8. 29 Jan, 2023 1 commit
  9. 10 Nov, 2022 1 commit
  10. 06 Jul, 2022 2 commits
  11. 30 Jun, 2022 7 commits
  12. 13 Jun, 2022 8 commits
  13. 10 May, 2022 1 commit
  14. 19 Feb, 2022 1 commit
    • Sven-Bodo Scholz's avatar
      added missing renaming in MOWL handling · 49ca2713
      Sven-Bodo Scholz authored
      added the renaming, extended the explanation and streamlined the code modification.
      also changed the default verbosity for the debug version to v2...
      and added a few tests
      
      one of the tests revealed that we, in some cases, do get self-assignment warnings from prop-obj -in/ out code generation.
      I suppressed them on MAC for now. If they pop up on gcc based systems as well, we shall do the same there.
      49ca2713
  15. 16 Feb, 2022 1 commit
    • Hans-Nikolai Viessmann's avatar
      [macos] move to using CC binary; drop fixed sysroot · 538428d0
      Hans-Nikolai Viessmann authored
      Using CMAKE to set the sysroot statically at the time we build
      sac2c sets limits on the packaged version of sac2c. CMAKE sysroot
      is versioned to match the XCode/SDK used to compile sac2c. This
      versioned path **only** exists for a specific version of XCode. On other
      setups, newer/older version of MacOS, and even newer/older version of
      XCode, this path is probably invalid.
      
      The solution is to use /usr/bin/cc instead, which is a wrapper around
      clang that correctly sets the sysroot path information (and other
      details besides).
      
      Additionally this commit:
      * move to cmake 3.19 base support (for better support on Apple M1)
      * disable (manually) FAT binary generation (for Apple systems)
      * use -mmacosx-version-min flag to correct set minimum support SDK
        version
      * extend str.c; correct module/function comments; add STRstrip function
        to remove newline/space characters
      * extend unit tests for strings (STRstrip)
      * add platform/macos.c util functions (NEEDED?)
      * add scripts/get-xcode-version.sh script (NEEDED?)
      538428d0
  16. 26 May, 2021 2 commits
    • Sven-Bodo Scholz's avatar
      changed -h; added -help · b970298f
      Sven-Bodo Scholz authored
      Generally, we have now
         -h is minimalistic help focussing on the most important options
         -help is more verbose
      
      We also distinguish now between debug and release version.
      
      debug -help   =>   identical to the old -h   but indicates which phases are executed with the currently specified target
                 -h        =>   restricted output: only presents the activated phases and does not provide full information
      
      release -h =>  as -h in debug but without phases info
                   -h =>  as -h in debug but with phases info
      b970298f
    • Sven-Bodo Scholz's avatar
      added support for multiple pragmas header and left the sac2c generated header in · 2c6de586
      Sven-Bodo Scholz authored
      (cherry picked from commit 6d05429acfcb24e8cced841eba145dc8f8348c8d)
      2c6de586
  17. 19 May, 2021 1 commit
    • Artem Shinkarov's avatar
      Introduce -nosaclibs, which makes -noprelude a saner behaviour. · ffae2bbf
      Artem Shinkarov authored
          Previously, -noprelude meant that we are not loading libprelude
          as well as libsac, libphm, etc.  Therefore, the only usecase for
          the flag was to compiler the prelude.  In case one was using
          -noprelude with a regular sac program, the lack of libsac (and other
          libraries) made the compilation process to fail.
      
          The -nosaclibs means that we are not loading libsac, phm, etc.
          Therefore, when we are compiling prelude, we use -noprelude
          -nosaclibs.  If we want to compile a sac program without the prelude
          functions, we can use -noprelude, and the compilation succeeds.
      ffae2bbf
  18. 23 Oct, 2020 3 commits
    • Hans-Nikolai Viessmann's avatar
      add various sync modes for CUDA async methods · 2ff89a56
      Hans-Nikolai Viessmann authored
      With this commit we add four modes for synchronising on memory transfers
      when using CUDA async transfer mechanisms. These are NONE: we do not
      synchronise (current model), DEVICE which uses the device synchronise
      primitive, STREAM wherein we sychronise on the stream, and finally
      CALLBACK which is similar to STREAM, but does uses spinlocks instead of
      CUDA event system.
      2ff89a56
    • Hans-Nikolai Viessmann's avatar
      add cmdline override for cuda block shape · 06687f0b
      Hans-Nikolai Viessmann authored
      With this one can change the block shape for 1-dim and 2-dim array
      kernels from their hardcoded defaults.
      06687f0b
    • Hans-Nikolai Viessmann's avatar
      change CUDA_ARCH setting to compile-time flag · 572d252d
      Hans-Nikolai Viessmann authored
      With this commit, we add a compiler flag to set the CUDA architecture at
      compile time. Previously the CUDA arch was taken from the sac2crc config
      file, which is generated via cmake/sac2c/config. If one wanted to
      compile for a different achitecture, one needed to modify the sac2crc
      config file.
      
      Additionally we move the CUDA globals into their own struct (global).
      572d252d
  19. 17 Oct, 2020 1 commit
  20. 05 Sep, 2019 1 commit
    • Hans-Nikolai Viessmann's avatar
      add -generic flag to sac2c · 8497c5ef
      Hans-Nikolai Viessmann authored
      We have had issues with the build system using mtune=native to compile
      the libsac2c and the runtime libraries, making it impossible to create
      distributable packages without it breaking due to ISA incompatibilities.
      
      Changing the build system to not use mtune=native is doable, but
      involves having to filter out the mtune=native flag at the right points
      in the build. Additionally, when using different C compilers (such as
      with NVCC) we need to account for this, which may require a different
      solution for each compiler. This is non-trivial to achieve as in some
      instances the compiler is not applicable to build sac2c, but only a
      runtime lib or two.
      
      This commit uses a different method, which encodes the mtune=native flag
      into sac2crc and adds a sac2c flag (`-generic`) to toggle the effect.
      The advantage here is that we can define different flags for different
      SBIs, without affecting the build system. Furthermore, the changes to
      the build system are minimal, which involves propagating the flags to
      sac2crc and change whether libsac2c is built with mtune=native or not.
      8497c5ef
  21. 05 Dec, 2018 1 commit
  22. 22 Oct, 2018 2 commits