Skip to content
Snippets Groups Projects
  1. Feb 17, 2014
  2. Feb 13, 2014
    • Oliver Sander's avatar
      Remove the artificial 3d-array of processors set up in the ppif layer · 8da3b4a1
      Oliver Sander authored
      There is no guarantee that it matches the topology of the actual machine
      in any way.  Also, it does not appear to be used anywhere in the ug core
      at all.  Finally, it contains some small memory leaks.  Admittedly, these
      leaks would be easy to fix, but since the code is not used I may as well
      rip it out altogether.
      
      [[Imported from SVN: r8530]]
      8da3b4a1
  3. Feb 02, 2014
    • Oliver Sander's avatar
      [bugfix] Fix size computation of DDD type TypeNode · 5383fef4
      Oliver Sander authored
      UG implements a small hack to save memory and communication bandwidth:
      the NODE data structure contains a VECTOR*, which points to the node data.
      If there is no node data then this pointer is not used.  In that case,
      instead of allocating sizeof(NODE) bytes for each NODE, the program
      allocates sizeof(NODE)-SIZEOF(VECTOR*) bytes instead, and promises to
      never touch the missing bytes.
      
      (The same is done for edges).
      
      This 'special' computation is done twice: once in ugm.c, where the memory
      for NODEs is allocated, and once in initddd.c, where the DDD communication
      layer is told about the NODE type.  The special hack, i.e., the subtraction
      of sizeof(VECTOR*) from the object size in case no node data was used,
      was massing in initddd.c.  This lead to valgrind giving 'Invalid read' errors
      during load balancing (see below).
      
      This patch fixes the size computation in initddd.c, and hence avoid the
      valgrind errors.
      
      ==1863== Invalid read of size 2
      ==1863==    at 0x4C2DA60: memcpy@@GLIBC_2.14 (mc_replace_strmem.c:877)
      ==1863==    by 0x99457C: UG::D3::XferPackSingleMsg(UG::D3::_XFERMSG*) (pack.c:564)
      ==1863==    by 0x994A36: UG::D3::XferPackMsgs(UG::D3::_XFERMSG*) (pack.c:762)
      ==1863==    by 0x9842D0: UG::D3::DDD_XferEnd() (cmds.c:611)
      ==1863==    by 0x9B132C: UG::D3::TransferGridFromLevel(UG::D3::multigrid*, int) (trans.c:835)
      ==1863==    by 0x9AADC0: UG::D3::lbs(char const*, UG::D3::multigrid*) (lb.c:659)
      ==1863==    by 0x96D684: UG::D3::LBCommand(int, char**) (commands.c:10658)
      ==1863==    by 0x4B475F: Dune::UG_NS<3>::LBCommand(int, char const**) (ugwrapper.hh:1019)
      ==1863==    by 0x4B9CD6: Dune::UGGrid<3>::loadBalance(int, int, int, int, int) (uggrid.cc:534)
      ==1863==    by 0x42828E: Dune::UGGrid<3>::loadBalance() (uggrid.hh:491)
      ==1863==    by 0x41D79D: bool Dune::UGGrid<3>::loadBalance<LoadBalance::LBDataHandle<Dune::UGGrid<3>, std::vector<Dune::FieldVector<double, 3>, std::allocator<Dune::FieldVector<double, 3> > >, 3> >(LoadBalance::LBDataHandle<Dune::UGGrid<3>, std::vector<Dune::FieldVector<double, 3>, std::allocator<Dune::FieldVector<double, 3> > >, 3>&) (uggrid.hh:517)
      ==1863==    by 0x4117B6: void LoadBalance::test<Dune::UGGrid<3> >(Dune::UGGrid<3>&) (test-parallel-ug.cc:473)
      ==1863==  Address 0xcdf690a is 2 bytes after a block of size 104 alloc'd
      ==1863==    at 0x4C2935B: malloc (vg_replace_malloc.c:270)
      ==1863==    by 0x6562F5: UG::GetFreelistMemory(UG::HEAP*, int) (heaps.c:618)
      ==1863==    by 0x8252A5: UG::D3::GetMemoryForObjectNew(UG::HEAP*, int, int) (ugm.c:326)
      ==1863==    by 0x825814: CreateNode(UG::D3::grid*, UG::D3::vertex*, UG::D3::geom_object*, int, int) (ugm.c:584)
      ==1863==    by 0x8350FA: UG::D3::InsertBoundaryNode(UG::D3::grid*, void**) (ugm.c:4731)
      ==1863==    by 0x845384: UG::D3::InsertMesh(UG::D3::multigrid*, UG::D3::mesh*) (ugm.c:6661)
      ==1863==    by 0x831ACC: UG::D3::CreateMultiGrid(char*, char*, char*, unsigned long, int, int) (ugm.c:3297)
      ==1863==    by 0x958EEB: UG::D3::NewCommand(int, char**) (commands.c:1640)
      ==1863==    by 0x4D7C1E: Dune::UG_NS<3>::NewCommand(int, char**) (ugwrapper.hh:1028)
      ==1863==    by 0x4DF3EA: Dune::GridFactory<Dune::UGGrid<3> >::createGrid() (uggridfactory.cc:465)
      ==1863==    by 0x411425: Dune::StructuredGridFactory<Dune::UGGrid<3> >::createCubeGrid(Dune::FieldVector<double, 3> const&, Dune::FieldVector<double, 3> const&, std::array<unsigned int, 3ul> const&) (structuredgridfactory.hh:189)
      ==1863==    by 0x40ADF2: void testParallelUG<3>(bool) (test-parallel-ug.cc:518)
      
      [[Imported from SVN: r8529]]
      5383fef4
    • Oliver Sander's avatar
      [cleanup] Remove some unused forward declarations · 04c6b49e
      Oliver Sander authored
      [[Imported from SVN: r8528]]
      04c6b49e
  4. Nov 21, 2013
  5. Oct 14, 2013
  6. Sep 10, 2013
  7. Aug 20, 2013
    • Oliver Sander's avatar
      Fix compilation as C++11 · 1152a0ef
      Oliver Sander authored
      Fix problem with user-defined string literals.
      
      Thanks to Steffen Müthing for the patch.
      
      [[Imported from SVN: r8523]]
      1152a0ef
  8. Jul 23, 2013
  9. Jul 19, 2013
  10. Jul 18, 2013
  11. Jul 17, 2013
  12. Jul 16, 2013
  13. Jul 15, 2013
  14. Jul 14, 2013
  15. Jul 13, 2013
  16. Jul 11, 2013
    • Oliver Sander's avatar
      A few email addresses · 47a727c5
      Oliver Sander authored
      [[Imported from SVN: r8507]]
      47a727c5
    • Oliver Sander's avatar
      Add list of copyright holders · 82dfad5c
      Oliver Sander authored
      Copyright holders are precisely all those people that directly
      contributed to the code.  This list is assembled from the commit
      history.  Hence we have all author logins, but not all actual
      names yet.
      
      [[Imported from SVN: r8506]]
      82dfad5c
  17. Jul 10, 2013
  18. May 14, 2013
  19. May 11, 2013
    • Markus Blatt's avatar
      Remove local machine dependent paths. · ebb4c888
      Markus Blatt authored
      The were local paths that only existed on my particular machine in the test.
      Now we use the values provided by configure as we should have from the 
      beginning.
      I am sorry for having made such a newbie mistake previously.
      
      [[Imported from SVN: r8502]]
      ebb4c888
  20. Apr 26, 2013
  21. Apr 19, 2013
  22. Apr 04, 2013
  23. Mar 25, 2013
    • Oliver Sander's avatar
      Remove an old comment with a warning · fa2d3a1e
      Oliver Sander authored
      After 15 years of testing, let's simply assume that the code
      in question works.
      
      [[Imported from SVN: r8492]]
      fa2d3a1e
    • Oliver Sander's avatar
      Remove hack in header installation · 4c4a02c3
      Oliver Sander authored
      This Makefile contained a hack from the times when the AutoTools
      build system for UG was still incomplete: for header installation,
      all header files that 'find' would find in the source tree were
      simply copied to the installation directory.  But now the AutoTools
      system is in good shape and the headers can be installed in the
      standard way.  Therefore the old hack can be removed.
      
      [[Imported from SVN: r8491]]
      4c4a02c3
    • Oliver Sander's avatar
      Install header include/ddd.h · 3dc8dc5b
      Oliver Sander authored
      [[Imported from SVN: r8490]]
      3dc8dc5b
Loading