Skip to content

VLLM for Qwen 2.5 72B produces all !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! outputs, regardless of prompt given GPTQ 4 bits quantization #14126

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
1 task done
manitadayon opened this issue Mar 3, 2025 · 44 comments
Assignees
Labels
bug Something isn't working

Comments

@manitadayon
Copy link

manitadayon commented Mar 3, 2025

Your current environment

I performed GPTQ quantization on Qwen 72B instruct using AutoGPTQ package, with the following configuration:
group_size = 32, desc_order= 32.
Then I use the model inside the VLLM using the following configuration:

llm = LLM(model = model_path, max_model_len = 20000)

messages = [
{
"role": "system"
"content": system message
},
{"role": "user",
"content": user message
}
]
tokenized_chat = tokenizer.apply_chat_template(messages, tokenize = True, add_generation_prompt = True)
output = llm.generate(. . . )

However regardless of prompt the outptut is always !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

The same code works perfectly fine for llama 3.3 and 3.1 70B.

Is Qwen 2.5 72B not compatible with VLLM.
I have the latest version of VLLM and Transformers using

!pip install --upgrade vllm
!pip install --upgrade transformers

Any help would be appreciated.

🐛 Describe the bug

The output is always !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! no matter the input and the prompt or other configurations.

Before submitting a new issue...

  • Make sure you already searched for relevant issues, and asked the chatbot living at the bottom right corner of the documentation page, which can answer lots of frequently asked questions.
@manitadayon manitadayon added the bug Something isn't working label Mar 3, 2025
@manitadayon manitadayon changed the title VLLM for Qwen 2.5 produces all !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! outputs, regardless of prompt VLLM for Qwen 2.5 72B produces all !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! outputs, regardless of prompt given GPTQ 4 bits quantization Mar 3, 2025
@manitadayon
Copy link
Author

manitadayon commented Mar 3, 2025

Is VLLM compatible with GPTQ 4bit quantization of Qwen instruct? has anyone run this successfully?
Do you guys know if this is related to quantization to 4 bits or there is other problems I am not aware of that.

@noooop
Copy link
Contributor

noooop commented Mar 3, 2025

maybe fixed by #11493

@manitadayon
Copy link
Author

maybe fixed by #11493

Sorry can you elaborate? I looked at the PR and I do not know what I should do to fix the problem. I am not passing the quantization parameter to LLM, so I think I am using GTPQ marlin kernel. But I still have the error. So technically based on the PR I should not even have the issue in the first place since the PR is merged.
I may be missing something, if it is otherwise, please elaborate on this.

@noooop
Copy link
Contributor

noooop commented Mar 3, 2025

May I ask what version of vllm you have?

@manitadayon
Copy link
Author

I use !pip install --upgrade vllm
The version is 0.7.3

@noooop
Copy link
Contributor

noooop commented Mar 3, 2025

@jeejeelee

Please take a look and help

@noooop
Copy link
Contributor

noooop commented Mar 3, 2025

@manitadayon

@manitadayon
Copy link
Author

@manitadayon

I will try the Qwen2 one and let you know. I do not think I have Nan in my parameters.

@noooop
Copy link
Contributor

noooop commented Mar 3, 2025

Any GPTQ-Int4 model from the official hf repository is fine, it doesn't have to be qwen2, it can be qwen2.5.

@jeejeelee
Copy link
Collaborator

Coulf you plz provibe your running script?

@benlemasurier
Copy link

#13035 possibly related?

@manitadayon
Copy link
Author

manitadayon commented Mar 3, 2025

Any GPTQ-Int4 model from the official hf repository is fine, it doesn't have to be qwen2, it can be qwen2.5.

Tried the Qwen/Qwen2.5-72B-Instruct-GPTQ-Int4 from huggingface, and this worked. To be honest the performance was extremely weak. I see the configuration for that was desc_order = False, group_size = 128.
My configuration: desc_order= True, group_size = 32.

@manitadayon
Copy link
Author

manitadayon commented Mar 3, 2025

Coulf you plz provibe your running script?
@jeejeelee, sure, please see the following.

quant_config  = BaseQuantizeConfig(
bits = 4, group_size = 32, desc_order = True, damp_percent = 0.01)

quantize_model = AutoGPTQForCausallM.from_pretrained(
model, max_memory = max_memory)
quantize_model .quantize(dataset, batch_size = 1,use_trition = False)

@manitadayon
Copy link
Author

manitadayon commented Mar 4, 2025

Any GPTQ-Int4 model from the official hf repository is fine, it doesn't have to be qwen2, it can be qwen2.5.

Tried the Qwen/Qwen2.5-72B-Instruct-GPTQ-Int4 from huggingface, and this worked. To be honest the performance was extremely weak. I see the configuration for that was desc_order = False, group_size = 128. My configuration: desc_order= True, group_size = 32.

After more testing, I realize bad performance is due to long context length. Which was strange since the same config was working great with Llama.
Regardless still trying to understand why GPTQ quantization did not work with VLLM.

@jeejeelee @noooop Do you think this is because of using AutoGPTQ package or because of configuration of desc_order and group size as I explained above.
Either way is very strange to me.

@noooop
Copy link
Contributor

noooop commented Mar 4, 2025

@jeejeelee

According to #11493, Qwen model NAN results will lead to !!!!! output.

The gpu to cpu conversion actually happens in sampler. Before this, adding nan detection will synchronize the cuda stream, resulting in performance degradation.

There is no particularly good place to run a runtime check hidden_or_intermediate_states for nan

draft

@manitadayon
Copy link
Author

manitadayon commented Mar 4, 2025

I see,why would it produce NAN result: Just trying to understand the action I need to take to resolve this, should I requantize the model, should I change the model parameters

@noooop
Copy link
Contributor

noooop commented Mar 4, 2025

I see,why would it produce NAN result: Just trying to understand the action I need to take to resolve this, should I requantize the model, should I change the model parameters

We first locate and confirm the problem, then try to solve it

@noooop
Copy link
Contributor

noooop commented Mar 4, 2025

@manitadayon

Is there any way you can modify the vllm code (in python site-packages) to output

print(torch.isnan(hidden_or_intermediate_states).any())

before

logits = self.model.compute_logits(hidden_or_intermediate_states,

Is it too hacky, but reinstalling vllm from source takes a long time

@manitadayon
Copy link
Author

Sure, given my setup it is pretty difficult to modify a package and install it from that source but try to test this idea.

@jeejeelee
Copy link
Collaborator

@noooop Thank you for providing this very useful information. I will verify the NaN output ASAP

@jeejeelee
Copy link
Collaborator

@noooop @manitadayon I can reproduce this issue by using Qwen1.5-14B-Chat-GPTQ, and now I've implemented a temporary solution which could fix this issue locally, please see: https://github.com/jeejeelee/vllm/blob/qwen2-overflow-clamp/vllm/model_executor/models/qwen2.py#L237-L246.
The code snippet used to reproduce is as follows:

import vllm
from vllm import SamplingParams


MODEL_PATH = "/model/Qwen1.5-14B-Chat-GPTQ"

prompts = [
    "Hello, my name is",
    "The president of the United States is",
    "The capital of France is",
    "The future of AI is",
]

template = "<|im_start|>system\nYou are a helpful assistant.<|im_end|>\n<|im_start|>user\n{question}<|im_end|>\n<|im_start|>assistant\n"

prompts = [template.format(question=prompt) for prompt in prompts]
sampling_params = SamplingParams(temperature=0.0, top_p=0.95)
llm = vllm.LLM(
    MODEL_PATH,
    max_num_seqs=2,
    trust_remote_code=True,
    max_model_len=1024,
    tensor_parallel_size=2,
    enforce_eager=True, 
)

outputs = llm.generate(prompts, sampling_params)
# Print the outputs.
for output in outputs:
    prompt = output.prompt
    generated_text = output.outputs[0].text
    print(f"Prompt: {prompt!r}, Generated text: {generated_text!r}")

@noooop
Copy link
Contributor

noooop commented Mar 5, 2025

@jeejeelee

Didn't expect that

I thought this code had been optimized for several years and bugs free already.

I think all GPTQ and even all quantized models using fp16 will be affected.

This means we need to add cast_overflow_tensors to all quantized layers or

We need to modify the cuda kernel to solve this problem


In fact, I don't know why quantized model use fp16 as default dtype, and converte the bf16 model to fp16.

awq Marlin and GPTQ Marlin both support bf16

return [torch.half, torch.bfloat16]

return [torch.half, torch.bfloat16]

@jeejeelee
Copy link
Collaborator

@noooop I agree, I just want to give you feedback on the results of my testing

@jeejeelee
Copy link
Collaborator

@mgoin Could you plz look at this thread, thanks

@mgoin
Copy link
Member

mgoin commented Mar 5, 2025

Is there a model uploaded to HF that I can reproduce with? I would assume this issue is specific to group_size=32, is this accurate? I would not be surprised if there are issues with this config since there aren't many group_size=32 models out there.

I found a Qwen GPTQ model with "bits": 4, "group_size": 32, "damp_percent": 0.01, "desc_act": true that I uploaded here (https://huggingface.co/mgoin/Qwen1.5-14B-Chat-GPTQ), and was able to get a reasonable GSM8k eval on it:

lm_eval --model vllm --model_args pretrained=Qwen1.5-14B-Chat-GPTQ,quantization=gptq_marlin --tasks gsm8k --num_fewshot 5 --batch_size auto
...
vllm (pretrained=Qwen1.5-14B-Chat-GPTQ,quantization=gptq_marlin), gen_kwargs: (None), limit: None, num_fewshot: 5, batch_size: auto
|Tasks|Version|     Filter     |n-shot|  Metric   |   |Value |   |Stderr|
|-----|------:|----------------|-----:|-----------|---|-----:|---|-----:|
|gsm8k|      3|flexible-extract|     5|exact_match|↑  |0.6861|±  |0.0128|
|     |       |strict-match    |     5|exact_match|↑  |0.5383|±  |0.0137|

So I'm going to say I haven't been able to reproduce this yet.

@manitadayon
Copy link
Author

Is there a model uploaded to HF that I can reproduce with? I would assume this issue is specific to group_size=32, is this accurate? I would not be surprised if there are issues with this config since there aren't many group_size=32 models out there.

I found a Qwen GPTQ model with "bits": 4, "group_size": 32, "damp_percent": 0.01, "desc_act": true that I uploaded here (https://huggingface.co/mgoin/Qwen1.5-14B-Chat-GPTQ), and was able to get a reasonable GSM8k eval on it:

lm_eval --model vllm --model_args pretrained=Qwen1.5-14B-Chat-GPTQ,quantization=gptq_marlin --tasks gsm8k --num_fewshot 5 --batch_size auto
...
vllm (pretrained=Qwen1.5-14B-Chat-GPTQ,quantization=gptq_marlin), gen_kwargs: (None), limit: None, num_fewshot: 5, batch_size: auto
|Tasks|Version|     Filter     |n-shot|  Metric   |   |Value |   |Stderr|
|-----|------:|----------------|-----:|-----------|---|-----:|---|-----:|
|gsm8k|      3|flexible-extract|     5|exact_match|↑  |0.6861|±  |0.0128|
|     |       |strict-match    |     5|exact_match|↑  |0.5383|±  |0.0137|

So I'm going to say I haven't been able to reproduce this yet.

I just reproduced the error again. Unfortunately I cannot upload the model to HF. My config was this time to use HF GPTQ quantization (as opposed to AutoGPTQ) with group_size = 32, desc_order= False (I have tried true as well with no luck).
Maybe another thing to check is the calibration data:
I used my own as opposed to Wikitext or C4.
I have done it for Qwen-instruct-72B. Maybe there is something about this model.
Two more possibilities to check:
Calibration data, model.

May I know if you guys pass any external parameter to LLM besides model_id and max_model_len?

@jeejeelee
Copy link
Collaborator

jeejeelee commented Mar 5, 2025

@mgoin Thanks for your response, could you test with TP=2? I tested locally and TP=1 produced reasonable results.
If I remember correctly, we downloaded the model from Qwen1.5-14B-Chat-GPTQ-Int4

@manitadayon
Copy link
Author

After more testing, I don't think NaN is causing this.
See this:

https://huggingface.co/bartowski/Llama-3.1-Nemotron-70B-Instruct-HF-GGUF/discussions/5

For similar problem, and the issue was corrupted files. This is not even Qwen model.

@rainkert
Copy link
Contributor

rainkert commented Mar 6, 2025

@manitadayon Could #13750 be related?

@mgoin
Copy link
Member

mgoin commented Mar 6, 2025

@rainkert no, that PR is strictly fixing a bug with gptq_marlin for MoE layers

@noooop
Copy link
Contributor

noooop commented Mar 8, 2025

may be related

#14443

@manitadayon
Copy link
Author

One thing I don't understand is that with whatever config I try (besides trying with different data or very large group size, which I can try them later on) the Qwen 72B-instruct would produce all !!!!!!!! For the output.
However the GPTQ quantized version to 4 bits by the Qwen itself in HF is working just fine.
What is the idea of there?
I have tried both AutoGPTQ and the HF version of the package.

@noooop
Copy link
Contributor

noooop commented Mar 12, 2025

may be related

#13232

@manitadayon
Copy link
Author

Just want to let you all know the problem is solved, the problem was the data type and issue with float16.
Thanks everyone.

@noooop
Copy link
Contributor

noooop commented Mar 13, 2025

Just want to let you all know the problem is solved, the problem was the data type and issue with float16.

@jeejeelee

We need to think of a systematic way to solve the float16 overflow problem

@noooop
Copy link
Contributor

noooop commented Mar 13, 2025

may be related

#14715

@bjj
Copy link
Contributor

bjj commented Mar 13, 2025

I'm the reporter of #14715 mentioned above. Sorry for the possible duplicate, "outputs all !!!!!" is hard to search for, and I expected it to be ROCm related.

Key differences: I see it only on ROCm but not CUDA for the same setup. I also only see it for short prompts. Long prompts are successful.

@noooop
Copy link
Contributor

noooop commented Mar 13, 2025

@bjj

I'm the reporter of #14715 mentioned above. Sorry for the possible duplicate, "outputs all !!!!!" is hard to search for, and I expected it to be ROCm related.

I think your problem is similar to #13232

Please help to try

  1. Confirm that the problem is caused by nan

Is there any way you can modify the vllm code (in python site-packages) to output

print(torch.isnan(hidden_or_intermediate_states).any())

before

vllm/vllm/worker/model_runner.py

Line 1788 in bb5b640

logits = self.model.compute_logits(hidden_or_intermediate_states,
Is it too hacky, but reinstalling vllm from source takes a long time

  1. verify cast_overflow_tensors can temporarily solve this problem. apply @jeejeelee fix

I can reproduce this issue by using Qwen1.5-14B-Chat-GPTQ, and now I've implemented a temporary solution which could fix this issue locally, please see: https://github.com/jeejeelee/vllm/blob/qwen2-overflow-clamp/vllm/model_executor/models/qwen2.py#L237-L246.
The code snippet used to reproduce is as follows:

@bjj
Copy link
Contributor

bjj commented Mar 13, 2025

print(torch.isnan(hidden_or_intermediate_states).any())

This prints true in the failing case:

tensor(True, device='cuda:0')
tensor(True, device='cuda:0')
tensor(True, device='cuda:0')
tensor(True, device='cuda:0')
tensor(True, device='cuda:0')
tensor(True, device='cuda:0')
tensor(True, device='cuda:0')

If I put in more input (in my issue in #14715 it's input length dependent) I get good output and:

tensor(False, device='cuda:0')
tensor(False, device='cuda:0')
tensor(False, device='cuda:0')
tensor(False, device='cuda:0')
tensor(False, device='cuda:0')
tensor(False, device='cuda:0')
tensor(False, device='cuda:0')

However, the patch you mention with cast_overflow_tensors does not change the outcome. Still NaNs, still !!!!

Diff with suggested patch
$ git diff | cat
diff --git a/vllm/model_executor/models/qwen2.py b/vllm/model_executor/models/qwen2.py
index c4d02e5d..62b5b35a 100644
--- a/vllm/model_executor/models/qwen2.py
+++ b/vllm/model_executor/models/qwen2.py
@@ -54,7 +54,7 @@ from vllm.sequence import IntermediateTensors, PoolerOutput

 from .interfaces import SupportsLoRA, SupportsPP
 from .utils import (AutoWeightsLoader, PPMissingLayer, WeightsMapper,
-                    is_pp_missing_parameter,
+                    cast_overflow_tensors, is_pp_missing_parameter,
                     make_empty_intermediate_tensors_factory, make_layers,
                     maybe_prefix)

@@ -235,9 +235,15 @@ class Qwen2DecoderLayer(nn.Module):
     ) -> Tuple[torch.Tensor, torch.Tensor]:
         # Self Attention
         if residual is None:
+            if hidden_states.dtype == torch.float16:
+                hidden_states = cast_overflow_tensors(hidden_states)
             residual = hidden_states
             hidden_states = self.input_layernorm(hidden_states)
+
         else:
+            if hidden_states.dtype == torch.float16:
+                hidden_states = cast_overflow_tensors(hidden_states)
+                residual = cast_overflow_tensors(residual)
             hidden_states, residual = self.input_layernorm(
                 hidden_states, residual)
         hidden_states = self.self_attn(
diff --git a/vllm/worker/model_runner.py b/vllm/worker/model_runner.py
index 473bd901..abf52b7f 100644
--- a/vllm/worker/model_runner.py
+++ b/vllm/worker/model_runner.py
@@ -1785,6 +1785,7 @@ class ModelRunner(GPUModelRunnerBase[ModelInputForGPUWithSamplingMetadata]):
                     torch.tensor(model_forward_time + orig_model_forward_time))
             return hidden_or_intermediate_states

+        print(torch.isnan(hidden_or_intermediate_states).any())
         logits = self.model.compute_logits(hidden_or_intermediate_states,
                                            model_input.sampling_metadata)

@noooop
Copy link
Contributor

noooop commented Mar 13, 2025

@bjj

Please help locate which part the nan occurs.

you need to run it in --enforce-eager mode

self_attn

hidden_states = self.self_attn(

or mlp

hidden_states = self.mlp(hidden_states)

I believe nan comes from mlp

You can also further locate nan from gate_up_proj or down_proj

    def forward(self, x):
        gate_up, _ = self.gate_up_proj(x)
        x = self.act_fn(gate_up)
        x, _ = self.down_proj(x)
        return x

@bjj
Copy link
Contributor

bjj commented Mar 13, 2025

During the query:

INFO 03-12 23:32:20 [engine.py:289] Added request chatcmpl-9beb3dabdf0244a2bd4dd4a7c7f0bde2.
hidden_states tensor(False, device='cuda:0')
mlp tensor(False, device='cuda:0')
hidden_states tensor(False, device='cuda:0')
mlp tensor(False, device='cuda:0')
hidden_states tensor(False, device='cuda:0')
mlp tensor(False, device='cuda:0')
hidden_states tensor(False, device='cuda:0')
mlp tensor(False, device='cuda:0')
hidden_states tensor(False, device='cuda:0')
mlp tensor(False, device='cuda:0')
hidden_states tensor(False, device='cuda:0')
mlp tensor(False, device='cuda:0')
hidden_states tensor(False, device='cuda:0')
mlp tensor(False, device='cuda:0')
hidden_states tensor(True, device='cuda:0')
mlp tensor(True, device='cuda:0')
hidden_states tensor(True, device='cuda:0')
mlp tensor(True, device='cuda:0')
hidden_states tensor(True, device='cuda:0')
mlp tensor(True, device='cuda:0')
hidden_states tensor(True, device='cuda:0')
mlp tensor(True, device='cuda:0')
hidden_states tensor(True, device='cuda:0')
mlp tensor(True, device='cuda:0')
hidden_states tensor(True, device='cuda:0')
mlp tensor(True, device='cuda:0')
hidden_states tensor(True, device='cuda:0')
mlp tensor(True, device='cuda:0')
hidden_states tensor(True, device='cuda:0')
mlp tensor(True, device='cuda:0')

I include more of the gate_up_proj/down_proj output because of the repeating pattern (maybe I didn't let the above run long enough to see it)

Alternating pattern of not nan, nan
INFO 03-12 23:38:42 [engine.py:289] Added request chatcmpl-a00d891eef714dac904775d822d1c43b.
gate_up_proj tensor(False, device='cuda:0')
down_proj tensor(False, device='cuda:0')
gate_up_proj tensor(False, device='cuda:0')
down_proj tensor(False, device='cuda:0')
gate_up_proj tensor(False, device='cuda:0')
down_proj tensor(False, device='cuda:0')
gate_up_proj tensor(False, device='cuda:0')
down_proj tensor(False, device='cuda:0')
gate_up_proj tensor(False, device='cuda:0')
down_proj tensor(False, device='cuda:0')
gate_up_proj tensor(False, device='cuda:0')
down_proj tensor(False, device='cuda:0')
gate_up_proj tensor(False, device='cuda:0')
down_proj tensor(False, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
INFO 03-12 23:38:43 [metrics.py:481] Avg prompt throughput: 4.6 tokens/s, Avg generation throughput: 0.2 tokens/s, Running: 1 reqs, Swapped: 0 reqs, Pending: 0 reqs, GPU KV cache usage: 0.1%, CPU KV cache usage: 0.0%.
gate_up_proj tensor(False, device='cuda:0')
down_proj tensor(False, device='cuda:0')
gate_up_proj tensor(False, device='cuda:0')
down_proj tensor(False, device='cuda:0')
gate_up_proj tensor(False, device='cuda:0')
down_proj tensor(False, device='cuda:0')
gate_up_proj tensor(False, device='cuda:0')
down_proj tensor(False, device='cuda:0')
gate_up_proj tensor(False, device='cuda:0')
down_proj tensor(False, device='cuda:0')
gate_up_proj tensor(False, device='cuda:0')
down_proj tensor(False, device='cuda:0')
gate_up_proj tensor(False, device='cuda:0')
down_proj tensor(False, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(False, device='cuda:0')
down_proj tensor(False, device='cuda:0')
gate_up_proj tensor(False, device='cuda:0')
down_proj tensor(False, device='cuda:0')
gate_up_proj tensor(False, device='cuda:0')
down_proj tensor(False, device='cuda:0')
gate_up_proj tensor(False, device='cuda:0')
down_proj tensor(False, device='cuda:0')
gate_up_proj tensor(False, device='cuda:0')
down_proj tensor(False, device='cuda:0')
gate_up_proj tensor(False, device='cuda:0')
down_proj tensor(False, device='cuda:0')
gate_up_proj tensor(False, device='cuda:0')
down_proj tensor(False, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(False, device='cuda:0')
down_proj tensor(False, device='cuda:0')
gate_up_proj tensor(False, device='cuda:0')
down_proj tensor(False, device='cuda:0')
gate_up_proj tensor(False, device='cuda:0')
down_proj tensor(False, device='cuda:0')
gate_up_proj tensor(False, device='cuda:0')
down_proj tensor(False, device='cuda:0')
gate_up_proj tensor(False, device='cuda:0')
down_proj tensor(False, device='cuda:0')
gate_up_proj tensor(False, device='cuda:0')
down_proj tensor(False, device='cuda:0')
gate_up_proj tensor(False, device='cuda:0')
down_proj tensor(False, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(False, device='cuda:0')
down_proj tensor(False, device='cuda:0')
gate_up_proj tensor(False, device='cuda:0')
down_proj tensor(False, device='cuda:0')
gate_up_proj tensor(False, device='cuda:0')
down_proj tensor(False, device='cuda:0')
gate_up_proj tensor(False, device='cuda:0')
down_proj tensor(False, device='cuda:0')
gate_up_proj tensor(False, device='cuda:0')
down_proj tensor(False, device='cuda:0')
gate_up_proj tensor(False, device='cuda:0')
down_proj tensor(False, device='cuda:0')
gate_up_proj tensor(False, device='cuda:0')
down_proj tensor(False, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(False, device='cuda:0')
down_proj tensor(False, device='cuda:0')
gate_up_proj tensor(False, device='cuda:0')
down_proj tensor(False, device='cuda:0')
gate_up_proj tensor(False, device='cuda:0')
down_proj tensor(False, device='cuda:0')
gate_up_proj tensor(False, device='cuda:0')
down_proj tensor(False, device='cuda:0')
gate_up_proj tensor(False, device='cuda:0')
down_proj tensor(False, device='cuda:0')
gate_up_proj tensor(False, device='cuda:0')
down_proj tensor(False, device='cuda:0')
gate_up_proj tensor(False, device='cuda:0')
down_proj tensor(False, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(False, device='cuda:0')
down_proj tensor(False, device='cuda:0')
gate_up_proj tensor(False, device='cuda:0')
down_proj tensor(False, device='cuda:0')
gate_up_proj tensor(False, device='cuda:0')
down_proj tensor(False, device='cuda:0')
gate_up_proj tensor(False, device='cuda:0')
down_proj tensor(False, device='cuda:0')
gate_up_proj tensor(False, device='cuda:0')
down_proj tensor(False, device='cuda:0')
gate_up_proj tensor(False, device='cuda:0')
down_proj tensor(False, device='cuda:0')
gate_up_proj tensor(False, device='cuda:0')
down_proj tensor(False, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(False, device='cuda:0')
down_proj tensor(False, device='cuda:0')
gate_up_proj tensor(False, device='cuda:0')
down_proj tensor(False, device='cuda:0')
gate_up_proj tensor(False, device='cuda:0')
down_proj tensor(False, device='cuda:0')
gate_up_proj tensor(False, device='cuda:0')
down_proj tensor(False, device='cuda:0')
gate_up_proj tensor(False, device='cuda:0')
down_proj tensor(False, device='cuda:0')
gate_up_proj tensor(False, device='cuda:0')
down_proj tensor(False, device='cuda:0')
gate_up_proj tensor(False, device='cuda:0')
down_proj tensor(False, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
gate_up_proj tensor(True, device='cuda:0')
down_proj tensor(True, device='cuda:0')
INFO 03-12 23:38:43 [engine.py:309] Aborted request chatcmpl-a00d891eef714dac904775d822d1c43b.

@noooop
Copy link
Contributor

noooop commented Mar 13, 2025

@bjj

Can adding cast_overflow_tensors in mlp solve this problem temporarily?

specifically:

    def forward(self, x):
        gate_up, _ = self.gate_up_proj(x)
        gate_up= cast_overflow_tensors(gate_up)
        x = self.act_fn(gate_up)
        x, _ = self.down_proj(x)
        x = cast_overflow_tensors(x)
        return x

@bjj
Copy link
Contributor

bjj commented Mar 13, 2025

So I looked at the definition of cast_overflow_tensors, and while it detects NaN, it does not cure it:

def cast_overflow_tensors(
    tensors: torch.Tensor,
    offset: float = 1000,
) -> torch.Tensor:
    if tensors.isinf().any() or tensors.isnan().any():
        clamp_value = torch.finfo(tensors.dtype).max - offset
        tensors = torch.clamp(tensors, min=-clamp_value, max=clamp_value)
    return tensors

So I tried again with tensors = torch.nan_to_num(tensors, nan=0.0)

With that, and the original patch (the casts in self attention) and/or the second suggestions (casts with gate_up/down_proj) I no longer get !!!!!!!!!!!! but I get different garbage. It's also abysmally slow, when failing and when succeeding (remember, my case works if the input context is long enough). I feel like my issue is likely that something somewhere isn't padded correctly and garbage leaks in, and is not your issue, but !!!!! can happen when NaN gets in.

Sample of different garbage
1\nn\n\n1V\n\n1\n\n11\n012410nN\n\n1N0nNnNNN15n
\nN1N0/5N1N112N1\nn12
5N
1
55N1N\n\n\n1121
11N11nN5

\nN
\n\n
\n1\nLVN25\nN\nn\nN\n\nN01010\n
11\n11\n225
00n10\n\n2N
\n
N\n0\n2N5
N111510\n0\nNn\n\n\n
N
N0\n0

\nN
1
N\n02\nN1511\n1\n1N
N1211N

1nN11\n11N211
\n\nN1\nn1
N0
5\n\nNN

@noooop
Copy link
Contributor

noooop commented Mar 14, 2025

@bjj

So I tried again with tensors = torch.nan_to_num(tensors, nan=0.0)

You can only clamp the value instead of setting it to 0

cast_overflow_tensors will cause gpu sync, which will definitely be very, very slow.
We must think of a better way.

@jeejeelee @mgoin
PTAL @bjj 's case

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

7 participants