6 #define CACHELINE_BYTES 64
10 if (align == 0)
return n;
11 return (n + align - 1) & ~(align - 1);
14 static size_t bump_bytes(
size_t *off,
size_t bytes,
size_t align)
52 (
size_t)V * (
size_t)H * elem_bytes,
57 (
size_t)T * (
size_t)H * elem_bytes,
62 (
size_t)T * (
size_t)H * elem_bytes,
77 for (
int layer = 0; layer < L; ++layer) {
82 (
size_t)H * elem_bytes,
86 (
size_t)H * elem_bytes,
91 (
size_t)H * (
size_t)(3 * H) * elem_bytes,
96 (
size_t)(3 * H) * elem_bytes,
101 (
size_t)H * (
size_t)H * elem_bytes,
105 (
size_t)H * elem_bytes,
110 (
size_t)H * (
size_t)Hff * elem_bytes,
114 (
size_t)Hff * elem_bytes,
119 (
size_t)Hff * (
size_t)H * elem_bytes,
123 (
size_t)H * elem_bytes,
129 (
size_t)H * elem_bytes,
133 (
size_t)H * elem_bytes,
138 (
size_t)T * (
size_t)H * elem_bytes,
143 (
size_t)V * (
size_t)H * elem_bytes,
148 (
size_t)T * (
size_t)V * elem_bytes,
void layout_transformer_from_ir(TransformerModel *m, const CKIRGraph *ir)
static size_t align_up_bytes(size_t n, size_t align)
static size_t bump_bytes(size_t *off, size_t bytes, size_t align)
size_t attn_proj_bias_offset
size_t attn_proj_weight_offset