mikrocontroller.net

Forum: PC-Programmierung Wie PCIe-Bus-Scan nach Grafikkarten?


Autor: Ben B. (Firma: Funkenflug Industries) (stromkraft)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi!

Vielleicht weiß jemand wie das geht...

Ich brauche ein Programm was erkennt, auf welchen PCIe-Anschlüssen eines 
Mainboards oder Lanes eine Grafikkarte dranhängt und wo nicht. Evtl. 
würde auch "belegt" oder "nicht belegt" reichen. Eine nähere 
Identifizierung nach Geräte-Typ wäre klasse, aber es müßte auch ohne 
gehen.

Hat hier jemand schon mal sowas in diese Richtung programmiert oder 
kennt eine Möglichkeit, wie man das hinbekommt?

Danke!

Autor: Frank K. (fchk)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Für das, was DU willst, gibt es keine API.

Ein PCI-Device (das schließt PCIe ein) wird vom Betriebssystem 
identifiziert durch:
- Busnummer
- Vendor ID
- Device ID
- Funktionsnummer

Mehr bekommst Du nicht. Alles andere ist in höchstem Maße 
gerätespezifisch, und normalerweise interessiert das auch nicht.

fchk

Autor: thomil (Gast)
Datum:

Bewertung
3 lesenswert
nicht lesenswert
lspci?

Autor: Georg A. (georga)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Da gibts doch noch den Classcode im Configspace. Ethernet controller, 
bridge, VGA compatible controller, ...

http://wiki.osdev.org/PCI#Class_Codes

Autor: Ben B. (Firma: Funkenflug Industries) (stromkraft)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> Ein PCI-Device (das schließt PCIe ein) wird vom
> Betriebssystem identifiziert durch:
> - Busnummer
> - Vendor ID
> - Device ID
> - Funktionsnummer
Das reicht doch völlig.
Wie komme ich an diese Liste dran?

Autor: Clemens L. (c_l)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Welches Betriebssystem?

Autor: Ben B. (Firma: Funkenflug Industries) (stromkraft)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Am liebsten Windows, aber von mir aus auch was beliebiges per USB-Boot.

Autor: Ich (Gast)
Datum:

Bewertung
1 lesenswert
nicht lesenswert

Autor: Ich (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
und dann so:
devcon find pci\*

Autor: Gerd E. (robberknight)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Bei moderneren Boards und besseren BIOSsen, sind die physischen 
Steckplätze und ihre Belegung in den DMI-Daten aufgeschlüsselt.

Unter Linux also einfach mal dmidecode aufrufen und schauen was da 
rauskommt. Wie das unter Windows geht musst Du selbst schauen.

Autor: georg (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ben B. schrieb:
> Ich brauche ein Programm was erkennt, auf welchen PCIe-Anschlüssen eines
> Mainboards oder Lanes eine Grafikkarte dranhängt

Soweit kein Problem, aber woher weisst du, welche Nr. ein bestimmter 
Steckplatz auf dem Motherboard hat? Oder interessiert das garnicht?

Georg

Autor: Ben B. (Firma: Funkenflug Industries) (stromkraft)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Das könnte man experimentell feststellen.

Es geht um die Diagnose von Mining-Rigs. 8 oder 13 Karten an einem Board 
und manchmal wird eine oder mehrere Grafikkarten nicht gefunden. Dann 
sucht man sich einen Wolf, welche Karte fehlt.

Autor: Timmo H. (masterfx)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Willst du einfach nur ein Programm haben um zu gucken? Dann reicht ggf. 
schon HWinfo64.

Ansonsten kann man sich da recht einfach via SetupDiEnumDeviceInfo, 
SetupDiGetDeviceRegistryProperty etc. recht gut durchhangeln

Autor: Ben B. (Firma: Funkenflug Industries) (stromkraft)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Danke, ich schaue mir HWinfo mal an.

Schön wäre, wenn man mit einfachen Mitteln ein Programm erstellen 
könnte, das beim Start ausgibt auf welchen PCI-Steckplätzen bzw. Bus-IDs 
eine Grafikkarte (oder einfach: ein Gerät) gefunden wurde (und auf 
welchen nicht). Das würde die Fehlersuche in diesen Geräten sehr 
vereinfachen. Ich hab sowas leider noch nie gemacht, mir war die 
Zuordnung immer egal und eine Grafikkarte wird schon da sein. Ich hab 
auch noch keine große Grafikprogrammierung gemacht, deswegen fällt mir 
diese Problemlösung schwer.

Autor: Christian R. (supachris)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Für Windows gäbe es da noch http://www.pcitree.de/

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.