Question

je dois écrire quelques applications sur videocard lowlevel pour mon cours contrôlant. Par exemple - température, SM travaille, la gestion de l'accès, etc. Linux OS, tesla c1060

.

Pourriez-vous me donner quelques conseils où chercher ce genre d'information?

CUDA ne fournit pas ces caractéristiques. Il doit être un travail avec dev \ nvidia * probabaly. ou pas? Je ne l'ai jamais écrit quelque chose comme ça -. Des conseils seront les bienvenus

Merci.

UPD: nvidia-settings est bon, mais ne fournit pas tout ce que je dois. Mb il y a quelques autres façons comment le faire sur le PTX de c \ cuda?

Était-ce utile?

La solution

Un couple d'options viennent à l'esprit, vous pouvez utiliser RivaTuner v2.24c de guru3d.com et / ou CPU-ID pour un peu plus d'informations. Je l'ai cependant remarqué que juste que vous utilisez Linux vous devriez donc être en mesure d'installer les derniers pilotes NVidia et exécuter nvidia-settings -h pour voir les options pour afficher la température et diverses autres informations. Bonne chance!

Autres conseils

Je sais que c'est de 2 ans en retard, mais si vous êtes à la recherche d'une option axée sur la bibliothèque API NVML de Nvidia fait tout cela. Check it out ! Heureusement, la documentation est vraiment bien fait. J'ai eu mon c ++ application polling température de mon gpu à environ une heure de jongler avec.

EDIT Voici un code pour obtenir la température de gpu. Remarque, ce code fonctionne (comme) pour un système de carte.

#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;
}

Vous pouvez écrire un programme de DirectX pour interroger les capacités de la carte, si vous êtes intéressé par les fonctions qu'il prend en charge.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top