Coder Social home page Coder Social logo

naluspack's Introduction

Some notes are here, but please refer to the official Nalu documentation regarding building and testing Nalu.

Notes on this repo:

In general, to start with a clean slate, clone Spack, clone this repo, add SPACK_ROOT and Spack shell support to your ~/.bash_profile, source ~/.bash_profile, then go to the spack_config directory and run setup_spack.sh to automatically copy over a recommended Spack configuration for your machine, assuming it's in the list, or study the setup_spack.sh script to create your own Spack configuration for your machine. Then look around at the install scripts and testing scripts to learn more about how Nalu is currently being installed and tested. Note the shared_constraints.sh script that is sourced which sets the preferred TPLs for Nalu and preferred Trilinos options.

Notes on the Nalu nightly testing:

The file, test_nalu.sh, is used for testing on all machines, and the machine name is passed into the script to be able to perform certain required machine-specific tasks.

Then there are cron scripts provided for each machine which qsub the test job. Note on Peregrine, qsub cannot pass arguments to the script itself (man qsub says the -F parameter should do so, but it doesn't work), so another script is provided that does only the task of passing peregrine to test_nalu.sh.

The cron scripts for Mac are actually plist files which are added to a schedule on OSX by moving the plist file to /Library/LaunchDaemons and using sudo launchctl load -w /Library/LaunchDaemons/com.test.nalu.nightly.plist and sudo launchctl list | grep nalu to see that the launchd job was added.

Lastly, there is a script used for updating this NaluSpack repo each night before running the tests so that changes to what is being tested can propagate to all the machines without doing so manually.

Using crontab, the general cron jobs are written as such:

SHELL=/bin/bash

#Nalu update NaluSpack
0 0 * * * /bin/bash -c "cd /whereever/NaluNightlyTesting/NaluSpack && ./test_scripts/update_naluspack.sh > /whereever/NaluNightlyTesting/jobs/last_naluspack_update.txt 2>&1"
#Nalu tests
0 1 * * * /whereever/NaluNightlyTesting/NaluSpack/test_scripts/test_nalu_peregrine_cron.sh > /whereever/NaluNightlyTesting/jobs/last_nalu_test_job.txt 2>&1

naluspack's People

Contributors

jrood-nrel avatar jsrood avatar sayerhs avatar michaelasprague avatar amagela avatar jamelvin avatar

Watchers

Srinath Vadlamani avatar James Cloos avatar

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.