1. 22 Apr, 2019 1 commit
    • Robert Maynard's avatar
      For VTK-m libs all includes of DeviceAdapterTagCuda happen from cuda files · ff687016
      Robert Maynard authored
      It is very easy to cause ODR violations with DeviceAdapterTagCuda.
      If you include that header from a C++ file and a CUDA file inside
      the same program we an ODR violation. The reasons is that the C++
      versions will say the tag is invalid, and the CUDA will say the
      tag is valid.
      
      The solution to this is that any compilation unit that includes
      DeviceAdapterTagCuda from a version of VTK-m that has CUDA enabled
      must be invoked by the cuda compiler.
      ff687016
  2. 17 Apr, 2019 1 commit
  3. 11 Apr, 2019 1 commit
    • Allison Vacanti's avatar
      Add support for BitFields. · 56cc5c3d
      Allison Vacanti authored
      BitFields are:
      - Stored in memory using a contiguous buffer of bits.
      - Accessible via portals, a la ArrayHandle.
      - Portals operate on individual bits or words.
      - Operations may be atomic for safe use from concurrent kernels.
      
      The new BitFieldToUnorderedSet device algorithm produces an ArrayHandle
      containing the indices of all set bits, in no particular order.
      
      The new AtomicInterface classes provide an abstraction into bitwise
      atomic operations across control and execution environments and are used
      to implement the BitPortals.
      56cc5c3d
  4. 09 Apr, 2019 1 commit
  5. 03 Apr, 2019 1 commit
  6. 06 Jan, 2019 1 commit
    • Abhishek Yenpure's avatar
      Updates to the Cell Locators · 62ee1a2c
      Abhishek Yenpure authored
      - Adding updates to uniform grid cell locator
        - adding OpenMP test, updating copyrights
      - Adding rectilinear grid cell locator
        - adding unit tests for serial, tbb, OpenMP, and cuda
      - Updating CMakeLists to honor the alphabetical ordering
      62ee1a2c
  7. 08 Aug, 2018 2 commits
  8. 07 Aug, 2018 1 commit
  9. 05 Jun, 2018 1 commit
  10. 31 May, 2018 1 commit
  11. 27 Apr, 2018 1 commit
  12. 25 Apr, 2018 1 commit
  13. 03 Jan, 2018 1 commit
  14. 20 Sep, 2017 1 commit
    • Kenneth Moreland's avatar
      Update copyright for Sandia · c3a3184d
      Kenneth Moreland authored
      Sandia National Laboratories recently changed management from the
      Sandia Corporation to the National Technology & Engineering Solutions
      of Sandia, LLC (NTESS). The copyright statements need to be updated
      accordingly.
      c3a3184d
  15. 25 May, 2017 1 commit
    • Robert Maynard's avatar
      Add TaskTiling1D/3D which use faux virtuals to reduce binary size. · 60a405ef
      Robert Maynard authored
      Redesigns the TBB and Serial backends and the vtkm::exec::Task concept so that
      we can re-use the same launching logic for all Worklets, instead of generating
      per worlet code. To keep the performance the same the TilingTask now is past
      a range of indices to work on, rather than a single index.
      
      Binary size reduction:
      WorkletTests_SERIAL old - 19MB
      WorkletTests_SERIAL new - 18MB
      
      WorkletTests_TBB old - 39MB
      WorkletTests_TBB new - 18MB
      
      libvtkAcceleratorsVTKm old - 48MB
      libvtkAcceleratorsVTKm new - 19MB
      60a405ef
  16. 21 Oct, 2016 1 commit
  17. 20 Oct, 2016 1 commit
  18. 04 Nov, 2015 1 commit
  19. 30 Oct, 2015 1 commit
  20. 22 Oct, 2015 1 commit
  21. 17 Sep, 2015 1 commit
  22. 21 May, 2015 1 commit
  23. 30 Apr, 2015 1 commit
    • Kenneth Moreland's avatar
      Change interface of ArrayTransfer to be more like ArrayHandle. · ec0adf8b
      Kenneth Moreland authored
      This includes changing methods like LoadDataForInput to PrepareForInput.
      It also changed the interface a bit to save a reference to the storage
      object. (Maybe it would be better to save a pointer?) These changes also
      extend up to the ArrayManagerExecution class, so it can effect device
      adapter implementations.
      ec0adf8b
  24. 10 Feb, 2015 1 commit
  25. 04 Feb, 2015 1 commit
  26. 21 Oct, 2014 1 commit
    • Kenneth Moreland's avatar
      Add DispatcherMapField. · 80809a8f
      Kenneth Moreland authored
      This is a simple version of a dispatcher, but an important one.
      
      Note that there is an issue brought up with UnitTestWorkletMapField in
      that there needs to be better ways to specify worklet argument types.
      80809a8f
  27. 15 Oct, 2014 2 commits
  28. 14 Oct, 2014 1 commit
    • Kenneth Moreland's avatar
      Add Transport class · 30558cf7
      Kenneth Moreland authored
      The Transport class is responsible for moving data from the control
      environment to the execution environment. (Actually, it might be more
      accurate to say it gets the execution environment associated with a
      given control object.) The Transport class is templated with a tag that
      controls the mechanism used for the transport.
      30558cf7
  29. 10 Jun, 2014 2 commits
    • Kenneth Moreland's avatar
      Add a FunctorBase class for scheduling non-worklets · b0126683
      Kenneth Moreland authored
      Whenever creating a functor to be launched in the execution environment
      using the device adapter Schedule algorithm, you had to also create a
      couple of methods to handle error message buffers. For convenience, lots
      of code started to just inherit from WorkletBase. Although this worked,
      it was a misnomer (and might cause problems in the future if worklets
      later require different things from its base). To get around this
      problem, add a FunctorBase class that is intended to be used as the
      superclass to functors called with Schedule.
      b0126683
    • Kenneth Moreland's avatar
  30. 30 Apr, 2014 1 commit
  31. 31 Mar, 2014 1 commit
    • Kenneth Moreland's avatar
      Add tag-based type list templates · c2d926fa
      Kenneth Moreland authored
      Provies a list of types in a template like boost::mpl::vector and a
      method to call a functor on each type. However, rather than explicitly
      list each type, uses tags to identify the list. This provides the
      following main advantages:
      
      1. Can use these type lists without creating horrendously long class
      names based on them, making compiler errors easier to read. For example,
      you would have a typename like MyClass<TypeListTagVectors> instead of
      MyClass<TypeList<Id3,Vector2,Vector3,Vector4> > (or worse if variadic
      templates are not supported). This is the main motivation for this
      implementation.
      
      2. Do not require variadic templates and usually few constructions. That
      should speed compile times.
      
      There is one main disadvantage to this approach: It is difficult to get
      a printed list of items in a list during an error. If necessary, it
      probably would not be too hard to make a template to convert a tag to a
      boost mpl vector.
      c2d926fa
  32. 10 Feb, 2014 4 commits