UW-Madison Cloud Services (AWS, GCP, Azure)
UW-Madison offers enterprise cloud computing through contracts with Amazon Web Services (AWS), Google Cloud Platform (GCP), and Microsoft Azure. These services are managed by the UW Public Cloud Team, a cross-disciplinary group of operations, cybersecurity, and research cyberinfrastructure (RCI) professionals.
Using a UW-provisioned cloud account — rather than a personal one — gives you access to institutional pricing discounts, lower overhead on grants, data protection agreements, security monitoring, and dedicated support. If you’re doing any research or university work in the cloud, start here.
Why run ML/AI in the cloud?
You have ML/AI code that works on your laptop. At some point you need more: a bigger GPU or several, a dataset that won’t fit on disk, or dozens of training runs overnight. At UW-Madison the first place to look is CHTC, which gives researchers free GPUs through a batch scheduler. The cloud is for the jobs CHTC cannot take: it rents exactly the hardware you need, for as long as you need it, billed by the hour.
Cloud vs. CHTC
CHTC is free to UW-Madison researchers and should be the first place a campus project looks for a GPU. The tradeoffs:
| Factor | CHTC | Cloud (AWS, GCP, Azure) |
|---|---|---|
| Cost | Free, funded institutionally | Pay per hour. AWS list prices run from $0.74/h for a 16 GB T4 and $1.41/h for a 24 GB A10G to $25/h for eight A100s and $63/h for eight H100s |
| GPUs | Open-capacity pool, from CHTC’s GPU table (late 2026): 34 H200s (141 GB), 8 H100s (80 GB), 24 A100s (80 or 40 GB) plus 8 A100 MIG slices, 12 RTX PRO 6000s (96 GB), 27 L40s and 22 L40Ss (48 GB). Backfill on research-group-owned cards brings the total to 429 GPUs, and the OSPool adds about 275 more on average | Whatever you pay for, on demand: T4, L4, A10G, L40S, A100, H100, H200, B200 |
| Waiting | A shared queue: minutes at quiet times, hours when the lab is busy | Starts in about a minute, subject to your account’s GPU quota, which can take weeks to raise on a new account |
| Run length | Job lanes: short (under 12 h) may use two thirds of the GPU Lab’s cards, medium (under 24 h) one third, long (up to 7 days) at most four GPUs per user. Checkpoint anything longer | No limit; you set your own cap |
| Multi-GPU | Within one server only: the A100 servers hold 4 cards each (SXM4 form factor), the H100 and H200 servers 8 each. CHTC’s pages do not document the interconnect between cards, so ask a facilitator before planning a sharded job. No multi-node training | NVLink nodes on demand (8 × A100, 8 × H100), and multi-node clusters for frontier-scale training |
| Persistent services | Batch jobs only. No model endpoints or always-on applications | Model endpoints, RAG applications, dashboards, databases |
| Interactive use | Limited. Since April 2026 interactive GPU work runs in a dedicated A100 slot; everything else is batch | Jupyter, VS Code, persistent VMs |
| Software | Apptainer or Docker containers you build | Prebuilt ML containers, or your own; managed platforms (SageMaker, Vertex AI, Azure ML) handle provisioning and teardown |
| Data compliance | On-campus infrastructure | Risk assessment required for sensitive or restricted data |
The short version: use CHTC when the job fits one of its cards and can run as a batch job, which covers most training, fine-tuning and batch inference. Use the cloud when you need more GPUs than one CHTC server holds, a service that stays up, a hard deadline the queue cannot meet, or hardware CHTC does not have (TPUs, B200s). Many researchers use both: develop and test on CHTC, then move the one run that needs it to the cloud.
When does model size justify cloud compute?
The lesson’s memory rule decides most cases: inference needs about 2 bytes per parameter in bf16 (1 in FP8, 0.5 in 4-bit), a LoRA fine-tune about 2.5 (about 1 with the frozen weights in 4-bit), and a full fine-tune 16, plus a few gigabytes for activations. Measured against CHTC’s cards and AWS list prices:
| Task | GPU memory | On CHTC | On the cloud |
|---|---|---|---|
| Inference, up to 7B in bf16 | up to ~14 GB | Any GPU Lab card | T4 $0.74/h, L4 $1.13/h, A10G $1.41/h |
| Inference, 27B in FP8 or 70B in 4-bit | 27–35 GB | L40S (48 GB) or any larger card | L40S $2.61/h |
| LoRA fine-tune, 3B | ~12 GB | Any GPU Lab card; the fine-tuning exercise runs in about 20 minutes | A10G $1.41/h; the same run takes 33 minutes and costs about $0.75 |
| LoRA fine-tune, 7B–27B | 22–72 GB | One 80 GB card; up to about 50B on an H200 | A10G for 7B; 4 × A10G $7.09/h for 27B |
| LoRA fine-tune, 70B | ~70 GB in 4-bit, 179 GB in bf16 | One 80 GB card in 4-bit; the H200 server’s cards in bf16 | 4 × L40S $13/h in bf16 |
| Full fine-tune, 3B | 52–60 GB | An 80 GB card, just; an H200 easily | 4 × A10G $7.09/h |
| Full fine-tune, 7B | ~116 GB | One H200, or two 80 GB cards in the same server, sharded | 4 × L40S $13/h |
| Full fine-tune, 27B–70B | 436–1,124 GB | All 8 cards of an H100 or H200 server, sharded; a 70B does not fit one server | 8 × H100 $63/h; two of them, $127/h, for a 70B |
| Training from scratch, >1B | Many servers | Not on CHTC | Multi-node NVLink clusters; this is where five-figure bills come from |
Almost every fine-tune a research group runs fits one CHTC card. The cloud is the choice for multi-node training, for services that stay up past a job lane, and for a deadline the queue cannot meet. Prices are AWS SageMaker list prices from the Intro to AWS workshop’s instance guide; GCP and Azure are in the same range.
LLM APIs: skip the infrastructure entirely
For many GenAI tasks, you don’t need to provision GPUs at all. Services like the OpenAI API, Google’s Vertex AI, and Amazon Bedrock let you call frontier models (GPT-4o, Gemini, Claude, etc.) with a simple API request — no GPU provisioning, no model hosting. LLM API calls cost fractions of a cent each and are often the fastest, most cost-effective path. See GenAI at UW-Madison for available services.
A note on cloud costs
Cloud computing is not free, but it’s worth putting costs in context:
- Hardware is expensive and ages fast. A single A100 GPU costs ~$15,000 and is outdated within a few years. Cloud lets you rent the latest hardware by the hour.
- You pay only for what you use. Stop a VM and the meter stops. A 24 GB A10G instance is
$1.41/h on AWS. The workshop’s LoRA fine-tune of a 3B model costs about$0.75; a 7B full fine-tune on 50,000 documents about$140; a 70B LoRA for a day about$600. - Managed services save development time. You don’t have to write scheduling logic, package custom containers, or maintain orchestration infrastructure — managed ML platforms handle that plumbing so you can focus on the ML.
- Budgets and alerts keep you safe. All three platforms offer billing dashboards and budget alerts to prevent surprise bills.
The key habit: choose the right machine size, stop resources when idle, and monitor spending.
Cloud isn’t the right fit for every workload. CHTC offers free GPUs up to the 141 GB H200 for batch jobs, with a queue and job lanes of 12 hours to 7 days. Many researchers use both.
There is a learning curve, as with any new tool. But UW-developed workshop materials are available to help you get started — see the Related resources at the bottom of this page.
Why use a UW-provisioned account?
A self-provisioned cloud account (e.g., one you create directly with Google or AWS) is a personal agreement between you and the vendor — it is not covered by UW-Madison’s institutional contracts. By going through the UW Public Cloud Team, you get:
- Negotiated pricing: UW contracts leverage Internet2 NET+ agreements and institutional reseller rates. For example, GCP accounts include a network egress waiver (up to 15% of your total bill), and Azure accounts receive ~3.5% off retail pricing.
- Lower overhead on grants: Normally, UW adds 55.5% in overhead (F&A) to cloud expenses on grants. With a UW cloud account, that drops to 26% — so for every $10,000 you spend on cloud computing, you save about $2,950 in overhead. See the Cloud Computing Pilot for details.
- NIH STRIDES discounts: NIH-funded researchers get additional cloud pricing discounts (on top of the UW contract rates) through the STRIDES Initiative. The UW cloud team can transition you into or out of STRIDES at any time — no data migration needed.
- Business Associates Agreement (BAA): UW’s contracts include a BAA that governs vendor access to your data, which is critical for HIPAA-regulated health data.
- Security monitoring: UW accounts benefit from Security Command Center monitoring with alerts escalated to the UW Cybersecurity Operations Team (CSOC).
- Baseline security configuration: Accounts come pre-configured to meet CIS benchmark standards with NetID authentication built in.
- Dedicated support: Get help from the DoIT Cloud Team via email (cloud-services@cio.wisc.edu), office hours, and in-person/video consultations.
For the full breakdown, see Why Should I Use a UW Madison Public Cloud Account? on the UW KnowledgeBase.
Paying for cloud compute with grant money
If you’re using grant funding to pay for cloud compute — from NIH, NSF, DOE, or any other sponsor — a UW-provisioned account can significantly reduce what your grant actually pays.
Lower overhead (Cloud Computing Pilot)
UW-Madison normally adds 55.5% in overhead (formally called “F&A” or “facilities & administrative costs”) to cloud expenses on grants. The Cloud Computing Pilot cuts that to 26% when you use a UW-provisioned cloud account. In practice, that means for every $10,000 in cloud spending, you’ll pay ~$2,600 in overhead instead of ~$5,550 — a savings of about $2,950.
- Applies to new proposals and awards (including new funding increments).
- You must use a UW cloud account — costs paid via purchasing card or personal accounts are charged the full 55.5%.
- RSP provides budget templates to help you plan proposals with the reduced rate.
- Contact RSP with questions about grant compliance.
NIH STRIDES Initiative
If you have NIH funding specifically, you can get additional cloud discounts on top of the standard UW rates through the STRIDES Initiative. STRIDES covers AWS, GCP, and Azure:
- Discounted pricing on cloud services, layered on top of UW’s institutional rates.
- Professional service consultations and technical support from STRIDES partners.
- No data or configuration changes needed — the UW cloud team can transition you in or out at any time.
How to request a UW cloud account
To get started with any of the three platforms:
- Get a DoIT Billing Customer ID — you’ll need this to tie your cloud usage to a funding source.
- Fill out the UW-Madison Cloud Account Request Form — this covers AWS, GCP, and Azure. Indicate your intended data types and use case.
- For sensitive/restricted data — you must complete a Cybersecurity risk assessment before processing HIPAA, FERPA, or other regulated data in the cloud.
Platform-specific details:
Research credits & training
Research credits
All three cloud providers offer credit programs for academic researchers:
| Platform | Program | Amount | Eligibility |
|---|---|---|---|
| GCP | Cloud Research Credits | Up to $5,000 (faculty/postdocs); $1,000 (PhD students) | Faculty, postdocs, non-profit researchers, PhD students |
| AWS | Cloud Credit for Research | Varies by proposal | Researchers at accredited institutions; students may receive up to $5,000 |
| Azure | Azure for Research | Varies by proposal | Faculty, researchers, and graduate students at accredited institutions |
| Azure | Azure Quantum Credits | Up to $10,000 | Project-by-project basis; evaluated on research, educational, or commercial value |
All three programs are rolling applications. You’ll need a research proposal describing your intended cloud usage and the specific services you plan to use.
Free cloud training
Each platform offers free, self-paced training to help you get started:
- GCP: UW-Madison has a limited number of seats for Google Cloud Skills Boost — reach out to the Public Cloud Team at cloud-services@cio.wisc.edu to request access.
- AWS: AWS Skill Builder offers 600+ free courses covering compute, ML, and more.
- Azure: Microsoft Learn provides free, structured learning paths for Azure services.
Data protection & compliance
UW-Madison classifies institutional data into four risk categories: Restricted, Sensitive, Internal, and Public. Cloud eligibility depends on data classification:
| Data type | Cloud eligible? | Requirements |
|---|---|---|
| Public / Internal | Yes | Standard UW cloud account |
| Sensitive | Yes, with assessment | Cybersecurity risk assessment required |
| Restricted (HIPAA, etc.) | Yes, with assessment | Risk assessment + risk executive approval + HIPAA-eligible services |
Key compliance resources:
- Data classification policy
- Data elements allowed in public cloud
- GCP for sensitive and restricted data
- Shared responsibility model for cloud platforms
- HIPAA Security Program
- SMPH researchers using Azure: contact platformx-support@mailplus.wisc.edu about Platform X for HIPAA workloads.
Getting help
- Office hours: The RCI and Public Cloud Team hold drop-in hours on Thursdays, 2–3:15 PM via Zoom. Open to the entire UW community.
- Cloud Community: Join the UW Cloud Community group — they meet every other month to share cloud computing experiences and tips.
- Email: cloud-services@cio.wisc.edu
- Public Cloud KnowledgeBase: kb.wisc.edu — FAQs, pricing info, and how-to guides.
- ML+X Community: Join ML+X for monthly meetings on machine learning and AI.
Comments