pennylane icon indicating copy to clipboard operation
pennylane copied to clipboard

Added new GitHub Actions workflow to run gpu marked unittests on gpu runners

Open rashidnhm opened this issue 2 years ago • 1 comments

Context: Currently GPU based unittests are not being run when changes to pennylane occur. This pull request adds a new GitHub Actions workflow that runs gpu marked unittests.

Description of the Change: A new workflow will run in the two scenarios below:

  • A new commit is pushed to the master branch
  • An open pull request is assigned the label gpu

Either of these scenarios will cause the new workflow included in this pull request to trigger. Which will run the gpu marked unitests.

Benefits: Enable running of gpu unittests.

Possible Drawbacks: Currently, Github does not offer GPU based hosted runners; though they are in the roadmap as a possible future offering. As it stands, the only way to process GPU based Actions workloads are on self-hosted runners. Due to the cost associated with running GPU self-hosted runners, they cannot be scaled to the same level as Github hosted runners. This has the following drawbacks:

  • A job may not be picked up by a runner right away, and may need to stay "queued" until a runner is available.
    • If a new runner has to be deployed to process a workflow, it will take 3-5 min before a runner is up and starts processing that workflow.
    • If all runners are currently busy, the workflow will stay queued until a runner is available to start processing it.
  • Since it is expensive (and slow) to have a fully ephemeral runners, the same runner may process more than one workflow. The self-hosted runners are still "ephemeral" and will go offline (torn down) if they are idle for a certain period of time.
  • Since these runners are being registered to a public repository. It opens the room for contributors to abuse them. This will need to be closely monitored and anyone running malicious workflows on these runners need to have appropriate action taken against them.

Related GitHub Issues: N/A

rashidnhm avatar Jul 26 '22 04:07 rashidnhm

Codecov Report

Merging #2862 (b2357d1) into master (7e4f2c8) will not change coverage. The diff coverage is n/a.

@@           Coverage Diff           @@
##           master    #2862   +/-   ##
=======================================
  Coverage   99.65%   99.65%           
=======================================
  Files         261      261           
  Lines       22051    22051           
=======================================
  Hits        21974    21974           
  Misses         77       77           

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.

codecov[bot] avatar Jul 26 '22 04:07 codecov[bot]