model has unused tensor on UD-IQ2_M: Is it normal?

#12
by engrtipusultan - opened

When I am loading the model through b6497-bin-ubuntu-vulkan I am getting below messages that model has unused tensor. I dont get it on loading any other models like qwen series or gemma.

I wanted to check if this is normal or indicating some issue in these weights or llama.cpp?

model has unused tensor blk.46.attn_norm.weight (size = 16384 bytes) -- ignoring
model has unused tensor blk.46.attn_q.weight (size = 28311552 bytes) -- ignoring
model has unused tensor blk.46.attn_k.weight (size = 2359296 bytes) -- ignoring
model has unused tensor blk.46.attn_v.weight (size = 2359296 bytes) -- ignoring
model has unused tensor blk.46.attn_q.bias (size = 49152 bytes) -- ignoring
model has unused tensor blk.46.attn_k.bias (size = 4096 bytes) -- ignoring
model has unused tensor blk.46.attn_v.bias (size = 4096 bytes) -- ignoring
model has unused tensor blk.46.attn_output.weight (size = 28311552 bytes) -- ignoring
model has unused tensor blk.46.post_attention_norm.weight (size = 16384 bytes) -- ignoring
model has unused tensor blk.46.ffn_gate_inp.weight (size = 2097152 bytes) -- ignoring
model has unused tensor blk.46.exp_probs_b.bias (size = 512 bytes) -- ignoring
model has unused tensor blk.46.ffn_gate_exps.weight (size = 242221056 bytes) -- ignoring
model has unused tensor blk.46.ffn_down_exps.weight (size = 507510784 bytes) -- ignoring
model has unused tensor blk.46.ffn_up_exps.weight (size = 242221056 bytes) -- ignoring
model has unused tensor blk.46.ffn_gate_shexp.weight (size = 3244032 bytes) -- ignoring
model has unused tensor blk.46.ffn_down_shexp.weight (size = 3964928 bytes) -- ignoring
model has unused tensor blk.46.ffn_up_shexp.weight (size = 3244032 bytes) -- ignoring
model has unused tensor blk.46.nextn.eh_proj.weight (size = 11010048 bytes) -- ignoring
model has unused tensor blk.46.nextn.embed_tokens.weight (size = 203685888 bytes) -- ignoring
model has unused tensor blk.46.nextn.enorm.weight (size = 16384 bytes) -- ignoring
model has unused tensor blk.46.nextn.hnorm.weight (size = 16384 bytes) -- ignoring
model has unused tensor blk.46.nextn.shared_head_head.weight (size = 203685888 bytes) -- ignoring
model has unused tensor blk.46.nextn.shared_head_norm.weight (size = 16384 bytes) -- ignoring
Enter your choice: 17
Starting model: GLM-4.5-AIR
Model path: /home/tipu/AI/models/unsloth/GLM-AIR/GLM-4.5-Air-UD-IQ2_M.gguf
Changing directory to: /home/tipu/Applications/llamacpp/
Executing: ./llama-server -m /home/tipu/AI/models/unsloth/GLM-AIR/GLM-4.5-Air-UD-IQ2_M.gguf --port 8888 --api-key 12345 --jinja --n-predict -1 --n-gpu-layers 99 --reasoning-format none --temp 0.6 --top-k 40 --top-p 0.95 --min-p 0 --ctx-size 16384 --no-context-shift --ubatch-size 2048 --batch-size 128 --seed -1 --mlock --no-mmap --no-warmup --threads 4 --alias GLM-45-AIR --no-webui
Press Ctrl+C to stop the server and return to the menu.

load_backend: loaded RPC backend from /home/tipu/Applications/llamacpp/libggml-rpc.so
ggml_vulkan: Found 1 Vulkan devices:
ggml_vulkan: 0 = AMD Radeon Graphics (RADV RENOIR) (radv) | uma: 1 | fp16: 1 | bf16: 0 | warp size: 64 | shared memory: 65536 | int dot: 0 | matrix cores: none
load_backend: loaded Vulkan backend from /home/tipu/Applications/llamacpp/libggml-vulkan.so
load_backend: loaded CPU backend from /home/tipu/Applications/llamacpp/libggml-cpu-haswell.so
build: 6497 (cd08fc3e) with cc (Ubuntu 11.4.0-1ubuntu1~22.04.2) 11.4.0 for x86_64-linux-gnu
system info: n_threads = 4, n_threads_batch = 4, total_threads = 16

system_info: n_threads = 4 (n_threads_batch = 4) / 16 | CPU : SSE3 = 1 | SSSE3 = 1 | AVX = 1 | AVX2 = 1 | F16C = 1 | FMA = 1 | BMI2 = 1 | LLAMAFILE = 1 | OPENMP = 1 | REPACK = 1 | 

Web UI is disabled
main: binding port with default address family
main: HTTP server is listening, hostname: 127.0.0.1, port: 8888, http threads: 15
main: loading model
srv    load_model: loading model '/home/tipu/AI/models/unsloth/GLM-AIR/GLM-4.5-Air-UD-IQ2_M.gguf'
llama_model_load_from_file_impl: using device Vulkan0 (AMD Radeon Graphics (RADV RENOIR)) (0000:03:00.0) - 38007 MiB free
llama_model_loader: loaded meta data with 52 key-value pairs and 803 tensors from /home/tipu/AI/models/unsloth/GLM-AIR/GLM-4.5-Air-UD-IQ2_M.gguf (version GGUF V3 (latest))
llama_model_loader: Dumping metadata keys/values. Note: KV overrides do not apply in this output.
llama_model_loader: - kv   0:                       general.architecture str              = glm4moe
llama_model_loader: - kv   1:                               general.type str              = model
llama_model_loader: - kv   2:                               general.name str              = Glm-4.5-Air
llama_model_loader: - kv   3:                           general.basename str              = Glm-4.5-Air
llama_model_loader: - kv   4:                       general.quantized_by str              = Unsloth
llama_model_loader: - kv   5:                         general.size_label str              = 128x9.4B
llama_model_loader: - kv   6:                            general.license str              = mit
llama_model_loader: - kv   7:                           general.repo_url str              = https://huggingface.co/unsloth
llama_model_loader: - kv   8:                   general.base_model.count u32              = 1
llama_model_loader: - kv   9:                  general.base_model.0.name str              = GLM 4.5 Air
llama_model_loader: - kv  10:          general.base_model.0.organization str              = Zai Org
llama_model_loader: - kv  11:              general.base_model.0.repo_url str              = https://huggingface.co/zai-org/GLM-4....
llama_model_loader: - kv  12:                               general.tags arr[str,2]       = ["unsloth", "text-generation"]
llama_model_loader: - kv  13:                          general.languages arr[str,2]       = ["en", "zh"]
llama_model_loader: - kv  14:                        glm4moe.block_count u32              = 47
llama_model_loader: - kv  15:                     glm4moe.context_length u32              = 131072
llama_model_loader: - kv  16:                   glm4moe.embedding_length u32              = 4096
llama_model_loader: - kv  17:                glm4moe.feed_forward_length u32              = 10944
llama_model_loader: - kv  18:               glm4moe.attention.head_count u32              = 96
llama_model_loader: - kv  19:            glm4moe.attention.head_count_kv u32              = 8
llama_model_loader: - kv  20:                     glm4moe.rope.freq_base f32              = 1000000.000000
llama_model_loader: - kv  21:   glm4moe.attention.layer_norm_rms_epsilon f32              = 0.000010
llama_model_loader: - kv  22:                  glm4moe.expert_used_count u32              = 8
llama_model_loader: - kv  23:               glm4moe.attention.key_length u32              = 128
llama_model_loader: - kv  24:             glm4moe.attention.value_length u32              = 128
llama_model_loader: - kv  25:               glm4moe.rope.dimension_count u32              = 64
llama_model_loader: - kv  26:                       glm4moe.expert_count u32              = 128
llama_model_loader: - kv  27:         glm4moe.expert_feed_forward_length u32              = 1408
llama_model_loader: - kv  28:                glm4moe.expert_shared_count u32              = 1
llama_model_loader: - kv  29:          glm4moe.leading_dense_block_count u32              = 1
llama_model_loader: - kv  30:                 glm4moe.expert_gating_func u32              = 2
llama_model_loader: - kv  31:               glm4moe.expert_weights_scale f32              = 1.000000
llama_model_loader: - kv  32:                glm4moe.expert_weights_norm bool             = true
llama_model_loader: - kv  33:               glm4moe.nextn_predict_layers u32              = 1
llama_model_loader: - kv  34:                       tokenizer.ggml.model str              = gpt2
llama_model_loader: - kv  35:                         tokenizer.ggml.pre str              = glm4
llama_model_loader: - kv  36:                      tokenizer.ggml.tokens arr[str,151552]  = ["!", "\"", "#", "$", "%", "&", "'", ...
llama_model_loader: - kv  37:                  tokenizer.ggml.token_type arr[i32,151552]  = [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, ...
llama_model_loader: - kv  38:                      tokenizer.ggml.merges arr[str,318088]  = ["Ġ Ġ", "Ġ ĠĠĠ", "ĠĠ ĠĠ", "...
llama_model_loader: - kv  39:                tokenizer.ggml.eos_token_id u32              = 151329
llama_model_loader: - kv  40:            tokenizer.ggml.padding_token_id u32              = 151330
llama_model_loader: - kv  41:                tokenizer.ggml.bos_token_id u32              = 151331
llama_model_loader: - kv  42:                tokenizer.ggml.eot_token_id u32              = 151336
llama_model_loader: - kv  43:            tokenizer.ggml.unknown_token_id u32              = 151329
llama_model_loader: - kv  44:                tokenizer.ggml.eom_token_id u32              = 151338
llama_model_loader: - kv  45:                    tokenizer.chat_template str              = [gMASK]<sop>\n{%- if tools -%}\n<|syste...
llama_model_loader: - kv  46:               general.quantization_version u32              = 2
llama_model_loader: - kv  47:                          general.file_type u32              = 29
llama_model_loader: - kv  48:                      quantize.imatrix.file str              = GLM-4.5-Air-GGUF/imatrix_unsloth.gguf
llama_model_loader: - kv  49:                   quantize.imatrix.dataset str              = unsloth_calibration_GLM-4.5-Air.txt
llama_model_loader: - kv  50:             quantize.imatrix.entries_count u32              = 502
llama_model_loader: - kv  51:              quantize.imatrix.chunks_count u32              = 88
llama_model_loader: - type  f32:  331 tensors
llama_model_loader: - type q5_0:    2 tensors
llama_model_loader: - type q2_K:    5 tensors
llama_model_loader: - type q4_K:   15 tensors
llama_model_loader: - type q5_K:   15 tensors
llama_model_loader: - type q6_K:   11 tensors
llama_model_loader: - type iq2_xs:   64 tensors
llama_model_loader: - type iq4_nl:   91 tensors
llama_model_loader: - type iq2_s:   26 tensors
llama_model_loader: - type iq4_xs:  243 tensors
print_info: file format = GGUF V3 (latest)
print_info: file type   = IQ2_M - 2.7 bpw
print_info: file size   = 41.26 GiB (3.21 BPW) 
load: special_eot_id is not in special_eog_ids - the tokenizer config may be incorrect
load: special_eom_id is not in special_eog_ids - the tokenizer config may be incorrect
load: printing all EOG tokens:
load:   - 151329 ('<|endoftext|>')
load:   - 151336 ('<|user|>')
load:   - 151338 ('<|observation|>')
load: special tokens cache size = 36
load: token to piece cache size = 0.9713 MB
print_info: arch             = glm4moe
print_info: vocab_only       = 0
print_info: n_ctx_train      = 131072
print_info: n_embd           = 4096
print_info: n_layer          = 47
print_info: n_head           = 96
print_info: n_head_kv        = 8
print_info: n_rot            = 64
print_info: n_swa            = 0
print_info: is_swa_any       = 0
print_info: n_embd_head_k    = 128
print_info: n_embd_head_v    = 128
print_info: n_gqa            = 12
print_info: n_embd_k_gqa     = 1024
print_info: n_embd_v_gqa     = 1024
print_info: f_norm_eps       = 0.0e+00
print_info: f_norm_rms_eps   = 1.0e-05
print_info: f_clamp_kqv      = 0.0e+00
print_info: f_max_alibi_bias = 0.0e+00
print_info: f_logit_scale    = 0.0e+00
print_info: f_attn_scale     = 0.0e+00
print_info: n_ff             = 10944
print_info: n_expert         = 128
print_info: n_expert_used    = 8
print_info: causal attn      = 1
print_info: pooling type     = 0
print_info: rope type        = 2
print_info: rope scaling     = linear
print_info: freq_base_train  = 1000000.0
print_info: freq_scale_train = 1
print_info: n_ctx_orig_yarn  = 131072
print_info: rope_finetuned   = unknown
print_info: model type       = 106B.A12B
print_info: model params     = 110.47 B
print_info: general.name     = Glm-4.5-Air
print_info: vocab type       = BPE
print_info: n_vocab          = 151552
print_info: n_merges         = 318088
print_info: BOS token        = 151331 '[gMASK]'
print_info: EOS token        = 151329 '<|endoftext|>'
print_info: EOT token        = 151336 '<|user|>'
print_info: EOM token        = 151338 '<|observation|>'
print_info: UNK token        = 151329 '<|endoftext|>'
print_info: PAD token        = 151330 '[MASK]'
print_info: LF token         = 198 'Ċ'
print_info: FIM PRE token    = 151347 '<|code_prefix|>'
print_info: FIM SUF token    = 151349 '<|code_suffix|>'
print_info: FIM MID token    = 151348 '<|code_middle|>'
print_info: EOG token        = 151329 '<|endoftext|>'
print_info: EOG token        = 151336 '<|user|>'
print_info: EOG token        = 151338 '<|observation|>'
print_info: max token length = 1024
load_tensors: loading model tensors, this can take a while... (mmap = false)
model has unused tensor blk.46.attn_norm.weight (size = 16384 bytes) -- ignoring
model has unused tensor blk.46.attn_q.weight (size = 28311552 bytes) -- ignoring
model has unused tensor blk.46.attn_k.weight (size = 2359296 bytes) -- ignoring
model has unused tensor blk.46.attn_v.weight (size = 2359296 bytes) -- ignoring
model has unused tensor blk.46.attn_q.bias (size = 49152 bytes) -- ignoring
model has unused tensor blk.46.attn_k.bias (size = 4096 bytes) -- ignoring
model has unused tensor blk.46.attn_v.bias (size = 4096 bytes) -- ignoring
model has unused tensor blk.46.attn_output.weight (size = 28311552 bytes) -- ignoring
model has unused tensor blk.46.post_attention_norm.weight (size = 16384 bytes) -- ignoring
model has unused tensor blk.46.ffn_gate_inp.weight (size = 2097152 bytes) -- ignoring
model has unused tensor blk.46.exp_probs_b.bias (size = 512 bytes) -- ignoring
model has unused tensor blk.46.ffn_gate_exps.weight (size = 242221056 bytes) -- ignoring
model has unused tensor blk.46.ffn_down_exps.weight (size = 507510784 bytes) -- ignoring
model has unused tensor blk.46.ffn_up_exps.weight (size = 242221056 bytes) -- ignoring
model has unused tensor blk.46.ffn_gate_shexp.weight (size = 3244032 bytes) -- ignoring
model has unused tensor blk.46.ffn_down_shexp.weight (size = 3964928 bytes) -- ignoring
model has unused tensor blk.46.ffn_up_shexp.weight (size = 3244032 bytes) -- ignoring
model has unused tensor blk.46.nextn.eh_proj.weight (size = 11010048 bytes) -- ignoring
model has unused tensor blk.46.nextn.embed_tokens.weight (size = 203685888 bytes) -- ignoring
model has unused tensor blk.46.nextn.enorm.weight (size = 16384 bytes) -- ignoring
model has unused tensor blk.46.nextn.hnorm.weight (size = 16384 bytes) -- ignoring
model has unused tensor blk.46.nextn.shared_head_head.weight (size = 203685888 bytes) -- ignoring
model has unused tensor blk.46.nextn.shared_head_norm.weight (size = 16384 bytes) -- ignoring
load_tensors: offloading 47 repeating layers to GPU
load_tensors: offloading output layer to GPU
load_tensors: offloaded 48/48 layers to GPU
load_tensors:      Vulkan0 model buffer size = 40497.40 MiB
load_tensors:          CPU model buffer size =   333.00 MiB
....................................................................................................
llama_context: constructing llama_context
llama_context: n_seq_max     = 1
llama_context: n_ctx         = 16384
llama_context: n_ctx_per_seq = 16384
llama_context: n_batch       = 128
llama_context: n_ubatch      = 128
llama_context: causal_attn   = 1
llama_context: flash_attn    = auto
llama_context: kv_unified    = false
llama_context: freq_base     = 1000000.0
llama_context: freq_scale    = 1
llama_context: n_ctx_per_seq (16384) < n_ctx_train (131072) -- the full capacity of the model will not be utilized
llama_context: Vulkan_Host  output buffer size =     0.58 MiB
llama_kv_cache:    Vulkan0 KV buffer size =  2944.00 MiB
llama_kv_cache: size = 2944.00 MiB ( 16384 cells,  46 layers,  1/1 seqs), K (f16): 1472.00 MiB, V (f16): 1472.00 MiB
llama_context: Flash Attention was auto, set to enabled
llama_context:    Vulkan0 compute buffer size =    78.00 MiB
llama_context: Vulkan_Host compute buffer size =    10.02 MiB
llama_context: graph nodes  = 3101
llama_context: graph splits = 2
common_init_from_params: added <|endoftext|> logit bias = -inf
common_init_from_params: added <|user|> logit bias = -inf
common_init_from_params: added <|observation|> logit bias = -inf
common_init_from_params: setting dry_penalty_last_n to ctx_size = 16384
srv          init: initializing slots, n_slots = 1
slot         init: id  0 | task -1 | new slot n_ctx_slot = 16384
srv          init: Enable thinking? 1
main: model loaded
main: chat template, chat_template: [gMASK]<sop>
{%- if tools -%}
<|system|>
# Tools

You may call one or more functions to assist with the user query.

You are provided with function signatures within <tools></tools> XML tags:
<tools>
{% for tool in tools %}
{{ tool | tojson|string }}
{% endfor %}
</tools>

For each function call, output the function name and arguments within the following XML format:
<tool_call>{function-name}
<arg_key>{arg-key-1}</arg_key>
<arg_value>{arg-value-1}</arg_value>
<arg_key>{arg-key-2}</arg_key>
<arg_value>{arg-value-2}</arg_value>
...
</tool_call>{%- endif -%}
{%- macro visible_text(content) -%}
    {%- if content is string -%}
        {{- content }}
    {%- elif content is iterable and content is not mapping -%}
        {%- for item in content -%}
            {%- if item is mapping and item.type == 'text' -%}
                {{- item.text }}
            {%- elif item is string -%}
                {{- item }}
            {%- endif -%}
        {%- endfor -%}
    {%- else -%}
        {{- content }}
    {%- endif -%}
{%- endmacro -%}
{%- set ns = namespace(last_user_index=-1) %}
{%- for m in messages %}
    {%- if m.role == 'user' %}
        {% set ns.last_user_index = loop.index0 -%}
    {%- endif %}
{%- endfor %}
{% for m in messages %}
{%- if m.role == 'user' -%}<|user|>
{% set content = visible_text(m.content) %}{{ content }}
{{- '/nothink' if (enable_thinking is defined and not enable_thinking and not content.endswith("/nothink")) else '' -}}
{%- elif m.role == 'assistant' -%}
<|assistant|>
{%- set reasoning_content = '' %}
{%- set content = visible_text(m.content) %}
{%- if m.reasoning_content is string %}
    {%- set reasoning_content = m.reasoning_content %}
{%- else %}
    {%- if '</think>' in content %}
        {%- set reasoning_content = ((content.split('</think>')|first).rstrip('\n').split('<think>')|last).lstrip('\n') %}
        {%- set content = (content.split('</think>')|last).lstrip('\n') %}
    {%- endif %}
{%- endif %}
{%- if loop.index0 > ns.last_user_index and reasoning_content -%}
{{ '\n<think>' + reasoning_content.strip() +  '</think>'}}
{%- else -%}
{{ '\n<think></think>' }}
{%- endif -%}
{%- if content.strip() -%}
{{ '\n' + content.strip() }}
{%- endif -%}
{% if m.tool_calls %}
{% for tc in m.tool_calls %}
{%- if tc.function %}
    {%- set tc = tc.function %}
{%- endif %}
{{ '\n<tool_call>' + tc.name }}
{% set _args = tc.arguments %}
{% for k, v in _args.items() %}
<arg_key>{{ k }}</arg_key>
<arg_value>{{ v | tojson|string if v is not string else v }}</arg_value>
{% endfor %}
</tool_call>{% endfor %}
{% endif %}
{%- elif m.role == 'tool' -%}
{%- if m.content is string -%}
{%- if loop.first or (messages[loop.index0 - 1].role != "tool") %}
    {{- '<|observation|>' }}
{%- endif %}
{{- '\n<tool_response>\n' }}
{{- m.content }}
{{- '\n</tool_response>' }}
{%- else -%}
<|observation|>{% for tr in m.content %}

<tool_response>
{{ tr.output if tr.output is defined else tr }}
</tool_response>{% endfor -%}
{% endif -%}
{%- elif m.role == 'system' -%}
<|system|>
{{ visible_text(m.content) }}
{%- endif -%}
{%- endfor -%}
{%- if add_generation_prompt -%}
    <|assistant|>{{- '\n<think></think>' if (enable_thinking is defined and not enable_thinking) else '' -}}
{%- endif -%}, example_format: '[gMASK]<sop><|system|>
You are a helpful assistant<|user|>
Hello<|assistant|>
<think></think>
Hi there<|user|>
How are you?<|assistant|>'
main: server is listening on http://127.0.0.1:8888 - starting the main loop
srv  update_slots: all slots are idle
^Csrv    operator(): operator(): cleaning up before exit...

Received interrupt signal. Stopping server...
Received second interrupt, terminating immediately.
Server stopped. Returning to menu...

Please select an LLM to run:
1. Qwen3-Coder-30B-A3B
2. Qwen3-Coder-30B-A3B-Distill
3. Hydra-Coder
4. Qwen3-Think-A3B-2507
5. Qwen3-Think-A3B-Distill
6. Qwen3-Instruct-A3B-2507
7. Qwen3-Instruct-A3B-2507-Q6
8. Janv1
9. GPT-OSS-20B
10. Gemma3-12B
11. Nanonets-OCR
12. Devstral-Small-2507
13. Devstral-Small-2507-vision
14. DeepSeek-R1-0528-8B
15. THUDM_GLM-4-9B-0414
16. Tesslate_Tessa-Rust-T1-7B
17. GLM-4.5-AIR
18. Hunyuan-MT-7B
19. GPT-OSS-Jinx
q. Quit
Enter your choice: 
Server stopped. Returning to menu...

Please select an LLM to run:
1. Qwen3-Coder-30B-A3B
2. Qwen3-Coder-30B-A3B-Distill
3. Hydra-Coder
4. Qwen3-Think-A3B-2507
5. Qwen3-Think-A3B-Distill
6. Qwen3-Instruct-A3B-2507
7. Qwen3-Instruct-A3B-2507-Q6
8. Janv1
9. GPT-OSS-20B
10. Gemma3-12B
11. Nanonets-OCR
12. Devstral-Small-2507
13. Devstral-Small-2507-vision
14. DeepSeek-R1-0528-8B
15. THUDM_GLM-4-9B-0414
16. Tesslate_Tessa-Rust-T1-7B
17. GLM-4.5-AIR
18. Hunyuan-MT-7B
19. GPT-OSS-Jinx
q. Quit
Enter your choice: q
Exiting...

Sign up or log in to comment