diff --git a/README.md b/README.md index 87e5abb19..c56245dfd 100644 --- a/README.md +++ b/README.md @@ -1,8 +1,27 @@ -Welcome to vtkm design and hackathon. +## VTK-m ## -Resources: +One of the biggest recent changes in high-performance computing is the increasing use of accelerators. Accelerators contain processing cores that independently are inferior to a core in a typical CPU, but these cores are replicated and grouped such that their aggregate execution provides a very high computation rate at a much lower power. Current and future CPU processors also require much more explicit parallelism. Each successive version of the hardware packs more cores into each processor, and technologies like hyperthreading and vector operations require even more parallel processing to leverage each core’s full potential. -EAVL: https://github.com/jsmeredith/EAVL -DAX: https://github.com/Kitware/DaxToolkit -PISTON: http://viz.lanl.gov/projects/PISTON.html +VTK-m is a toolkit of scientific visualization algorithms for emerging processor architectures. VTK-m supports the fine-grained concurrency for data analysis and visualization algorithms required to drive extreme scale computing by providing abstract models for data and execution that can be applied to a variety of algorithms across many different processor architectures. + + +## Getting VTK-m ## + +The VTK-m repository is located at [http://public.kitware.com/gitweb?p=vtkm.git](http://public.kitware.com/gitweb?p=vtkm.git) + +VTK-m dependencies are: + + ++ [CMake 3.0](http://www.cmake.org/download/) ++ [Boost 1.52.0](http://www.boost.org) or greater ++ [Cuda Toolkit 6+](https://developer.nvidia.com/cuda-toolkit) or [Thrust 1.7+](https://thrust.github.com) + +``` +git clone git://public.kitware.com/vtkm.git vtkm +mkdir vtkm-build +cd vtkm-build +cmake-gui ../vtkm +``` + +A detailed walk-through of installing and building VTK-m can be found on our [Contributing page](http://m.vtk.org/index.php/Contributing_to_VTK-m) diff --git a/docs/DesignDecisions.md b/docs/DesignDecisions.md index a4b59d6a0..689d4393a 100644 --- a/docs/DesignDecisions.md +++ b/docs/DesignDecisions.md @@ -1,37 +1,31 @@ ### Design Decisions ### -A quick list of where the primary classes that will go into VTKM. - -High level classes: -+ vtkm::vtkAllocators [ dax ] -+ vtkm::vtkMappedDataSets [ dax ] -+ vtkm::Filters [ eavl ] - + pistons halo finder -+ vtkm::Mutators [ eavl ] + additive fields -+ vtkm::OpenGLInterop [ dax + piston ] - - -Mid level: -+ vtkm::ArrayHandle [dax] - + dynamic info from eavl -+ vtkm::CellSet [eavl] - + Includes the Explicit and Implicit versions -+ vtkm::DataSet [eavl] - + Holds a Coordinate field - + Holds a collection of CellSets - + Holds a collection of array handles as fields - -Low level: -+ vtkm::DeviceAdapter [dax] -+ vtkm::DeviceAdapterGeneral [dax] -+ vtkm::TopologyMap [eavl] -+ vtkm::WorkletConcept [ eavl + dax ] - +A quick list of what the final design of vtkm should look like: Code Layout: +``` vtkm/ cont/ - datamodel/ - filters/ + - vtkm::cont::ArrayHandle + - vtkm::cont::CellSet + - vtkm::cont::DataSet + + interop/ + - OpenGL interop classes + - VTK interop classes + cuda/ + + filters/ + - vtkm::filter::ThresholdFilter + - vtkm::filter::ContourFilter + - Mutators? exec/ - worklets/ + cuda/ + + worklets/ + - vtkm::worklet::WorkletMapField + - vtkm::worklet::WorkletMapCell +``` + + + diff --git a/docs/PosterPresentation.md b/docs/PosterPresentation.md deleted file mode 100644 index e54f95e82..000000000 --- a/docs/PosterPresentation.md +++ /dev/null @@ -1,28 +0,0 @@ -Poster & Presentation: - -Things that we want to do. -Things that we are going to do. -What would we call it? - -dynamic vs templates interfacing. -The pull between insitu and general purpose library, where we want -high performance - -foundation / groundwork / experimental work - -What are the different layers that each project fills - -[dax] - [eavl] - -[filter] - [] - -[worklet] - - -Todo: - -1. Dynamic Arrays with tuple(s) - -2. Sum of a cell set. - -3. [Rob] Create the basic layout with and get the basic concrete array handle - to compile with nothing else. \ No newline at end of file