এনভিআইডিআইএ এনভিএমএল ড্রাইভার / গ্রন্থাগারের সংস্করণটি মেলেনি


223

আমি যখন চালনা nvidia-smiকরি আমি নিম্নলিখিত বার্তাটি পাই:

Failed to initialize NVML: Driver/library version mismatch

এক ঘন্টা আগে আমি একই বার্তাটি পেয়েছি এবং আমার চুদা গ্রন্থাগারটি আনইনস্টল করেছিলাম এবং nvidia-smiনিম্নলিখিত ফলাফল পেয়ে আমি চালাতে সক্ষম হয়েছি :

NVIDIA-SMI-ফলাফলের

এই পরে আমি ডাউনলোড cuda-repo-ubuntu1604-8-0-local-ga2_8.0.61-1_amd64.deb সরকারী এনভিআইডিআইএ পৃষ্ঠা থেকে এবং তারপরে সহজভাবে:

sudo dpkg -i cuda-repo-ubuntu1604-8-0-local-ga2_8.0.61-1_amd64.deb
sudo apt-get update
sudo apt-get install cuda
export PATH=/usr/local/cuda-8.0/bin${PATH:+:${PATH}}

এখন আমি চুদা ইনস্টল করেছি, তবে আমি উল্লিখিত অমিল ত্রুটি পেয়েছি।


কিছু সম্ভাব্য দরকারী তথ্য:

চলমান cat /proc/driver/nvidia/version আমি পেয়েছি:

NVRM version: NVIDIA UNIX x86_64 Kernel Module  378.13  Tue Feb  7 20:10:06 PST 2017
GCC version:  gcc version 5.4.0 20160609 (Ubuntu 5.4.0-6ubuntu1~16.04.4)

আমি উবুন্টু 16.04.2 এলটিএস চালাচ্ছি।

কার্নেল প্রকাশ হ'ল: 4.4.0-66-জেনেরিক।

ধন্যবাদ!


12
আপনি সম্ভবত আপনার (বর্তমান) প্যাকেজ ম্যানেজার ইনস্টল (apt-get) এর সাথে পূর্ববর্তী রানফাইল ইনস্টলটি মিশ্রিত করেছেন। পূর্ববর্তী সমস্ত এনভিআইডিআইএ ড্রাইভার এবং কুডা ফাইলগুলি সরিয়ে ফেলার জন্য চুদা লিনাক্স ইনস্টল গাইডের নির্দেশাবলী অনুসরণ করুন এবং তারপরে আপনি এটি পরিষ্কার করার পরে পুনরায় ইনস্টল করুন। আপনার পুনরায় ইনস্টল শুরু করার আগে, আপনি লিঙ্কযুক্ত পুরো লিনাক্স ইনস্টল গাইড নথিটি পড়তে চাইতে পারেন। আপনার বিদ্যমান 378.13 ড্রাইভার ইনস্টল শীর্ষে CUDA 8 GA2 প্যাকেজ ইনস্টল করার আপনার প্রচেষ্টা থেকে দ্বন্দ্বটি প্রায় অবশ্যই উদ্ভূত হয়েছিল।
রবার্ট ক্রোভেলা

আমি এই প্রশ্নটি বন্ধ করার পক্ষে ভোট দিচ্ছি কারণ এটি মূলত জিপিইউ ড্রাইভার ইনস্টল করার (বা ইনস্টলেশনটি ভেঙে ফেলার) এবং প্রোগ্রামিংয়ের সাথে সরাসরি সম্পর্কিত নয় a
talonmies

উত্তর:


332

আশ্চর্য অবাক, রিবুট করা সমস্যার সমাধান করেছে (আমি ভেবেছিলাম যে আমি ইতিমধ্যে এটি চেষ্টা করেছি)।

মন্তব্যে রবার্ট ক্রোভেলা যে সমাধানটি উল্লিখিত হয়েছে তা অন্য কারও পক্ষেও কার্যকর হতে পারে, যেহেতু এটি প্রথমবার সমস্যাটি সমাধান করার জন্য আমি যা করেছি তার সাথে এটি বেশ মিল।


2
দয়া করে মনে রাখবেন কয়েক দিনের মধ্যে ফিরে এসে এই উত্তরটি গ্রহণ করুন যাতে এই প্রশ্নটি
সিইউডিএ

5
আমি একটি রিবুট পরে এই কাজ সম্পর্কে সন্দেহ ছিল, কিন্তু তবুও আমি এটি চেষ্টা করেছিলাম, এবং এটি কাজ করে !! ধন্যবাদ!
অভিষেক পটনিস 25:57

8
@ অভিষেকপটনিস আপনি যদি ভাবছেন যে রিবুট কেন কাজ করেছে তবে এটি এর কারণ হতে পারে: /var/log/apt/history.logউবুন্টু পরীক্ষা করে দেখা গেছে যে সিস্টেমটি স্বয়ংক্রিয়ভাবে লাইবকুডাকে আপডেট করেছে, সম্ভবতঃ সঠিকভাবে কাজ চালিয়ে যেতে পুনরায় চালু করার প্রয়োজন রয়েছে। সেই থেকে আমি আপডেটগুলি আবার দেখতে পাব না এই আশায় সেই আপডেটগুলি অক্ষম করেছি।
জন

1
দুর্ভাগ্যক্রমে এটি স্থায়ী সমাধান নয়। সমস্যা আবার প্রদর্শিত হতে পারে। সমাধানটি হল এনভিডিয়া প্যাকেজ ( nvidia-390) এর একটি নতুন সংস্করণ ইনস্টল করা । নীচে আমার উত্তর দেখুন
স্টিফান হর্নিং

1
এটি আমার জন্যও কাজ করেছিল। কিছু নির্দেশাবলী অন্তর্ভুক্ত sudo reboot nowএবং অন্যদের না।
rjurney

231

যেমন @etal বলেছেন, রিবুট করা এই সমস্যাটি সমাধান করতে পারে তবে আমি মনে করি রিবুট ছাড়াই একটি পদ্ধতি সাহায্য করবে।

চাইনিজদের জন্য, আমার ব্লগটি পরীক্ষা করুন -> 中文版

ত্রুটি বার্তা

এনভিএমএল: ড্রাইভার / লাইব্রেরি সংস্করণ মিলছে না

আমাদের বলুন এনভিডিয়া ড্রাইভার কার্নেল মডিউলটির (কেএমড) একটি ভুল সংস্করণ রয়েছে, সুতরাং আমাদের এই ড্রাইভারটি আনলোড করা উচিত এবং তারপরে কেএমডের সঠিক সংস্করণটি লোড করা উচিত

কিভাবে যে কি ?

প্রথমত, আমাদের জানা উচিত কোন ড্রাইভারগুলি বোঝা।

lsmod | গ্রেপ এনভিডিয়া

আপনি পেতে পারেন

nvidia_uvm            634880  8
nvidia_drm             53248  0
nvidia_modeset        790528  1 nvidia_drm
nvidia              12312576  86 nvidia_modeset,nvidia_uvm

আমাদের চূড়ান্ত লক্ষ্যটি nvidiaমোড আনলোড করা , সুতরাং আমাদের মডিউলটি নির্ভর করে আনলোড করা উচিতnvidia

সুডো আরএমএমড এনভিডিয়া_ডিআরএম
সুডো আরএমএমড এনভিডিয়া_মোডেটস
সুডো আরএমমড এনভিডিয়া_উভম

তারপরে, আনলোড করুন nvidia

sudo rmmod nvidia

সমস্যা সমাধান

যদি আপনার মতো ত্রুটি পাওয়া যায় rmmod: ERROR: Module nvidia is in use, যা কার্নেল মডিউলটি ব্যবহার করছে তা নির্দেশ করে, আপনার কেএমড ব্যবহার করে প্রক্রিয়াটি মেরে ফেলা উচিত:

সুডো এলএসফ / দেব / এনভিডিয়া *

এবং তারপরে এই প্রক্রিয়াটি মেরে ফেলুন, তারপরে কেমডগুলি আনলোড করা চালিয়ে যান

পরীক্ষা

নিশ্চিত করুন যে আপনি সফলভাবে এই কমডগুলি আনলোড করেছেন

lsmod | গ্রেপ এনভিডিয়া

আপনার কিছুই পাওয়া উচিত নয়, তারপরে আপনি সঠিক ড্রাইভারটি লোড করতে পারবেন তা নিশ্চিত করুন

NVIDIA-SMI

আপনার সঠিক আউটপুট পাওয়া উচিত


3
@ সুরজ এটি কেবল লিঙ্কযুক্ত নয়। উত্তর ভাল লেখা আছে। একমাত্র বিষয়টি হ'ল তিনি তার অনুমোদিততা প্রকাশ করেন নি এবং আপনি তা করেছেন।
সাগর ভি

2
@ কিরালিক্রাফ্ট ভুলটি আর ডিস্কে নেই, তবে এখনও স্মৃতিতে রয়েছে। এনভিডিয়া-এসমি কেবল আমার মনে হয় একটি নতুন লোডিং পদ্ধতিটি ট্রিগার করে।
Comzyh

1
উজ্জ্বল! সমস্যাটির কারণেই এটি কোনও ধারণা ছিল না। সুতরাং একই কাজ কি রিবুট?
23:48 এ্লিশ

1
@ এলিস স্পষ্টতই, পুনরায় বুট করা সমস্ত মডিউলটি আনলোড এবং পুনরায় লোড করবে।
Comzyh

1
কাজ করেছে কিন্তু রিবুট করার ফলে সমস্যা আবার ফিরে আসে .. এবং আমার রেজোলিউশনটিও ঠিক নয়। এটি মোটেও পরিষ্কার ইনস্টলেশন নয় ..
কেভিন তিনি

14

সুতরাং আমার এই সমস্যাটি ছিল, অন্যান্য প্রতিকারগুলির কোনওটিই কাজ করে না। ত্রুটি বার্তাটি অস্বচ্ছ ছিল, কিন্তু ডেমসাগ পরীক্ষা করা কী ছিল:

[   10.118255] NVRM: API mismatch: the client has the version 410.79, but
           NVRM: this kernel module has the version 384.130.  Please
           NVRM: make sure that this kernel module and all NVIDIA driver
           NVRM: components have the same version.

তবে আমি 384 সংস্করণ পুরোপুরি সরিয়ে ফেলেছি এবং অবশিষ্ট কোনও কার্নেল ড্রাইভারকে সরিয়ে ফেলেছি nvidia-384*। পুনরায় বুট করার পরেও আমি এটি পেয়ে যাচ্ছিলাম। এটি দেখার অর্থ হ'ল কার্নেলটি এখনও 384 রেফারেন্সে সংকলিত ছিল তবে কেবল এটি 410 খুঁজে পেয়েছিল So তাই আমি আমার কার্নেলটি পুনরায় সংকলন করেছি:

# uname -a # find the kernel it's using
Linux blah 4.13.0-43-generic #48~16.04.1-Ubuntu SMP Thu May 17 12:56:46 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux
# update-initramfs -c -k 4.13.0-43-generic #recompile it
# reboot

এবং তারপর এটি কাজ করে।

384 অপসারণের পরেও আমার এখনও 384 টি ফাইল এতে ছিল: /var/lib/dkms/nvidia-XXX/XXX.YY/4.13.0-43-generic/x86_64/module /lib/modules/4.13.0-43- generic/ কার্নেল / ড্রাইভার

আমি locateপ্রতিবার ফাইল সিস্টেম অনুসন্ধান করার চেয়ে কমান্ডটি (ডিফল্টরূপে ইনস্টল করা হয়নি) ব্যবহার করার পরামর্শ দিচ্ছি ।


অনেক ধন্যবাদ! এটি ব্যবহার করা ভাল ধারণা locate nvidia-smi। আমি কমান্ডটি ব্যবহার করে বুঝতে পারলাম যে অন্য ড্রাইভার ইনস্টল হয়েছে।
হাও

sudo update-initramfs -c -k uname -rআমাকে সাহায্য করেনি ।
mrgloom

dmesgআউটপুট:NVRM: API mismatch: the client has the version 418.67, but NVRM: this kernel module has the version 430.26. Please NVRM: make sure that this kernel module and all NVIDIA driver NVRM: components have the same version.
mrgloom

9

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

এনভিএমএল সূচনা করতে ব্যর্থ: ড্রাইভার / গ্রন্থাগার সংস্করণ মিল নেই

এই সমস্যাটি সমাধান করার জন্য কেবল নিম্নলিখিত দুটি কমান্ডের মধ্যে একটি কার্যকর করতে হবে।

sudo apt-get --purge remove "*nvidia*"
sudo /usr/bin/nvidia-uninstall

বাশ: / ইউএসআর / বিন / এনভিডিয়া-আনইনস্টল: এ জাতীয় কোনও ফাইল বা ডিরেক্টরি নেই
স্টেপান ইয়াকোভেনকো

এটা কাজ করে। কখনও কখনও আনইনস্টল ফাইল উপস্থিত থাকে না।
কিনশেং ঝাং

8

আমি failed to initialize NVML: Driver/Library version mismatchআমার এনভিডিয়া-জিপিইউ-তাপমাত্রা-সূচক থেকে ত্রুটি পেয়েছি । এবং এনভিডিয়া-এসমি কোনও তথ্য মুদ্রণ করতে ব্যর্থ হয়েছে। আমি আমার উবুন্টুতে এনভিডিয়া ড্রাইভারের অন্যান্য সংস্করণ ইনস্টল করা আছে কিনা তা চেষ্টা করার চেষ্টা করেছি। তবে আমি সবেমাত্র এনভিডিয়া-ড্রাইভার -৯৯০ পেয়েছি। শেষ পর্যন্ত, rebootআমাকে সমস্যা সমাধানে সহায়তা করেছে।


5

এটি আমার সাথে উবুন্টু 16.04-এ nvidia-348প্যাকেজটি ব্যবহার করে (উবুন্টু 16.04 এর সর্বশেষ এনভিডিয়া সংস্করণ) ব্যবহার করে।

তবে আমি মালিকানাধীন জিপিইউ ড্রাইভার পিপিএরnvidia-390 মাধ্যমে ইনস্টল করে সমস্যার সমাধান করতে পারি ।

সুতরাং উবুন্টু ১.0.০৪-তে বর্ণিত সমস্যার সমাধান এটি করছে:

  • sudo add-apt-repository ppa:graphics-drivers/ppa
  • sudo apt-get update
  • sudo apt-get install nvidia-390

দ্রষ্টব্য: এই গাইডটি একটি পরিষ্কার উবুন্টু ইনস্টল অনুমান করে। আপনি যদি পূর্ববর্তী ড্রাইভারগুলি ইনস্টল করেন তবে সমস্ত কার্নেল মডিউলগুলি পুনরায় লোড করার জন্য একটি রিবুট মাই প্রয়োজন।


1
এটি এবং পুনঃসূচনাটি এটি আমার জন্য করেছিল!
সাইবট

1

বিষয়টিও ছিল। (আমি উবুন্টু 18.04 চালাচ্ছি)

আমি কি করেছিলাম:

dpkg -l | grep -i nvidia

তারপরে sudo apt-get remove --purge nvidia-381(এবং প্রতিটি সদৃশ সংস্করণ, আমার ক্ষেত্রে আমার 381, 384 এবং 387 ছিল)

তারপরে sudo ubuntu-drivers devicesযা উপলব্ধ রয়েছে তার তালিকা করতে

এবং আমি নির্বাচন sudo apt install nvidia-driver-430

তারপর, nvidia-smi সঠিক আউটপুট দিয়েছে (পুনরায় বুট করার দরকার নেই)। তবে আমি মনে করি সন্দেহ হলে আপনি পুনরায় বুট করতে পারেন।

চুদা + চুডন পুনরায় ইনস্টল করতে আমি এই ইনস্টলেশনটি অনুসরণ করেছি।


কেন জানি এটি চিহ্নিত করা হয়নি (-1)। আমি এটিকে 0 এ বাড়িয়ে দিয়েছি "dpkg -l | grep -i nvidia" কমান্ডটি বৈধ এবং কী মুছে ফেলা হয়েছে তা দেখায়।
gerardg

1

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

sudo yum remove nvidia-driver-*
sudo reboot
sudo yum install nvidia-driver-cuda nvidia-modprobe
sudo modprobe nvidia # or just reboot

এটি নিশ্চিত করেছে যে আমার কার্নেল এবং আমার এনভিডিয়া ড্রাইভারটি সামঞ্জস্যপূর্ণ। আমি মনে করি যে কেবল রিবুট করার ফলে কার্নেল মডিউলটি লোড হওয়ার ভুল সংস্করণ হতে পারে।


মোহন মত কাজ!
সর্বোচ্চ

1

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

sudo apt-get --purge " nvidia " সরান

"libtinfo6: i386" এর মতো প্যাকেজগুলি সরানো হয় না

আমি উবুন্টু 20.04 এবং এনভিডিয়া-ড্রাইভার -440 ব্যবহার করছি তার জন্য আপনাকে চিত্রের নীচে দেখানো সমস্ত প্যাকেজ সরিয়ে ফেলতে হবে

অপসারণ করতে হবে এমন সমস্ত প্যাকেজের তালিকা:

চিত্র

ছবিতে প্রদর্শিত হিসাবে, নিশ্চিত হয়ে নিন যে আপনি যে প্যাকেজটি ইনস্টল করছেন সেটি এনভিডিয়া-ড্রাইভার -440 এর জন্য 207 মেগাবাইটের সঠিক আকারের, যদি এটির কম হয় তবে এর অর্থ আপনি সমস্ত প্যাকেজ সরিয়ে নেই।


0

আমি এনভিডিয়া ড্রাইভার পুনরায় ইনস্টল করেছি: এই কমান্ডগুলি rootমোডে চালাও :

  1. systemctl isolate multi-user.target

  2. modprobe -r nvidia-drm

  3. এনভিডিয়া ড্রাইভার পুনরায় ইনস্টল করুন: chmod +x NVIDIA-Linux-x86_64–410.57.run

  4. systemctl start graphical.target

এবং অবশেষে চেক nvidia-smi

ধন্যবাদ: উবুন্টু -16.04 / 18.04 এ আরটিএক্স 2080 টি জিপিইউ-র জন্য এনভিডিয়া ড্রাইভার এবং সিইডিএ-10.0 কীভাবে ইনস্টল করবেন?

কীভাবে কার্নেল মডিউল 'এনভিডিয়া-ড্রিম' আনলোড করবেন?


-1

আমি ধারকটিকে একটি ডকার ইমেজে প্রতিশ্রুতিবদ্ধ করেছি। তারপরে আমি এই ডকার ইমেজটি ব্যবহার করে অন্য একটি ধারক পুনরায় তৈরি করি এবং সমস্যাটি চলে যায়।


-1

এই উত্তরগুলি আমার পক্ষে কার্যকর হয়নি:

https://stackoverflow.com/a/43023000/1179925

https://stackoverflow.com/a/45319156/1179925

https://stackoverflow.com/a/54349675/1179925

dmesg

NVRM: API mismatch: the client has the version 418.67, but
NVRM: this kernel module has the version 430.26.  Please
NVRM: make sure that this kernel module and all NVIDIA driver
NVRM: components have the same version.

পুরানো ড্রাইভার আনইনস্টল করুন 418.67এবং নতুন ড্রাইভার ইনস্টল করুন 430.26(ডাউনলোড NVIDIA-Linux-x86_64-430.26.run):

sudo apt-get --purge remove "*nvidia*"
sudo /usr/bin/nvidia-uninstall
chmod +x NVIDIA-Linux-x86_64-430.26.run
sudo ./NVIDIA-Linux-x86_64-430.26.run
[ignore abort]

cat /proc/driver/nvidia/version

NVRM version: NVIDIA UNIX x86_64 Kernel Module  430.26  Tue Jun  4 17:40:52 CDT 2019
GCC version:  gcc version 7.4.0 (Ubuntu 7.4.0-1ubuntu1~18.04.1)

-1

পুনরায় বুট করার। যদি সমস্যাটি এখনও বিদ্যমান থাকে:

sudo rmmod nvidia_drm
sudo rmmod nvidia_modeset
sudo rmmod nvidia
nvidia-smi

সেন্ট / রেল জন্য

cd /boot
mv initramfs-$(uname -r).img /boot/initramfs-$(uname -r).img.bak
dracut -vf initramfs-$(uname -r).img $(uname -r)

তারপর

reboot

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.