<workflowRun _class='org.jenkinsci.plugins.workflow.job.WorkflowRun'><action _class='hudson.model.CauseAction'><cause _class='hudson.triggers.SCMTrigger$SCMTriggerCause'><shortDescription>Started by an SCM change</shortDescription></cause></action><action></action><action _class='org.jenkinsci.plugins.workflow.libs.LibrariesAction'></action><action></action><action></action><action _class='hudson.plugins.git.util.BuildData'><buildsByBranchName><refsremotesoriginmaster _class='hudson.plugins.git.util.Build'><buildNumber>182</buildNumber><marked><SHA1>7f1decd0252e0b4d80f4b3873b0b48b6d3ec8631</SHA1><branch><SHA1>7f1decd0252e0b4d80f4b3873b0b48b6d3ec8631</SHA1><name>refs/remotes/origin/master</name></branch></marked><revision><SHA1>7f1decd0252e0b4d80f4b3873b0b48b6d3ec8631</SHA1><branch><SHA1>7f1decd0252e0b4d80f4b3873b0b48b6d3ec8631</SHA1><name>refs/remotes/origin/master</name></branch></revision></refsremotesoriginmaster></buildsByBranchName><lastBuiltRevision><SHA1>7f1decd0252e0b4d80f4b3873b0b48b6d3ec8631</SHA1><branch><SHA1>7f1decd0252e0b4d80f4b3873b0b48b6d3ec8631</SHA1><name>refs/remotes/origin/master</name></branch></lastBuiltRevision><remoteUrl>https://github.com/larson-group/clubb.git</remoteUrl><scmName></scmName></action><action></action><action _class='org.jenkinsci.plugins.workflow.cps.EnvActionImpl'><environment></environment></action><action></action><action></action><action></action><action _class='org.jenkinsci.plugins.displayurlapi.actions.RunDisplayAction'><artifactsUrl>http://carson.math.uwm.edu/jenkins/blue/organizations/jenkins/clubb_timestep_gfortran_tests/detail/clubb_timestep_gfortran_tests/182/artifacts</artifactsUrl><changesUrl>http://carson.math.uwm.edu/jenkins/blue/organizations/jenkins/clubb_timestep_gfortran_tests/detail/clubb_timestep_gfortran_tests/182/changes</changesUrl><displayUrl>http://carson.math.uwm.edu/jenkins/blue/organizations/jenkins/clubb_timestep_gfortran_tests/detail/clubb_timestep_gfortran_tests/182/</displayUrl><testsUrl>http://carson.math.uwm.edu/jenkins/blue/organizations/jenkins/clubb_timestep_gfortran_tests/detail/clubb_timestep_gfortran_tests/182/tests</testsUrl></action><action _class='org.jenkinsci.plugins.pipeline.modeldefinition.actions.RestartDeclarativePipelineAction'><restartEnabled>false</restartEnabled></action><action></action><action _class='org.jenkinsci.plugins.workflow.job.views.FlowGraphAction'><node _class='org.jenkinsci.plugins.workflow.graph.FlowStartNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepStartNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepStartNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepStartNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepStartNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepAtomNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepEndNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepEndNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepStartNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepStartNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepStartNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepStartNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepAtomNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepEndNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepEndNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepStartNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepStartNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepAtomNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepEndNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepEndNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepStartNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepStartNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepStartNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepStartNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepAtomNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepEndNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepEndNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepEndNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepEndNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepEndNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepEndNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepEndNode'></node><node _class='org.jenkinsci.plugins.workflow.cps.nodes.StepEndNode'></node><node _class='org.jenkinsci.plugins.workflow.graph.FlowEndNode'></node></action><action></action><action></action><action></action><building>false</building><displayName>#182</displayName><duration>1816001</duration><estimatedDuration>596301</estimatedDuration><fullDisplayName>clubb_timestep_gfortran_tests #182</fullDisplayName><id>182</id><keepLog>false</keepLog><number>182</number><queueId>20007</queueId><result>SUCCESS</result><timestamp>1674119588455</timestamp><url>http://carson.math.uwm.edu/jenkins/job/clubb_timestep_gfortran_tests/182/</url><changeSet _class='hudson.plugins.git.GitChangeSetList'><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>src/CLUBB_core/advance_clubb_core_module.F90</affectedPath><affectedPath>src/CLUBB_core/model_flags.F90</affectedPath><affectedPath>src/CLUBB_core/mixing_length.F90</affectedPath><affectedPath>src/CLUBB_core/saturation.F90</affectedPath><commitId>7f1decd0252e0b4d80f4b3873b0b48b6d3ec8631</commitId><timestamp>1674081416000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></author><authorEmail>noreply@github.com</authorEmail><comment>Restructuring and Porting of Compute_mixing_length subroutine(Phase 2) (#1054)

* Restructuring and Porting of Compute_mixing_length subroutine(Phase 2)

Restructure: sat_mixrat_liq_2D_acc is being directly called instead of
calling the 1D version inside the column loop. Changing sat_mixrat_liq_2D_acc
to a subroutine from a function and adding output array, start_index as
additional argument. This is a workaround for passing sub-arrays. The OpenACC
doen't like the sub-arrays being passed and fails the validation.

Porting: OpenACC directives are added inside sat_mixrat_liq_2D_acc for porting

Validation: Answers are Bit for Bit with arm-multicolumn case + nvhpc compiler

* Fix for compilation issues

Issue 1: Missed out declaring 'start_index' while intergrating the
change

Issue 2: The use of error_code module and the procedures inside it
causes OpenACC compilation issues when run on the device.

* Removing the sat_mixrat_liq_acc and sat_mixrat_liq_2D_acc, making the normal sat_mixrat_liq work for all current use cases, and making the other versions of sat_mixrat_liq (bolton,gfdl,lookup) functional with OPENACC.

Co-authored-by: huebler &lt;huebler@uwm.edu&gt;
</comment><date>2023-01-18 16:36:56 -0600</date><id>7f1decd0252e0b4d80f4b3873b0b48b6d3ec8631</id><msg>Restructuring and Porting of Compute_mixing_length subroutine(Phase 2) (#1054)</msg><path><editType>edit</editType><file>src/CLUBB_core/saturation.F90</file></path><path><editType>edit</editType><file>src/CLUBB_core/mixing_length.F90</file></path><path><editType>edit</editType><file>src/CLUBB_core/advance_clubb_core_module.F90</file></path><path><editType>edit</editType><file>src/CLUBB_core/model_flags.F90</file></path></item><kind>git</kind></changeSet><culprit><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName><id>noreply</id></culprit><inProgress>false</inProgress><nextBuild><action _class='hudson.model.CauseAction'><cause _class='hudson.triggers.SCMTrigger$SCMTriggerCause'><shortDescription>Started by an SCM change</shortDescription></cause></action><action></action><action _class='org.jenkinsci.plugins.workflow.libs.LibrariesAction'></action><action></action><action></action><action _class='hudson.plugins.git.util.BuildData'><buildsByBranchName><refsremotesoriginmaster _class='hudson.plugins.git.util.Build'><buildNumber>183</buildNumber><marked><SHA1>dda5e8c57edb41b73340c0f9578d7c327b18e076</SHA1><branch><SHA1>dda5e8c57edb41b73340c0f9578d7c327b18e076</SHA1><name>refs/remotes/origin/master</name></branch></marked><revision><SHA1>dda5e8c57edb41b73340c0f9578d7c327b18e076</SHA1><branch><SHA1>dda5e8c57edb41b73340c0f9578d7c327b18e076</SHA1><name>refs/remotes/origin/master</name></branch></revision></refsremotesoriginmaster></buildsByBranchName><lastBuiltRevision><SHA1>dda5e8c57edb41b73340c0f9578d7c327b18e076</SHA1><branch><SHA1>dda5e8c57edb41b73340c0f9578d7c327b18e076</SHA1><name>refs/remotes/origin/master</name></branch></lastBuiltRevision><remoteUrl>https://github.com/larson-group/clubb.git</remoteUrl><scmName></scmName></action><action></action><action _class='org.jenkinsci.plugins.workflow.cps.EnvActionImpl'></action><action></action><action></action><action></action><action _class='org.jenkinsci.plugins.displayurlapi.actions.RunDisplayAction'></action><action _class='org.jenkinsci.plugins.pipeline.modeldefinition.actions.RestartDeclarativePipelineAction'></action><action></action><action _class='org.jenkinsci.plugins.workflow.job.views.FlowGraphAction'></action><action></action><action></action><action></action><building>false</building><displayName>#183</displayName><duration>1793961</duration><estimatedDuration>596301</estimatedDuration><fullDisplayName>clubb_timestep_gfortran_tests #183</fullDisplayName><id>183</id><keepLog>false</keepLog><number>183</number><queueId>20083</queueId><result>SUCCESS</result><timestamp>1674205989628</timestamp><url>http://carson.math.uwm.edu/jenkins/job/clubb_timestep_gfortran_tests/183/</url><changeSet _class='hudson.plugins.git.GitChangeSetList'><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>src/CLUBB_core/mono_flux_limiter.F90</affectedPath><commitId>e21e2713eab0f3f228189a4b407c80d4f241038f</commitId><timestamp>1674153381000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></author><authorEmail>noreply@github.com</authorEmail><comment>Breaking up column loop in mono_flux_limiter. This may not be the final form for GPUization, but it's definitely a start, no longer do we have to copy single column variables to multicolumn ones anywhere. (#1051)

</comment><date>2023-01-19 12:36:21 -0600</date><id>e21e2713eab0f3f228189a4b407c80d4f241038f</id><msg>Breaking up column loop in mono_flux_limiter. This may not be the final form for GPUization, but it's definitely a start, no longer do we have to copy single column variables to multicolumn ones anywhere. (#1051)</msg><path><editType>edit</editType><file>src/CLUBB_core/mono_flux_limiter.F90</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>src/CLUBB_core/matrix_solver_wrapper.F90</affectedPath><affectedPath>src/CLUBB_core/model_flags.F90</affectedPath><affectedPath>src/CLUBB_core/tridiag_lu_solver.F90</affectedPath><affectedPath>src/CLUBB_core/lapack_wrap.F90</affectedPath><affectedPath>src/CLUBB_core/penta_lu_solver.F90</affectedPath><commitId>dda5e8c57edb41b73340c0f9578d7c327b18e076</commitId><timestamp>1674153404000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></author><authorEmail>noreply@github.com</authorEmail><comment>Adding tridiag_lu solver (#1056)

* Adding tridiag_lu solver

* Changing low to lower in tridiag_lu and penta_lu, also fixing up some spacing.

* Making variables that represent matrix solutions more consistently named.
</comment><date>2023-01-19 12:36:44 -0600</date><id>dda5e8c57edb41b73340c0f9578d7c327b18e076</id><msg>Adding tridiag_lu solver (#1056)</msg><path><editType>edit</editType><file>src/CLUBB_core/matrix_solver_wrapper.F90</file></path><path><editType>edit</editType><file>src/CLUBB_core/penta_lu_solver.F90</file></path><path><editType>edit</editType><file>src/CLUBB_core/model_flags.F90</file></path><path><editType>edit</editType><file>src/CLUBB_core/lapack_wrap.F90</file></path><path><editType>add</editType><file>src/CLUBB_core/tridiag_lu_solver.F90</file></path></item><kind>git</kind></changeSet><culprit><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></culprit><inProgress>false</inProgress><nextBuild><number>184</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_timestep_gfortran_tests/184/</url></nextBuild><previousBuild><number>182</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_timestep_gfortran_tests/182/</url></previousBuild></nextBuild><previousBuild><action _class='hudson.model.CauseAction'><cause _class='hudson.triggers.SCMTrigger$SCMTriggerCause'><shortDescription>Started by an SCM change</shortDescription></cause></action><action></action><action _class='org.jenkinsci.plugins.workflow.libs.LibrariesAction'></action><action></action><action></action><action _class='hudson.plugins.git.util.BuildData'><buildsByBranchName><refsremotesoriginmaster _class='hudson.plugins.git.util.Build'><buildNumber>181</buildNumber><marked><SHA1>88b8239840f581d76610aa630dab6219d64d68be</SHA1><branch><SHA1>88b8239840f581d76610aa630dab6219d64d68be</SHA1><name>refs/remotes/origin/master</name></branch></marked><revision><SHA1>88b8239840f581d76610aa630dab6219d64d68be</SHA1><branch><SHA1>88b8239840f581d76610aa630dab6219d64d68be</SHA1><name>refs/remotes/origin/master</name></branch></revision></refsremotesoriginmaster></buildsByBranchName><lastBuiltRevision><SHA1>88b8239840f581d76610aa630dab6219d64d68be</SHA1><branch><SHA1>88b8239840f581d76610aa630dab6219d64d68be</SHA1><name>refs/remotes/origin/master</name></branch></lastBuiltRevision><remoteUrl>https://github.com/larson-group/clubb.git</remoteUrl><scmName></scmName></action><action></action><action _class='org.jenkinsci.plugins.workflow.cps.EnvActionImpl'></action><action></action><action></action><action></action><action _class='org.jenkinsci.plugins.displayurlapi.actions.RunDisplayAction'></action><action _class='org.jenkinsci.plugins.pipeline.modeldefinition.actions.RestartDeclarativePipelineAction'></action><action></action><action _class='org.jenkinsci.plugins.workflow.job.views.FlowGraphAction'></action><action></action><action></action><action></action><building>false</building><displayName>#181</displayName><duration>1433019</duration><estimatedDuration>596301</estimatedDuration><fullDisplayName>clubb_timestep_gfortran_tests #181</fullDisplayName><id>181</id><keepLog>false</keepLog><number>181</number><queueId>19915</queueId><result>SUCCESS</result><timestamp>1673601190840</timestamp><url>http://carson.math.uwm.edu/jenkins/job/clubb_timestep_gfortran_tests/181/</url><changeSet _class='hudson.plugins.git.GitChangeSetList'><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>compile/config/linux_x86_64_nvhpc_casper.bash</affectedPath><affectedPath>src/CLUBB_core/constants_clubb.F90</affectedPath><affectedPath>src/CLUBB_core/model_flags.F90</affectedPath><affectedPath>src/CLUBB_core/mixing_length.F90</affectedPath><affectedPath>src/CLUBB_core/saturation.F90</affectedPath><commitId>88b8239840f581d76610aa630dab6219d64d68be</commitId><timestamp>1673549655000</timestamp><author><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></author><authorEmail>noreply@github.com</authorEmail><comment>Restructuring and Porting of Compute_mixing_length subroutine(Phase 1) (#1052)

* Restructuring and Porting of Compute_mixing_length subroutine(Phase 1)

Restructure: The compute_mixing_length is one of the top most routine taking 35-50%
of the total time in a single timestep. The subroutine has been restructured to
push the i-loop further down to extract vectorization and parallelization.
The restructuring also involves introduction of sat_mixrat_liq_acc routines to
extract parallelism when called inside a OpenACC parallel region.

Porting: OpenACC directives are inserted to port the restructured compute_mixing_length
code on to the GPUs. This port is currently unoptimized and there is still room for improvement.

NOTE: Currently, l_sat_mixrat_lookup = false and saturation_formula = saturation_flatau
(Earthworks config options) case is supported on OpenACC build. Any other options works
on CPUs as usual. OpenACC declare create directives are inserted in model_flags and
constants_clubb, as these module variables are used inside the saturation routines.

* Added debug message about only supporting
l_sat_mixrat_lookup = false and saturation_formula = saturation_flatau
 on GPUs
Answers are Bit for Bit with arm-multicolumn case + nvhpc compiler.

* Changing CLUBB debug level 1 to 0 for the saturation formula support
running on GPUs

* Changing indentation to make gfortran happy, it wants ifdefs to start at the beginning of the line.

* Adding use statements for error checks and printouts, also making the errors set err_code to clubb_fatal_error.

Co-authored-by: huebler &lt;huebler@uwm.edu&gt;
</comment><date>2023-01-12 12:54:15 -0600</date><id>88b8239840f581d76610aa630dab6219d64d68be</id><msg>Restructuring and Porting of Compute_mixing_length subroutine(Phase 1) (#1052)</msg><path><editType>edit</editType><file>src/CLUBB_core/constants_clubb.F90</file></path><path><editType>edit</editType><file>src/CLUBB_core/model_flags.F90</file></path><path><editType>edit</editType><file>src/CLUBB_core/mixing_length.F90</file></path><path><editType>edit</editType><file>src/CLUBB_core/saturation.F90</file></path><path><editType>edit</editType><file>compile/config/linux_x86_64_nvhpc_casper.bash</file></path></item><kind>git</kind></changeSet><culprit><absoluteUrl>http://carson.math.uwm.edu/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></culprit><inProgress>false</inProgress><nextBuild><number>182</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_timestep_gfortran_tests/182/</url></nextBuild><previousBuild><number>180</number><url>http://carson.math.uwm.edu/jenkins/job/clubb_timestep_gfortran_tests/180/</url></previousBuild></previousBuild></workflowRun>