এনভিআইডিআইএ প্রাইমের সাথে কীভাবে CUDA ব্যবহার করবেন


10

আমি পুরো ওয়েবে এটির উপর একটি অর্ধ ডজন পোস্ট পেয়েছি, কিন্তু এর মধ্যে সত্যই কোনও প্রশ্নের উত্তর নেই।

আমি আমার এনভিডিয়া জিপিইউ সেটআপ করতে চাই কেবল গণনা করতে, ডিসপ্লেটি ড্রাইভ না করে। তবে আমি যখন এনভিডিয়া-প্রাইম কনফিগারেশনে ইন্টেল জিপিইউ ব্যবহার করতে চলেছি, আমি আর এনভিডিয়া মডিউলটি লোড করতে পারব না।

modprobe: ERROR: could not insert 'nvidia_352': No such device

মডিউল ছাড়া, CUDA স্পষ্টতই কাজ করে না।

সুতরাং এনভিডিয়া-প্রাইম ঠিক কী করছে যা মডিউলটি লোড করা অসম্ভব করে তোলে? এটি কালো তালিকাভুক্ত নয়। এখানে কোনও xorg.conf ফাইল নেই, সুতরাং সিস্টেমটি কীভাবে পৃথক পৃথক ইন্টেল জিপিইউ ব্যবহার করতে জানতে পারে?

আমি একটি ডেল 5510 যথার্থতার সাথে উবুন্টু 14.04 ফ্যাক্টরি ইনস্টল করেছি এবং আমার জিপিইউ কোয়াড্রো এম1000 এম 000

কেউ কেউ ভোবাবি ব্যবহার করার পরামর্শ দেয় তবে খাঁটি গণনা লোডের জন্য এটি প্রয়োজনীয় হওয়া উচিত নয়।

এছাড়াও, দৃশ্যত bumblebee মডিউলটি লোড করতে সক্ষম। তাহলে এটি ঠিক কী করছে?

আপডেট: সুতরাং কেন সর্বদা মনে হয় যে আমি অবশেষে কোনও প্রশ্ন পোস্ট করার পরে, উত্তরটি খুঁজে পাওয়ার চেষ্টা করার কয়েক ঘন্টা পরে উত্তরটি খুঁজে পাই। এটি প্রকৃত শুধুমাত্র একটি আংশিক উত্তর, তবে আমি কিছু করছি।

এখনও অবধি আমি নির্ধারণ করেছি যে প্রাইম কমপক্ষে দুটি কাজ করেন:

  • বিবিসুইচ ব্যবহার করে জিপিইউ স্যুইচ করুন।
  • /Etc/ld.so.conf.d/x86_64-linux-gnu_GL.conf এর বিকল্পগুলি পরিবর্তন করে ।

জিপিইউটি আবার চালু করতে বিবিএসবিচ ব্যবহার করে, আমি এখন এনভিআইডিআইএ মডিউলটি লোড করতে সক্ষম হয়েছি।

তবে এখনও প্রশ্নটি রয়ে গেছে: এনভিআইডিআইএ কার্ডটি কেবল গণনার জন্য ব্যবহার করার জন্য সিস্টেমটি কনফিগার করার সর্বোত্তম উপায় কোনটি?

আমি কি ইন্টেল জিপিইউ ব্যবহারের জন্য এনভিডিয়া-প্রাইম সেট করব, এবং সিডিডিএকে কাজ করতে ম্যানুয়ালি কী তা খোলার চেষ্টা করব?

আমি কীভাবে নিশ্চিত করব যে সিস্টেমটি এখনও প্রদর্শনের জন্য ইন্টেল জিপিইউ ব্যবহার করে?

আমি কীভাবে কেবল এনভিআইডিআইএ প্রাইমকে অক্ষম করতে এবং ম্যানুয়ালি এগুলি কনফিগার করব?

বা আমি কি ভুগলবি এবং অপ্টিরুনটি দেওয়া এবং ব্যবহার করব? এর কোনও অসুবিধাগুলি যদি হয় তবে?

কোন সুপারিশ?


আপনি কি এনভিআইডিআইএ এক্স সার্ভার সেটিংস অ্যাপ্লিকেশনটিতে জিপিইউতে প্রদর্শনটি অক্ষম করতে পারেন?
রজার ডাহল

এনভিআইডিআইএ ইউটিলিটি আপনাকে কেবল ইনটেল এবং এনভিআইডিআইএ জিপিইউয়ের মধ্যে বেছে নিতে দেয়। এটি সূক্ষ্ম দানযুক্ত সেটিংস সরবরাহ করে না, যেমন প্রদর্শনের জন্য কোন কার্ড ব্যবহার করতে হবে।
অরডভেন

উত্তর:


5

আমার ক্ষেত্রে আমি দেখতে পেয়েছি যে এনভিডিয়া কার্ডটি আসলে বন্ধ ছিল না, এবং সিইউডিএ কোড চালানোর জন্য আমার কেবল একমাত্র জিনিসটি হ'ল:

export LD_LIBRARY_PATH=/usr/lib/nvidia-352

আমি যে শেলটিতে এটি চালাতে চাই সেখানে (আমি ধরে নিচ্ছি যে বিশ্বব্যাপী বিকল্পের সেটিংটি পরিবর্তনের ফলে কমপিজ ইত্যাদি ভেঙ্গে যাবে ... ইত্যাদি)

এই মুহুর্তে পৌঁছানোর জন্য (উবুন্টু 14.04, সিইউডিএ 7.5 এবং একটি জিটিএক্স 980 সহ একটি ডেল অপটিপ্লেক্স 7010 এ) আমি বিশ্বাস করি যে পদক্ষেপগুলি ছিল:

  1. ইন্টেল নির্বাচন করতে PRIME প্রোফাইল ট্যাব ব্যবহার করুন
  2. পুনরায় বুট করুন এবং BIOS এ ডিফল্ট হিসাবে ইন্টেল নির্বাচন করুন
  3. কম্পিউটার বন্ধ করুন
  4. অনলাইন বোর্ডে মনিটরগুলি প্লাগ করুন :)

এখন পর্যন্ত সবকিছু ঠিকঠাক কাজ করছে বলে মনে হচ্ছে (এনভিডিয়া-এসএমআই কার্ড দেখে, চুদা নমুনা চালায়, থিয়ানো কার্ডটি ব্যবহার করে ইত্যাদি ...)


1
হ্যাঁ, দুর্ভাগ্যক্রমে এখানে কোনও সামঞ্জস্যপূর্ণ সমাধান বলে মনে হচ্ছে না, এজন্যই আমি সত্যিই হুডের নীচে যা চলছে তা বোঝাতে চাইছিলাম।
orodbhen

2

আমি বিশ্বাস করি যে এটির জন্য আমার মূল পোস্টের আপডেটে বর্ণিত হিসাবে আমি এটির জন্য কমপক্ষে একটি কারসারি সমাধান পেয়েছি। সত্যিই আমি দুটি সমাধান খুঁজে পেয়েছি, যদিও আমি নিশ্চিত যে অন্যগুলি রয়েছে।

1 - ইনটেল মোডে প্রাইম সহ , বিবিসুইচের মাধ্যমে এনভিআইডিআইএ কার্ডটি পুনরায় সক্ষম করুন , তারপরে modprobe nvidiaমডিউলটি লোড করতে এবং ডিভাইস নোডগুলি তৈরি করতে চালান ।

2 - ব্যাশ সেশন শুরু করতে বাম্বল অপটিউরন ব্যবহার করুন যেখানে থেকে আপনি আপনার সমস্ত সিডুএ স্টাফ করতে পারেন।

এই দুটি সমাধানই আপনাকে ভার্চুয়াল গ্রাফিকগুলি আপনার প্রদর্শনের জন্য ব্যবহার করার অনুমতি দেয়, যখন এনভিআইডিআইএ কার্ডটি গণনা লোডের জন্য ব্যবহার করে। অনুকূল সমাধানটি আরও বহুমুখী মনে হয় তবে আমি এর সংক্ষিপ্ততার জন্য প্রথমটি পছন্দ করি।

আমি আশা করছি আরও বুদ্ধিমান কেউ এই উত্তরটির উন্নতি করবে।


আপনি আরও স্পষ্টভাবে প্রথম বিকল্প ব্যাখ্যা করতে পারেন? আপনি কীভাবে চালু এবং বিবিসুইচ ব্যবহার করে কার্ড বন্ধ করবেন?
অ্যাবটোন

আমি বুঝতে পারলাম কীভাবে ভালভাবে কাজ করতে হবে তাড়াতাড়ি ভুগবে এবং সময় পেলেই আমি আমার উত্তর আপডেট করব। আমি মূলত অনুসৃত এই । হতাশাজনক যে এই জিনিসটি এতই দুর্বল নথিভুক্ত, কারণ এটি সত্যিই বেশ সহজ।
অরডভেন

2

আমি কেবল সিডিডিএ কার্যকর করার জন্য এনভিআইডিএ কার্ড ব্যবহার করি এবং এই পদ্ধতিটি জানতে পারি:

আমি যতক্ষণ ইন্টেল কার্ড ব্যবহার করি এবং কমান্ড দ্বারা এটি নিশ্চিত হয় lspci | grep -E "VGA|3D":

00:02.0 VGA compatible controller: Intel Corporation Skylake Integrated Graphics (rev 06)
01:00.0 3D controller: NVIDIA Corporation GM107M [GeForce GTX 960M] (rev ff)

এনভিআইডিআইএ কার্ডের জন্য সংশ্লিষ্ট সারিতে আপনার দেখতে পাওয়া উচিত (rev ff)এটি বন্ধ হয়ে গেছে।

কার্ডটি চালু করতে এবং এটি চুদা গণনার জন্য ব্যবহার করতে আমি নিম্নলিখিত দুটি কমান্ড ব্যবহার করি:

sudo prime-select nvidia
sudo prime-switch

কমান্ড lspci | grep -E "VGA|3D"রিপোর্টের পরে :

00:02.0 VGA compatible controller: Intel Corporation Skylake Integrated Graphics (rev 06)
01:00.0 3D controller: NVIDIA Corporation GM107M [GeForce GTX 960M] (rev a2)

সম্পর্কিত সারিতে (rev a2)নয়, সম্পর্কে লক্ষ্য করুন (rev ff)। এখন কার্ড গণনার জন্য প্রস্তুত।

গণনার পরে আমি পশ্চাদপদ ক্রিয়াগুলি ব্যবহার করি:

sudo prime-select intel
sudo prime-switch

এবং lspci | grep -E "VGA|3D"রিপোর্ট:

00:02.0 VGA compatible controller: Intel Corporation Skylake Integrated Graphics (rev 06)
01:00.0 3D controller: NVIDIA Corporation GM107M [GeForce GTX 960M] (rev ff)

সুতরাং, মূলত, আপনাকে কেবল প্রাইমটির সাথে স্যুইচ করার পরে লগইন করতে হবে, আপনি যদি জিপিইউটি প্রদর্শনটি চালাচ্ছেন? আমি যদিও এটি ছিল না, কিন্তু এটা বোঝা যায়। অবশ্যই, আপনাকে লগ আউট বা পুনরায় চালু করার আগে আপনি ফিরে স্যুইচ করার বিষয়টি নিশ্চিত করতে হবে।
orodbhen

আমি এই পদ্ধতির ব্যবহার। আমি ইন্টেল প্রোফাইলের সাথে সক্রিয় লগ ইন করছি যাতে জর্জি এবং ফায়ারফক্স জিপিইউ ব্যবহার করছে না। তারপরে আমি এনভিডিয়া প্রোফাইলে স্যুইচ করি এবং আমার সমস্ত সিডিডিএ কাজ করে জিপিইউতে চলে যায় এবং মেমরির জন্য ফায়ারফক্স এবং জর্গের সাথে প্রতিযোগিতা করতে হবে না :)!
জন

0

গ্রহণযোগ্য উত্তরের পদক্ষেপগুলি অনুসরণ করার পরেও যদি কেউ সমস্যার সম্মুখীন হন তবে এটি ব্যবহার করে দেখুন:

echo "install bbswitch /bin/true" > /etc/modprobe.d/blacklist-bbswitch.conf
update-initramfs -u

এটি বিসবিচ সম্পূর্ণরূপে অক্ষম করবে। ত্রুটিটি হ'ল আপনি পাওয়ার সাশ্রয়ের জন্য এনভিআইডিআইএ কার্ডটি বন্ধ করতে সক্ষম হবেন না (এক্সারগ এখনও ততক্ষণ সংহত গ্রাফিক্স ব্যবহার করে prime-select intel)।


0

আমি যখন কাজ করি তখন আমার ক্রিপ্টো-মুদ্রায় সেট আপ করা একটি উদাহরণে একটি থিংপ্যাড টি 420 সহ 1070 টি টি ব্যবহার করছি। জিপিইউ তাত্ত্বিকভাবে এইভাবে কয়েক মাস পরে নিজের জন্য অর্থ প্রদান করবে।

আমি দেখতে পেয়েছি যে এনভিডিয়া 387 রফতানির সাথে এলডি_লিবারি_প্যাথ = / ইউএসআর / লিব / এনভিডিয়া -387 চুদা ব্যবহার করে এথিনামারের সাথে কাজ করেছে।

যাইহোক, "প্রাইম-সিলেক্ট ইন্টেল" এর পরে সিস্টেমটি কাজ চালিয়ে যাওয়ার একমাত্র উপায়টি ছিল যদি আমি সিলেকশনটি করতাম এবং লগ অফ করতাম তখন কার্ডটিতে দ্বিতীয় মনিটরের প্লাগ লাগতাম। অন্যথায়, আমি একটি "সিস্টেমটি নিম্ন-গ্রাফিক্স মোডে চলছে" ত্রুটি, বা একটি ক্রমাগত ফাঁকা স্ক্রিন পেয়ে যাব। অবশ্যই, যখন আমি ইনটেল গ্রাফিকগুলি চালনা করে লগ-ইন করি, জিপিইউতে প্লাগ করা মনিটরটি কিছুই প্রদর্শন করে না, সুতরাং আমার এটি দ্বিগুণ মনিটর সেটআপ চালাতে জিপিইউ থেকে আনপ্লাগ লাগাতে হবে এবং এটি সিস্টেমে ফিরিয়ে আনতে হবে (ডিভিআই ডক আউটপুট) have ।

আমি বিশ্বাস করি কারণ জিপিইউ-ম্যানেজার সনাক্ত করে যে বিবিসুইচ কাজ করে না এবং তারপরে xorg কনফিগারেশন মুছে ফেলে।

আমি কয়েকজন যারা একইরকম পরিস্থিতিতে পড়তে পারি তার জন্য একটি কর্মপরিকল্পনা দেখানোর জন্য এটি পোস্ট করছি, তবে এটি দেখার থেকে কারও ধারণা আছে কিনা তাও দেখার জন্য, প্রতিটি রিবুটের জন্য সেই তারের কাছাকাছি চলে যাওয়া কিছুটা হলেও অসুবিধা.

লগ_ফাইলে: /var/log/gpu-manager.log

শেষ_ বুট_ফিল:: / var / lib / উবুন্টু-ড্রাইভার-সাধারণ / সর্বশেষ_গফেক্স_ বুট নতুন_বুট_ফিল: / ভার / লিব / উবুন্টু-ড্রাইভার-সাধারণ / শেষ_জিএফএক্স_ বুট অ্যাক্সেস করতে পারে না / চালায় / ইউডিসি-ফগ্ল্রিক্স-লোড হওয়া ফাইল / লিবি-তে fglrx মডিউলগুলি সন্ধান করছে / Modules/4.4.0-104- generic/updates/dkms /lib/modules/4.4.0-104-generic/updates/dkms এ এনভিডিয়া মডিউল খুঁজছেন এনভিডিয়া মডিউল পাওয়া গেছে: nvidia_387_drm.ko এনভিডিয়া লোড হয়েছে? হ্যাঁ এনভিডিয়া কি লোড ছিল? না এনভিডিয়া কি কালো তালিকাভুক্ত? হ্যাঁ fglrx বোঝা? না fglrx আনলোড করা হয়েছিল? না fglrx কালো তালিকাভুক্ত হয়? না ইন্টেল বোঝাই হয়? হ্যাঁ রেডন বোঝাই হয়েছে? না রেডিয়েন কি কালো তালিকাভুক্ত? না amdgpu বোঝা হয়? না amdgpu কালো তালিকাভুক্ত হয়? নাউউউ বোঝাই হয়? নুয়াউ কালো তালিকাভুক্ত হয়? হ্যাঁ fglrx কার্নেল মডিউল পাওয়া যায়? না এনভিডিয়া কার্নেল মডিউল পাওয়া যায়? হ্যাঁ বিক্রেতা / ডিভাইস আইডি: 8086: 126 বাসআইডি "পিসিআই: 0 @ 0: 2: 0" বুট ভিজিএ? হ্যাঁ বিক্রেতা / ডিভাইস আইডি: 10 ডি: 1 বি 82 বেসিড "পিসিআই: conf বর্তমান মূল বিকল্প: (নাল) বর্তমান উদাহরণ বিকল্প: /usr/lib/nvidia-387-prime/ld.so.conf এনভিডিয়া কি সক্ষম? না এনভিডিয়া egl সক্ষম? না fglrx সক্ষম? না মিসা কি সক্ষম? না মিসা egl সক্ষম? না পাইপ্রেস সক্ষম করা আছে? না প্রাইম সক্ষম? হ্যাঁ প্রাইম উদাহরণস্বরূপ কি সক্ষম? হ্যাঁ এনভিডিয়া পাওয়া যায়? হ্যাঁ এনভিডিয়া egl পাওয়া যায়? না fglrx পাওয়া যায়? না fglrx- কোর উপলব্ধ? না মেলা পাওয়া যায়? হ্যাঁ মেলা উদাহরণস্বরূপ পাওয়া যায়? হ্যাঁ পেক্সপ্রেস পাওয়া যায়? না প্রাইম পাওয়া যায়? হ্যাঁ প্রাইম উদাহরণস্বরূপ পাওয়া যায়? কোনও ইন্টেল আইজিপি সনাক্ত করেছে ইন্টেল হাইব্রিড সিস্টেম এনভিডিয়া ড্রাইভার সংস্করণ 387.34 সনাক্ত / সিএস / শ্রেণি / ডিএমআই / আইডি / প্রোডাক্ট_ভার্সন = "থিঙ্কপ্যাড টি 420" / সিস / ক্লাস / ডিএমআই / আইডি / প্রোডাক্ট নেম = "4236L23" 1 তম চেষ্টা করুন: বিবিএসবিচ ছাড়াই বিবিএসবিচ লোড হচ্ছে "load_state = -1 আনলোড_স্টেট = 1" পরামিতি ত্রুটি: করতে পারে ' এক্স খোলা / প্রকোপ / এসপিআই / বিবিসউইচ xorg.conf সরানো হচ্ছে। পাথ: /etc/X11/xorg.conf /usr/share/gpu-manager.d/hybrid-power-saving অ্যাক্সেস করতে পারে না বর্তমান বিবিসুইচ স্থিতি পরিবর্তন করার দরকার নেই

যদি আমি এর পরে xorg.conf ন্যানো এটি খালি। আমি মনিটর স্যুইচ কৌশলটি করার পরে পোস্ট করছি, ব্যাকগ্রাউন্ডে খনির কাজ চলছে, এবং আমার xorg.conf এখনও খালি রয়েছে। সুতরাং আমার অনুমান যে কোনও কারণে আমি যখন মনিটরটি জিপিইউতে লাইটডেম পুনরায় চালু করতে থাকি তখন আমার xorg.conf মুছে ফেলা যায় তা বিবেচ্য নয়। কোন ধারনা?


এছাড়াও ... উপরে বর্ণিত অনুসারে আমি ব্ল্যাকলিস্ট করেছি ববসুইচ, কারণ বুটে এটির সাথে আমি ক্রমাগত ত্রুটি পেতে পারি। আমি এনভিডিয়া -384 একবার বা দু'বার ব্যবহার করে ইন্টেল মোডে বুট করতে সক্ষম হয়েছি, তবে এটি দিয়ে খনির কাজ করতে আমার সমস্যা হয়েছিল, এবং ভেবেছিলাম এটি হতে পারে কারণ এনভিডিয়া -387 সহ 1070 টিআই সমর্থন যুক্ত করা হয়েছিল।
51
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.