- Feb 17, 2014
-
-
Oliver Sander authored
-
Oliver Sander authored
-
- Feb 13, 2014
-
-
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]]
-
- Feb 02, 2014
-
-
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]]
-
Oliver Sander authored
[[Imported from SVN: r8528]]
-
- Nov 21, 2013
-
-
Markus Blatt authored
[[Imported from SVN: r8527]]
-
- Oct 14, 2013
-
-
Oliver Sander authored
Because, according to Steffen, MSIZE is already used by some OS X system header. [[Imported from SVN: r8526]]
-
Oliver Sander authored
Thanks to Steffen Müthing for the patch. [[Imported from SVN: r8525]]
-
- Sep 10, 2013
-
-
Markus Blatt authored
UG_PARALLEL and UG_FOR_DUNE can now be checked by CMake. [[Imported from SVN: r8524]]
-
- Aug 20, 2013
-
-
Oliver Sander authored
Fix problem with user-defined string literals. Thanks to Steffen Müthing for the patch. [[Imported from SVN: r8523]]
-
- Jul 23, 2013
-
-
Oliver Sander authored
[[Imported from SVN: r8522]]
-
- Jul 19, 2013
-
-
Oliver Sander authored
[[Imported from SVN: r8521]]
-
- Jul 18, 2013
-
-
Oliver Sander authored
[[Imported from SVN: r8520]]
-
- Jul 17, 2013
-
-
Oliver Sander authored
[[Imported from SVN: r8519]]
-
Oliver Sander authored
[[Imported from SVN: r8518]]
-
Oliver Sander authored
[[Imported from SVN: r8517]]
-
Oliver Sander authored
[[Imported from SVN: r8516]]
-
- Jul 16, 2013
-
-
Oliver Sander authored
[[Imported from SVN: r8515]]
-
Oliver Sander authored
[[Imported from SVN: r8514]]
-
- Jul 15, 2013
-
-
Oliver Sander authored
[[Imported from SVN: r8513]]
-
- Jul 14, 2013
-
-
Oliver Sander authored
[[Imported from SVN: r8512]]
-
- Jul 13, 2013
-
-
Oliver Sander authored
[[Imported from SVN: r8511]]
-
Oliver Sander authored
[[Imported from SVN: r8510]]
-
Oliver Sander authored
[[Imported from SVN: r8509]]
-
Oliver Sander authored
[[Imported from SVN: r8508]]
-
- Jul 11, 2013
-
-
Oliver Sander authored
[[Imported from SVN: r8507]]
-
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]]
-
- Jul 10, 2013
-
-
Oliver Sander authored
[[Imported from SVN: r8505]]
-
Oliver Sander authored
Still incomplete, more information needed [[Imported from SVN: r8504]]
-
- May 14, 2013
-
-
Markus Blatt authored
last revision. [[Imported from SVN: r8503]]
-
- May 11, 2013
-
-
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]]
-
- Apr 26, 2013
-
-
Oliver Sander authored
[[Imported from SVN: r8498]]
-
Oliver Sander authored
This will be used eventually for dynamic load balancing from Dune. This patch only adds the data fields, so code from Dune that uses them does at least compile. [[Imported from SVN: r8497]]
-
- Apr 19, 2013
-
-
Oliver Sander authored
This makes the DimX = ..., DimY = ..., ... output disappear for good. [[Imported from SVN: r8496]]
-
Oliver Sander authored
[[Imported from SVN: r8495]]
-
- Apr 04, 2013
-
-
Oliver Sander authored
This should fix the build breakage introduced a few patches ago [[Imported from SVN: r8494]]
-
Oliver Sander authored
[[Imported from SVN: r8493]]
-
- Mar 25, 2013
-
-
Oliver Sander authored
After 15 years of testing, let's simply assume that the code in question works. [[Imported from SVN: r8492]]
-
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]]
-
Oliver Sander authored
[[Imported from SVN: r8490]]
-