hardware · Level 3

GPU memory maths for LLMs and SLMs

Work out whether a language model will fit and run, for inference, fine-tuning and training, before you buy or download anything.

By Mickarle Wagstaff-Irons - Micky Irons

  • Level 3Building
  • 75 min
  • 6 chapters
  • Online course and PDF workbook
The Enginehardware / 03

Read, practise and review

Your next step

Start this course online

Register your start, then work through the lessons and exercises at your own pace. You can download the PDF separately. Where a scored exam is available, you will find it after the lessons.

Register or resume your course

Mickai privately records this registration and sends its team a course-start notification. It records your intention to start, not proof of attendance or completion. Our course-start privacy notice explains the details and the 30-day resume cookie.

Follow the Mickai company page on LinkedIn

You can start learning without subscribing or following. Newsletter email confirmation and provider enrolment are recorded separately.

Start with the essentials

The short answer

A language model fits when its weights, its key-value cache and an overhead allowance add up to less than your device's memory, with a safety margin. Weights are parameters times bytes per parameter. Training needs far more: gradients, optimiser state and activations, starting at 16 bytes per parameter for mixed-precision Adam-style training. Lower precision, adapters and shorter context can bring a model within reach.

What you will learn

  • You will be able to work out the memory a model's weights need at any precision.
  • You will be able to size the key-value cache from a model card, and know when the standard formula does not apply.
  • You will be able to explain what the 16-bytes-per-parameter training figure includes and what it leaves out.
  • You will understand how activation checkpointing and adapters trade time or flexibility for memory.
  • You will be able to run a fit check with a safety margin and choose a fix when a model does not fit.
  • You will be able to say honestly what one GPU can fine-tune or train, and what it cannot.

Who it is for

Anyone comfortable with basic arithmetic who wants to know, before buying hardware or downloading a model, whether a language model will fit and run. You need multiplication and division, and a terminal for the calculator.

Before you start

  • Comfort with basic arithmetic (multiplying and dividing) and the ideas of a model's parameters and precision. The Which AI model workbook is helpful background, and Inference engines explained is the natural next step.

Learn in your browser · Chapter 01 of 06

01

Weights: parameters times bytes

Every fit check starts with the weights, the number you can compute exactly.

A model is a long list of numbers called parameters, each stored in a set number of bytes chosen by its precision. The rule never changes: weights in bytes = parameters x bytes per parameter. For a mixture-of-experts model (one split into many expert blocks, of which only a few run for each token), count every expert.

Here 1 GB is 1,000,000,000 bytes. Some tools report GiB (1,073,741,824 bytes, about 7.4% more), so check the unit. Card sizes here are examples only: read the vendor's specification page for yours.

Worked examples use hypothetical models invented for teaching. Model A has 7 billion parameters, 36 layers, 32 query heads, 4 key-value heads and head dimension 128.

Scroll sideways to see every column.

Weights: parameters times bytes · Table 1
PrecisionBytes per parameterModel A weights
32-bit float428.00 GB
16-bit (fp16 or bf16)214.00 GB
8-bit integer17.00 GB
4-bit0.53.50 GB

At 16-bit: 7 billion x 2 = 14 billion bytes = 14.00 GB. Real 4-bit files are a little larger than the simple sum, because each block of weights also stores a scale, so trust the file size on the download page.

Next chapter

Learn in your browser · Chapter 02 of 06

02

The key-value cache

While it generates, a model stores two vectors per layer for every earlier token. That store can rival the weights.

These are keys and values, so the store is the key-value cache (KV cache).

text · 2 lines
kv_per_token = 2 x layers x kv_heads x head_dim x bytes_per_value
kv_cache     = kv_per_token x tokens_in_context x simultaneous_chats

The 2 is for keys and values. Use key-value heads, not attention heads: grouped-query attention shares each key-value head across several query heads, and multi-query attention shares one across all. The paged-attention paper's example, 2 x 5,120 (hidden size) x 40 (layers) x 2 (bytes) per token, is this sum with full multi-head attention.

Worked example: Model A, 16-bit values, 16,384 tokens.

text · 2 lines
per token = 2 x 36 x 4 x 128 x 2 = 73,728 bytes
one chat  = 73,728 x 16,384 = 1,207,959,552 bytes = 1.21 GB

With full multi-head attention (32 key-value heads), each token costs 2 x 36 x 32 x 128 x 2 = 589,824 bytes, and 589,824 x 16,384 = 9.66 GB: eight times the cache, from one line of a model card.

Try it yourself · Activity 01

8 min

Read a cache off a model card

A hypothetical model has 24 layers, 8 key-value heads, head dimension 64 and 16-bit values. Size the cache for 2 chats of 8,192 tokens each.

  1. Work out the bytes per token, then the cache.
  2. Repeat with 24 key-value heads and note the ratio.

Which model-card line matters most here?

Worked answer

Per token: 2 x 24 x 8 x 64 x 2 = 49,152 bytes. Cache: 49,152 x 8,192 x 2 = 805,306,368 bytes = 0.81 GB. With 24 key-value heads: 147,456 bytes per token and 2.42 GB, three times as much (24 / 8 = 3).

Next chapter

Learn in your browser · Chapter 03 of 06

03

Activations, overhead and the allowance

Weights and cache are exact. The rest is not, so budget an allowance, then measure.

Activations are the temporary tensors each layer produces. In inference they need not be kept for a training step, so they are usually small, but a long prompt needs more scratch space than one generation step. Framework overhead adds the runtime's own memory and memory the allocator cannot reuse. The ZeRO paper reports out-of-memory failures with over 30% of memory still free, in some extreme cases, when training very large models.

None of this has a published constant, so this workbook assumes an allowance of the larger of 1 GB or 10% of everything else counted. It is our planning assumption, not a published rule: measure and replace it. It also assumes a separate safety margin, keeping 10% of capacity free for other programs and for errors in your inputs.

text · 1 line
fit rule:  weights + cache + allowance  <=  0.9 x capacity

Worked example: Model A, 16-bit weights, one 16,384-token chat, on a card with 16 GB (an example size). Allowance = max(1.00, 10% x (14.00 + 1.21)) = 1.52 GB. Need = 14.00 + 1.21 + 1.52 = 16.73 GB. Usable = 0.9 x 16.00 = 14.40 GB. It is short by 2.33 GB.

Scroll sideways to see every column.

Activations, overhead and the allowance · Table 2
Same context (GB)WeightsCacheAllowanceNeedFits in 14.40?
16-bit weights14.001.211.5216.73No
8-bit weights7.001.211.009.21Yes
4-bit weights3.501.211.005.71Yes

Cutting the context to 4,096 tokens leaves the cache at 0.30 GB but the 16-bit total at 14.00 + 0.30 + 1.43 = 15.73 GB. The weights dominate: change the biggest term first.

Try it yourself · Activity 02

10 min

Fit Model A on a 12 GB card

Which precisions of Model A fit a 12 GB card (an example size) for one 8,192-token chat?

  1. Work out the cache, then the need at 16-bit, 8-bit and 4-bit.
  2. Compare each with 0.9 x 12 GB.

What would you spend any spare room on?

Worked answer

Cache: 73,728 x 8,192 = 0.60 GB. 16-bit: 14.00 + 0.60 + 1.46 = 16.06 GB. 8-bit: 7.00 + 0.60 + 1.00 = 8.60 GB (the 1 GB floor). 4-bit: 3.50 + 0.60 + 1.00 = 5.10 GB. Usable is 0.9 x 12 = 10.80 GB. So 16-bit fails, 8-bit leaves 2.20 GB spare and 4-bit 5.70 GB.

Next chapter

Learn in your browser · Chapter 04 of 06

04

Training memory: what learning adds

Inference only reads the weights. Training changes them, and the model states alone need eight times the size of a 16-bit model file.

In a training step, the forward pass keeps activations, the backward pass uses them to compute a gradient for every trainable parameter, and the optimiser updates the weights using the gradients and its own state. An Adam-style optimiser keeps a running average of the gradients (momentum) and of their squares (variance). Mixed precision runs both passes in 16-bit but keeps a 32-bit master copy of the weights.

Scroll sideways to see every column.

Training memory: what learning adds · Table 3
Mixed-precision Adam-style statePrecisionBytes per parameter
Working weights16-bit2
Gradients16-bit2
Master weights32-bit4
Momentum32-bit4
Variance32-bit4
Total16

The ZeRO paper writes this as 2P + 2P + KP = 16P bytes, with P the parameter count and K = 12 for mixed-precision Adam. Its example: 1.5 billion x 16 = 24 billion bytes, which it calls at least 24 GB.

Activations are kept for the backward pass and scale with batch size, sequence length and depth. One published estimate for a plain 16-bit transformer layer is s x b x h x (34 + 5 x a x s / h) bytes, where s, b, h and a are sequence length, micro-batch, hidden size and attention heads. The ZeRO paper's rule is roughly 12 x h x b x s x layers values, or 24 x h x b x s x layers bytes at 16-bit. Here they differ mostly because the first counts attention scores, which some implementations avoid storing.

Worked example: hypothetical Model B has 1 billion parameters, 24 layers, hidden size 2,048, 16 attention heads. Train it at sequence length 1,024, micro-batch 2.

text · 5 lines
states    = 1 billion x 16 = 16.00 GB
s x b x h = 1,024 x 2 x 2,048 = 4,194,304
per layer = 4,194,304 x (34 + 5 x 16 x 1,024 / 2,048)
          = 4,194,304 x 74 = 310,378,496 bytes = 0.31 GB
24 layers = 7,449,083,904 bytes = 7.45 GB

The second rule gives 2.42 GB here: plan for a range, then measure.

Activation checkpointing keeps only some activations and recomputes the rest in the backward pass. The original paper's method needs memory growing with the square root of the layer count, for one extra forward pass. A backward pass costs about twice a forward pass, so that adds about a third more compute, matching the ZeRO paper's 33%. One simple scheme stores each layer's input, 2 x s x b x h bytes, plus one layer's full activations.

text · 2 lines
inputs      = 2 x 4,194,304 x 24 = 0.20 GB
activations = 0.20 + one layer 0.31 = 0.51 GB   (was 7.45 GB)

With the allowance: 16.00 + 7.45 + 2.34 = 25.79 GB without checkpointing, and 16.00 + 0.51 + 1.65 = 18.16 GB with it. The states are untouched, so neither fits the 16 GB card.

Try it yourself · Activity 03

12 min

Budget one training step

Hypothetical Model C has 500 million parameters, 20 layers, hidden size 1,536 and 12 attention heads. Train it with mixed-precision Adam, sequence length 1,024, micro-batch 8, on a 12 GB card (an example size). Does it fit, with and without checkpointing?

  1. Work out the states and the activations for all 20 layers.
  2. Repeat with checkpointing, add allowances, and compare with 0.9 x 12 GB.

Which change helped most, and what did it cost?

Worked answer

States: 500 million x 16 = 8.00 GB. Per layer: s x b x h = 1,024 x 8 x 1,536 = 12,582,912, times (34 + 5 x 12 x 1,024 / 1,536) = 74, gives 0.93 GB. Twenty layers: 18.62 GB. Checkpointed: 2 x 12,582,912 x 20 = 0.50 GB, plus 0.93 GB = 1.43 GB. Without: 8.00 + 18.62 + 2.66 = 29.28 GB. With: 8.00 + 1.43 + 1.00 = 10.43 GB. Usable is 10.80 GB, so only the checkpointed run fits, with 0.37 GB spare.

Next chapter

Learn in your browser · Chapter 05 of 06

05

Adapters: fine-tuning with far less state

Full fine-tuning pays 16 bytes for every parameter. Adapters train a tiny fraction and skip most of that bill.

LoRA freezes a pretrained matrix W and adds a small trainable correction, B x A, where B is d x r, A is r x k and the rank r is far smaller than d and k. Frozen weights need no gradients or optimiser state, which the paper credits for its saving. The adapters pay the full 16 bytes each, but there are only r x (d + k) per matrix.

Worked example: Model B, rank 16 adapters on the query and value matrices of every layer, both assumed square at 2,048 x 2,048. Use true shapes for real models.

text · 5 lines
per matrix     = 16 x (2,048 + 2,048) = 65,536 parameters
matrices       = 2 x 24 = 48
adapters       = 48 x 65,536 = 3,145,728 parameters (0.31% of 1 billion)
adapter states = 3,145,728 x 16 = 0.05 GB
frozen base    = 1 billion x 2 = 2.00 GB

Scroll sideways to see every column.

Adapters: fine-tuning with far less state · Table 4
Model B fine-tuning (GB)Full, checkpointingAdapters, no checkpointingAdapters, checkpointing
Weights and states16.002.052.05
Activations0.517.450.51
Allowance1.651.001.00
Need18.1610.503.56

Adapters cut the states from 16.00 GB to 2.05 GB but not most of the activations, because gradients still flow back through the frozen layers, so the table keeps the full estimate as a cautious plan. Storing the frozen base at 4-bit too is the QLoRA paper's approach. The LoRA paper reports results on par with full fine-tuning on its tasks, and no added inference delay.

Try it yourself · Activity 04

8 min

Count the adapters

For Model C, add rank-8 adapters to the query and value matrices of every layer (both square, 1,536 x 1,536) on a frozen 16-bit base, with checkpointing. Find the total.

  1. Count the adapter parameters and their states.
  2. Add the frozen base, activations and allowance.

Which term did the adapters not shrink?

Worked answer

Per matrix: 8 x (1,536 + 1,536) = 24,576. Matrices: 2 x 20 = 40. Adapters: 40 x 24,576 = 983,040 parameters (0.20% of 500 million). States: 983,040 x 16 = 0.02 GB. Base: 500 million x 2 = 1.00 GB. Activations: 1.43 GB. Allowance: 1.00 (the floor). Total: 1.00 + 0.02 + 1.43 + 1.00 = 3.45 GB, against 10.43 GB for full training with checkpointing.

Next chapter

Learn in your browser · Chapter 06 of 06

06

The fit check, the fixes and the honest limits

Turn the method into a repeatable procedure, then be straight about what one GPU can do.

  1. Note the device's free memory and unit, and the model card's parameters, layers, key-value heads, head dimension and context.
  2. Choose a precision: weights, then cache (for training, states and activations), then the allowance. Compare with 0.9 x capacity, or with the free memory if that is lower.
  3. Load it, read the peak memory your framework reports, and replace the allowance with that.

Save the calculator below as memcalc.py, edit the numbers at the bottom, and run python memcalc.py. It should print the two lines that follow it.

python · 24 lines
# memcalc.py: rough GPU fit check
GB = 1e9  # decimal GB

def weights(params, bits):
    return params * bits / 8

def kv_cache(layers, kv_heads, head_dim, tokens, chats=1, bits=16):
    return 2 * layers * kv_heads * head_dim * tokens * chats * bits / 8

def activations(s, b, h, a, layers, checkpoint=False):
    layer = s * b * h * (34 + 5 * a * s / h)  # plain attention, 16-bit
    return (2 * s * b * h * layers + layer) if checkpoint else layer * layers

def need(parts):
    base = sum(parts)
    return base + max(1 * GB, 0.10 * base)  # base plus the allowance

if __name__ == "__main__":
    w = weights(7e9, 16)
    kv = kv_cache(36, 4, 128, 16384)
    usable = 0.9 * 16 * GB
    print(f"weights {w/GB:.2f} kv {kv/GB:.2f} need {need([w, kv])/GB:.2f} usable {usable/GB:.2f}")
    act = activations(1024, 2, 2048, 16, 24, checkpoint=True)
    print(f"states {1e9 * 16 / GB:.2f} activations {act/GB:.2f}")

text · 2 lines
weights 14.00 kv 1.21 need 16.73 usable 14.40
states 16.00 activations 0.51

Scroll sideways to see every column.

The fit check, the fixes and the honest limits · Table 5
When it does not fitWhat it changesWhat you pay
Lower precisionWeightsSome quality.
Shorter context, fewer chatsCacheLess text, less concurrency.
Smaller modelEverythingCapability.
Offload to system memoryData off the deviceSpeed.
More devicesSplits weights, statesCommunication, engineering.
Smaller batch, checkpointing, adaptersTraining memoryTime or flexibility.

The honest scope: a laptop or one GPU can run models that fit its memory, fine-tune small ones (especially with adapters) and train toy ones from scratch. It cannot pretrain a production frontier-scale model, and memory is only one reason. 7 billion parameters need 112.00 GB of states before activations, and splitting them across devices divides that by about the device count, at a cost in communication.

Compute time. The scaling-laws paper estimates about 6 operations per parameter per training token. The compute-optimal paper found that parameters and tokens should grow together: its model used 1.4 trillion tokens for 70 billion parameters, 20 per parameter, a rough guide. The table assumes a made-up sustained 100 trillion operations per second. Replace it with a rate you have measured.

Scroll sideways to see every column.

The fit check, the fixes and the honest limits · Table 6
Hypothetical modelStates (16 bytes each)Tokens (20 per parameter)Time at the assumed rate
10 million0.16 GB200 million2 minutes
7 billion112.00 GB140 billion680.6 days
70 billion1,120.00 GB1.4 trillion186.5 years

For 7 billion (7e9 is shorthand for 7 followed by nine zeros): tokens = 20 x 7e9 = 1.4e11. Operations = 6 x 7e9 x 1.4e11 = 5.88e21. Seconds = 5.88e21 / 1e14 = 5.88e7, and 5.88e7 / 86,400 = 680.56 days.

Even at ten times that rate, the 7-billion run takes 68.1 days and the 70-billion run 18.6 years. Then come data to collect, clean and license, and engineering: keeping many devices running for weeks and surviving failures.

Try it yourself · Activity 05

15 min

Run the fit check on your own hardware

Run the procedure on a real model and a device you own or are considering.

  1. Take the device's memory and the model card's numbers. Edit the calculator and change one variable at a time until the model fits.
  2. If you can load it, compare the peak memory with your estimate.

How far off was your estimate, and what allowance will you use next time?

Worked answer

Model answer: a hypothetical 13-billion-parameter model (40 layers, 8 key-value heads, head dimension 128), 4,096 tokens, one chat, 16 GB card, usable 14.40 GB. Cache: 2 x 40 x 8 x 128 x 2 x 4,096 = 0.67 GB. 16-bit: 26.00 + 0.67 + 2.67 = 29.34 GB, no. 8-bit: 13.00 + 0.67 + 1.37 = 15.04 GB, short by 0.64. 4-bit: 6.50 + 0.67 + 1.00 = 8.17 GB, fits with 6.23 spare.

Assessment options

Keep learning

The complete workbook

This workbook teaches one repeatable method for answering the question 'will it fit?'. You will work out weights at any precision, size the key-value cache from a model card, budget the extra memory that training and fine-tuning need, and run a small calculator with a safety margin. It ends with an honest account of what one GPU can and cannot train.

  1. 01
    Weights: parameters times bytes

    Every fit check starts with the weights, the number you can compute exactly.

    Read here · Reading
  2. 02
    The key-value cache

    While it generates, a model stores two vectors per layer for every earlier token. That store can rival the weights.

    Read here · 1 exercise
  3. 03
    Activations, overhead and the allowance

    Weights and cache are exact. The rest is not, so budget an allowance, then measure.

    Read here · 1 exercise
  4. 04
    Training memory: what learning adds

    Inference only reads the weights. Training changes them, and the model states alone need eight times the size of a 16-bit model file.

    Read here · 1 exercise
  5. 05
    Adapters: fine-tuning with far less state

    Full fine-tuning pays 16 bytes for every parameter. Adapters train a tiny fraction and skip most of that bill.

    Read here · 1 exercise
  6. 06
    The fit check, the fixes and the honest limits

    Turn the method into a repeatable procedure, then be straight about what one GPU can do.

    Read here · 1 exercise

Also inside: a 9-point checklist, a glossary of 12 terms and 10 questions and answers to test yourself. 5 hands-on exercises, each with a worked answer at the back where the workbook gives one.

The PDF is free. We ask for your name and email before downloading. Read the privacy notice at the download form. Free to download and use for personal learning, study groups and inside your own team. Please do not resell the workbooks or republish them as your own. Link people to trust-agent.ai instead.

Get your free PDF workbook

Enter your name and email, then download the complete workbook. This form also works without JavaScript.

We privately record your name, email and request IP for this download. Read our privacy notice and retention policy.

Visit Mickai on LinkedIn

Newsletter confirmation does not affect your download. Following Mickai on LinkedIn is optional; this site does not verify followers.

Test yourself

Questions and answers

How do I work out how much memory a model's weights need?

Multiply the parameter count by the bytes per parameter: 2 for 16-bit, 1 for 8-bit, 0.5 for 4-bit, plus the small extra real 4-bit formats add for scaling values. A 7-billion-parameter model is 14 GB at 16-bit, 7 GB at 8-bit and about 3.5 GB at 4-bit. Check whether your tool reports GB or GiB.

What is the KV cache and what sets its size?

It stores the keys and values of every token already in the conversation, so the model need not recompute them. Per token it is 2 x layers x key-value heads x head dimension x bytes per value, multiplied by the tokens held and the number of simultaneous chats. Read the key-value head count from the model card, not the attention head count.

Does the KV cache formula always apply?

No. It assumes every layer keeps every past token in full. Sliding-window attention looks only at a recent window, so older tokens may not need keeping, and compressed designs such as latent attention store a smaller vector per token, so the formula can overstate them. Some models mix layer types. Use the publisher's stated cache size where given, and measure your own setup.

What does 16 bytes per parameter for training mean?

It is the ZeRO paper's count of model states for mixed-precision training with an Adam-style optimiser: 2 bytes for 16-bit weights, 2 for 16-bit gradients, and 12 for the 32-bit master weights, momentum and variance. It counts the parameter-related tensors only.

Does 16 bytes per parameter include activations?

No. The paper counts activations, temporary buffers and fragmented memory separately, as residual states. Treat 16 bytes per parameter as a floor. Activations grow with batch size, sequence length and depth, so estimate them, or measure a small run, and add them.

What is activation checkpointing?

It keeps only some activations during the forward pass and recomputes the rest when the backward pass needs them. The original paper's method needs memory that grows with the square root of the layer count, for one extra forward pass, roughly a third more compute per step. It does not shrink weights, gradients or optimiser state.

Why does LoRA need less memory than full fine-tuning?

The pretrained weights are frozen, so they need no gradients and no optimiser state. Only the small adapter matrices are trained, and only they pay the full per-parameter training cost. Most activations are still needed, so checkpointing and smaller batches still matter.

How much safety margin should I leave?

There is no published constant. This workbook plans to use at most 90% of the device's memory, leaving 10% for other programs and errors, plus an allowance of the larger of 1 GB or 10% of everything else counted. Both are planning assumptions. Measure your real peak memory and adjust.

What should I do when a model does not fit?

Change the biggest term first. Lower the precision, choose a smaller model, shorten the context or serve fewer chats, offload some data to system memory at a cost in speed, or split the model across more devices. For training, use a smaller batch, activation checkpointing or adapters.

Can one GPU pretrain a frontier-scale model?

No. Memory is only one constraint. Model states alone need 16 bytes per parameter, compute time runs to years on one device at that scale by this workbook's estimates, and the data and engineering needs are large too. A single GPU can run models that fit its memory, fine-tune small ones with adapters and train toy models.

Write as you go

My notes

Use this scratchpad for your own notes, working or answers as you read. Notes are saved in this browser on this device. Downloading makes a local copy; it does not send your notes to Mickai.

Consolidate your learning

Review your work

Work through the exercises and questions, then compare your reasoning with the worked answers. A scored exam and verifiable certificate are not yet available for this course.

Review the questions

Learn the language

Key terms

Parameter
One learned number inside a model. The parameter count times the bytes per parameter gives the size of the weights.
Precision
How many bits store each number, for example 32, 16, 8 or 4. Fewer bits mean less memory and usually some loss of quality.
KV cache
Stored keys and values for every token already in the conversation, so attention does not recompute them. It grows with context and with simultaneous chats.
Key-value heads
The number of separate key and value sets in each layer. Grouped-query and multi-query attention use fewer than the number of query heads, which shrinks the cache.
Activations
The temporary tensors each layer produces. In training they are kept for the backward pass and can dominate memory.
Gradient
The calculated slope showing how each trainable parameter should change to reduce the error. Training stores one per trainable parameter.

6 of the workbook's 12 terms. The complete glossary is in the workbook.

Follow the evidence

Sources and checks

Facts last checked: .

Examples in this workbook were run on: Python 3.12.10 on Windows 11 (2026-09-25).

These workbooks use AI assistance. See how the workbooks are made.

  1. ZeRO: Memory Optimizations Toward Training Trillion Parameter ModelsarXiv, 1910.02054
  2. LoRA: Low-Rank Adaptation of Large Language ModelsarXiv, 2106.09685
  3. QLoRA: Efficient Finetuning of Quantized LLMsarXiv, 2305.14314
  4. Training Deep Nets with Sublinear Memory CostarXiv, 1604.06174
  5. Mixed Precision TrainingarXiv, 1710.03740
  6. Reducing Activation Recomputation in Large Transformer ModelsarXiv, 2205.05198
  7. FlashAttention: Fast and Memory-Efficient Exact Attention with IO-AwarenessarXiv, 2205.14135
  8. Efficient Memory Management for Large Language Model Serving with PagedAttentionarXiv, 2309.06180
  9. GQA: Training Generalized Multi-Query Transformer Models from Multi-Head CheckpointsarXiv, 2305.13245
  10. Fast Transformer Decoding: One Write-Head is All You NeedarXiv, 1911.02150
  11. Longformer: The Long-Document TransformerarXiv, 2004.05150
  12. DeepSeek-V2: A Strong, Economical, and Efficient Mixture-of-Experts Language ModelarXiv, 2405.04434
  13. Scaling Laws for Neural Language ModelsarXiv, 2001.08361
  14. Training Compute-Optimal Large Language ModelsarXiv, 2203.15556

Created by Mickarle Wagstaff-Irons - Micky Irons with the Mickai team. Published by Mickai LTD. Last updated 25 September 2026.

NextKeep going

Where to go next