QuantEcon / lecture-python-programming.myst

Python Programming for Finance and Economics
https://python-programming.quantecon.org
43 stars 26 forks source link

ENH: Enable Custom Runner using CML for GPU Support (PREVIEWS) #239

Closed mmcky closed 1 year ago

mmcky commented 1 year ago

This PR enables building on a custom runner hosted on EC2 using p2.xlarge instances for PREVIEW builds

These instances have:

  1. 1 x NVIDIA K80 GPU
  2. 4 x vCPU's

All setup and use of EC2 is automated and works the same way as the previous Preview Workflow Script.

The cml runner manages the EC2 instance so the instance only runs when preview builds are running. As a result it takes a little longer to setup as it fetches a fresh instance each time a preview build runs. It then uses a Docker image based on ubuntu and installs anaconda etc. However this means we are only paying for EC2 when previews are getting built and the instance is torn down when the preview run is completed. This makes this option very cost effective.

Checks

https://github.com/QuantEcon/meta/issues/56

mmcky commented 1 year ago

@jstac I propose I enable the following custom build runner workflow (which builds on EC2) for previews only and do some test run on the next few PR's, before we look at publishing from these runs.

So GPU support is available currently for:

The publishing will need to be enabled in a subsequent PR.

Note: Test build cache workflows to ensure that works the same way as GitHub Actions hosted workflow.

mmcky commented 1 year ago

@HumphreyYang I will merge this PR soon which will change how previews are build via GitHub Actions. It would be great if you could take close looks at previews for the next couple of changes and let me know if you can spot any issues.

This PR is bringing the ability to build code that requires access to a GPU so we can test this out on #237

HumphreyYang commented 1 year ago

@HumphreyYang I will merge this PR soon which will change how previews are build via GitHub Actions. It would be great if you could take close looks at previews for the next couple of changes and let me know if you can spot any issues.

This PR is bringing the ability to build code that requires access to a GPU so we can test this out on #237

Thanks @mmcky. I will keep an eye on the new previews.