1. 11 Sep, 2015 1 commit
    • Sujin Philip's avatar
      Fix vtkSMPThreadLocal API · b961d6d7
      Sujin Philip authored
      Makes the constructor accepting the exemplar explicit. Marks the copy-constructor and the assignment operator private to disalow copying.
      b961d6d7
  2. 26 Aug, 2015 1 commit
  3. 22 Jun, 2015 1 commit
    • Sujin Philip's avatar
      Intel compiler 11.1 template typedef issue · f51d10d3
      Sujin Philip authored
      Intel's 11.1 compiler version is not able to correctly handle the typedef
      inside the template class - BaseType. This is a workaround for that since
      there are some customers using this compiler.
      f51d10d3
  4. 18 Jun, 2015 1 commit
  5. 10 Jun, 2015 1 commit
  6. 21 May, 2015 1 commit
    • Sujin Philip's avatar
      OpenMP backend for SMP · 4d266364
      Sujin Philip authored
      Adds OpenMP based backend for SMP. Includes an OpenMP based vtkAtomicInt implementation which is used if 3.1 or later version is available.
      4d266364
  7. 20 May, 2015 1 commit
    • Sujin Philip's avatar
      Change vtkAtomicInt to vtkAtomic · c342a011
      Sujin Philip authored
      Now that atomic operations are also supported for pointer types, rename vtkAtomicInt to vtkAtomic. Explicit typedefs are done for integer types in vtkAtomicTypes.h.
      c342a011
  8. 07 May, 2015 1 commit
  9. 06 May, 2015 1 commit
    • Sujin Philip's avatar
      Fix errors detected on Windows dashboards · e6356d86
      Sujin Philip authored
      Fixes the following errors/warnings
      1] Fixes linker error by adding VTKCOMMONCORE_EXPORT to struct atomic type.
      2] Fixes warning "'CriticalSectionGuard' : assignment operator could not be generated".
      e6356d86
  10. 04 May, 2015 1 commit
  11. 28 Apr, 2015 1 commit
    • Sujin Philip's avatar
      Improvements to vtkAtomicInt · 78a5fff0
      Sujin Philip authored
      1] Added support for any 32-bit or 64-bit, signed or unsigned integers and pointer types
      2] Made the interface consistent accross different implementations
      78a5fff0
  12. 24 Feb, 2015 1 commit
    • Sujin Philip's avatar
      Fix SMP compile warning in VC++ · 42f31c86
      Sujin Philip authored
      Suppresses the obsolete warning C4345 for VC++. This warning only occurs in
      Visual Studio 2005 through 2012.
      
      Change-Id: I3d73822daa7b6a62f52f5e1b5fc46f7f2208f88f
      42f31c86
  13. 16 Feb, 2015 1 commit
    • Sujin Philip's avatar
      Fix SMP compile warning in VC++ · e83da626
      Sujin Philip authored
      Suppresses the obsolete warning C4345 for VC++. This warning only occurs in
      Visual Studio 2005 through 2012.
      
      Change-Id: I3a223b9a1f4b12f51a4cbf5d6f61e57b097c5d66
      e83da626
  14. 03 Feb, 2015 1 commit
    • Sujin Philip's avatar
      Additions to SMP API · 17a66740
      Sujin Philip authored
      The following additions have been made to the vtk SMP framework
      * Added GetEstimatedNumberOfThreads() to get an estimate on the number of threads used by the back-end.
      * Added size() to thread local storage classes to get the number of thread local instances
      * Improved thread local storage iterator API
      
      Change-Id: Ic9925a0e856edfb14b78c175d94c9942df8478bf
      17a66740
  15. 29 Jan, 2015 1 commit
    • Sujin Philip's avatar
      Fix compile warnings in SMP under Windows · 55da8755
      Sujin Philip authored
      The warning was being generated due to a class having a reference member. Visual C++ was complaining that it couldn't generate the assignment operator for that class. The assignment operator is not actually used anywhere and that is probably why gcc or other compilers don't warn.
      
      Change-Id: Id3a6c5e4729327a95225418c801e4f4619806491
      55da8755
  16. 18 Dec, 2014 1 commit
  17. 01 Nov, 2013 1 commit
  18. 31 Oct, 2013 2 commits
    • Berk Geveci's avatar
      First implementation of SMP parallel primitives. · 5abad992
      Berk Geveci authored
      Added primitives for developing multi-threaded parallel
      algorithms. Include are vtkSMPTools, which currently
      provides a parallel For implementation; support for simple
      and initializable functors, which are needed to implement
      parallel kernels and thread local storage objects that
      provide storage local to each thread.
      
      Change-Id: I4c27b25bc2dd7f0ce3194d4488864fef4444c9d3
      5abad992
    • Berk Geveci's avatar
      Fixed bug (compile issue) introduced with previous refactor. · 031fdf7e
      Berk Geveci authored
      Critical sections need to be defined whenever atomics are not
      natively supported. Fixed wrong ifdef.
      
      Change-Id: Icd5e2245a65c6832c52ab1ba07cf9d9b89768859
      031fdf7e
  19. 29 Oct, 2013 2 commits
    • Berk Geveci's avatar
      Fixed atomic int compile issues on Windows. · 75062ae4
      Berk Geveci authored
      It turns out that forward declaring various atomic functions
      (_InterlockedXXX) is not straightforward. I ran into situations
      where this did not link. So I moved all of the atomic
      implementation for Windows to the cxx file and properly
      included vtkWindows.h. This should fix all compile/link issues
      of atomic ints on Windows. Note that the main reason that I
      chose not to include vtkWindows.h in the header is that
      atomic ints are used by all subclasses of vtkObjectBase and
      including vtkWindows.h all over the place would degrade
      compile performance significantly.
      
      Change-Id: I00bf173140587b07665d7d5d84ab0cad5bfda7fe
      75062ae4
    • Berk Geveci's avatar
      Refactored the location of the atomic classes. · 55fab3d5
      Berk Geveci authored
      Moved atomic classes into an SMP directory to make sure that
      the SMP backends are obvious for what they are. Also added
      a Simple backend in the CMake file which currently is the same
      as Sequential.
      
      Change-Id: I7aa0262ea37da774acbe9c2ca13c8e5134178e49
      55fab3d5