GraySoft
Projects Models Compare Cloud benchmarks FAQ Download guIDE →
Model Intelligence Sheet

jcbtc/Ornith1.0-35b-CIRU-DUALVIEW-FPX7-Q8-MTP-GGUF overview

CIRU DualView — one model, two execution views assets/dualview.png https://llm.ciru.ai/dualview CIRU DualView Ornith 1.0 35B Read the DualView technical whitep…

llama.cppggufrocmamdstrix-halogfx1151mixture-of-expertsquantizedvisionimage-text-to-textspeculative-decodingmtpdualviewrocmfpxbase_model:Qwen/Qwen3.6-35B-A3Bbase_model:quantized:Qwen/Qwen3.6-35B-A3Blicense:otherregion:usconversational

Runs locally from ~31.23 GB disk (32 GB+ VRAM class GPUs with llama.cpp / guIDE).

Downloads
26
Likes
1
Pipeline
image-text-to-text
Author

Repository Files & Downloads

1 GGUF files detected
Direct downloads for local inference
FileTypeQuantizationSizeLink
Ornith1.0-35b-CIRU-DUALVIEW-FPX7+Q8-MTP.ggufGGUFGGUF31.23 GBDownload

Model Details

Model IDjcbtc/Ornith1.0-35b-CIRU-DUALVIEW-FPX7-Q8-MTP-GGUF
Authorjcbtc
Pipelineimage-text-to-text
Licenseother
Base modeldeepreinforce-ai/Ornith-1.0-35B,Qwen/Qwen3.6-35B-A3B
Last modified2026-07-27T18:32:29.000Z

Model README

---

license: other

license_name: composite-mit-apache-2.0

license_link: https://huggingface.co/jcbtc/Ornith1.0-35b-CIRU-DUALVIEW-FPX7-Q8-MTP-GGUF/blob/main/NOTICE.md

base_model:

- deepreinforce-ai/Ornith-1.0-35B

- Qwen/Qwen3.6-35B-A3B

pipeline_tag: image-text-to-text

library_name: llama.cpp

inference: false

tags:

- gguf

- llama.cpp

- rocm

- amd

- strix-halo

- gfx1151

- mixture-of-experts

- quantized

- vision

- image-text-to-text

- speculative-decoding

- mtp

- dualview

- rocmfpx

---

![CIRU DualView — one model, two execution views](https://llm.ciru.ai/dualview)

CIRU DualView Ornith 1.0 35B

Read the DualView technical whitepaper (PDF)

— the formal weight model, byte-exact conversion proof, phase-specialized

routing design, and full experimental analysis.

68.56% full-model prefill gain in the same-weight FPX7 ablation

This is the quality-maximized DualView release of

Ornith 1.0 35B-A3B:

a 256-expert reasoning, tool-use, coding, and vision model engineered for AMD

unified-memory systems.

DualView keeps a compact FPX7-led target for generation, opens an **exact INT8

compute view of the same stored values** for prompt ingestion, and keeps the

model's sensitive attention and state-space outputs at Q8. The download also

includes the official Qwen3.6 MTP layer and Ornith's matching F32 vision

projector.

> ROCmFPX is required. This model introduces a new GGUF type and execution

> path that stock llama.cpp does not understand. Use the

> dualview-ornith-35b-v1

> release of ciru-ai/ROCmFPX.

| What matters | This release |

|---|---|

| Model | Ornith 1.0 35B-A3B, 256 experts / 8 active |

| Quality position | Quality-max 7.533-bpw target with Q8 precision islands |

| Native context | 262,144 tokens |

| Vision | Included — matching Ornith F32 projector |

| HumanEval base | 98.78% — 162/164 |

| HumanEval+ | 93.29% — 153/164 |

| Target-only PP4096 | 1,236.16 tok/s |

| Target-only TG256 | 48.05 tok/s |

| Best tested MTP decode mean | 84.40 tok/s |

| Best tested MTP code mean | 101.44 tok/s |

| Primary hardware | Ryzen AI Max+ 395 / Radeon 8060S, gfx1151 |

Why two views are worth doing

The most direct experiment disables only the INT8 compute view. The model,

stored FPX7 values, scales, runtime, ROCm device, F16 KV, batch/ubatch, and

flash-attention settings stay fixed.

| Same-weight execution-path ablation | PP4096 tok/s | TG256 tok/s |

|---|---:|---:|

| Canonical packed FPX7 matmul | 713.421 tok/s | 48.511 tok/s |

| Exact INT8 prefill view + packed FPX7 decode | 1,202.550 tok/s | 48.719 tok/s |

| Change from opening the second view | +68.56% | +0.43% |

This is an ablation of the execution path, not a comparison against another

model. It isolates the DualView mechanism:

  • Prefill: the same values reach AMD's mature INT8 matrix path instead of

running packed-Q7 MMQ.

  • Decode: the compact FPX7 representation remains the active path, so

generation speed is unchanged within measurement noise.

At the routed-operator level, the same pattern is even easier to see:

| Ornith routed FFN geometry, PP512 | Packed FPX7 | Exact INT8 view | Speedup |

|---|---:|---:|---:|

| Gate/up | 4,271.03 µs | 1,843.43 µs | 2.32× |

| Down | 4,355.82 µs | 2,015.37 µs | 2.16× |

These are operator timings, while the 68.56% result above is a full-model

PP4096 measurement across three clean loads and nine samples.

The retained quality-max release

The shipped target adds Q8 precision islands for every full-attention Q/K/V/O

projection and every Mamba ssm_out projection. That final topology-aware

recipe is faster than the public Q8 controls while retaining the packed FPX7

decode path for the other quantized tensors.

Matched protocol: ROCm0 on gfx1151, full offload, F16/F16 KV, flash attention,

batch/ubatch 2048/512, 16 threads, MTP disabled.

| Public or shipped Ornith target | PP4096 tok/s | TG256 tok/s | What it shows |

|---|---:|---:|---|

| CIRU DualView quality-max | 1,236.156 | 48.049 | Fastest prefill |

| Official Q8_0 | 1,184.626 | 43.470 | Same-release Q8 control |

| LordNeel Q6_K | 1,110.903 | 52.458 | Fastest decode in this matched panel |

| Unsloth UD-Q8_K_XL | 1,125.562 | 42.628 | Public high-bit dynamic quant |

Against official Q8_0, the shipped target is 4.35% faster in prefill and

10.53% faster in decode. Q6_K remains 9.18% faster in decode, but DualView

is 11.28% faster in prefill. The point is a stronger Pareto position—not a

claim that one format wins every phase.

Retained DualView repeatability:

  • PP4096 load means: 1,239.972, 1,246.529, 1,221.966 tok/s
  • PP4096 nine-sample range: 1,219.43–1,249.91 tok/s
  • TG256 load means: 47.899, 48.182, 48.067 tok/s
  • TG256 nine-sample range: 47.783–48.233 tok/s

Public quant sweep at 64K

The long-context control used the same 64K prose and code prompts, 256 output

tokens, F16 KV, flash attention, one slot, and the normal target-only server

path. These are complete published Unsloth quant files, not isolated kernels.

| Ornith target-only model | Target bytes | Prefill | Decode | Mean wall time |

|---|---:|---:|---:|---:|

| UD-Q5_K_M | 26.456 GB | 667.44 tok/s | 36.49 tok/s | 105.28 s |

| CIRU DualView quality-max | 32.639 GB | 652.01 tok/s | 37.05 tok/s | 107.50 s |

| UD-Q6_K_XL | 31.844 GB | 647.18 tok/s | 36.42 tok/s | 108.37 s |

| UD-Q8_K_XL | 38.201 GB | 619.20 tok/s | 33.78 tok/s | 113.50 s |

At 64K, DualView is within 2.1% of the Q5 wall time, slightly faster than Q6,

and 5.3% faster end to end than Q8_K_XL. It also beats all three controls in

measured decode.

The public DualView download is 33.537 GB because it also carries the optional

0.898 GB MTP layer. The speed row above uses the 32.639 GB target payload with

MTP disabled.

That is the point of this release: keep the quality-focused model while

running in the same practical speed class as materially smaller quants.

Quality evidence

DualView is not a uniform low-bit conversion.

  • All full-attention query, key, value, and output matrices remain Q8.
  • Every Mamba ssm_out matrix remains Q8.
  • The remaining target matrices use CIRU's 7.50-bpw format.
  • The prefill representation is derived exactly from those stored weights. It

does not introduce a second quantization or an additional rounding step.

The release has coding, agent, tool-use, and language-model checks—not only

weight-error proxies:

| Quality test | Result | Protocol note |

|---|---:|---|

| HumanEval base | 98.78% — 162/164 | Thinking on, MTP depth 7 |

| HumanEval+ | 93.29% — 153/164 | Stronger EvalPlus tests |

| BigCodeBench Hard Instruct | 27.70% — 41/148 | Thinking off, MTP depth 7 |

| HermesAgent-20, target only | 84.0 mean — 85 / 88 / 79 | Three complete 20-scenario trials |

| HermesAgent-20, MTP depth 7 | 83.0 mean — 87 / 78 / 84 | Three complete 20-scenario trials |

| ToolEval hard, target only | 75.67 mean — 70 / 70 / 87 | Three complete 15-scenario trials |

| ToolEval hard, MTP depth 7 | 87 | 12 pass / 2 partial / 1 fail |

| WikiText-2 perplexity | 8.461721 | 24,576 tokens / 48 chunks |

HumanEval used 131,072 context, unrestricted native reasoning,

temperature=0.6, top_p=0.95, top_k=0, min_p=0, seed 42, and MTP depth

  1. BigCodeBench used all 148 Hard-Instruct tasks, 131,072 context,

temperature=0.6, top_p=0.95, top_k=20, seed 42, thinking disabled, and

MTP depth 7; all 148 generations stopped normally. HermesAgent and ToolEval

used the release thinking sampler.

The HumanEval publication is an audited protocol-corrected result. Four tasks

that looped under a restrictive fenced-code adapter were replayed with the raw

dataset prompt under otherwise matched settings; all four terminated and

passed. The original outputs, replacements, task IDs, hashes, and scoring

artifacts remain preserved. No benchmark-specification disputes were credited.

The result is also listed on CIRU Lab.

HermesAgent and ToolEval are small repeated behavioral panels, not broad

leaderboard rankings. They are included because they exercise the model's

actual agent and tool paths. For the source model's broader capability results,

see the

official Ornith model card.

How DualView works

Prefill and decode are different workloads:

  • Decode repeatedly streams weights. Compact storage matters most.
  • Prefill performs wide matrix work. A regular INT8 representation maps

better to AMD dot-product and WMMA hardware.

DualView gives the same target weights two hardware-facing representations:

                         ┌─ compact FPX7 view ── generation / decode
one authoritative target┤
                         └─ exact INT8 view ──── prompt ingestion / prefill

The runtime expands the signed seven-bit values into signed eight-bit lanes

while reusing the same FP16 scales. The numerical value represented by every

stored weight is unchanged by that conversion.

This does not mean the quant is lossless relative to the original BF16

model. It means decode and prefill share one authoritative quantized target

instead of storing two independently rounded models.

Read the visual introduction to DualView →

Native vision is included

Ornith is a vision-language model. This repository includes the matching

Ornith vision tower as:

vision/Ornith-1.0-35B-F32.mmproj

The .mmproj extension prevents the Hugging Face GGUF parser from mistaking

the projector for the 35B language model. It remains a GGUF-format projector

and is passed normally with --mmproj.

The F32 projector is an exact upcast of the source BF16 values. It avoids an

additional FP16 conversion in the quality-max release.

Download

python3 -m pip install -U huggingface_hub

mkdir -p models/vision

hf download \
  jcbtc/Ornith1.0-35b-CIRU-DUALVIEW-FPX7-Q8-MTP-GGUF \
  "Ornith1.0-35b-CIRU-DUALVIEW-FPX7+Q8-MTP.gguf" \
  --local-dir ./models

hf download \
  jcbtc/Ornith1.0-35b-CIRU-DUALVIEW-FPX7-Q8-MTP-GGUF \
  "vision/Ornith-1.0-35B-F32.mmproj" \
  --local-dir ./models

Run at the full 256K context

This starts the unchanged target with vision enabled and MTP disabled:

export MODEL="./models/Ornith1.0-35b-CIRU-DUALVIEW-FPX7+Q8-MTP.gguf"
export MMPROJ="./models/vision/Ornith-1.0-35B-F32.mmproj"
export GGML_HIP_ENABLE_UNIFIED_MEMORY=1
export GGML_ROCM_GFX1151_Q7_Q8_VIEW=no-output

./build-strix-dualview/bin/llama-server \
  -m "$MODEL" \
  --mmproj "$MMPROJ" \
  --alias "Ornith1.0-35b-CIRU-DUALVIEW" \
  --host 127.0.0.1 \
  --port 8080 \
  --jinja \
  --reasoning on \
  --reasoning-format deepseek \
  --reasoning-budget -1 \
  -dev ROCm0 \
  -sm none \
  -ngl 999 \
  -fa on \
  -c 262144 \
  -n 16384 \
  -b 2048 \
  -ub 512 \
  -t 16 \
  -tb 16 \
  -ctk f16 \
  -ctv f16 \
  --parallel 1 \
  --metrics \
  --mmap \
  --no-repack \
  --cache-prompt \
  --cache-ram 8192 \
  --no-context-shift \
  -fit off \
  --spec-type none

Remove --mmproj "$MMPROJ" when vision is not needed.

Enable MTP for long generation

Replace --spec-type none with:

--spec-type draft-mtp \
--spec-draft-p-min 0.50 \
--spec-draft-n-max 7 \
-ctkd f16 \
-ctvd f16

Use depth 6 for the tested approximately 1K-prompt class. Depth 7 is the

stronger tested continuation setting from 16K through 64K.

These are served, target-verified generation rates—not standalone

llama-bench TG:

| Prompt + 256 output | Target-only PP | Target-only TG | Best MTP PP | Best MTP TG | TG gain |

|---:|---:|---:|---:|---:|---:|

| ~1K, depth 6 | 1,112.85 | 46.71 | 964.85 | 84.40 | +80.7% |

| 16K, depth 7 | 1,036.55 | 44.08 | 856.14 | 78.86 | +78.9% |

| 32K, depth 7 | 867.80 | 41.36 | 739.37 | 73.70 | +78.2% |

| 64K, depth 7 | 652.01 | 37.05 | 563.32 | 57.82 | +56.1% |

The short-context depth-7 code workload reached 101.44 tok/s. At 64K,

depth 7 reached 76.46 tok/s on code and 39.18 tok/s on prose, showing

why acceptance and workload shape matter.

MTP is optional because it adds its own prompt-processing work. At ~1K + 256,

depth 6 reduced mean wall time from 6.426 s to 4.180 s. At 64K + 256, the

answer was too short to repay MTP prefill overhead, so target-only was faster

end to end. Use target-only for prompt-heavy short-answer traffic and MTP for

longer, high-acceptance continuations.

<details>

<summary><strong>Build the required ROCmFPX runtime on Ubuntu 24.04</strong></summary>

Install a current ROCm stack for the system using AMD's

official Linux instructions,

then verify that HIP sees the GPU.

/opt/rocm/bin/hipconfig --full
/opt/rocm/bin/rocminfo | grep -m1 gfx

sudo apt update
sudo apt install -y \
  build-essential cmake git ninja-build pkg-config \
  libcurl4-openssl-dev libssl-dev python3-venv

git clone --branch dualview-ornith-35b-v1 --single-branch \
  https://github.com/ciru-ai/ROCmFPX.git
cd ROCmFPX

JOBS="$(nproc)" ./scripts/build-strix-dualview.sh

./build-strix-dualview/bin/test-q7-q8-view
./build-strix-dualview/bin/test-quantize-fns
./build-strix-dualview/bin/llama-bench --list-devices

The final command must list the intended ROCm GPU. The release was validated

on Linux ROCm with gfx1151; Windows/HIP remains an experimental port.

</details>

Memory and hardware

The current runtime eagerly materializes the INT8 prefill representation:

| Measured path | Live GTT |

|---|---:|

| Target-only DualView | 68,202,450,944 B / 63.52 GiB |

| Integrated MTP at 64K | 73,075,855,360 B / 68.06 GiB |

The public GGUF is compact on disk, but the present implementation is not

compact in live memory. Allow additional room for the operating system,

projector, server, KV cache, and prompt state. A 128 GB Strix Halo system is

the recommended configuration.

The model and supplied profiles use its native 262,144-token context. The

published repeated performance curve currently extends through 64K; 256K is

enabled, not presented as a completed performance qualification.

Files

| File | Size | SHA-256 |

|---|---:|---|

| Ornith1.0-35b-CIRU-DUALVIEW-FPX7+Q8-MTP.gguf | 33,536,832,416 B / 31.234 GiB | 7834fb92d451235c123973ba40eccea156db28af8d42ae13178c7efcc4d0177a |

| vision/Ornith-1.0-35B-F32.mmproj | 1,786,305,248 B / 1.664 GiB | 19ced1b3a4c0626112ed94f8c5da301a25f669fa2a568eb9360b9958dc1c494f |

The integrated GGUF contains the quality-max Ornith target plus the official

Qwen3.6 MTP layer. Running with --spec-type none uses the target-only path;

enabling MTP does not substitute a smaller target model.

<details>

<summary><strong>Release identity and benchmark protocol</strong></summary>

  • Public target file: 753 tensors.
  • Target payloads: 362 FPX7 tensors, 70 Q8 quality-island tensors, and 301 F32

tensors.

  • Optional MTP layer: 20 appended tensors from the official Qwen3.6 donor.
  • FPX7 mechanism ablation: one pure-FPX7 Ornith artifact, identical bytes and

settings with the compute view disabled/enabled, three clean loads × three

repetitions.

  • Target-only speed: three independent loads × three repetitions, nine samples

per metric.

  • 64K controls: identical prose/code prompts, 256 output tokens, F16 KV, flash

attention, batch/ubatch 2048/512, one server slot.

  • MTP curves: streamed one-slot server requests with target verification,

prompt processing and generation throughput recorded separately.

  • Quality runs: raw prompts, completions, reasoning traces, scoring outputs,

protocol locks, model SHA-256, and runtime commands retained in the CIRU

benchmark lab.

  • Primary runtime source:

ciru-ai/ROCmFPX, release

dualview-ornith-35b-v1.

  • Detailed public record:

DUALVIEW-ORNITH-35B-RESEARCH.md.

  • Published release revision:

b515125810cd233936e52620cd73055a12825e71.

</details>

Current limitations

  • Requires the matching ROCmFPX runtime; stock llama.cpp cannot load the new

target format correctly.

  • The eager prefill representation substantially increases live memory.
  • Performance validation is currently specific to Linux ROCm on Strix Halo.
  • The architecture-matched vision projector is included; the combined

DualView + vision + MTP path is still undergoing formal image-quality and

repeatability validation.

  • MTP speed depends on prompt shape, output length, and acceptance. It is an

optional generation accelerator, not a universal request-latency win.

Provenance and credits

target model and native vision architecture.

published architecture-matched vision projector and vanilla quant controls.

official MTP layer.

upstream inference runtime.

DualView design, FPX7 format, ROCm integration, model recipe, gfx1151

optimization, packaging, and validation.

Component licenses and pinned source identities are recorded in

NOTICE.md. The Ornith target is MIT; the appended Qwen MTP

component is Apache-2.0; ROCmFPX and upstream llama.cpp are MIT.

Run jcbtc/Ornith1.0-35b-CIRU-DUALVIEW-FPX7-Q8-MTP-GGUF with guIDE

Download guIDE — the AI-native code editor with local LLM inference and 69 built-in tools.

Download guIDE → · Browse 524k+ models · Compare models

Source: Hugging Face · Compare models