XMRig — الدليل الكامل
الشبكة
| الخيار المختصر | الخيار الطويل | الوصف | الإصدار |
|---|---|---|---|
| -o | --url=URL | عنوان خادم التعدين | الكل |
| -a | --algo=ALGO | خوارزمية التعدين | الكل |
| --coin=COIN | تحديد العملة بدلًا من الخوارزمية | 3.2.0+ | |
| -u | --user=USERNAME | اسم المستخدم لخادم التعدين | الكل |
| -p | --pass=PASSWORD | كلمة المرور لخادم التعدين | الكل |
| -O | --userpass=U:P | زوج username:password لخادم التعدين | الكل |
| -x | --proxy=HOST:PORT | الاتصال عبر وكيل SOCKS5 | 5.7.0+ |
| -k | --keepalive | إرسال حزمة keepalive لمنع انتهاء المهلة (يتطلّب دعم المجمع) | الكل |
| --nicehash | تفعيل دعم nicehash | الكل | |
| --rig-id=ID | معرّف جهاز التعدين لإحصاءات المجمع (يتطلّب دعم المجمع) | 2.6.1+ | |
| --tls | تفعيل دعم SSL/TLS (يتطلّب دعم المجمع) | 2.8.0+ | |
| --tls-fingerprint=HEX | بصمة شهادة TLS للمجمع لتثبيت الشهادة بصرامة | 2.8.0+ | |
| --dns-ipv6 | تفضيل سجلات IPv6 من استجابات DNS | 6.11.0+ | |
| --dns-ttl=N | مدة TTL بعدد N من الثواني (الافتراضي: 30) لذاكرة DNS المؤقتة الداخلية | 6.11.0+ | |
| --daemon | استخدام RPC الخاص بالعقدة (daemon) بدلًا من المجمع للتعدين المنفرد | 3.0.0+ | |
| --daemon-poll-interval=N | فاصل استطلاع العقدة بالميلي ثانية (الافتراضي: 1000) | 3.0.0+ | |
| --self-select=URL | الاختيار الذاتي لقوالب الكتل من URL | 4.4.0+ | |
| --submit-to-origin | إرسال الحل أيضًا إلى عنوان self-select | 6.9.0+ | |
| -r | --retries=N | عدد مرات إعادة المحاولة قبل الانتقال إلى الخادم الاحتياطي (الافتراضي: 5) | الكل |
| -R | --retry-pause=N | مدة الانتظار بين المحاولات (الافتراضي: 5) | الكل |
| --user-agent | تحديد سلسلة user-agent مخصّصة للمجمع | 2.3.0+ | |
| --donate-level=N | مستوى التبرّع، الافتراضي 1% (دقيقة واحدة من كل 100 دقيقة) | الكل | |
| --donate-over-proxy=N | التحكم في ميزة التبرّع عبر xmrig-proxy | 3.0.0+ |
الواجهة الخلفية للمعالج
| الخيار المختصر | الخيار الطويل | الوصف | الإصدار |
|---|---|---|---|
| --no-cpu | تعطيل الواجهة الخلفية للتعدين على المعالج | 3.0.0+ | |
| -t | --threads=N | عدد خيوط المعالج. يتطلّب بعض التحسينات ضبطًا صحيحًا لارتباط المعالج (affinity). | الكل |
| --cpu-affinity=N | ربط العملية بنواة (أو أنوية) المعالج، القناع 0x3 للنواتين 0 و1 | الكل | |
| -v | --av=N | نسخة الخوارزمية، 0 اختيار تلقائي | الكل |
| --cpu-priority=N | تحديد أولوية العملية (0 خاملة، 2 عادية حتى 5 الأعلى) | 2.3.0+ | |
| --cpu-max-threads-hint=N | تلميح للحد الأقصى لعدد خيوط المعالج (بالنسبة المئوية) للإعداد التلقائي | 4.2.0+ | |
| --cpu-memory-pool=N | عدد صفحات 2 MB لمجمع الذاكرة الدائم، -1 (تلقائي)، 0 (تعطيل) | 4.3.0+ | |
| --cpu-no-yield | تفضيل أقصى معدل تجزئة على استجابة النظام/استقراره | 5.1.1+ | |
| --no-huge-pages | تعطيل دعم الصفحات الكبيرة (huge pages) | 2.3.0+ | |
| --hugepage-size=N | حجم مخصّص للصفحة الكبيرة بوحدة kB (لـ Linux فقط) | 2.8.1+ | |
| --huge-pages-jit | تفعيل دعم الصفحات الكبيرة لشيفرة RandomX JIT | الكل | |
| --asm=ASM | تحسينات ASM، القيم الممكنة: auto، none، intel، ryzen، bulldozer | 2.8.0+ | |
| --argon2-impl=IMPL | تطبيق argon2: x86_64، SSE2، SSSE3، XOP، AVX2، AVX-512F | 6.3.1+ | |
| --randomx-init=N | عدد الخيوط لتهيئة مجموعة بيانات RandomX | 3.0.0+ | |
| --randomx-no-numa | تعطيل دعم NUMA لـ RandomX | 3.0.0+ | |
| --randomx-mode=MODE | وضع RandomX: auto، fast، light | 5.1.0+ | |
| --randomx-1gb-pages | استخدام صفحات كبيرة بحجم 1GB لمجموعة بيانات RandomX (لـ Linux فقط) | 5.2.0+ | |
| --randomx-wrmsr=N | كتابة قيمة (أو قيم) مخصّصة في سجلات MSR أو تعطيل تعديل MSR (-1) | 5.2.0+ | |
| --randomx-no-rdmsr | تعطيل استعادة قيم MSR الأولية عند الخروج | 5.5.0+ | |
| --randomx-cache-qos | تفعيل Cache QoS | 6.3.1+ |
الواجهة الخلفية OpenCL
| الخيار المختصر | الخيار الطويل | الوصف | الإصدار |
|---|---|---|---|
| --opencl | تفعيل الواجهة الخلفية للتعدين عبر OpenCL | 5.0.0+ | |
| --opencl-devices=N | قائمة أجهزة OpenCL المستخدمة مفصولة بفواصل | 5.0.0+ | |
| --opencl-platform=N | رقم منصة OpenCL أو اسمها | 5.0.0+ | |
| --opencl-loader=PATH | مسار OpenCL-ICD-Loader (OpenCL.dll أو libOpenCL.so) | 5.0.0+ | |
| --opencl-no-cache | تعطيل ذاكرة OpenCL المؤقتة | 5.0.0+ | |
| --print-platforms | طباعة منصات OpenCL المتاحة ثم الخروج | 5.0.0+ |
الواجهة الخلفية CUDA
| الخيار المختصر | الخيار الطويل | الوصف | الإصدار |
|---|---|---|---|
| --cuda | تفعيل الواجهة الخلفية للتعدين عبر CUDA | 5.0.0+ | |
| --cuda-loader=PATH | مسار إضافة CUDA (xmrig-cuda.dll أو libxmrig-cuda.so) | 5.0.0+ | |
| --cuda-devices=N | قائمة أجهزة CUDA المستخدمة مفصولة بفواصل | 5.0.0+ | |
| --cuda-bfactor-hint=N | تلميح bfactor للإعداد التلقائي (0-12) | 5.0.1+ | |
| --cuda-bsleep-hint | تلميح bsleep للإعداد التلقائي | 5.0.1+ | |
| --no-nvml | تعطيل دعم NVML (NVIDIA Management Library) | 5.0.0+ |
API
| الخيار المختصر | الخيار الطويل | الوصف | الإصدار |
|---|---|---|---|
| --api-worker-id=ID | معرّف عامل (worker-id) مخصّص لواجهة API | 2.4.0+ | |
| --api-id=ID | معرّف نسخة (instance ID) مخصّص لواجهة API | 2.4.0+ | |
| --http-host=HOST | عنوان الربط لواجهة HTTP API (الافتراضي: 127.0.0.1) | 5.0.0+ | |
| --http-port=N | منفذ الربط لواجهة HTTP API | 5.0.0+ | |
| --http-access-token=T | رمز الوصول لواجهة HTTP API | 5.0.0+ | |
| --http-no-restricted | تفعيل الوصول الكامل عن بُعد إلى HTTP API (فقط إذا ضُبط رمز الوصول) | 5.0.0+ |
السجلات
| الخيار المختصر | الخيار الطويل | الوصف | الإصدار |
|---|---|---|---|
| -S | --syslog | استخدام سجل النظام لرسائل الإخراج | الكل |
| -l | --log-file=FILE | تسجيل كل الإخراج في ملف | الكل |
| --print-time=N | طباعة تقرير معدل التجزئة كل N ثانية | الكل | |
| --health-print-time=N | طباعة تقرير الحالة الصحية كل N ثانية | 5.0.0+ | |
| --no-color | تعطيل الإخراج الملوّن | الكل | |
| --verbose | إخراج مفصّل | 5.4.0+ |
متفرقات
| الخيار المختصر | الخيار الطويل | الوصف | الإصدار |
|---|---|---|---|
| -c | --config=FILE | تحميل ملف إعدادات بصيغة JSON | الكل |
| -B | --background | تشغيل برنامج التعدين في الخلفية | الكل |
| -V | --version | عرض معلومات الإصدار ثم الخروج | الكل |
| -h | --help | عرض هذه المساعدة ثم الخروج | الكل |
| --dry-run | اختبار الإعدادات ثم الخروج | الكل | |
| --export-topology | تصدير بنية hwloc إلى ملف XML ثم الخروج | 3.0.0+ | |
| --title | تحديد عنوان مخصّص لنافذة وحدة التحكم | 6.0.1+ | |
| --no-title | تعطيل تحديد عنوان نافذة وحدة التحكم | 6.0.1+ | |
| --pause-on-battery | إيقاف التعدين مؤقتًا عند العمل على البطارية | 6.3.1+ | |
| --pause-on-active=N | إيقاف التعدين مؤقتًا عندما يكون المستخدم نشطًا (الاستئناف بعد N ثانية من آخر نشاط) | 6.9.0+ | |
| --stress | تشغيل اختبار ضغط مستمر للتحقق من استقرار النظام | 6.4.0+ | |
| --bench=N | تشغيل اختبار الأداء، ويمكن أن تكون N بين 1M و10M | 6.4.0+ | |
| --submit | إجراء اختبار أداء عبر الإنترنت وإرسال النتيجة لمشاركتها | 6.5.0+ | |
| --verify=ID | التحقق من اختبار الأداء المُرسل حسب المعرّف | 6.5.0+ | |
| --seed=SEED | بذرة RandomX مخصّصة لاختبار الأداء | 6.5.0+ | |
| --hash=HASH | مقارنة نتيجة اختبار الأداء بالتجزئة المحددة | 6.5.0+ | |
| --no-dmi | تعطيل قارئ DMI/SMBIOS | 6.8.0+ |
متطلبات حجم الذاكرة
2080 MB لكل عقدة NUMA لمجموعة البيانات، وعقدة NUMA واحدة تساوي عادةً مقبس معالج واحدًا، ويعرض برنامج التعدين عدد العقد عند بدء التشغيل.
256 MB لذاكرة التخزين المؤقت على عقدة NUMA الأولى.
256 KB من ذاكرة L2 و2 MB من ذاكرة L3 لكل خيط تعدين واحد.
متطلبات ذاكرة التخزين المؤقت للمعالج هي السبب الرئيسي لعدم استخدام برنامج التعدين كل الخيوط على معظم المعالجات (سؤال شائع جدًا). على Windows قد لا تكفي ذاكرة 4GB للنظام وبرنامج التعدين معًا.
هناك عدة طرق لزيادة متطلبات الذاكرة أو تقليلها:
الصفحات الكبيرة بحجم 1GB على Linux، ترفع متطلبات الذاكرة إلى 3GB (3 صفحات) لكل عقدة NUMA و ترفع معدل التجزئة بنسبة 1-3%.
تعطيل دعم NUMA عبر "numa": false في كائن "randomx"، فيستخدم برنامج التعدين مجموعة بيانات واحدة فقط، لكن ذلك يخفّض معدل التجزئة كثيرًا، وإذا كانت لديك عقدة NUMA واحدة فقط فلا تأثير لهذا الخيار.
وضع RandomX الخفيف، يقلّل متطلبات الذاكرة إلى 256 MB لكنه بطيء جدًا، ويمكن تفعيله عبر "mode": "light" في كائن "randomx".
قد تلزم عدة قنوات للذاكرة:
ذاكرة DDR3 محدودة بنحو 1500-2000 H/s لكل قناة (حسب التردد والتوقيتات)
ذاكرة DDR4 محدودة بنحو 4000-6000 H/s لكل قناة (حسب التردد والتوقيتات)
الصفحات الكبيرة (Huge Pages)
يمكن أن ترفع الصفحات الكبيرة أداء RandomX حتى 50%، والصفحات الكبيرة بحجم 1GB (لـ Linux فقط) ترفع معدل التجزئة بنسبة إضافية 1-3% فوق الصفحات الكبيرة العادية.
تعديل MSR لأدوات الجلب المسبق العتادية (prefetchers)
يجب تعطيل أدوات الجلب المسبق العتادية للحصول على أفضل أداء لـ RandomX.
Cache QoS
ميزة تجريبية تمنع كل أنوية المعالج التي لا تُعدّن من الوصول إلى ذاكرة L3 ما يقلّل التداخل مع التعدين.
