1. 04 Jan, 2018 1 commit
  2. 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
  3. 07 Aug, 2017 1 commit
  4. 31 May, 2017 1 commit
  5. 27 May, 2017 1 commit
  6. 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
  7. 02 May, 2017 1 commit
    • Robert Maynard's avatar
      Add vtkm::exec::TaskBase, and rename WorkletInvokeFunctor to TaskSingular · 022c36fa
      Robert Maynard authored
      Previously WorkletInvokeFunctor inherited from vtkm::exec::FunctorBase,
      which is also the base class for all users Worklets and for all functors
      based to DeviceAdapter::Schedule.
      This is done for a few reasons. The first is that we reduce the
      minimum size of user worklets. Previously the users worklet would hold
      a reference to the error message, and so would the wrapper class added
      when calling DeviceAdapter::Schedule. Now we only have the users worklet
      holding a reference.
      Second, by refactoring to have two base classes we can better improve
      the documentation on what responsibilities FunctorBase.h has, compared
      to TaskBase.
  8. 16 Nov, 2016 1 commit
    • Kenneth Moreland's avatar
      Remove exports for header-only functions/methods · fdaccc22
      Kenneth Moreland authored
      Change the VTKM_CONT_EXPORT to VTKM_CONT. (Likewise for EXEC and
      EXEC_CONT.) Remove the inline from these macros so that they can be
      applied to everything, including implementations in a library.
      Because inline is not declared in these modifies, you have to add the
      keyword to functions and methods where the implementation is not inlined
      in the class.
  9. 06 Nov, 2015 1 commit
  10. 07 Oct, 2015 1 commit
    • Kenneth Moreland's avatar
      Change Fetches to use ThreadIndices instead of Invocation. · 99ce66c6
      Kenneth Moreland authored
      Previously, all Fetch objects received an Invocation object in their
      Load and Store methods. The point of this was that it allowed the Fetch
      to get data from any of the execution objects. However, every Fetch
      either just got data directly from its associated execution object or
      else used a secondary execution object (the input domain) to get indices
      into their own execution object.
      This left two potential areas for improvement. First, pulling data out
      of the Invocation object was unnecessarily complicated. It would be much
      nicer to get data directly from the associated execution object. Second,
      when getting index information from the input domain, it was often the
      case that extra computations were necessary (particularly on structured
      cell sets). There was no way to share the index information among
      Fetches, and therefore the computations were replicated.
      This change removes the Invocation from the Fetch Load and Store.
      Instead, it passes the associated execution object and a new object type
      called the ThreadIndices. The ThreadIndices are customized for the input
      domain and therefore have all the information needed for a redirected
      lookup. It is also a thread-local object so it can cache computed
      indices and save on computation time.
  11. 21 May, 2015 1 commit
  12. 16 Jan, 2015 1 commit
  13. 23 Oct, 2014 1 commit
    • Kenneth Moreland's avatar
      Fix MSVC warnings · 40efb513
      Kenneth Moreland authored
      MSVC is picky about type conversions. To get it to shut up, explicitly
      cast the worklet return value to the fetch value in the
      WorkletInvokeFunctor. The good is that it will help with needing
      explicit conversions on these return values. But that is also bad in
      that it might make some unexpected conversions possible.
  14. 21 Oct, 2014 1 commit
    • Kenneth Moreland's avatar
      Add basic dispatcher functionality. · 53a454fe
      Kenneth Moreland authored
      These changes support the implementation of DispatcherBase. This class
      provides the basic functionality for calling an Invoke method in the
      control environment, transferring data to the execution environment,
      scheduling threads in the execution environment, pulling data for each
      calling of the worklet method, and actually calling the worklet.