NVIDIA BIDEOCARDS - الحصول على الإحصاء
-
24-09-2019 - |
سؤال
أحتاج إلى كتابة عدد قليل من التطبيقات حول التحكم في Videocard Lowlevel للدورات الدراسية الخاصة بي. على سبيل المثال - درجة الحرارة ، العمل SM ، إدارة الوصول إليها ، إلخ. OS Linux ، Tesla C1060.
هل يمكن أن تعطيني القليل من النصائح من أين تبحث عن هذا النوع من المعلومات؟
لا توفر CUDA هذه الميزات. يجب أن يكون بعض العمل مع dev nvidia* probabaly. أم لا؟ لم أكتب شيئًا كهذا أبدًا - أي نصائح ستكون موضع ترحيب.
شكرًا.
UPD: NVIDIA-Settings جيدة ولكن لا توفر كل ما أحتاجه. MB هل هناك بعض الطرق الأخرى كيفية القيام بذلك على PTX C CUDA؟
المحلول
بضع خيارين في الربيع ، يمكنك استخدام Rivatuner V2.24C من Guru3d.com و/أو معهد وحدة المعالجة المركزية لمزيد من المعلومات. ومع ذلك ، فقد لاحظت للتو أنك تستخدم Linux ، لذا يجب أن تكون قادرًا على تثبيت أحدث برامج تشغيل NVIDIA وتشغيلها nvidia-settings -h
لرؤية الخيارات لعرض درجة الحرارة والعديد من المعلومات الأخرى. حظا سعيدا!
نصائح أخرى
أعلم أن هذا متأخر لمدة عامين ، ولكن إذا كنت تبحث عن خيار موجه نحو المكتبة ، فإن واجهة برمجة تطبيقات NVML الخاصة بـ NVIDIA تقوم بكل هذا. تحقق من ذلك هنا! لحسن الحظ ، فإن الوثائق جيدة حقًا. لقد تلقيت تطبيق C ++ الخاص بي باستطلاع درجة حرارة GPU في حوالي ساعة من العبث بها.
تحرير هنا بعض التعليمات البرمجية للحصول على درجة حرارة GPU. ملاحظة ، يعمل هذا الرمز (كما هو) لنظام بطاقة واحد.
#include "nvml.h"
using namespace std;
Nvidia::Nvidia()
{
nvmlInit();
}
Nvidia::~Nvidia()
{
//dtor
}
unsigned int Nvidia::FetchTemp()
{
unsigned int DeviceCount;
nvmlReturn_t Rval=nvmlDeviceGetCount(&DeviceCount); //return type enum
if(Rval!=0)
{
//Card read error
return 0;
}
//Turn Count into index
DeviceCount--;
//Get Prereqs
nvmlDevice_t Device;
Rval=nvmlDeviceGetHandleByIndex(DeviceCount,&Device);
if(Rval!=0)
{
//Card read error
return 0;
}
nvmlTemperatureSensors_t TSensors=NVML_TEMPERATURE_GPU;
//Get Temperature
unsigned int Temp=0;
Rval=nvmlDeviceGetTemperature(Device,TSensors,&Temp);
if(Rval!=0)
{
//Card read error
return 0;
}
return Temp;
}
يمكنك كتابة برنامج DirectX للاستعلام عن إمكانيات البطاقة ، إذا كنت مهتمًا بالوظائف التي تدعمها.