[pooma-dev] Problem trying to build parallel application
Dave Nystrom
wdn at lanl.gov
Fri May 11 19:36:08 UTC 2001
Jeffrey Oldham writes:
> Perhaps yesterday's patch does resolve the makeOwnCopy()
> difficulty you experienced. Will you please try it again? I do not
> know where the source code is located to test it myself.
Have you committed your changes yet? I have not seen them committed yet.
When you commit them, I can check them out and try them. I don't know how to
deal with patches - if it is easy and you can tell me how to use your patch,
I'd be happy to try it.
Dave
> Thanks,
> Jeffrey D. Oldham
> oldham at codesourcery.com
>
> On Wed, May 09, 2001 at 02:19:58PM -0600, Dave Nystrom wrote:
> > Hi Guys,
> >
> > I'm trying to build a parallel version of our application under RH Linux 6.2
> > using KCC-4.0d and am having compile problems. Below is part of the build
> > log. Could someone take a look at this and see what the problem is? I think
> > Stephen Smith might be a likely candidate.
> >
> > --
> > Dave Nystrom email: wdn at lanl.gov
> > LANL X-3 phone: 505-667-7913 fax: 505-665-3046
> >
> > ---------------------------build-log-------------------------------------
> > cd /usr/projects/blanca/usr/wdn/blanca_src_4.0/ApplicationsLayer/Demo/
> > date; /usr/bin/time -p make RECURSE=1 PASS=MPI1 app
> >
> > Setting csh aliases for Blanca source environment v 4.0 on host: mutley
> > Wed May 9 12:31:34 MDT 2001
> > COPYING... /usr/projects/blanca/packages/TecFramework/TecFramework_src/Main/main.cc to /scratch/wdn/obj_4.0/DEMO/LINUX_KCC_CART_XYZ_MPI/main.cc
> >
> > COMPILING... See /scratch/wdn/obj_4.0/DEMO/LINUX_KCC_CART_XYZ_MPI/Demo_src/include/DemoPCH.o_MPI1.info
> >
> > KCC -c /usr/projects/blanca/usr/wdn/blanca_src_4.0/ApplicationsLayer/Demo/Demo_src/include/DemoPCH.cc -o /scratch/wdn/obj_4.0/DEMO/LINUX_KCC_CART_XYZ_MPI/Demo_src/include/DemoPCH.o --output_dependencies /scratch/wdn/obj_4.0/DEMO/LINUX_KCC_CART_XYZ_MPI/Demo_src/include/DemoPCH.o.depend.mk.temp --diag_suppress 630 --create_pch /scratch/wdn/obj_4.0/DEMO/LINUX_KCC_CART_XYZ_MPI/DEMO_MPI1.pch -DTEC_USE_DEMO -DTEC_USE_PHYSICSBETA -DTEC_USE_HYDRODYNAMICS -DTEC_USE_PHYSICSSUPPORTBETA -DTEC_USE_PHYSICSBASECLASSES -DTEC_USE_POOMA2INTEGRATION -DTEC_USE_TECFRAMEWORK -DTEC_USE_POOMA2INSTANTIATIONS -DTEC_USE_STLINSTANTIATIONS -DTEC_USE_POOMA -DTEC_USE_CHEETAH -DTEC_USE_MM -DTEC_USE_PCG -DCART_XYZ -DDOUBLE_PRECISION -DPETE -DV034 -DTEC_NEW_POOMA_COMPRESSION -DTEC_LINUX -DTEC_USING_KCC_DEFINES -DTEC_KCC_INFINITE_COMPILE_TIME -DTEC_INST -DTEC_USE_PCH -I/usr/projects/blanca/usr/wdn/blanca_src_4.0/ApplicationsLayer/Demo -I/usr/projects/blanca/usr/wdn/blanca_src_4.0/PhysicsLayer/PhysicsBeta -I/usr/projects/blanca/usr/wdn/blanca_src_4.0/PhysicsLayer/Hydrodynamics -I/usr/projects/blanca/usr/wdn/blanca_src_4.0/PhysicsSupportLayer/PhysicsSupportBeta -I/usr/projects/blanca/usr/wdn/blanca_src_4.0/PhysicsSupportLayer/PhysicsBaseClasses -I/usr/projects/blanca/usr/wdn/blanca_src_4.0/TecIntegrationLayer/Pooma2Integration -I/usr/projects/blanca/packages/TecFramework -I/usr/projects/blanca/packages/BlancaInstantiations/Pooma2Instantiations -I/usr/projects/blanca/packages/BlancaInstantiations/STLInstantiations -I/usr/projects/blanca/packages/PoomaII/r2/src -I/usr/projects/blanca/packages/PoomaII/r2/lib/LINUX_KCC_DEBUG_CHEETAH_NOEX -I/usr/projects/blanca/packages/Cheetah/cheetah-1.0.0/src -I/usr/projects/blanca/packages/Cheetah/cheetah-1.0.0/lib/LINUX_KCC_DEBUG_NOEX -I/home/wdn/packages/mpich-1.2.1/include -I/usr/projects/blanca/packages/mm-1.1.1/include -I/usr/projects/blanca/packages/pcg/pcg_f77 --display_error_number -fpic --strict -D__KAI_STRICT --diag_suppress 450 --no_exceptions +K0 --no_kdebug
> >
> > "/usr/projects/blanca/usr/wdn/blanca_src_4.0/ApplicationsLayer/Demo/Demo_src/include/DemoPCH.cc": creating precompiled header file "/scratch/wdn/obj_4.0/DEMO/LINUX_KCC_CART_XYZ_MPI/DEMO_MPI1.pch"
> > real 26.25
> > user 14.68
> > sys 4.94
> >
> > Done compiling /scratch/wdn/obj_4.0/DEMO/LINUX_KCC_CART_XYZ_MPI/Demo_src/include/DemoPCH.o
> >
> > COMPILING... See /scratch/wdn/obj_4.0/DEMO/LINUX_KCC_CART_XYZ_MPI/main.o_MPI1.info
> >
> > KCC -c /scratch/wdn/obj_4.0/DEMO/LINUX_KCC_CART_XYZ_MPI/main.cc -o /scratch/wdn/obj_4.0/DEMO/LINUX_KCC_CART_XYZ_MPI/main.o --output_dependencies /scratch/wdn/obj_4.0/DEMO/LINUX_KCC_CART_XYZ_MPI/main.o.depend.mk.temp --diag_suppress 630 --COMPDO_fe_cc2c --pch_ignore_dir --use_pch /scratch/wdn/obj_4.0/DEMO/LINUX_KCC_CART_XYZ_MPI/DEMO_MPI1.pch -DTEC_USE_DEMO -DTEC_USE_PHYSICSBETA -DTEC_USE_HYDRODYNAMICS -DTEC_USE_PHYSICSSUPPORTBETA -DTEC_USE_PHYSICSBASECLASSES -DTEC_USE_POOMA2INTEGRATION -DTEC_USE_TECFRAMEWORK -DTEC_USE_POOMA2INSTANTIATIONS -DTEC_USE_STLINSTANTIATIONS -DTEC_USE_POOMA -DTEC_USE_CHEETAH -DTEC_USE_MM -DTEC_USE_PCG -DCART_XYZ -DDOUBLE_PRECISION -DPETE -DV034 -DTEC_NEW_POOMA_COMPRESSION -DTEC_LINUX -DTEC_USING_KCC_DEFINES -DTEC_KCC_INFINITE_COMPILE_TIME -DTEC_INST -DTEC_USE_PCH -I/usr/projects/blanca/usr/wdn/blanca_src_4.0/ApplicationsLayer/Demo -I/usr/projects/blanca/usr/wdn/blanca_src_4.0/PhysicsLayer/PhysicsBeta -I/usr/projects/blanca/usr/wdn/blanca_src_4.0/PhysicsLayer/Hydrodynamics -I/usr/projects/blanca/usr/wdn/blanca_src_4.0/PhysicsSupportLayer/PhysicsSupportBeta -I/usr/projects/blanca/usr/wdn/blanca_src_4.0/PhysicsSupportLayer/PhysicsBaseClasses -I/usr/projects/blanca/usr/wdn/blanca_src_4.0/TecIntegrationLayer/Pooma2Integration -I/usr/projects/blanca/packages/TecFramework -I/usr/projects/blanca/packages/BlancaInstantiations/Pooma2Instantiations -I/usr/projects/blanca/packages/BlancaInstantiations/STLInstantiations -I/usr/projects/blanca/packages/PoomaII/r2/src -I/usr/projects/blanca/packages/PoomaII/r2/lib/LINUX_KCC_DEBUG_CHEETAH_NOEX -I/usr/projects/blanca/packages/Cheetah/cheetah-1.0.0/src -I/usr/projects/blanca/packages/Cheetah/cheetah-1.0.0/lib/LINUX_KCC_DEBUG_NOEX -I/home/wdn/packages/mpich-1.2.1/include -I/usr/projects/blanca/packages/mm-1.1.1/include -I/usr/projects/blanca/packages/pcg/pcg_f77 --display_error_number -fpic --strict -D__KAI_STRICT --diag_suppress 450 --no_exceptions +K0 --no_kdebug
> >
> > real 12.92
> > user 4.74
> > sys 0.56
> >
> > Done compiling /scratch/wdn/obj_4.0/DEMO/LINUX_KCC_CART_XYZ_MPI/main.o
> >
> > .........Stuff Deleted............
> >
> > KCC -o /scratch/wdn/obj_4.0/HYDRODYNAMICS/LINUX_KCC_CART_XYZ_MPI/libhydrodynamics.so --COMPO_ln -Wl,-noinhibit-exec --no_exceptions --parallel_build 1 /scratch/wdn/obj_4.0/HYDRODYNAMICS/LINUX_KCC_CART_XYZ_MPI/Hydrodynamics_src/HydrodynamicsGroup.o /scratch/wdn/obj_4.0/HYDRODYNAMICS/LINUX_KCC_CART_XYZ_MPI/Hydrodynamics_src/CompatibleHydro/SymmetryRelations.o /scratch/wdn/obj_4.0/HYDRODYNAMICS/LINUX_KCC_CART_XYZ_MPI/Hydrodynamics_src/CompatibleHydro/CompatibleRelations.o /scratch/wdn/obj_4.0/HYDRODYNAMICS/LINUX_KCC_CART_XYZ_MPI/Hydrodynamics_src/CompatibleHydro/Commands/LagRadialVelocity.o /scratch/wdn/obj_4.0/HYDRODYNAMICS/LINUX_KCC_CART_XYZ_MPI/Hydrodynamics_src/CompatibleHydro/Commands/SetBrickCoordinates.o /scratch/wdn/obj_4.0/HYDRODYNAMICS/LINUX_KCC_CART_XYZ_MPI/Hydrodynamics_src/CompatibleHydro/Commands/SetFieldValues.o /scratch/wdn/obj_4.0/HYDRODYNAMICS/LINUX_KCC_CART_XYZ_MPI/Hydrodynamics_src/CompatibleHydro/Commands/SetVertexPoints.o /scratch/wdn/obj_4.0/HYDRODYNAMICS/LINUX_KCC_CART_XYZ_MPI/Hydrodynamics_src/EOS/GammaLaw.o /scratch/wdn/obj_4.0/PHYSICSSUPPORTBETA/LINUX_KCC_CART_XYZ_MPI/libphysicssupportbeta.so /scratch/wdn/obj_4.0/PHYSICSBASECLASSES/LINUX_KCC_CART_XYZ_MPI/libphysicsbaseclasses.so /scratch/wdn/obj_4.0/POOMA2INTEGRATION/LINUX_KCC_CART_XYZ_MPI/libpooma2integration.so /usr/projects/blanca/packages/TecFramework/lib/TECFRAMEWORK/LINUX_KCC_DEBUG_SHARED_NOEX/libtecframework.so /usr/projects/blanca/packages/BlancaInstantiations/Pooma2Instantiations/lib/POOMA2INSTANTIATIONS/LINUX_KCC_DEBUG_CHEETAH_SHARED_NOEX/libpooma2instantiations.so /usr/projects/blanca/packages/BlancaInstantiations/STLInstantiations/lib/STLINSTANTIATIONS/LINUX_KCC_DEBUG_SHARED_NOEX/libstlinstantiations.so /usr/projects/blanca/packages/PoomaII/r2/lib/LINUX_KCC_DEBUG_CHEETAH_NOEX/libpooma.a
> >
> > cd "/home/wdn/blanca/usr/wdn/blanca_src_4.0/ApplicationsLayer/Demo"
> > "/usr/projects/blanca/packages/PoomaII/r2/src/Engine/MultiPatchEngine.cpp", line 252: error #135:
> > class "Engine<1, poomalote::Real, Remote<CompressibleBrick>>" has no
> > member "makeOwnCopy"
> > data()[i].makeOwnCopy();
> > ^
> > detected during:
> > instantiation of "Engine<Dim, T, MultiPatch<LayoutTag,
> > PatchTag>>::Engine_t &Engine<Dim, T,
> > MultiPatch<LayoutTag, PatchTag>>::makeOwnCopy() [with
> > Dim=1, T=poomalote::Real, LayoutTag=GridTag,
> > PatchTag=Remote<CompressibleBrick>]" at line 482 of
> > "/usr/projects/blanca/packages/PoomaII/r2/src/NewField/Fi
> > eldEngine/FieldEngineBase.h"
> > instantiation of "void FieldEngineBase<Dim, T,
> > EngineTag>::makeOwnCopy(const Subject &) [with Dim=1,
> > T=poomalote::Real,
> > EngineTag=poomalote::ModelTraits<poomalote::OneDF<poomalo
> > te::DefaultTraits>>::EngineTag,
> > Subject=Field<poomalote::ModelTraits<poomalote::OneDF<poo
> > malote::DefaultTraits>>::MeshTag, poomalote::Real,
> > poomalote::ModelTraits<poomalote::OneDF<poomalote::Defaul
> > tTraits>>::EngineTag>]" at line 983 of
> > "/usr/projects/blanca/packages/PoomaII/r2/src/NewField/Fi
> > eld.h"
> > instantiation of "void Field<GeometryTag, T,
> > EngineTag>::makeOwnCopy() [with
> > GeometryTag=poomalote::ModelTraits<poomalote::OneDF<pooma
> > lote::DefaultTraits>>::MeshTag, T=poomalote::Real,
> > EngineTag=poomalote::ModelTraits<poomalote::OneDF<poomalo
> > te::DefaultTraits>>::EngineTag]" at line 69 of
> > "/usr/projects/blanca/usr/wdn/blanca_src_4.0/PhysicsSuppo
> > rtLayer/PhysicsBaseClasses/PhysicsBaseClasses_src/HelperC
> > lasses/MMField.t.hh"
> > instantiation of "void
> > PhysicsBaseClasses::matMMWeightedAverage(const Field<G1,
> > T1, E1> &, const Field<MeshTag, poomalote::Real,
> > EngineTag> &, const Field<G1, T1, E1> &, bool) [with
> > MeshTag=poomalote::ModelTraits<poomalote::OneDF<poomalote
> > ::DefaultTraits>>::MeshTag, T=poomalote::Real,
> > EngineTag=poomalote::ModelTraits<poomalote::OneDF<poomalo
> > te::DefaultTraits>>::EngineTag]" at line 579 of
> > "/usr/projects/blanca/usr/wdn/blanca_src_4.0/PhysicsLayer
> > /Hydrodynamics/Hydrodynamics_src/CompatibleHydro/Compatib
> > leRelations.t.hh"
> > instantiation of "void
> > Hydrodynamics::CompatibleRelations<Traits>::calcAvgQuanti
> > ty(const
> > Hydrodynamics::CompatibleRelations<Traits>::ScalarField
> > &, const
> > Hydrodynamics::CompatibleRelations<Traits>::ScalarField
> > &, const
> > Hydrodynamics::CompatibleRelations<Traits>::ScalarField
> > &) [with
> > Traits=poomalote::OneDF<poomalote::DefaultTraits>]"
> >
> > "/usr/projects/blanca/packages/PoomaII/r2/src/Engine/MultiPatchEngine.cpp", line 252: error #135:
> > class "Engine<2, poomalote::Real, Remote<CompressibleBrick>>" has no
> > member "makeOwnCopy"
> > data()[i].makeOwnCopy();
> > ^
> > detected during:
> > instantiation of "Engine<Dim, T, MultiPatch<LayoutTag,
> > PatchTag>>::Engine_t &Engine<Dim, T,
> > MultiPatch<LayoutTag, PatchTag>>::makeOwnCopy() [with
> > Dim=2, T=poomalote::Real, LayoutTag=GridTag,
> > PatchTag=Remote<CompressibleBrick>]" at line 482 of
> > "/usr/projects/blanca/packages/PoomaII/r2/src/NewField/Fi
> > eldEngine/FieldEngineBase.h"
> > instantiation of "void FieldEngineBase<Dim, T,
> > EngineTag>::makeOwnCopy(const Subject &) [with Dim=2,
> > T=poomalote::Real,
> > EngineTag=poomalote::ModelTraits<poomalote::TwoDF<poomalo
> > te::DefaultTraits>>::EngineTag,
> > Subject=Field<poomalote::ModelTraits<poomalote::TwoDF<poo
> > malote::DefaultTraits>>::MeshTag, poomalote::Real,
> > poomalote::ModelTraits<poomalote::TwoDF<poomalote::Defaul
> > tTraits>>::EngineTag>]" at line 983 of
> > "/usr/projects/blanca/packages/PoomaII/r2/src/NewField/Fi
> > eld.h"
> > instantiation of "void Field<GeometryTag, T,
> > EngineTag>::makeOwnCopy() [with
> > GeometryTag=poomalote::ModelTraits<poomalote::TwoDF<pooma
> > lote::DefaultTraits>>::MeshTag, T=poomalote::Real,
> > EngineTag=poomalote::ModelTraits<poomalote::TwoDF<poomalo
> > te::DefaultTraits>>::EngineTag]" at line 69 of
> > "/usr/projects/blanca/usr/wdn/blanca_src_4.0/PhysicsSuppo
> > rtLayer/PhysicsBaseClasses/PhysicsBaseClasses_src/HelperC
> > lasses/MMField.t.hh"
> > instantiation of "void
> > PhysicsBaseClasses::matMMWeightedAverage(const Field<G1,
> > T1, E1> &, const Field<MeshTag, poomalote::Real,
> > EngineTag> &, const Field<G1, T1, E1> &, bool) [with
> > MeshTag=poomalote::ModelTraits<poomalote::TwoDF<poomalote
> > ::DefaultTraits>>::MeshTag, T=poomalote::Real,
> > EngineTag=poomalote::ModelTraits<poomalote::TwoDF<poomalo
> > te::DefaultTraits>>::EngineTag]" at line 579 of
> > "/usr/projects/blanca/usr/wdn/blanca_src_4.0/PhysicsLayer
> > /Hydrodynamics/Hydrodynamics_src/CompatibleHydro/Compatib
> > leRelations.t.hh"
> > instantiation of "void
> > Hydrodynamics::CompatibleRelations<Traits>::calcAvgQuanti
> > ty(const
> > Hydrodynamics::CompatibleRelations<Traits>::ScalarField
> > &, const
> > Hydrodynamics::CompatibleRelations<Traits>::ScalarField
> > &, const
> > Hydrodynamics::CompatibleRelations<Traits>::ScalarField
> > &) [with
> > Traits=poomalote::TwoDF<poomalote::DefaultTraits>]"
> >
> > "/usr/projects/blanca/packages/PoomaII/r2/src/Engine/MultiPatchEngine.cpp", line 252: error #135:
> > class "Engine<3, poomalote::Real, Remote<CompressibleBrick>>" has no
> > member "makeOwnCopy"
> > data()[i].makeOwnCopy();
> > ^
> > detected during:
> > instantiation of "Engine<Dim, T, MultiPatch<LayoutTag,
> > PatchTag>>::Engine_t &Engine<Dim, T,
> > MultiPatch<LayoutTag, PatchTag>>::makeOwnCopy() [with
> > Dim=3, T=poomalote::Real, LayoutTag=GridTag,
> > PatchTag=Remote<CompressibleBrick>]" at line 482 of
> > "/usr/projects/blanca/packages/PoomaII/r2/src/NewField/Fi
> > eldEngine/FieldEngineBase.h"
> > instantiation of "void FieldEngineBase<Dim, T,
> > EngineTag>::makeOwnCopy(const Subject &) [with Dim=3,
> > T=poomalote::Real,
> > EngineTag=poomalote::ModelTraits<poomalote::ThreeDF<pooma
> > lote::DefaultTraits>>::EngineTag,
> > Subject=Field<poomalote::ModelTraits<poomalote::ThreeDF<p
> > oomalote::DefaultTraits>>::MeshTag, poomalote::Real,
> > poomalote::ModelTraits<poomalote::ThreeDF<poomalote::Defa
> > ultTraits>>::EngineTag>]" at line 983 of
> > "/usr/projects/blanca/packages/PoomaII/r2/src/NewField/Fi
> > eld.h"
> > instantiation of "void Field<GeometryTag, T,
> > EngineTag>::makeOwnCopy() [with
> > GeometryTag=poomalote::ModelTraits<poomalote::ThreeDF<poo
> > malote::DefaultTraits>>::MeshTag, T=poomalote::Real,
> > EngineTag=poomalote::ModelTraits<poomalote::ThreeDF<pooma
> > lote::DefaultTraits>>::EngineTag]" at line 69 of
> > "/usr/projects/blanca/usr/wdn/blanca_src_4.0/PhysicsSuppo
> > rtLayer/PhysicsBaseClasses/PhysicsBaseClasses_src/HelperC
> > lasses/MMField.t.hh"
> > instantiation of "void
> > PhysicsBaseClasses::matMMWeightedAverage(const Field<G1,
> > T1, E1> &, const Field<MeshTag, poomalote::Real,
> > EngineTag> &, const Field<G1, T1, E1> &, bool) [with
> > MeshTag=poomalote::ModelTraits<poomalote::ThreeDF<poomalo
> > te::DefaultTraits>>::MeshTag, T=poomalote::Real,
> > EngineTag=poomalote::ModelTraits<poomalote::ThreeDF<pooma
> > lote::DefaultTraits>>::EngineTag]" at line 579 of
> > "/usr/projects/blanca/usr/wdn/blanca_src_4.0/PhysicsLayer
> > /Hydrodynamics/Hydrodynamics_src/CompatibleHydro/Compatib
> > leRelations.t.hh"
> > instantiation of "void
> > Hydrodynamics::CompatibleRelations<Traits>::calcAvgQuanti
> > ty(const
> > Hydrodynamics::CompatibleRelations<Traits>::ScalarField
> > &, const
> > Hydrodynamics::CompatibleRelations<Traits>::ScalarField
> > &, const
> > Hydrodynamics::CompatibleRelations<Traits>::ScalarField
> > &) [with
> > Traits=poomalote::ThreeDF<poomalote::DefaultTraits>]"
> >
> > 3 errors detected in the compilation of "/usr/projects/blanca/usr/wdn/blanca_src_4.0/PhysicsLayer/Hydrodynamics/Hydrodynamics_src/CompatibleHydro/CompatibleRelations.cc".
> > driver: Compilation failed.
> > Recompiling /scratch/wdn/obj_4.0/HYDRODYNAMICS/LINUX_KCC_CART_XYZ_MPI/Hydrodynamics_src/CompatibleHydro/CompatibleRelations.o
> > Error: Unable to recompile /scratch/wdn/obj_4.0/HYDRODYNAMICS/LINUX_KCC_CART_XYZ_MPI/Hydrodynamics_src/CompatibleHydro/CompatibleRelations.o.
> > Command exited with non-zero status 2
> > real 279.50
> > user 0.28
> > sys 0.01
> > mv: /scratch/wdn/obj_4.0/HYDRODYNAMICS/LINUX_KCC_CART_XYZ_MPI/libhydrodynamics.so: No such file or directory
> > make[1]: *** [/scratch/wdn/obj_4.0/HYDRODYNAMICS/LINUX_KCC_CART_XYZ_MPI/libhydrodynamics.so] Error 1
> > make: *** [/scratch/wdn/obj_4.0/HYDRODYNAMICS/LINUX_KCC_CART_XYZ_MPI/libhydrodynamics.so] Error 2
> > Command exited with non-zero status 2
> > real 5983.14
> > user 2052.11
> > sys 160.74
> >
> > Compilation exited abnormally with code 2 at Wed May 9 14:11:17
>
> --
> Jeffrey D. Oldham
> oldham at codesourcery.comIndex: Array/Array.h
> ===================================================================
> RCS file: /home/pooma/Repository/r2/src/Array/Array.h,v
> retrieving revision 1.139
> diff -c -p -r1.139 Array.h
> *** Array/Array.h 2001/04/20 21:16:23 1.139
> --- Array/Array.h 2001/05/11 02:37:11
> ***************
> *** 29,34 ****
> --- 29,35 ----
> //-----------------------------------------------------------------------------
> // Classes:
> // Array
> + // View0
> // View[1-7]<Array,various domains>
> // LeafFunctor<Array, DomainFunctorTag>
> // LeafFunctor<Array, ViewFunctorTag<Domain> >
> *************** public:
> *** 1763,1773 ****
> inline Domain_t domain() const
> {
> return engine_m.domain();
> - }
> -
> - inline Domain_t innerDomain() const
> - {
> - return engine_m.innerDomain();
> }
>
> inline Domain_t physicalDomain() const
> --- 1764,1769 ----
> Index: Engine/CompressibleBlock.h
> ===================================================================
> RCS file: /home/pooma/Repository/r2/src/Engine/CompressibleBlock.h,v
> retrieving revision 1.27
> diff -c -p -r1.27 CompressibleBlock.h
> *** Engine/CompressibleBlock.h 2000/07/11 22:13:00 1.27
> --- Engine/CompressibleBlock.h 2001/05/11 02:37:13
> *************** private:
> *** 531,541 ****
>
> CompressibleBlockController(const CompressibleBlockController& model)
> : Observable<T*>(ptr_m),
> - size_m(model.size_m),
> compressible_m(!Pooma::neverCompress()),
> dataObject_m(model.dataObject_m.affinity()),
> ! ucOffset_m(model.ucOffset_m),
> ! viewcount_m(0)
> {
> // Lock the model while we get information pertaining to it
> // being compressed or not (such data can't be initialized in
> --- 531,541 ----
>
> CompressibleBlockController(const CompressibleBlockController& model)
> : Observable<T*>(ptr_m),
> compressible_m(!Pooma::neverCompress()),
> + viewcount_m(0),
> dataObject_m(model.dataObject_m.affinity()),
> ! size_m(model.size_m),
> ! ucOffset_m(model.ucOffset_m)
> {
> // Lock the model while we get information pertaining to it
> // being compressed or not (such data can't be initialized in
> Index: Engine/CompressibleBrick.cpp
> ===================================================================
> RCS file: /home/pooma/Repository/r2/src/Engine/CompressibleBrick.cpp,v
> retrieving revision 1.24
> diff -c -p -r1.24 CompressibleBrick.cpp
> *** Engine/CompressibleBrick.cpp 2000/07/11 23:06:40 1.24
> --- Engine/CompressibleBrick.cpp 2001/05/11 02:37:13
> *************** Engine(const Engine<Dim,T,CompressibleBr
> *** 501,506 ****
> --- 501,542 ----
>
> //-----------------------------------------------------------------------------
> //
> + // Engine<Dim,T,CompressibleBrickView> & makeOwnCopy()
> + //
> + // Causes the CompressibleBrickView-Engine to obtain a private copy of the data
> + // that it refers to.
> + //
> + //-----------------------------------------------------------------------------
> +
> + template <int Dim, class T>
> + Engine<Dim,T,CompressibleBrickView> &Engine<Dim,T,CompressibleBrickView>::makeOwnCopy()
> + {
> + // JIM: This is probably not thread safe???
> + // There is a race from checking isShared to getting into cblock's
> + // makeOwnCopy, which is thread safe. As a result, this should only
> + // be called after a blockAndEvaluate() to ensure that nobody else
> + // is messing with the underlying CBC while this is
> + // occuring. (Logically, this is necessary anyway since you probably
> + // want a copy of the data that results from all previous
> + // computations having taken place.) Also, as mentioned elsewhere,
> + // the current implementation results in copying uncompressed data
> + // in the parse thread, which will result in incorrect memory
> + // affinity.
> +
> + if (cblock_m.isControllerValidUnlocked() && cblock_m.isShared())
> + {
> + cblock_m.detach(this);
> + cblock_m.makeOwnCopy();
> + cblock_m.attach(this);
> +
> + data0_m = cblock_m.data() + (cblock_m.compressed() ? 0 : baseOffset());
> + }
> +
> + return *this;
> + }
> +
> + //-----------------------------------------------------------------------------
> + //
> // Engine<Dim, T, CompressibleBrickView>::
> // elementsCompressed() const
> //
> Index: Engine/CompressibleBrick.h
> ===================================================================
> RCS file: /home/pooma/Repository/r2/src/Engine/CompressibleBrick.h,v
> retrieving revision 1.67
> diff -c -p -r1.67 CompressibleBrick.h
> *** Engine/CompressibleBrick.h 2000/07/11 23:06:40 1.67
> --- Engine/CompressibleBrick.h 2001/05/11 02:37:14
> *************** public:
> *** 237,242 ****
> --- 237,250 ----
>
> inline Layout_t layout() const { return Layout_t(domain_m); }
>
> + //---------------------------------------------------------------------------
> + // Return the domain and base domain.
> +
> + inline const Domain_t &domain() const
> + {
> + return layout().domain();
> + }
> +
> // Get a private copy of data viewed by this Engine.
>
> Engine_t &makeOwnCopy();
> *************** public:
> *** 557,562 ****
> --- 565,582 ----
> ElementRef_t operator()(const Loc<Dim> &) const;
> Element_t read(const Loc<Dim> &) const;
>
> + //---------------------------------------------------------------------------
> + // Return the domain and base domain.
> +
> + inline const Domain_t &domain() const
> + {
> + return Layout_t(domain_m).domain();
> + }
> +
> + // Get a private copy of data viewed by this Engine.
> +
> + Engine_t &makeOwnCopy();
> +
> // Return the block controller (uncompressed).
> // See comments in CompressibleBrick above.
>
> *************** struct NewEngine<Engine<Dim,T,Compressib
> *** 801,806 ****
> --- 821,831 ----
> template <int Dim, class T>
> struct ElementProperties<Engine<Dim, T, CompressibleBrick> >
> : public MakeOwnCopyProperties<Engine<Dim, T, CompressibleBrick> >
> + { };
> +
> + template <int Dim, class T>
> + struct ElementProperties<Engine<Dim, T, CompressibleBrickView> >
> + : public MakeOwnCopyProperties<Engine<Dim, T, CompressibleBrickView> >
> { };
>
>
> Index: Layout/Node.h
> ===================================================================
> RCS file: /home/pooma/Repository/r2/src/Layout/Node.h,v
> retrieving revision 1.35
> diff -c -p -r1.35 Node.h
> *** Layout/Node.h 2001/05/04 15:41:28 1.35
> --- Layout/Node.h 2001/05/11 02:37:15
> *************** public:
> *** 121,128 ****
> Node(const Domain_t &owned, const AllocatedDomain_t &allocated,
> Context_t c, ID_t gid, ID_t lid = (-1))
> : domain_m(owned), allocated_m(allocated),
> ! context_m(c), global_m(gid), local_m(lid),
> ! affinity_m(-1)
> {
> PAssert(owned.size() >= 0);
> PAssert(allocated.size() >= 0);
> --- 121,128 ----
> Node(const Domain_t &owned, const AllocatedDomain_t &allocated,
> Context_t c, ID_t gid, ID_t lid = (-1))
> : domain_m(owned), allocated_m(allocated),
> ! local_m(lid), global_m(gid),
> ! context_m(c), affinity_m(-1)
> {
> PAssert(owned.size() >= 0);
> PAssert(allocated.size() >= 0);
> *************** public:
> *** 130,137 ****
> }
>
> Node(const Domain_t &d, Context_t c, ID_t gid, ID_t lid = (-1))
> ! : domain_m(d), allocated_m(d), context_m(c), global_m(gid), local_m(lid),
> ! affinity_m(-1)
> {
> PAssert(d.size() >= 0);
> PAssert(gid >= 0);
> --- 130,138 ----
> }
>
> Node(const Domain_t &d, Context_t c, ID_t gid, ID_t lid = (-1))
> ! : domain_m(d), allocated_m(d),
> ! local_m(lid), global_m(gid),
> ! context_m(c), affinity_m(-1)
> {
> PAssert(d.size() >= 0);
> PAssert(gid >= 0);
> *************** public:
> *** 152,159 ****
>
> Node(int affinity, const Domain_t &d,
> Context_t c, ID_t gid, ID_t lid = (-1))
> ! : domain_m(d), allocated_m(d), context_m(c), global_m(gid), local_m(lid),
> ! affinity_m(affinity)
> {
> PAssert(d.size() >= 0);
> PAssert(gid >= 0);
> --- 153,161 ----
>
> Node(int affinity, const Domain_t &d,
> Context_t c, ID_t gid, ID_t lid = (-1))
> ! : domain_m(d), allocated_m(d),
> ! local_m(lid), global_m(gid),
> ! context_m(c), affinity_m(affinity)
> {
> PAssert(d.size() >= 0);
> PAssert(gid >= 0);
> *************** public:
> *** 172,180 ****
>
> template<class ODom, class OAlloc>
> Node(const Node<ODom,OAlloc> &n)
> ! : domain_m(n.domain()), context_m(n.context()), allocated_m(n.allocated()),
> ! global_m(n.globalID()), local_m(n.localID()),
> ! affinity_m(n.affinity())
> {
> }
>
> --- 174,182 ----
>
> template<class ODom, class OAlloc>
> Node(const Node<ODom,OAlloc> &n)
> ! : domain_m(n.domain()), allocated_m(n.allocated()),
> ! local_m(n.localID()), global_m(n.globalID()),
> ! context_m(n.context()), affinity_m(n.affinity())
> {
> }
>
> Index: NewField/FieldEngine/FieldEngine.NoGeometry.h
> ===================================================================
> RCS file: /home/pooma/Repository/r2/src/NewField/FieldEngine/FieldEngine.NoGeometry.h,v
> retrieving revision 1.4
> diff -c -p -r1.4 FieldEngine.NoGeometry.h
> *** NewField/FieldEngine/FieldEngine.NoGeometry.h 2001/04/10 23:13:25 1.4
> --- NewField/FieldEngine/FieldEngine.NoGeometry.h 2001/05/11 02:37:15
> *************** public:
> *** 254,267 ****
> // This field-engine always has vert-centering and the total domain is
> // given by the engine.
>
> ! inline const Domain_t &physicalCellDomain() const
> {
> ! return shrink(physicalDomain(), 1);
> }
>
> inline Domain_t totalCellDomain() const
> {
> ! return shrink(engine_m.domain(), 1);
> }
>
> Domain_t physicalDomain() const
> --- 254,267 ----
> // This field-engine always has vert-centering and the total domain is
> // given by the engine.
>
> ! inline const Domain_t physicalCellDomain() const
> {
> ! return shrinkRight(physicalDomain(), 1);
> }
>
> inline Domain_t totalCellDomain() const
> {
> ! return shrinkRight(engine_m.domain(), 1);
> }
>
> Domain_t physicalDomain() const
More information about the pooma-dev
mailing list