
GPT-3 175B architecture accounting: exact params, shape trace, KV-cache (hmgpt3)
Source:R/geron_w4a_native.R
morie_geron_gpt3.RdGPT-3 175B architecture accounting: exact params, shape trace, KV-cache (hmgpt3)
Usage
morie_geron_gpt3(
prompt,
n_tokens,
n_layers = 96,
d_model = 12288,
n_heads = 96,
d_ff = NULL,
vocab_size = 50257,
n_ctx = 2048,
dtype_bytes = 2
)Examples
morie_geron_gpt3(prompt = c(1, 2, 3, 4, 5, 6, 7, 8), n_tokens = 5L)
#> $total_parameters
#> [1] 174604259328
#>
#> $parameters_per_layer
#> [1] 1812099072
#>
#> $breakdown
#> $breakdown$token_embedding
#> [1] 617558016
#>
#> $breakdown$position_embedding
#> [1] 25165824
#>
#> $breakdown$attention_weights
#> [1] 57982058496
#>
#> $breakdown$attention_biases
#> [1] 4718592
#>
#> $breakdown$feedforward_weights
#> [1] 115964116992
#>
#> $breakdown$feedforward_biases
#> [1] 5898240
#>
#> $breakdown$layer_norms
#> [1] 4743168
#>
#> $breakdown$output_head
#> [1] 0
#>
#>
#> $shape_trace
#> $shape_trace[[1]]
#> $shape_trace[[1]][[1]]
#> [1] "token_ids"
#>
#> $shape_trace[[1]][[2]]
#> [1] 8
#>
#>
#> $shape_trace[[2]]
#> $shape_trace[[2]][[1]]
#> [1] "embedded"
#>
#> $shape_trace[[2]][[2]]
#> [1] 8 12288
#>
#>
#> $shape_trace[[3]]
#> $shape_trace[[3]][[1]]
#> [1] "q_per_head"
#>
#> $shape_trace[[3]][[2]]
#> [1] 96 8 128
#>
#>
#> $shape_trace[[4]]
#> $shape_trace[[4]][[1]]
#> [1] "attention_scores"
#>
#> $shape_trace[[4]][[2]]
#> [1] 96 8 8
#>
#>
#> $shape_trace[[5]]
#> $shape_trace[[5]][[1]]
#> [1] "attention_out"
#>
#> $shape_trace[[5]][[2]]
#> [1] 8 12288
#>
#>
#> $shape_trace[[6]]
#> $shape_trace[[6]][[1]]
#> [1] "ffn_hidden"
#>
#> $shape_trace[[6]][[2]]
#> [1] 8 49152
#>
#>
#> $shape_trace[[7]]
#> $shape_trace[[7]][[1]]
#> [1] "block_out"
#>
#> $shape_trace[[7]][[2]]
#> [1] 8 12288
#>
#>
#> $shape_trace[[8]]
#> $shape_trace[[8]][[1]]
#> [1] "logits"
#>
#> $shape_trace[[8]][[2]]
#> [1] 5 50257
#>
#>
#>
#> $d_head
#> [1] 128
#>
#> $n_prompt_tokens
#> [1] 8
#>
#> $n_generated
#> [1] 5
#>
#> $context_used
#> [1] 13
#>
#> $kv_cache_bytes
#> [1] 61341696
#>
#> $flops_per_token
#> [1] 349208518656
#>
#> $estimate
#> [1] 174604259328
#>
#> $n
#> [1] 8
#>
#> $method
#> [1] "GPT-3 decoder-only architecture accounting"
#>