Ergebnis 1 bis 5 von 5

Thema: Windows Anwendung permanent an Kerne binden

  1. #1
    seirex1234
    Herzlich willkommen

    Ausrufezeichen Windows Anwendung permanent an Kerne binden

    Hallo,
    hatte schonmal was gepostet war aber irgendwie weg:


    ich hoste auf meinem Windows PC einen CSGO Gameserver. Ich habe einen I7-4770 (4kerne / 8Threads)

    Wenn ich den csgo server starte, benutzt dieser alle Kerne. Er laggt extrem wenn wir auf ihm Spielen.
    Wenn ich im Taskmanager die Kerne bearbeite (Zugehörigkeit) und nur auf einem Kern laufen lasse funktioniert alle problemlos.
    Wenn ich die Anwendung restarte sind jedoch die einstellungen wieder zurückgesetzt und ich muss es wieder erneut zuweisen.

    Meine Frage:

    Wie kann ich einstellen, dass eine bestimmte Anwendung immer nur einen Kern benutzt (oder ich einstellen kann welchen und wie viele Kerne sie benutzen darf) und diese Einstellungen permanent erhalten bleiben. Auch nach Anwendungs oder PC restart.

  2.   Anzeige

     
  3. #2
    Nussi
    Lumianer Avatar von Nussi

    AW: Windows Anwendung permanent an Kerne binden

    Öffne die PowerShell ISE und füge folgendes ein:

    ###
    <#
    $Core1 = 1
    $Core2 = 2
    $Core3 = 4
    $Core4 = 8
    $Core5 = 16
    $Core6 = 32
    $Core7 = 64
    $Core8 = 128
    #>
    $ProcAffinity = "64"

    $ApplicationPath = "DEINE EXE" #z.B. C:\temp\test.exe
    $ApplicationName = $ApplicationPath -creplace '(?s)^.*\\', ''
    Start-Process $ApplicationPath
    do{
    Write-Host "Warte auf Prozess..." -ForegroundColor Cyan -BackgroundColor Black
    $WaitForProcess = Get-Process $ApplicationName -ErrorAction SilentlyContinue
    sleep 1
    }until(!$WaitForProcess -eq $false)
    # Set Affinity
    $WaitForProcess.ProcessorAffinity=$ProcAffinity
    #sleep 5
    ###
    Nun speichere das Ganze irgendwo ab.
    Nachdem du das erledigt hast, wechselst du in das Verzeichnis der gespeicherten *.ps1 Datei und klickst mit einem Rechtsklick drauf und wählst "Mit PowerShell ausführen" aus.

    Hinweis: Erscheint nur kurz das Fenster, gibt es zwei mögliche Fehlerquellen:
    1. ist eventuell deine Ausführungspolicy für Skripte zu streng. In diesem Fall die PowerShell als Administrator öffnen und "Set-ExecutionPolicy RemoteSigned" eingeben. Das sollte für dein Skript zu reichen.
    2. Du musst das Skript als Administrator ausführen. Entweder baust du eine Verknüpfung oder du führst immer erst die PowerShell als Admin aus und lädst das Skript dort rein.

    Noch eine kleine Erklärung, wie du das Skript konfigurieren musst:
    möchtest du nur einen Core deiner CPU verwenden, brauchst du nur eine Zahl eintragen (z.B. die "4", wenn nur der dritte Core verwendet werden soll). Möchtest du mehrere Cores kombinieren, musst du die Zahlen addieren (z.B. Core 2, Core 6 und Core 8 ergeben 162).


    Viele Grüße
    Nussi

  4. #3
    VistExperiment
    gehört zum Inventar

    AW: Windows Anwendung permanent an Kerne binden

    Hallo , wenn man's mit den Befehlszeilen nicht so hat :
    nimmt man EasyToolz oder Prozesslasso ,
    ist zwar beides nicht perfekt .......ausprobieren.

  5. #4
    seirex1234
    Herzlich willkommen

    AW: Windows Anwendung permanent an Kerne binden

    okey vielen dank für die antwort. Ich werde alles einmal ausprobieren

  6. #5
    .Bernd
    gehört zum Inventar Avatar von .Bernd

    AW: Windows Anwendung permanent an Kerne binden

    Wenn du das automatisch regeln möchtest -> https://bitsum.com/

Berechtigungen

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