Text Generation
Transformers
Safetensors
English
qwen3_5_text
qwen3.5
tinyllama
riscv
int4
in-weights
compiled-weights
exact-arithmetic
qwenti
conversational
Instructions to use OpceanAI/qwenti-inference with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- Transformers
How to use OpceanAI/qwenti-inference with Transformers:
# Use a pipeline as a high-level helper from transformers import pipeline pipe = pipeline("text-generation", model="OpceanAI/qwenti-inference") messages = [ {"role": "user", "content": "Who are you?"}, ] pipe(messages)# pip install -U transformers accelerate # Load model directly from transformers import AutoTokenizer, AutoModelForCausalLM tokenizer = AutoTokenizer.from_pretrained("OpceanAI/qwenti-inference") model = AutoModelForCausalLM.from_pretrained("OpceanAI/qwenti-inference", device_map="auto") messages = [ {"role": "user", "content": "Who are you?"}, ] inputs = tokenizer.apply_chat_template( messages, add_generation_prompt=True, tokenize=True, return_dict=True, return_tensors="pt", ).to(model.device) outputs = model.generate(**inputs, max_new_tokens=256) print(tokenizer.decode(outputs[0][inputs["input_ids"].shape[-1]:])) - Notebooks
- Google Colab
- Kaggle
- Local Apps Settings
- vLLM
How to use OpceanAI/qwenti-inference with vLLM:
Install from pip and serve model
# Install vLLM from pip: pip install vllm # Start the vLLM server: vllm serve "OpceanAI/qwenti-inference" # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:8000/v1/chat/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "OpceanAI/qwenti-inference", "messages": [ { "role": "user", "content": "What is the capital of France?" } ] }'Use Docker
docker model run hf.co/OpceanAI/qwenti-inference
- SGLang
How to use OpceanAI/qwenti-inference with SGLang:
Install from pip and serve model
# Install SGLang from pip: pip install sglang # Start the SGLang server: python3 -m sglang.launch_server \ --model-path "OpceanAI/qwenti-inference" \ --host 0.0.0.0 \ --port 30000 # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:30000/v1/chat/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "OpceanAI/qwenti-inference", "messages": [ { "role": "user", "content": "What is the capital of France?" } ] }'Use Docker images
docker run --gpus all \ --shm-size 32g \ -p 30000:30000 \ -v ~/.cache/huggingface:/root/.cache/huggingface \ --env "HF_TOKEN=<secret>" \ --ipc=host \ lmsysorg/sglang:latest \ python3 -m sglang.launch_server \ --model-path "OpceanAI/qwenti-inference" \ --host 0.0.0.0 \ --port 30000 # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:30000/v1/chat/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "OpceanAI/qwenti-inference", "messages": [ { "role": "user", "content": "What is the capital of France?" } ] }' - Docker Model Runner
How to use OpceanAI/qwenti-inference with Docker Model Runner:
docker model run hf.co/OpceanAI/qwenti-inference
Download scripts/vd2.S from OpceanAI/qwenti-inference: direct link, hf CLI and curl.
- Browser
- Download file 16.7 kB
-
https://huggingface.co/OpceanAI/qwenti-inference/resolve/main/scripts/vd2.S
- Command line
-
hf download hf://OpceanAI/qwenti-inference/scripts/vd2.S
-
curl -L -o vd2.S https://huggingface.co/OpceanAI/qwenti-inference/resolve/main/scripts/vd2.S
16.7 kB
| .globl vk_8_init_scaled | |
| vk_8_init_scaled: | |
| addi sp, sp, -48 | |
| sw s0, 0(sp) | |
| sw s1, 4(sp) | |
| sw s2, 8(sp) | |
| sw s3, 12(sp) | |
| sw s4, 16(sp) | |
| sw s5, 20(sp) | |
| sw s6, 24(sp) | |
| sw s7, 28(sp) | |
| sw s8, 32(sp) | |
| sw s9, 36(sp) | |
| sw s10, 40(sp) | |
| sw s11, 44(sp) | |
| lui t2, %hi(vk_x) | |
| lw t2, %lo(vk_x)(t2) | |
| lw s0, 0(t2) | |
| lw s1, 4(t2) | |
| lw s2, 8(t2) | |
| lw s3, 12(t2) | |
| lw s4, 16(t2) | |
| lw s5, 20(t2) | |
| lw s6, 24(t2) | |
| lw s7, 28(t2) | |
| lw s8, 32(t2) | |
| lw s9, 36(t2) | |
| lw s10, 40(t2) | |
| lw s11, 44(t2) | |
| lw t3, 48(t2) | |
| lw t4, 52(t2) | |
| lw t5, 56(t2) | |
| lw t6, 60(t2) | |
| 1: | |
| li a5, 0 | |
| li a6, 0 | |
| li a7, 0 | |
| li t0, 0 | |
| srli t1, a1, 15 | |
| .insn r 0x0B, 6, 1, zero, t1, zero | |
| slli t2, a1, 17 | |
| srli t2, t2, 17 | |
| .insn r 0x0B, 6, 0, zero, t2, zero | |
| .insn r 0x0B, 5, 0, a5, s0, s1 | |
| .insn r 0x0B, 5, 0, a5, s2, s3 | |
| .insn r 0x0B, 5, 0, a5, s4, s5 | |
| .insn r 0x0B, 5, 0, a5, s6, s7 | |
| .insn r 0x0B, 5, 0, a5, s8, s9 | |
| .insn r 0x0B, 5, 0, a5, s10, s11 | |
| .insn r 0x0B, 5, 0, a5, t3, t4 | |
| .insn r 0x0B, 5, 0, a5, t5, t6 | |
| .insn r 0x0B, 5, 0, a6, s0, s1 | |
| .insn r 0x0B, 5, 0, a6, s2, s3 | |
| .insn r 0x0B, 5, 0, a6, s4, s5 | |
| .insn r 0x0B, 5, 0, a6, s6, s7 | |
| .insn r 0x0B, 5, 0, a6, s8, s9 | |
| .insn r 0x0B, 5, 0, a6, s10, s11 | |
| .insn r 0x0B, 5, 0, a6, t3, t4 | |
| .insn r 0x0B, 5, 0, a6, t5, t6 | |
| .insn r 0x0B, 5, 0, a7, s0, s1 | |
| .insn r 0x0B, 5, 0, a7, s2, s3 | |
| .insn r 0x0B, 5, 0, a7, s4, s5 | |
| .insn r 0x0B, 5, 0, a7, s6, s7 | |
| .insn r 0x0B, 5, 0, a7, s8, s9 | |
| .insn r 0x0B, 5, 0, a7, s10, s11 | |
| .insn r 0x0B, 5, 0, a7, t3, t4 | |
| .insn r 0x0B, 5, 0, a7, t5, t6 | |
| .insn r 0x0B, 5, 0, t0, s0, s1 | |
| .insn r 0x0B, 5, 0, t0, s2, s3 | |
| .insn r 0x0B, 5, 0, t0, s4, s5 | |
| .insn r 0x0B, 5, 0, t0, s6, s7 | |
| .insn r 0x0B, 5, 0, t0, s8, s9 | |
| .insn r 0x0B, 5, 0, t0, s10, s11 | |
| .insn r 0x0B, 5, 0, t0, t3, t4 | |
| .insn r 0x0B, 5, 0, t0, t5, t6 | |
| lw t1, 0(a3) | |
| mul a5, a5, t1 | |
| mulh a5, a5, a4 | |
| sw a5, 0(a0) | |
| lw t1, 4(a3) | |
| mul a6, a6, t1 | |
| mulh a6, a6, a4 | |
| sw a6, 4(a0) | |
| lw t1, 8(a3) | |
| mul a7, a7, t1 | |
| mulh a7, a7, a4 | |
| sw a7, 8(a0) | |
| lw t1, 12(a3) | |
| mul t0, t0, t1 | |
| mulh t0, t0, a4 | |
| sw t0, 12(a0) | |
| addi a0, a0, 16 | |
| addi a1, a1, 32 | |
| addi a3, a3, 16 | |
| addi a2, a2, -4 | |
| bnez a2, 1b | |
| lw s0, 0(sp) | |
| lw s1, 4(sp) | |
| lw s2, 8(sp) | |
| lw s3, 12(sp) | |
| lw s4, 16(sp) | |
| lw s5, 20(sp) | |
| lw s6, 24(sp) | |
| lw s7, 28(sp) | |
| lw s8, 32(sp) | |
| lw s9, 36(sp) | |
| lw s10, 40(sp) | |
| lw s11, 44(sp) | |
| addi sp, sp, 48 | |
| ret | |
| .globl vk_8_init_raw | |
| vk_8_init_raw: | |
| addi sp, sp, -48 | |
| sw s0, 0(sp) | |
| sw s1, 4(sp) | |
| sw s2, 8(sp) | |
| sw s3, 12(sp) | |
| sw s4, 16(sp) | |
| sw s5, 20(sp) | |
| sw s6, 24(sp) | |
| sw s7, 28(sp) | |
| sw s8, 32(sp) | |
| sw s9, 36(sp) | |
| sw s10, 40(sp) | |
| sw s11, 44(sp) | |
| lui t2, %hi(vk_x) | |
| lw t2, %lo(vk_x)(t2) | |
| lw s0, 0(t2) | |
| lw s1, 4(t2) | |
| lw s2, 8(t2) | |
| lw s3, 12(t2) | |
| lw s4, 16(t2) | |
| lw s5, 20(t2) | |
| lw s6, 24(t2) | |
| lw s7, 28(t2) | |
| lw s8, 32(t2) | |
| lw s9, 36(t2) | |
| lw s10, 40(t2) | |
| lw s11, 44(t2) | |
| lw t3, 48(t2) | |
| lw t4, 52(t2) | |
| lw t5, 56(t2) | |
| lw t6, 60(t2) | |
| 1: | |
| li a5, 0 | |
| li a6, 0 | |
| li a7, 0 | |
| li t0, 0 | |
| srli t1, a1, 15 | |
| .insn r 0x0B, 6, 1, zero, t1, zero | |
| slli t2, a1, 17 | |
| srli t2, t2, 17 | |
| .insn r 0x0B, 6, 0, zero, t2, zero | |
| .insn r 0x0B, 5, 0, a5, s0, s1 | |
| .insn r 0x0B, 5, 0, a5, s2, s3 | |
| .insn r 0x0B, 5, 0, a5, s4, s5 | |
| .insn r 0x0B, 5, 0, a5, s6, s7 | |
| .insn r 0x0B, 5, 0, a5, s8, s9 | |
| .insn r 0x0B, 5, 0, a5, s10, s11 | |
| .insn r 0x0B, 5, 0, a5, t3, t4 | |
| .insn r 0x0B, 5, 0, a5, t5, t6 | |
| .insn r 0x0B, 5, 0, a6, s0, s1 | |
| .insn r 0x0B, 5, 0, a6, s2, s3 | |
| .insn r 0x0B, 5, 0, a6, s4, s5 | |
| .insn r 0x0B, 5, 0, a6, s6, s7 | |
| .insn r 0x0B, 5, 0, a6, s8, s9 | |
| .insn r 0x0B, 5, 0, a6, s10, s11 | |
| .insn r 0x0B, 5, 0, a6, t3, t4 | |
| .insn r 0x0B, 5, 0, a6, t5, t6 | |
| .insn r 0x0B, 5, 0, a7, s0, s1 | |
| .insn r 0x0B, 5, 0, a7, s2, s3 | |
| .insn r 0x0B, 5, 0, a7, s4, s5 | |
| .insn r 0x0B, 5, 0, a7, s6, s7 | |
| .insn r 0x0B, 5, 0, a7, s8, s9 | |
| .insn r 0x0B, 5, 0, a7, s10, s11 | |
| .insn r 0x0B, 5, 0, a7, t3, t4 | |
| .insn r 0x0B, 5, 0, a7, t5, t6 | |
| .insn r 0x0B, 5, 0, t0, s0, s1 | |
| .insn r 0x0B, 5, 0, t0, s2, s3 | |
| .insn r 0x0B, 5, 0, t0, s4, s5 | |
| .insn r 0x0B, 5, 0, t0, s6, s7 | |
| .insn r 0x0B, 5, 0, t0, s8, s9 | |
| .insn r 0x0B, 5, 0, t0, s10, s11 | |
| .insn r 0x0B, 5, 0, t0, t3, t4 | |
| .insn r 0x0B, 5, 0, t0, t5, t6 | |
| sw a5, 0(a0) | |
| sw a6, 4(a0) | |
| sw a7, 8(a0) | |
| sw t0, 12(a0) | |
| addi a0, a0, 16 | |
| addi a1, a1, 32 | |
| addi a2, a2, -4 | |
| bnez a2, 1b | |
| lw s0, 0(sp) | |
| lw s1, 4(sp) | |
| lw s2, 8(sp) | |
| lw s3, 12(sp) | |
| lw s4, 16(sp) | |
| lw s5, 20(sp) | |
| lw s6, 24(sp) | |
| lw s7, 28(sp) | |
| lw s8, 32(sp) | |
| lw s9, 36(sp) | |
| lw s10, 40(sp) | |
| lw s11, 44(sp) | |
| addi sp, sp, 48 | |
| ret | |
| .globl vk_8_acc_scaled | |
| vk_8_acc_scaled: | |
| addi sp, sp, -48 | |
| sw s0, 0(sp) | |
| sw s1, 4(sp) | |
| sw s2, 8(sp) | |
| sw s3, 12(sp) | |
| sw s4, 16(sp) | |
| sw s5, 20(sp) | |
| sw s6, 24(sp) | |
| sw s7, 28(sp) | |
| sw s8, 32(sp) | |
| sw s9, 36(sp) | |
| sw s10, 40(sp) | |
| sw s11, 44(sp) | |
| lui t2, %hi(vk_x) | |
| lw t2, %lo(vk_x)(t2) | |
| lw s0, 0(t2) | |
| lw s1, 4(t2) | |
| lw s2, 8(t2) | |
| lw s3, 12(t2) | |
| lw s4, 16(t2) | |
| lw s5, 20(t2) | |
| lw s6, 24(t2) | |
| lw s7, 28(t2) | |
| lw s8, 32(t2) | |
| lw s9, 36(t2) | |
| lw s10, 40(t2) | |
| lw s11, 44(t2) | |
| lw t3, 48(t2) | |
| lw t4, 52(t2) | |
| lw t5, 56(t2) | |
| lw t6, 60(t2) | |
| 1: | |
| lw a5, 0(a0) | |
| lw a6, 4(a0) | |
| lw a7, 8(a0) | |
| lw t0, 12(a0) | |
| srli t1, a1, 15 | |
| .insn r 0x0B, 6, 1, zero, t1, zero | |
| slli t2, a1, 17 | |
| srli t2, t2, 17 | |
| .insn r 0x0B, 6, 0, zero, t2, zero | |
| .insn r 0x0B, 5, 0, a5, s0, s1 | |
| .insn r 0x0B, 5, 0, a5, s2, s3 | |
| .insn r 0x0B, 5, 0, a5, s4, s5 | |
| .insn r 0x0B, 5, 0, a5, s6, s7 | |
| .insn r 0x0B, 5, 0, a5, s8, s9 | |
| .insn r 0x0B, 5, 0, a5, s10, s11 | |
| .insn r 0x0B, 5, 0, a5, t3, t4 | |
| .insn r 0x0B, 5, 0, a5, t5, t6 | |
| .insn r 0x0B, 5, 0, a6, s0, s1 | |
| .insn r 0x0B, 5, 0, a6, s2, s3 | |
| .insn r 0x0B, 5, 0, a6, s4, s5 | |
| .insn r 0x0B, 5, 0, a6, s6, s7 | |
| .insn r 0x0B, 5, 0, a6, s8, s9 | |
| .insn r 0x0B, 5, 0, a6, s10, s11 | |
| .insn r 0x0B, 5, 0, a6, t3, t4 | |
| .insn r 0x0B, 5, 0, a6, t5, t6 | |
| .insn r 0x0B, 5, 0, a7, s0, s1 | |
| .insn r 0x0B, 5, 0, a7, s2, s3 | |
| .insn r 0x0B, 5, 0, a7, s4, s5 | |
| .insn r 0x0B, 5, 0, a7, s6, s7 | |
| .insn r 0x0B, 5, 0, a7, s8, s9 | |
| .insn r 0x0B, 5, 0, a7, s10, s11 | |
| .insn r 0x0B, 5, 0, a7, t3, t4 | |
| .insn r 0x0B, 5, 0, a7, t5, t6 | |
| .insn r 0x0B, 5, 0, t0, s0, s1 | |
| .insn r 0x0B, 5, 0, t0, s2, s3 | |
| .insn r 0x0B, 5, 0, t0, s4, s5 | |
| .insn r 0x0B, 5, 0, t0, s6, s7 | |
| .insn r 0x0B, 5, 0, t0, s8, s9 | |
| .insn r 0x0B, 5, 0, t0, s10, s11 | |
| .insn r 0x0B, 5, 0, t0, t3, t4 | |
| .insn r 0x0B, 5, 0, t0, t5, t6 | |
| lw t1, 0(a3) | |
| mul a5, a5, t1 | |
| mulh a5, a5, a4 | |
| sw a5, 0(a0) | |
| lw t1, 4(a3) | |
| mul a6, a6, t1 | |
| mulh a6, a6, a4 | |
| sw a6, 4(a0) | |
| lw t1, 8(a3) | |
| mul a7, a7, t1 | |
| mulh a7, a7, a4 | |
| sw a7, 8(a0) | |
| lw t1, 12(a3) | |
| mul t0, t0, t1 | |
| mulh t0, t0, a4 | |
| sw t0, 12(a0) | |
| addi a0, a0, 16 | |
| addi a1, a1, 32 | |
| addi a3, a3, 16 | |
| addi a2, a2, -4 | |
| bnez a2, 1b | |
| lw s0, 0(sp) | |
| lw s1, 4(sp) | |
| lw s2, 8(sp) | |
| lw s3, 12(sp) | |
| lw s4, 16(sp) | |
| lw s5, 20(sp) | |
| lw s6, 24(sp) | |
| lw s7, 28(sp) | |
| lw s8, 32(sp) | |
| lw s9, 36(sp) | |
| lw s10, 40(sp) | |
| lw s11, 44(sp) | |
| addi sp, sp, 48 | |
| ret | |
| .globl vk_8_acc_raw | |
| vk_8_acc_raw: | |
| addi sp, sp, -48 | |
| sw s0, 0(sp) | |
| sw s1, 4(sp) | |
| sw s2, 8(sp) | |
| sw s3, 12(sp) | |
| sw s4, 16(sp) | |
| sw s5, 20(sp) | |
| sw s6, 24(sp) | |
| sw s7, 28(sp) | |
| sw s8, 32(sp) | |
| sw s9, 36(sp) | |
| sw s10, 40(sp) | |
| sw s11, 44(sp) | |
| lui t2, %hi(vk_x) | |
| lw t2, %lo(vk_x)(t2) | |
| lw s0, 0(t2) | |
| lw s1, 4(t2) | |
| lw s2, 8(t2) | |
| lw s3, 12(t2) | |
| lw s4, 16(t2) | |
| lw s5, 20(t2) | |
| lw s6, 24(t2) | |
| lw s7, 28(t2) | |
| lw s8, 32(t2) | |
| lw s9, 36(t2) | |
| lw s10, 40(t2) | |
| lw s11, 44(t2) | |
| lw t3, 48(t2) | |
| lw t4, 52(t2) | |
| lw t5, 56(t2) | |
| lw t6, 60(t2) | |
| 1: | |
| lw a5, 0(a0) | |
| lw a6, 4(a0) | |
| lw a7, 8(a0) | |
| lw t0, 12(a0) | |
| srli t1, a1, 15 | |
| .insn r 0x0B, 6, 1, zero, t1, zero | |
| slli t2, a1, 17 | |
| srli t2, t2, 17 | |
| .insn r 0x0B, 6, 0, zero, t2, zero | |
| .insn r 0x0B, 5, 0, a5, s0, s1 | |
| .insn r 0x0B, 5, 0, a5, s2, s3 | |
| .insn r 0x0B, 5, 0, a5, s4, s5 | |
| .insn r 0x0B, 5, 0, a5, s6, s7 | |
| .insn r 0x0B, 5, 0, a5, s8, s9 | |
| .insn r 0x0B, 5, 0, a5, s10, s11 | |
| .insn r 0x0B, 5, 0, a5, t3, t4 | |
| .insn r 0x0B, 5, 0, a5, t5, t6 | |
| .insn r 0x0B, 5, 0, a6, s0, s1 | |
| .insn r 0x0B, 5, 0, a6, s2, s3 | |
| .insn r 0x0B, 5, 0, a6, s4, s5 | |
| .insn r 0x0B, 5, 0, a6, s6, s7 | |
| .insn r 0x0B, 5, 0, a6, s8, s9 | |
| .insn r 0x0B, 5, 0, a6, s10, s11 | |
| .insn r 0x0B, 5, 0, a6, t3, t4 | |
| .insn r 0x0B, 5, 0, a6, t5, t6 | |
| .insn r 0x0B, 5, 0, a7, s0, s1 | |
| .insn r 0x0B, 5, 0, a7, s2, s3 | |
| .insn r 0x0B, 5, 0, a7, s4, s5 | |
| .insn r 0x0B, 5, 0, a7, s6, s7 | |
| .insn r 0x0B, 5, 0, a7, s8, s9 | |
| .insn r 0x0B, 5, 0, a7, s10, s11 | |
| .insn r 0x0B, 5, 0, a7, t3, t4 | |
| .insn r 0x0B, 5, 0, a7, t5, t6 | |
| .insn r 0x0B, 5, 0, t0, s0, s1 | |
| .insn r 0x0B, 5, 0, t0, s2, s3 | |
| .insn r 0x0B, 5, 0, t0, s4, s5 | |
| .insn r 0x0B, 5, 0, t0, s6, s7 | |
| .insn r 0x0B, 5, 0, t0, s8, s9 | |
| .insn r 0x0B, 5, 0, t0, s10, s11 | |
| .insn r 0x0B, 5, 0, t0, t3, t4 | |
| .insn r 0x0B, 5, 0, t0, t5, t6 | |
| sw a5, 0(a0) | |
| sw a6, 4(a0) | |
| sw a7, 8(a0) | |
| sw t0, 12(a0) | |
| addi a0, a0, 16 | |
| addi a1, a1, 32 | |
| addi a2, a2, -4 | |
| bnez a2, 1b | |
| lw s0, 0(sp) | |
| lw s1, 4(sp) | |
| lw s2, 8(sp) | |
| lw s3, 12(sp) | |
| lw s4, 16(sp) | |
| lw s5, 20(sp) | |
| lw s6, 24(sp) | |
| lw s7, 28(sp) | |
| lw s8, 32(sp) | |
| lw s9, 36(sp) | |
| lw s10, 40(sp) | |
| lw s11, 44(sp) | |
| addi sp, sp, 48 | |
| ret | |
| .globl vk_6_init_scaled | |
| vk_6_init_scaled: | |
| addi sp, sp, -48 | |
| sw s0, 0(sp) | |
| sw s1, 4(sp) | |
| sw s2, 8(sp) | |
| sw s3, 12(sp) | |
| sw s4, 16(sp) | |
| sw s5, 20(sp) | |
| sw s6, 24(sp) | |
| sw s7, 28(sp) | |
| sw s8, 32(sp) | |
| sw s9, 36(sp) | |
| sw s10, 40(sp) | |
| sw s11, 44(sp) | |
| lui t2, %hi(vk_x) | |
| lw t2, %lo(vk_x)(t2) | |
| lw s0, 0(t2) | |
| lw s1, 4(t2) | |
| lw s2, 8(t2) | |
| lw s3, 12(t2) | |
| lw s4, 16(t2) | |
| lw s5, 20(t2) | |
| lw s6, 24(t2) | |
| lw s7, 28(t2) | |
| lw s8, 32(t2) | |
| lw s9, 36(t2) | |
| lw s10, 40(t2) | |
| lw s11, 44(t2) | |
| 1: | |
| li a5, 0 | |
| li a6, 0 | |
| li a7, 0 | |
| li t0, 0 | |
| srli t1, a1, 15 | |
| .insn r 0x0B, 6, 1, zero, t1, zero | |
| slli t2, a1, 17 | |
| srli t2, t2, 17 | |
| .insn r 0x0B, 6, 0, zero, t2, zero | |
| .insn r 0x0B, 5, 0, a5, s0, s1 | |
| .insn r 0x0B, 5, 0, a5, s2, s3 | |
| .insn r 0x0B, 5, 0, a5, s4, s5 | |
| .insn r 0x0B, 5, 0, a5, s6, s7 | |
| .insn r 0x0B, 5, 0, a5, s8, s9 | |
| .insn r 0x0B, 5, 0, a5, s10, s11 | |
| .insn r 0x0B, 5, 0, a6, s0, s1 | |
| .insn r 0x0B, 5, 0, a6, s2, s3 | |
| .insn r 0x0B, 5, 0, a6, s4, s5 | |
| .insn r 0x0B, 5, 0, a6, s6, s7 | |
| .insn r 0x0B, 5, 0, a6, s8, s9 | |
| .insn r 0x0B, 5, 0, a6, s10, s11 | |
| .insn r 0x0B, 5, 0, a7, s0, s1 | |
| .insn r 0x0B, 5, 0, a7, s2, s3 | |
| .insn r 0x0B, 5, 0, a7, s4, s5 | |
| .insn r 0x0B, 5, 0, a7, s6, s7 | |
| .insn r 0x0B, 5, 0, a7, s8, s9 | |
| .insn r 0x0B, 5, 0, a7, s10, s11 | |
| .insn r 0x0B, 5, 0, t0, s0, s1 | |
| .insn r 0x0B, 5, 0, t0, s2, s3 | |
| .insn r 0x0B, 5, 0, t0, s4, s5 | |
| .insn r 0x0B, 5, 0, t0, s6, s7 | |
| .insn r 0x0B, 5, 0, t0, s8, s9 | |
| .insn r 0x0B, 5, 0, t0, s10, s11 | |
| lw t1, 0(a3) | |
| mul a5, a5, t1 | |
| mulh a5, a5, a4 | |
| sw a5, 0(a0) | |
| lw t1, 4(a3) | |
| mul a6, a6, t1 | |
| mulh a6, a6, a4 | |
| sw a6, 4(a0) | |
| lw t1, 8(a3) | |
| mul a7, a7, t1 | |
| mulh a7, a7, a4 | |
| sw a7, 8(a0) | |
| lw t1, 12(a3) | |
| mul t0, t0, t1 | |
| mulh t0, t0, a4 | |
| sw t0, 12(a0) | |
| addi a0, a0, 16 | |
| addi a1, a1, 24 | |
| addi a3, a3, 16 | |
| addi a2, a2, -4 | |
| bnez a2, 1b | |
| lw s0, 0(sp) | |
| lw s1, 4(sp) | |
| lw s2, 8(sp) | |
| lw s3, 12(sp) | |
| lw s4, 16(sp) | |
| lw s5, 20(sp) | |
| lw s6, 24(sp) | |
| lw s7, 28(sp) | |
| lw s8, 32(sp) | |
| lw s9, 36(sp) | |
| lw s10, 40(sp) | |
| lw s11, 44(sp) | |
| addi sp, sp, 48 | |
| ret | |
| .globl vk_6_init_raw | |
| vk_6_init_raw: | |
| addi sp, sp, -48 | |
| sw s0, 0(sp) | |
| sw s1, 4(sp) | |
| sw s2, 8(sp) | |
| sw s3, 12(sp) | |
| sw s4, 16(sp) | |
| sw s5, 20(sp) | |
| sw s6, 24(sp) | |
| sw s7, 28(sp) | |
| sw s8, 32(sp) | |
| sw s9, 36(sp) | |
| sw s10, 40(sp) | |
| sw s11, 44(sp) | |
| lui t2, %hi(vk_x) | |
| lw t2, %lo(vk_x)(t2) | |
| lw s0, 0(t2) | |
| lw s1, 4(t2) | |
| lw s2, 8(t2) | |
| lw s3, 12(t2) | |
| lw s4, 16(t2) | |
| lw s5, 20(t2) | |
| lw s6, 24(t2) | |
| lw s7, 28(t2) | |
| lw s8, 32(t2) | |
| lw s9, 36(t2) | |
| lw s10, 40(t2) | |
| lw s11, 44(t2) | |
| 1: | |
| li a5, 0 | |
| li a6, 0 | |
| li a7, 0 | |
| li t0, 0 | |
| srli t1, a1, 15 | |
| .insn r 0x0B, 6, 1, zero, t1, zero | |
| slli t2, a1, 17 | |
| srli t2, t2, 17 | |
| .insn r 0x0B, 6, 0, zero, t2, zero | |
| .insn r 0x0B, 5, 0, a5, s0, s1 | |
| .insn r 0x0B, 5, 0, a5, s2, s3 | |
| .insn r 0x0B, 5, 0, a5, s4, s5 | |
| .insn r 0x0B, 5, 0, a5, s6, s7 | |
| .insn r 0x0B, 5, 0, a5, s8, s9 | |
| .insn r 0x0B, 5, 0, a5, s10, s11 | |
| .insn r 0x0B, 5, 0, a6, s0, s1 | |
| .insn r 0x0B, 5, 0, a6, s2, s3 | |
| .insn r 0x0B, 5, 0, a6, s4, s5 | |
| .insn r 0x0B, 5, 0, a6, s6, s7 | |
| .insn r 0x0B, 5, 0, a6, s8, s9 | |
| .insn r 0x0B, 5, 0, a6, s10, s11 | |
| .insn r 0x0B, 5, 0, a7, s0, s1 | |
| .insn r 0x0B, 5, 0, a7, s2, s3 | |
| .insn r 0x0B, 5, 0, a7, s4, s5 | |
| .insn r 0x0B, 5, 0, a7, s6, s7 | |
| .insn r 0x0B, 5, 0, a7, s8, s9 | |
| .insn r 0x0B, 5, 0, a7, s10, s11 | |
| .insn r 0x0B, 5, 0, t0, s0, s1 | |
| .insn r 0x0B, 5, 0, t0, s2, s3 | |
| .insn r 0x0B, 5, 0, t0, s4, s5 | |
| .insn r 0x0B, 5, 0, t0, s6, s7 | |
| .insn r 0x0B, 5, 0, t0, s8, s9 | |
| .insn r 0x0B, 5, 0, t0, s10, s11 | |
| sw a5, 0(a0) | |
| sw a6, 4(a0) | |
| sw a7, 8(a0) | |
| sw t0, 12(a0) | |
| addi a0, a0, 16 | |
| addi a1, a1, 24 | |
| addi a2, a2, -4 | |
| bnez a2, 1b | |
| lw s0, 0(sp) | |
| lw s1, 4(sp) | |
| lw s2, 8(sp) | |
| lw s3, 12(sp) | |
| lw s4, 16(sp) | |
| lw s5, 20(sp) | |
| lw s6, 24(sp) | |
| lw s7, 28(sp) | |
| lw s8, 32(sp) | |
| lw s9, 36(sp) | |
| lw s10, 40(sp) | |
| lw s11, 44(sp) | |
| addi sp, sp, 48 | |
| ret | |
| .globl vk_6_acc_scaled | |
| vk_6_acc_scaled: | |
| addi sp, sp, -48 | |
| sw s0, 0(sp) | |
| sw s1, 4(sp) | |
| sw s2, 8(sp) | |
| sw s3, 12(sp) | |
| sw s4, 16(sp) | |
| sw s5, 20(sp) | |
| sw s6, 24(sp) | |
| sw s7, 28(sp) | |
| sw s8, 32(sp) | |
| sw s9, 36(sp) | |
| sw s10, 40(sp) | |
| sw s11, 44(sp) | |
| lui t2, %hi(vk_x) | |
| lw t2, %lo(vk_x)(t2) | |
| lw s0, 0(t2) | |
| lw s1, 4(t2) | |
| lw s2, 8(t2) | |
| lw s3, 12(t2) | |
| lw s4, 16(t2) | |
| lw s5, 20(t2) | |
| lw s6, 24(t2) | |
| lw s7, 28(t2) | |
| lw s8, 32(t2) | |
| lw s9, 36(t2) | |
| lw s10, 40(t2) | |
| lw s11, 44(t2) | |
| 1: | |
| lw a5, 0(a0) | |
| lw a6, 4(a0) | |
| lw a7, 8(a0) | |
| lw t0, 12(a0) | |
| srli t1, a1, 15 | |
| .insn r 0x0B, 6, 1, zero, t1, zero | |
| slli t2, a1, 17 | |
| srli t2, t2, 17 | |
| .insn r 0x0B, 6, 0, zero, t2, zero | |
| .insn r 0x0B, 5, 0, a5, s0, s1 | |
| .insn r 0x0B, 5, 0, a5, s2, s3 | |
| .insn r 0x0B, 5, 0, a5, s4, s5 | |
| .insn r 0x0B, 5, 0, a5, s6, s7 | |
| .insn r 0x0B, 5, 0, a5, s8, s9 | |
| .insn r 0x0B, 5, 0, a5, s10, s11 | |
| .insn r 0x0B, 5, 0, a6, s0, s1 | |
| .insn r 0x0B, 5, 0, a6, s2, s3 | |
| .insn r 0x0B, 5, 0, a6, s4, s5 | |
| .insn r 0x0B, 5, 0, a6, s6, s7 | |
| .insn r 0x0B, 5, 0, a6, s8, s9 | |
| .insn r 0x0B, 5, 0, a6, s10, s11 | |
| .insn r 0x0B, 5, 0, a7, s0, s1 | |
| .insn r 0x0B, 5, 0, a7, s2, s3 | |
| .insn r 0x0B, 5, 0, a7, s4, s5 | |
| .insn r 0x0B, 5, 0, a7, s6, s7 | |
| .insn r 0x0B, 5, 0, a7, s8, s9 | |
| .insn r 0x0B, 5, 0, a7, s10, s11 | |
| .insn r 0x0B, 5, 0, t0, s0, s1 | |
| .insn r 0x0B, 5, 0, t0, s2, s3 | |
| .insn r 0x0B, 5, 0, t0, s4, s5 | |
| .insn r 0x0B, 5, 0, t0, s6, s7 | |
| .insn r 0x0B, 5, 0, t0, s8, s9 | |
| .insn r 0x0B, 5, 0, t0, s10, s11 | |
| lw t1, 0(a3) | |
| mul a5, a5, t1 | |
| mulh a5, a5, a4 | |
| sw a5, 0(a0) | |
| lw t1, 4(a3) | |
| mul a6, a6, t1 | |
| mulh a6, a6, a4 | |
| sw a6, 4(a0) | |
| lw t1, 8(a3) | |
| mul a7, a7, t1 | |
| mulh a7, a7, a4 | |
| sw a7, 8(a0) | |
| lw t1, 12(a3) | |
| mul t0, t0, t1 | |
| mulh t0, t0, a4 | |
| sw t0, 12(a0) | |
| addi a0, a0, 16 | |
| addi a1, a1, 24 | |
| addi a3, a3, 16 | |
| addi a2, a2, -4 | |
| bnez a2, 1b | |
| lw s0, 0(sp) | |
| lw s1, 4(sp) | |
| lw s2, 8(sp) | |
| lw s3, 12(sp) | |
| lw s4, 16(sp) | |
| lw s5, 20(sp) | |
| lw s6, 24(sp) | |
| lw s7, 28(sp) | |
| lw s8, 32(sp) | |
| lw s9, 36(sp) | |
| lw s10, 40(sp) | |
| lw s11, 44(sp) | |
| addi sp, sp, 48 | |
| ret | |
| .globl vk_6_acc_raw | |
| vk_6_acc_raw: | |
| addi sp, sp, -48 | |
| sw s0, 0(sp) | |
| sw s1, 4(sp) | |
| sw s2, 8(sp) | |
| sw s3, 12(sp) | |
| sw s4, 16(sp) | |
| sw s5, 20(sp) | |
| sw s6, 24(sp) | |
| sw s7, 28(sp) | |
| sw s8, 32(sp) | |
| sw s9, 36(sp) | |
| sw s10, 40(sp) | |
| sw s11, 44(sp) | |
| lui t2, %hi(vk_x) | |
| lw t2, %lo(vk_x)(t2) | |
| lw s0, 0(t2) | |
| lw s1, 4(t2) | |
| lw s2, 8(t2) | |
| lw s3, 12(t2) | |
| lw s4, 16(t2) | |
| lw s5, 20(t2) | |
| lw s6, 24(t2) | |
| lw s7, 28(t2) | |
| lw s8, 32(t2) | |
| lw s9, 36(t2) | |
| lw s10, 40(t2) | |
| lw s11, 44(t2) | |
| 1: | |
| lw a5, 0(a0) | |
| lw a6, 4(a0) | |
| lw a7, 8(a0) | |
| lw t0, 12(a0) | |
| srli t1, a1, 15 | |
| .insn r 0x0B, 6, 1, zero, t1, zero | |
| slli t2, a1, 17 | |
| srli t2, t2, 17 | |
| .insn r 0x0B, 6, 0, zero, t2, zero | |
| .insn r 0x0B, 5, 0, a5, s0, s1 | |
| .insn r 0x0B, 5, 0, a5, s2, s3 | |
| .insn r 0x0B, 5, 0, a5, s4, s5 | |
| .insn r 0x0B, 5, 0, a5, s6, s7 | |
| .insn r 0x0B, 5, 0, a5, s8, s9 | |
| .insn r 0x0B, 5, 0, a5, s10, s11 | |
| .insn r 0x0B, 5, 0, a6, s0, s1 | |
| .insn r 0x0B, 5, 0, a6, s2, s3 | |
| .insn r 0x0B, 5, 0, a6, s4, s5 | |
| .insn r 0x0B, 5, 0, a6, s6, s7 | |
| .insn r 0x0B, 5, 0, a6, s8, s9 | |
| .insn r 0x0B, 5, 0, a6, s10, s11 | |
| .insn r 0x0B, 5, 0, a7, s0, s1 | |
| .insn r 0x0B, 5, 0, a7, s2, s3 | |
| .insn r 0x0B, 5, 0, a7, s4, s5 | |
| .insn r 0x0B, 5, 0, a7, s6, s7 | |
| .insn r 0x0B, 5, 0, a7, s8, s9 | |
| .insn r 0x0B, 5, 0, a7, s10, s11 | |
| .insn r 0x0B, 5, 0, t0, s0, s1 | |
| .insn r 0x0B, 5, 0, t0, s2, s3 | |
| .insn r 0x0B, 5, 0, t0, s4, s5 | |
| .insn r 0x0B, 5, 0, t0, s6, s7 | |
| .insn r 0x0B, 5, 0, t0, s8, s9 | |
| .insn r 0x0B, 5, 0, t0, s10, s11 | |
| sw a5, 0(a0) | |
| sw a6, 4(a0) | |
| sw a7, 8(a0) | |
| sw t0, 12(a0) | |
| addi a0, a0, 16 | |
| addi a1, a1, 24 | |
| addi a2, a2, -4 | |
| bnez a2, 1b | |
| lw s0, 0(sp) | |
| lw s1, 4(sp) | |
| lw s2, 8(sp) | |
| lw s3, 12(sp) | |
| lw s4, 16(sp) | |
| lw s5, 20(sp) | |
| lw s6, 24(sp) | |
| lw s7, 28(sp) | |
| lw s8, 32(sp) | |
| lw s9, 36(sp) | |
| lw s10, 40(sp) | |
| lw s11, 44(sp) | |
| addi sp, sp, 48 | |
| ret | |