Code Monkey home page Code Monkey logo

Comments (8)

jtostie avatar jtostie commented on July 30, 2024

Hi Brian,

My initial reaction is that we should pursue option (2) above. The features in these models that are causing issues were added in our effort to move towards kokkos compatibility. It seems like we could create a flag based on known compiler versions.

I don't like the fact that you have to comment out code to get things to compile.

Any other thoughts @lxmota ?

from albany.

lxmota avatar lxmota commented on July 30, 2024

Yes, I agree that the preferred option is (2).

from albany.

jtostie avatar jtostie commented on July 30, 2024

Brian, as per our conversation today, go ahead and take a stab at providing an internal flag and appropriate code guards. Please let me know if you encounter any issues.

from albany.

bgranzow avatar bgranzow commented on July 30, 2024

Hi Jake. This commit
https://github.com/bgranzow/Albany/commit/a852c9d3398de7cc6a10bf9006e60ef9601aa78c
on my fork of Albany seems to have resolved the issues for me, while not adversely affecting normal Albany builds.

Specifying -D DISABLE_LAMBDAS=ON in the Albany config script optionally disables the three models which were problematic with the gcc 4.7.2. compiler. The variable defaults to OFF and should maintain the previous behavior by default.

This is a pretty easy fix to apply, but it might make the upcoming merges we discussed more difficult than they need to be. My plan is to hold off applying these changes until those merges are complete. Sound reasonable?

from albany.

jtostie avatar jtostie commented on July 30, 2024

Hi Brian, looks good to me, and what you suggest sounds reasonable. When the upcoming kokkos related merges occur in the LCM source, we can test and hopefully close this issue.

from albany.

ibaned avatar ibaned commented on July 30, 2024

@bgranzow says w.r.t. 3a53f55:

Unfortunately, these changes did not resolve the error associated with #9 when I compiled at this ocmmit 64558eb.

My guess is this has more to do with how ParallelConstitutiveModel<...>::computeStateParallel(...) is implemented, not really how it was instantiated.

from albany.

ibaned avatar ibaned commented on July 30, 2024

@bgranzow here is another attempted fix for you to try: efa6968. Its in the dont_capture_this branch. Since the compiler bug has to do with a lambda capturing the this pointer, I tried to avoid doing that.

from albany.

bgranzow avatar bgranzow commented on July 30, 2024

The 'dont_capture_this' branch compiles without any warnings, and is more correct than the workarounds I suggested. I'm closing this issue.

Thanks @ibaned!

from albany.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.