Seite 2 von 6 123456
  1. #11

    Mitglied seit
    02.07.2016
    Beiträge
    455

    AW: Stresstest für die Integer Einheiten der CPU

    Kannste auch eine dritte Option mit einbauen, RAM malloc()en lassen. Die Lastwechsel sind die, die einem zeigen, ob eine Unit stabil ist. Memtest 86+ ist ja geeignet, um RAMS auf wirkliche Defekte zu prüfen, ohne Lastwechsel CPU hat eine Spannung, Rams. Im Grunde nur dazu geeignet, wirkliche RAM Defekte zu finden.

    Im Clan waren europaweit Leute mit selbsgebauten Rechnern unterwegs. Zack offline ein Mitstreiter, so schnell wie es geht wieder on. Die Leute ohne Ausbildung denken, die Abstürze liegen an Windows, Bill Gates die Sau. Dabei ist deren Hardware instabil eingestellt.

    •   Alt

      Anzeige
      Bitte einloggen, um diese Anzeige auszublenden.
       

  2. #12

    Mitglied seit
    02.07.2016
    Beiträge
    455

    AW: Stresstest für die Integer Einheiten der CPU

    Waitstates... Task Resheduling und Semaphoring, Win32 API
    Wait(5000); 5 Sekunden default, dann Vollast. Einstellbar in der gaussmath APP

    In der gaussmath app einen link einbauen zu nobugz, MS MVP und der Sysinternals Suite.

  3. #13
    Avatar von gaussmath
    Mitglied seit
    27.09.2007
    Beiträge
    4.129

    AW: Stresstest für die Integer Einheiten der CPU

    Die gaussmath App...

  4. #14

    Mitglied seit
    02.07.2016
    Beiträge
    455

    AW: Stresstest für die Integer Einheiten der CPU

    Ja bauste auch noch, das Fenster nicht größer als Core Temp, Komplexe Rechnung mit ein, die Controls haste ja in Visual Studio. I=R*J. Komplexe Rechnung nach Gauss.

    Scheiss Theologie


    So daß die Kinder ihre Rechner instabil eingestellt in den Bluescreen of Death befördern können Stress Integer & FFP gleichzeitig, ein Radio Button oder Listview Select, Start Button Dazu der obligatorische IRQ int 13h auf zei kaskadierten 8529 Interrupt Controllern Haken für die Waitstates zum Lastwechsel, 5000 msec. default. Danach wieder was der Stromzähler an U/min macht -) Spannungsabriss Interval einbauen für die Waitstates. Vollast 10 Minuten default, dann Spannungsabriss für die Kerne, 5 Sekunden, dass die kalt werden und Nachbarn haben die voll stochen, Option einbauen, selektiv die Kerne unabhängig voneinander via Zufallsgenerator unter Vollast zu fahren, während andere Kerne schlafen...

    gaussmath stabling app, der aktuelle Name.
    Geändert von Plasmadampfer (14.09.2018 um 15:31 Uhr)

  5. #15
    Avatar von gaussmath
    Mitglied seit
    27.09.2007
    Beiträge
    4.129

    AW: Stresstest für die Integer Einheiten der CPU

    Hm, das sind ja schon erweiterte Strategien. Ich arbeite derzeit an einem ausgefeilten Workload Simulator. Da will ich natürlich nicht so vorgreifen. Aber Lastwechsel mit festen Abständen über 5 Sekunden kann ich noch konfigurierbar einbauen.

  6. #16

    Mitglied seit
    02.07.2016
    Beiträge
    455

    AW: Stresstest für die Integer Einheiten der CPU

    Dekliniere die Parameter im main thread, übergib die Parameter definiert für die Tasks in Klammern für die Threads, so benutzen die Threads die Datenregister der CPU, statt far global zurückzurudern um global zu ernten.

  7. #17
    Avatar von gaussmath
    Mitglied seit
    27.09.2007
    Beiträge
    4.129

    AW: Stresstest für die Integer Einheiten der CPU

    Meinst du so?
    Code:
    using System;
    using System.Linq;
    using System.Threading.Tasks;
     
    namespace IntMark
    {
        class Program
        {
            static void Main(string[] args)
            {
                Console.WriteLine("Number of tasks:");
    
                // Be careful, no input validation
                int numOfTasks = Convert.ToInt32(Console.ReadLine());
                
                const long length = 8000;
    
                for (int i = 0; i < numOfTasks; i++)
                {
                    Console.WriteLine("{0}. Task started...", i + 1);
    
                    Task.Factory.StartNew(() =>
                    {
                        // Generates about 64kb test data
                        long[] array = Enumerable.Range(1, (int)length).Select(x => (long)x).ToArray();
    
                        try
                        {
                            while (true)
                            {
                                long dotProduct = array.Sum(x => x * x);
    
                                // https://www.wolframalpha.com/input/?i=sum(i%5E2,i%3D1..n)
                                if (dotProduct != (length * (length + 1) * (2 * length + 1)) / 6)
                                {
                                    throw new InvalidOperationException();
                                }
                            }
                        }
                        catch (Exception ex)
                        {
                            Console.WriteLine("Task aborted with exception {0}", ex.Message);
                        }
                    });
                }
    
                Console.ReadKey();
            }
        }
    }
    Das hatte ich gestern schon getestet. Es ändert nichts.

  8. #18

    Mitglied seit
    02.07.2016
    Beiträge
    455

    AW: Stresstest für die Integer Einheiten der CPU

    ermittel die möglichen threads der cpu automatisch kerne mal 2 mit smt, sonst nur die anzahl der kerne, before the show begins.

    nimm den try block raus und

    using System.Management; /*( Manamanap Management _*/

    hier, helpschool:

    How To Get Hardware Information (CPU ID, MainBoard Info, Hard Disk Serial, System Information , ...) - CodeProject

    while(!false) ist schneller, wird über die NANDs gegattert. 74HC00. High Speed CMOS. Complementary High Speed Semiconductor.


    Conditional branching real mode, x86 und protected mode


    ich starte meistens mit void main(void){...}

    K&R ANSI C ist int main(void){};


    void main(void){}; wird auf einem motorola 68000 mit #$4E75 übersetzt beim SAS C-Compiler, schlanke 2 Byte. Nen bischen Overhead drumherum als ausführbare Datei.

    CMOS= Complementary Metal Oxid Semiconductor.

    MOSFET = Metal Oxid Field Effect Transistor
    Geändert von Plasmadampfer (14.09.2018 um 18:04 Uhr)

  9. #19
    Avatar von gaussmath
    Mitglied seit
    27.09.2007
    Beiträge
    4.129

    AW: Stresstest für die Integer Einheiten der CPU

    So, neuer Ansatz mit einigen Inspirationen von Plasmadampfer. Die Konfiguration wird über eine Datei "params.txt" übernommen. Insgesamt muss "LoadIntervalSeconds" größer als "PauseTimeSeconds" sein. Mit "UseDynamicLoad 0/1" kann man die dynamischen Lastwechsel abschalten/einschalten. Die Auslastung beträgt nun nahezu konstant 99% auf meinem System. Der Datacontext ist größer, so dass Cache + RAM verstärkt ackern müssen. Im Anhang befindet sich die neue Version + Config-Datei.

    Code:
    NumOfTasks 16
    UseDynamicLoad 0
    PauseTimeSeconds 5
    LoadIntervalSeconds 30
    Code:
    using System;
    using System.Collections.Generic;
    using System.IO;
    using System.Linq;
    using System.Threading;
    using System.Threading.Tasks;
     
    namespace IntMark
    {
        class Program
        {
            static ManualResetEvent manualResetEvent = new ManualResetEvent(true);
     
            static void Main(string[] args)
            {
                // Defaults
                int numOfTasks = 16;
                bool useDynamicLoad = true;
                int pauseTimeSeconds = 5;
                int loadIntervalSeconds = 30;
     
                try
                {
                    var settings =
                         (from line in File.ReadAllLines("params.txt")
                          let parameters = line.Split(' ')
                          select new KeyValuePair<string, string>(parameters[0], parameters[1])).ToDictionary(x => x.Key, x => x.Value);
     
                    numOfTasks = Convert.ToInt32(settings["NumOfTasks"]);
                    useDynamicLoad = Convert.ToInt32(settings["UseDynamicLoad"]) == 1;
                    pauseTimeSeconds = Convert.ToInt32(settings["PauseTimeSeconds"]);
                    loadIntervalSeconds = Convert.ToInt32(settings["LoadIntervalSeconds"]);
                }
                catch (FileLoadException ex)
                {
                    Console.WriteLine("Error while reading parameter from file: {0}", ex.Message);
                }
     
                const long length = 200000;
     
                if (useDynamicLoad)
                {
                    var timer = new Timer((e) =>
                    {
                        SetResetPause(pauseTimeSeconds);
                    }, null, TimeSpan.Zero, TimeSpan.FromSeconds(loadIntervalSeconds));
                }
     
                for (int i = 0; i < numOfTasks; i++)
                {
                    Console.WriteLine("{0}. Task started...", i + 1);
     
                    Task.Factory.StartNew(() =>
                    {
                        long[] array = Enumerable.Range(1, (int)length).Select(x => (long)x).ToArray();
     
                        try
                        {
                            while (true)
                            {
                                long dotProduct = array.Sum(x => x * x);
     
                                // https://www.wolframalpha.com/input/?i=sum(i%5E2,i%3D1..n)
                                if (dotProduct != (length * (length + 1) * (2 * length + 1)) / 6)
                                {
                                    throw new InvalidOperationException();
                                }
     
                                manualResetEvent.WaitOne();
                            }
                        }
                        catch (Exception ex)
                        {
                            Console.WriteLine("Task aborted with exception {0}", ex.Message);
                        }
                    });
                }
     
                Console.ReadKey();
            }
     
            private static void SetResetPause(int pauseTimeSeconds)
            {
                manualResetEvent.Reset();
                Thread.Sleep(TimeSpan.FromSeconds(pauseTimeSeconds));
                manualResetEvent.Set();
            }
        }
    }
    Edit: UseDynamicLoad ist default jetzt 0, also abgeschaltet.
    Angehängte Dateien Angehängte Dateien
    Geändert von gaussmath (16.10.2018 um 13:12 Uhr)

    •   Alt

      Anzeige
      Bitte einloggen, um diese Anzeige auszublenden.
       

  10. #20
    Avatar von gaussmath
    Mitglied seit
    27.09.2007
    Beiträge
    4.129

    AW: Stresstest für die Integer Einheiten der CPU

    Zitat Zitat von DKK007 Beitrag anzeigen
    Hast du mal einen Vergleich mit 8 Threads auf 8 Kernen ohne SMT?

    Würde mich interessieren, wie stark sich SMT bei Zen auf den Stromverbrauch auswirkt.
    Welchen Threadripper hast du eigentlich?
    Es ist kaum zu glauben, aber der Unterschied beträgt gerade mal 10 Watt und das, obwohl ich 8 statt 16 Threads verwende. Was noch hinzu kommt, ist, dass der Browser kaum bedienbar ist, wenn SMT deaktiviert ist und der Test in der neuen Version läuft.

    Irgendwie kann ich das nur schwer glauben, gerade weil der Unterschied bei der Performance so hoch ist, aber die Package Power sich kaum unterscheidet.

Seite 2 von 6 123456

Ähnliche Themen

  1. CPU Stresstest Temperaturen normal?
    Von Fxkxnx im Forum Luftkühlung
    Antworten: 0
    Letzter Beitrag: 29.09.2017, 16:52
  2. Welches Tool für CPU Stresstest ?
    Von EmpirEX im Forum Benchmarks
    Antworten: 2
    Letzter Beitrag: 11.11.2016, 17:41
  3. CPU-Z: Version 1.73 bringt internen Benchmark und Stresstest
    Von PCGH-Redaktion im Forum News-Kommentare zu Tools, Anwendungen, Sicherheit
    Antworten: 38
    Letzter Beitrag: 19.01.2016, 16:11
  4. PC stürzt mit Bluescreens ab? CPU-Instabilität mit Stresstests aufdecken
    Von PCGH-Redaktion im Forum Overclocking: Prozessoren
    Antworten: 18
    Letzter Beitrag: 21.02.2015, 11:28
  5. Stresstest für die CPU, außer Prime95
    Von micsterni14 im Forum Prozessoren
    Antworten: 28
    Letzter Beitrag: 26.10.2014, 18:09

Stichworte

Berechtigungen

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