உங்கள் Proxmox VE சேவையகத்தில் NVIDIA GPU நிறுவப்பட்டிருந்தால், அதை Proxmox VE LXC கண்டெய்னருக்கு அனுப்பலாம் மற்றும் CUDA/AI முடுக்கத்திற்காக (அதாவது TensorFlow, PyTorch) கொள்கலனில் பயன்படுத்தலாம். நிறுவப்பட்ட ப்ளெக்ஸ் மீடியா சர்வர் அல்லது நெக்ஸ்ட் கிளவுட் (உதாரணமாக) மூலம் ப்ராக்ஸ்மாக்ஸ் விஇ எல்எக்ஸ்சி கண்டெய்னரில் மீடியா டிரான்ஸ்கோடிங், வீடியோ ஸ்ட்ரீமிங் போன்றவற்றுக்கு என்விடியா ஜிபியுவைப் பயன்படுத்தலாம்.
இந்தக் கட்டுரையில், என்விடியா ஜிபியூவை ப்ராக்ஸ்மாக்ஸ் விஇ 8 எல்எக்ஸ்சி கண்டெய்னருக்கு அனுப்புவது எப்படி என்பதை நாங்கள் உங்களுக்குக் காண்பிப்போம், இதன் மூலம் நீங்கள் அதை CUDA/AI முடுக்கம், மீடியா டிரான்ஸ்கோடிங் அல்லது NVIDIA GPU தேவைப்படும் பிற பணிகளுக்குப் பயன்படுத்தலாம்.
உள்ளடக்கத்தின் தலைப்பு:
Proxmox VE 8 இல் NVIDIA GPU இயக்கிகளை நிறுவுதல்
என்விடியா ஜிபியூவை ப்ராக்ஸ்மாக்ஸ் விஇ எல்எக்ஸ்சி கண்டெய்னருக்கு அனுப்ப, உங்கள் ப்ராக்ஸ்மாக்ஸ் விஇ 8 சர்வரில் என்விடியா ஜிபியு டிரைவர்களை நிறுவியிருக்க வேண்டும். உங்கள் Proxmox VE 8 சேவையகத்தில் அதிகாரப்பூர்வ NVIDIA GPU இயக்கிகளின் சமீபத்திய பதிப்பை நிறுவ உங்களுக்கு ஏதேனும் உதவி தேவைப்பட்டால், இந்தக் கட்டுரையைப் படியுங்கள் .
NVIDIA GPU கர்னல் தொகுதிகள் தானாகவே Proxmox VE 8 இல் ஏற்றப்படுவதை உறுதி செய்தல்
உங்கள் Proxmox VE 8 சேவையகத்தில் NVIDIA GPU இயக்கிகள் நிறுவப்பட்டதும், துவக்க நேரத்தில் NVIDIA GPU கர்னல் தொகுதிகள் தானாக ஏற்றப்படுவதை உறுதிசெய்ய வேண்டும்.
முதலில், “/etc/modules-load.d/” கோப்பகத்தில் “nvidia.conf” போன்ற புதிய கோப்பை உருவாக்கி, அதை நானோ உரை திருத்தி மூலம் திறக்கவும்.
$ நானோ / முதலியன / modules-load.d / nvidia.conf
பின்வரும் வரிகளைச் சேர்த்து அழுத்தவும்
என்விடியா
nvidia_uvm
மாற்றங்கள் நடைமுறைக்கு வர, 'initramfs' கோப்பை பின்வரும் கட்டளையுடன் புதுப்பிக்கவும்:
$ update-initramfs -இல்
சில காரணங்களால், “/dev/” கோப்பகத்தில் தேவையான NVIDIA GPU சாதனக் கோப்புகளை Proxmox VE 8 உருவாக்கவில்லை. அந்த சாதனக் கோப்புகள் இல்லாமல், Promox VE 8 LXC கொள்கலன்களால் NVIDIA GPU ஐப் பயன்படுத்த முடியாது.
துவக்க நேரத்தில் “/dev/” கோப்பகத்தில் NVIDIA GPU சாதனக் கோப்புகளை Proxmox VE 8 உருவாக்குகிறது என்பதை உறுதிசெய்ய, “/etc/udev/rules.d/” இல் “70-nvidia.rules” ஒரு udev விதிகள் கோப்பை உருவாக்கவும். கோப்பகத்தை நானோ உரை திருத்தி மூலம் பின்வருமாறு திறக்கவும்:
$ நானோ / முதலியன / udev / விதிகள்.டி / 70 -nvidia.rules
“70-nvidia.rules” கோப்பில் பின்வரும் வரிகளைத் தட்டச்சு செய்து அழுத்தவும்
கர்னல் == 'என்விடியா' , RUN+= '/bin/bash -c '/usr/bin/nvidia-smi -L && /bin/chmod 0666 /dev/nvidia*''
கர்னல் == 'nvidia_uvm' , RUN+= '/bin/bash -c '/usr/bin/nvidia-modtest -c0 -u && /bin/chmod 0666 /dev/nvidia-uvm*''
மாற்றங்கள் நடைமுறைக்கு வர, உங்கள் Proxmox VE 8 சேவையகத்தை பின்வருமாறு மீண்டும் துவக்கவும்:
$ மறுதொடக்கம்
உங்கள் Proxmox VE 8 சேவையகம் துவங்கியதும், NVIDIA கர்னல் தொகுதிகள் தானாக ஏற்றப்படும், பின்வரும் ஸ்கிரீன்ஷாட்டில் நீங்கள் பார்க்க முடியும்:
$ lsmod | பிடியில் என்விடியா
தேவையான NVIDIA சாதனக் கோப்புகள் உங்கள் Proxmox VE 8 சேவையகத்தின் “/dev” கோப்பகத்திலும் நிரப்பப்பட்டிருக்க வேண்டும். NVIDIA சாதனக் கோப்புகளின் CGroup ஐடிகளைக் கவனியுங்கள். உங்கள் Proxmox VE 8 சேவையகத்திலிருந்து NVIDIA GPUகளை நீங்கள் கடக்க விரும்பும் LXC கண்டெய்னரில் அந்த CGroup ஐடிகளை அனுமதிக்க வேண்டும். எங்கள் விஷயத்தில், CGroup ஐடிகள் 195, 237 மற்றும் 226 ஆகும்.
$ ls -lh / dev / என்விடியா *$ ls -lh / dev / dri
NVIDIA GPU பாஸ்த்ரூவுக்காக Proxmox VE 8 LXC கொள்கலனை உருவாக்குதல்
இந்த கட்டுரையில் உபுண்டு 22.04 LTS Proxmox VE 8 LXC கண்டெய்னரைப் பயன்படுத்தினோம், ஏனெனில் NVIDIA CUDA மற்றும் NVIDIA cuDNN நூலகங்கள் Ubuntu 22.04 LTS இல் Ubuntu தொகுப்புக் களஞ்சியங்களில் இருந்து எளிதாக நிறுவ முடியும், மேலும் இது NVIDIA செயலியில் செயல்படுகிறதா என்பதைச் சோதிப்பது எளிது. . நீங்கள் விரும்பினால், மற்ற லினக்ஸ் விநியோகங்களையும் பயன்படுத்தலாம். அப்படியானால், NVIDIA CUDA மற்றும் NVIDIA cuDNN நிறுவல் கட்டளைகள் மாறுபடும். நீங்கள் விரும்பும் லினக்ஸ் விநியோகத்திற்கான NVIDIA CUDA மற்றும் NVIDIA cuDNN நிறுவல் வழிமுறைகளைப் பின்பற்றுவதை உறுதிசெய்யவும்.
Proxmox VE 8 LXC கொள்கலனை உருவாக்குவதில் உங்களுக்கு ஏதேனும் உதவி தேவைப்பட்டால், இந்தக் கட்டுரையைப் படியுங்கள் .
Promox VE 8 இல் NVIDIA GPU பாஸ்த்ரூவுக்காக LXC கண்டெய்னரை உள்ளமைத்தல்
NVIDIA GPU பாஸ்த்ரூவுக்காக LXC கண்டெய்னரை (கன்டெய்னர் 102 என்று வைத்துக்கொள்வோம்) கட்டமைக்க, ப்ராக்ஸ்மாக்ஸ் VE ஷெல்லில் இருந்து LXC கண்டெய்னர் உள்ளமைவு கோப்பை நானோ டெக்ஸ்ட் எடிட்டருடன் பின்வருமாறு திறக்கவும்:
$ நானோ / முதலியன / pve / lxc / 102 .conf
LXC கொள்கலன் உள்ளமைவு கோப்பின் முடிவில் பின்வரும் வரிகளை உள்ளிடவும்:
lxc.cgroup.devices.allow: c 195 : * rwmlxc.cgroup.devices.allow: c 237 : * rwm
lxc.cgroup.devices.allow: c 226 : * rwm
lxc.mount.entry: / dev / nvidia0 dev / nvidia0 எதுவும் இல்லை கட்டுதல் ,விரும்பினால், உருவாக்க = கோப்பு
lxc.mount.entry: / dev / nvidiactl தேவ / nvidiactl எதுவும் இல்லை கட்டுதல் ,விரும்பினால், உருவாக்க = கோப்பு
lxc.mount.entry: / dev / nvidia-modeset dev / nvidia-modeset இல்லை கட்டுதல் ,விரும்பினால், உருவாக்க = கோப்பு
lxc.mount.entry: / dev / nvidia-uvm தேவ / nvidia-uvm எதுவும் இல்லை கட்டுதல் ,விரும்பினால், உருவாக்க = கோப்பு
lxc.mount.entry: / dev / nvidia-uvm-tools dev / nvidia-uvm-tools எதுவும் இல்லை கட்டுதல் ,விரும்பினால், உருவாக்க = கோப்பு
lxc.mount.entry: / dev / dri தேவ / dri எதுவும் இல்லை கட்டுதல் ,விரும்பினால், உருவாக்க = நீ
LXC கண்டெய்னர் உள்ளமைவு கோப்பின் “lxc.cgroup.devices.allow” வரிகளில் உள்ள CGroup ஐடிகளை மாற்றுவதை உறுதிசெய்யவும். நீங்கள் முடித்ததும், அழுத்தவும்
இப்போது, Proxmox VE 8 டாஷ்போர்டிலிருந்து LXC கொள்கலனைத் தொடங்கவும்.
NVIDIA GPU பாஸ்த்ரூ வெற்றிகரமாக இருந்தால், LXC கண்டெய்னர் எந்தப் பிழையும் இல்லாமல் தொடங்கும், மேலும் NVIDIA சாதனக் கோப்புகளை கண்டெய்னரின் “/dev” கோப்பகத்தில் பார்க்க வேண்டும்.
$ ls -lh / dev / என்விடியா *$ ls -lh / dev / dri
Proxmox VE 8 LXC கொள்கலனில் NVIDIA GPU இயக்கிகளை நிறுவுதல்
நாங்கள் உபுண்டு 22.04 LTS LXC கண்டெய்னரை எங்கள் Proxmox VE 8 சேவையகத்தில் ஆர்ப்பாட்டத்திற்காகப் பயன்படுத்துகிறோம். நீங்கள் எல்எக்ஸ்சி கண்டெய்னரில் மற்றொரு லினக்ஸ் விநியோகத்தைப் பயன்படுத்துகிறீர்கள் என்றால், உங்கள் கட்டளைகள் எங்களிடமிருந்து சற்று மாறுபடும். எனவே, கன்டெய்னரில் நீங்கள் பயன்படுத்தும் லினக்ஸ் விநியோகத்தைப் பொறுத்து கட்டளைகளை சரிசெய்வதை உறுதிசெய்யவும்.
'nvidia-smi' கட்டளையுடன் உங்கள் Proxmox VE 8 சேவையகத்தில் நீங்கள் நிறுவிய NVIDIA GPU இயக்கிகள் பதிப்பைக் காணலாம். நீங்கள் பார்ப்பது போல், எங்களின் Proxmox VE 8 சேவையகத்தில் NVIDIA GPU இயக்கிகள் பதிப்பு 535.146.02 நிறுவப்பட்டுள்ளது. எனவே, எங்கள் LXC கண்டெய்னரிலும் NVIDIA GPU இயக்கிகள் பதிப்பு 535.146.02 ஐ நிறுவ வேண்டும்.
$ என்விடியா-ஸ்மி
முதலில், LXC கொள்கலனில் CURL ஐ பின்வருமாறு நிறுவவும்:
$ பொருத்தமான மேம்படுத்தல் && பொருத்தமான நிறுவு சுருட்டை -மற்றும்
LXC கொள்கலனில் CURL நிறுவப்பட வேண்டும்.
NVIDIA GPU இயக்கிகள் பதிப்பு 535.146.02ஐ நிறுவ (சொல்லலாம்), NVIDIA_VERSION சூழல் மாறியை ஏற்றுமதி செய்து, NVIDIA GPU இயக்கிகள் நிறுவி கோப்பின் தேவையான பதிப்பைப் பதிவிறக்க, CURL கட்டளையை (கன்டெய்னரில்) இயக்கவும்.
$ ஏற்றுமதி NVIDIA_VERSION = '535.146.02'$ சுருட்டை -ஓ 'https://us.download.nvidia.com/XFree86/Linux-x86_64/ ${NVIDIA_VERSION} /NVIDIA-Linux-x86_64- ${NVIDIA_VERSION} .ஓடு'
NVIDIA GPU இயக்கிகள் நிறுவி கோப்பின் சரியான பதிப்பு LXC கொள்கலனில் பதிவிறக்கம் செய்யப்பட வேண்டும், பின்வரும் ஸ்கிரீன்ஷாட்டில் நீங்கள் காணலாம்:
இப்போது, கண்டெய்னரில் உள்ள NVIDIA GPU இயக்கிகள் நிறுவி கோப்பில் பின்வருமாறு இயங்கக்கூடிய அனுமதியைச் சேர்க்கவும்:
$ chmod +x என்விடியா-லினக்ஸ்-x86_64-535.146.02.ரன்கண்டெய்னரில் NVIDIA GPU இயக்கிகளை நிறுவ, '-no-kernel-module' மூலம் NVIDIA GPU இயக்கிகள் நிறுவி கோப்பை இயக்கவும். விருப்பம் பின்வருமாறு:
$ . / NVIDIA-Linux-x86_64-535.146.02.ரன் --no-kernel-moduleஇந்த விருப்பத்தைப் பார்த்தவுடன், 'சரி' என்பதைத் தேர்ந்தெடுத்து அழுத்தவும் <உள்ளிடவும்> .
'சரி' என்பதைத் தேர்ந்தெடுத்து அழுத்தவும் <உள்ளிடவும்> .
'ஆம்' என்பதைத் தேர்ந்தெடுத்து அழுத்தவும் <உள்ளிடவும்> .
'சரி' என்பதைத் தேர்ந்தெடுத்து அழுத்தவும் <உள்ளிடவும்> .
NVIDIA GPU இயக்கிகள் LXC கண்டெய்னரில் நிறுவப்படுகின்றன. முடிக்க சில வினாடிகள் ஆகும்.
இந்த கட்டளையைப் பார்த்ததும், 'ஆம்' என்பதைத் தேர்ந்தெடுத்து அழுத்தவும் <உள்ளிடவும்> .
'சரி' என்பதைத் தேர்ந்தெடுத்து அழுத்தவும் <உள்ளிடவும்> . NVIDIA GPU இயக்கிகள் LXC கொள்கலனில் நிறுவப்பட்டிருக்க வேண்டும்.
NVIDIA GPU இயக்கிகள் நிறுவப்பட்டு செயல்படுகின்றனவா என்பதை உறுதிப்படுத்த, LXC கண்டெய்னரில் “nvidia-smi” கட்டளையை இயக்கவும். நீங்கள் பார்ப்பது போல், NVIDIA GPU இயக்கி பதிப்பு 535.146.02 (Proxmox VE 8 சர்வரில் நிறுவப்பட்ட அதே பதிப்பு) LXC கண்டெய்னரில் நிறுவப்பட்டுள்ளது, மேலும் அது எங்கள் NVIDIA RTX 4070 GPUஐ சரியாகக் கண்டறிந்தது.
$ என்விடியா-ஸ்மி
Proxmox VE 8 LXC கொள்கலனில் NVIDIA CUDA மற்றும் cuDNN ஐ நிறுவுதல்
நாங்கள் உபுண்டு 22.04 LTS LXC கண்டெய்னரை எங்கள் Proxmox VE 8 சேவையகத்தில் ஆர்ப்பாட்டத்திற்காகப் பயன்படுத்துகிறோம். நீங்கள் எல்எக்ஸ்சி கண்டெய்னரில் மற்றொரு லினக்ஸ் விநியோகத்தைப் பயன்படுத்துகிறீர்கள் என்றால், உங்கள் கட்டளைகள் எங்களிடமிருந்து சற்று மாறுபடும். எனவே, கன்டெய்னரில் நீங்கள் பயன்படுத்தும் லினக்ஸ் விநியோகத்தைப் பொறுத்து கட்டளைகளை சரிசெய்வதை உறுதிசெய்யவும்.
உபுண்டு 22.04 LTS Proxmox VE 8 கொள்கலனில் NVIDIA CUDA மற்றும் cuDNN ஐ நிறுவ, கொள்கலனில் பின்வரும் கட்டளையை இயக்கவும்:
$ பொருத்தமான நிறுவு பில்ட்-எசென்ஷியல் என்விடியா-குடா-டூல்கிட் என்விடியா-குட்என்நிறுவலை உறுதிப்படுத்த, 'Y' ஐ அழுத்தி பின்னர் அழுத்தவும் <உள்ளிடவும்> .
தேவையான தொகுப்புகள் பதிவிறக்கம் செய்யப்பட்டு நிறுவப்படுகின்றன. முடிக்க சிறிது நேரம் ஆகும்.
இந்த சாளரத்தை நீங்கள் பார்த்தவுடன், 'சரி' என்பதைத் தேர்ந்தெடுத்து அழுத்தவும் <உள்ளிடவும்> .
'நான் ஒப்புக்கொள்கிறேன்' என்பதைத் தேர்ந்தெடுத்து அழுத்தவும் <உள்ளிடவும்> .
நிறுவல் தொடர வேண்டும்.
நிறுவி NVIDIA இலிருந்து NVIDIA cuDNN நூலகக் காப்பகத்தைப் பதிவிறக்குகிறது. இது ஒரு பெரிய கோப்பு, எனவே அதை முடிக்க நீண்ட நேரம் எடுக்கும்.
NVIDIA cuDNN நூலகக் காப்பகம் பதிவிறக்கம் செய்யப்பட்டவுடன், நிறுவல் வழக்கம் போல் தொடர வேண்டும்.
இந்த கட்டத்தில், உபுண்டு 22.04 LTS Proxmox VE 8 LXC கொள்கலனில் NVIDIA CUDA மற்றும் cuDNN நிறுவப்பட வேண்டும்.
Proxmox VE 8 LXC கொள்கலனில் NVIDIA CUDA முடுக்கம் வேலை செய்கிறதா என்பதைச் சரிபார்க்கிறது
NVIDIA CUDA சரியாக நிறுவப்பட்டுள்ளதா என்பதைச் சரிபார்க்க, Proxmox VE 8 கண்டெய்னரில் “nvcc” கட்டளை பின்வருமாறு உள்ளதா எனச் சரிபார்க்கவும்:
$ என்விசிசி --பதிப்புநீங்கள் பார்க்க முடியும் என, எங்களின் Proxmox VE 8 கொள்கலனில் NVIDIA CUDA 11.5 நிறுவப்பட்டுள்ளது.
இப்போது, ஒரு எளிய CUDA C நிரலை எழுதலாம், தொகுக்கலாம் மற்றும் இயக்கலாம் மற்றும் எல்லாம் எதிர்பார்த்தபடி செயல்படுகிறதா என்று பார்க்கலாம்.
முதலில், கோப்புகளை ஒழுங்கமைக்க Proxmox VE 8 கண்டெய்னரில் “~/குறியீடு” திட்டக் கோப்பகத்தை உருவாக்கவும்.
$ mkdir ~ / குறியீடு'~/குறியீடு' திட்டக் கோப்பகத்திற்கு பின்வருமாறு செல்லவும்:
$ சிடி `/ குறியீடுProxmox VE 8 கண்டெய்னரின் “~/code” கோப்பகத்தில் “hello.cu” போன்ற புதிய கோப்பை உருவாக்கி, அதை நானோ உரை திருத்தி மூலம் திறக்கவும்:
$ நானோ hello.cu“hello.cu” கோப்பில் பின்வரும் குறியீடு வரிகளை உள்ளிடவும்:
#__ குளோபல்__ வெற்றிடத்தை சொல்லுங்கள் வணக்கம் ( ) {
printf ( 'GPU இலிருந்து ஹலோ வேர்ல்ட்! \n ' ) ;
}
முழு எண்ணாக ( ) {
printf ( 'CPU இலிருந்து ஹலோ வேர்ல்ட்! \n ' ) ;
வணக்கம் சொல்லுங்கள் << 1 , 1 >> ( ) ;
cudaDeviceSynchronize ( ) ;
திரும்ப 0 ;
}
நீங்கள் முடித்ததும், அழுத்தவும்
Proxmox VE 8 கண்டெய்னரில் “hello.cu” CUDA நிரலைத் தொகுக்க, பின்வரும் கட்டளைகளை இயக்கவும்:
$ nvcc hello.cu -ஓ வணக்கம்இப்போது, Proxmox VE 8 கண்டெய்னரில் “ஹலோ” CUDA திட்டத்தைப் பின்வருமாறு இயக்கலாம்:
$ . / வணக்கம்Proxmox VE 8 கொள்கலன் NVIDIA CUDA முடுக்கத்திற்கு NVIDIA GPU ஐப் பயன்படுத்தினால், நிரல் பின்வரும் ஸ்கிரீன்ஷாட்டில் காட்டப்பட்டுள்ளபடி இரண்டு வரிகளை அச்சிடும்.
Proxmox VE 8 கண்டெய்னரிலிருந்து NVIDIA GPU ஐ அணுக முடியாவிட்டால், நிரல் முதல் வரியை மட்டுமே அச்சிடும், இது 'CPU இலிருந்து ஹலோ வேர்ல்ட்!', இரண்டாவது வரி அல்ல.
முடிவுரை
இந்தக் கட்டுரையில், ப்ராக்ஸ்மாக்ஸ் விஇ 8 ஹோஸ்டிலிருந்து என்விடியா ஜிபியூவை ப்ராக்ஸ்மாக்ஸ் விஇ 8 எல்எக்ஸ்சி கண்டெய்னருக்கு எப்படிக் கடந்து செல்வது என்பதைக் காண்பித்தோம். Proxmox VE 8 கன்டெய்னரில் NVIDIA GPU இயக்கிகளின் அதே பதிப்பை Proxmox VE ஹோஸ்டாக எவ்வாறு நிறுவுவது என்பதையும் நாங்கள் உங்களுக்குக் காண்பித்தோம். இறுதியாக, உபுண்டு 22.04 LTS Proxmox VE 8 கொள்கலனில் NVIDIA CUDA மற்றும் NVIDIA cuDNN ஐ எவ்வாறு நிறுவுவது மற்றும் Proxmox VE 8 கொள்கலனில் ஒரு எளிய NVIDIA CUDA நிரலை எவ்வாறு தொகுத்து இயக்குவது என்பதை நாங்கள் உங்களுக்குக் காண்பித்தோம்.