Anzeige:
Ergebnis 1 bis 6 von 6

Thema: PThreads nutzen nur einen Kern

  1. #1
    Registrierter Benutzer
    Registriert seit
    19.04.2002
    Beiträge
    27

    PThreads nutzen nur einen Kern

    Hallo,
    ich habe nach gängigen Anleitungen mit PThreads versucht Programme zu parallelisieren. Die Threads laufen auch alle ganz toll "parallel", allerdings nutzt das Programm immer nur einen Kern. Welchen Vorteil haben PThreads dann gegenüber fork(), welches sehr teuer und umständlich zu synchronisieren ist, aber wirklich parallel läuft? Die die Context-Switches für die program counter erzeugen doch nur overhead. Mache ich irgendwas falsch?
    LINUX

  2. #2
    Administrator Avatar von anda_skoa
    Registriert seit
    17.11.2001
    Ort
    Graz, Österreich
    Beiträge
    5.477
    Ohne ein bischen Beispiel Code lässt sich schwer sagen, was falsch ist.

    Ciao,
    _
    Qt/KDE Entwickler
    Debian Benutzer

  3. #3
    Registrierter Benutzer
    Registriert seit
    19.04.2002
    Beiträge
    27
    Ich habe den Code gerade nicht zur Hand. Die Frage ist, ob pthreads immer auf mehrere Kerne verteilt werden können oder wodurch dies nicht möglich ist.
    LINUX

  4. #4
    Registrierter Benutzer
    Registriert seit
    14.01.2002
    Beiträge
    657
    Zitat Zitat von Tarzipan Beitrag anzeigen
    Ich habe den Code gerade nicht zur Hand. Die Frage ist, ob pthreads immer auf mehrere Kerne verteilt werden können oder wodurch dies nicht möglich ist.
    was für ein betriebssystem benutzt du denn?
    und welche pthread library?
    kann sein dass deine version die threads nur im user space
    laufen lässt oder dein betriebssystem threads nicht unterstützen

    außerdem wär code nicht schlecht, wenn du
    die threads gegenseitig auslockst läuft natürlich
    nichts parallel...

  5. #5
    Registrierter Benutzer
    Registriert seit
    19.04.2002
    Beiträge
    27
    Meine Vermutung ist, dass die Threads nur im Userspace laufen. Ich benutze Linux 2.6.17 mit pthreads (GNU C Library). Gelockt war natürlich nichts.
    LINUX

  6. #6
    Administrator Avatar von anda_skoa
    Registriert seit
    17.11.2001
    Ort
    Graz, Österreich
    Beiträge
    5.477
    Bei 2.6.x ist es ziemlich wahrscheinlich, dass es echte Kernelthreads sind.

    Ciao,
    _
    Qt/KDE Entwickler
    Debian Benutzer

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •