# رفع مشکل انتقال DMA با گام بزرگ در llama.cpp روی Hexagon

> نسخه b12030 با اصلاح آدرس‌های حافظه نادرست در مسیر جایگزین DMA در Hexagon، مشکل گام‌های انتقال 16 MB یا بیشتر را برطرف می‌کند.

Oossa · 2026-11-01 · https://oossa.com/fa/llama-cpp-fixes-large-stride-dma-transfers-on-hexagon

نسخه b12030 از ggml-org/llama.cpp باگ انتقال حافظه در Hexagon را که گام‌های 16 MB یا بیشتر را تحت‌تأثیر قرار می‌داد، رفع می‌کند. در Hexagon v75 و نسخه‌های بعدی، توصیف‌گر DMA اندازه و گام سطرها را در 24 بیت نگه می‌دارد؛ مسیر جایگزین قبلی انتقال‌ها را بر اساس تعداد سطرها تقسیم می‌کرد، اما همچنان ممکن بود گام‌های بیش‌ازحد بزرگ را کوتاه کند و در نتیجه آدرس‌های نادرستی بسازد. این اصلاح در چنین شرایطی برای هر سطر یک انتقال انجام می‌دهد و نسخه جدید دو آزمون CONT با گام مبدأ بیش از 16 MB نیز اضافه می‌کند.

## حقایق

- این اصلاح برای Hexagon v75 و نسخه‌های بعدی اعمال می‌شود.
- این نسخه دو آزمون CONT با گام مبدأ بیش از 16 MB اضافه می‌کند.

## چرا مهم است

برای کسانی که llama.cpp را روی سخت‌افزارهای Hexagon تحت‌تأثیر اجرا می‌کنند، این اصلاح باید از ایجاد آدرس‌های حافظه نادرست هنگام انتقال‌هایی با گام‌های بسیار بزرگ جلوگیری کند؛ یادداشت‌های انتشار مشخص نمی‌کنند کدام بارهای کاری با این مشکل روبه‌رو می‌شوند.

## منابع و ارجاع‌ها

1. [ggml-org/llama.cpp b12030](https://github.com/ggml-org/llama.cpp/releases/tag/b12030) – llama.cpp, 2026-11-01

آخرین به‌روزرسانی: 2026-11-01
