Seite 1 von 5 12345
  1. #1
    Avatar von gaussmath
    Mitglied seit
    27.09.2007
    Beiträge
    3.167

    Stresstest für die Integer Einheiten der CPU

    Falls jemand einen Stresstest sucht, der ausschließlich Integer Einheiten abdeckt, hier bitteschön. Einfach mit Doppelklick starten und die Anzahl der Tasks/Threads festlegen, dann mit Enter bestätigen.

    Zum selber Kompilieren:
    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());
     
                // Generates about 64kb test data
                const long length = 8000;
                long[] array = Enumerable.Range(1, (int)length).Select(x => (long)x).ToArray();
     
                for (int i = 0; i < numOfTasks; i++)
                {
                    Console.WriteLine("{0}. Task started...", i + 1);
     
                    Task.Factory.StartNew(() =>
                    {
                        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();
            }
        }
    }
    Version mit dynamischen Lastwechsel hier: Stresstest für die Integer Einheiten der CPU
    Angehängte Dateien Angehängte Dateien
    Geändert von gaussmath (24.09.2018 um 16:06 Uhr)
    Klar pro Intel, klar pro Nvidia und klar pro Kleinkredit.

    Custom OCAT Beta
    Stresstest für Integer-Einheiten

    •   Alt

      Anzeige
      Bitte einloggen, um diese Anzeige auszublenden.
       

  2. #2
    Avatar von gaussmath
    Mitglied seit
    27.09.2007
    Beiträge
    3.167

    AW: Stresstest für die Integer Einheiten der CPU

    Der Test verursacht mit 16 Threads eine Package Power von 180 Watt auf meinem Threadripper, obwohl nur 8 Kerne + SMT aktiviert sind.
    Miniaturansichten angehängter Grafiken Miniaturansichten angehängter Grafiken -screenshot_19.png  
    Klar pro Intel, klar pro Nvidia und klar pro Kleinkredit.

    Custom OCAT Beta
    Stresstest für Integer-Einheiten

  3. #3
    Avatar von lutari
    Mitglied seit
    07.08.2017
    Beiträge
    1.102

    AW: Stresstest für die Integer Einheiten der CPU

    Bei welchem Takt?

  4. #4
    Avatar von gaussmath
    Mitglied seit
    27.09.2007
    Beiträge
    3.167

    AW: Stresstest für die Integer Einheiten der CPU

    Zitat Zitat von lutari Beitrag anzeigen
    Bei welchem Takt?
    Achso, ich vergaß. 4GHz bei 1.35V.
    Klar pro Intel, klar pro Nvidia und klar pro Kleinkredit.

    Custom OCAT Beta
    Stresstest für Integer-Einheiten

  5. #5
    Avatar von DKK007
    Mitglied seit
    16.12.2013
    Liest
    PCGH.de & Heft
    Beiträge
    21.766

    AW: Stresstest für die Integer Einheiten der CPU

    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?
    PC: CPU: i7-4770K @3.5GHz, MB: ASUS Z87-Pro, RAM: 20GiB, NT: bq Straight Power E9 CM 580W, GPU: Sapphire R9-380X Nitro 4 GiB [ASIC 75,7%], Win7 Ultimate (64bit) + OpenSuse 13.1 (64bit)
    2. PC: CPU: i5-2500K @Stock, MB: ASRock Z77-Pro4, RAM: 12GiB, NT: bq Straight Power E10 400W, GPU: Gigabyte GTX1050ti G1 Gaming 4 GiB, Gehäuse: R5 PCGH, Win7 Pro (64bit)
    Laptop: ASUS Pro P55VA, CPU: i5-3210M @ 2x2,5GHz, RAM: 8GiB, HD4000, Win10-TP + Linux Mint 17 Cinnamon (jeweils 64bit) auf MX100 256GB

  6. #6
    Avatar von gaussmath
    Mitglied seit
    27.09.2007
    Beiträge
    3.167

    AW: Stresstest für die Integer Einheiten der CPU

    Kann ich morgen gerne mal testen. Ich habe den 1950X. Der Game Mode ist zur Zeit aktiviert.
    Klar pro Intel, klar pro Nvidia und klar pro Kleinkredit.

    Custom OCAT Beta
    Stresstest für Integer-Einheiten

  7. #7

    Mitglied seit
    02.07.2016
    Beiträge
    180

    AW: Stresstest für die Integer Einheiten der CPU

    Disassemblier mal den Mist. Der Code macht zu viel Pause in .NET. Gib der CPU richtig Zunder mit wenigstens K&R C übersetzt mit gcc oder nimm wenn Du es kannst direkt Notepad++ und übersetze mit masm.

    Den Code kann man nicht wirklich disassemblieren, decompilieren mit .NET Reflector. Ist ein .NET Assembly. Aber der Code nimmt auf jeden Fall nicht Teil auf der Assembly mit 24 KByte Intros. Das ist mal sicher


    Nicht das .NET schlecht ist, ich mag das auch in C#. Aber um eine CPU zu stressen, ein bischen Hardware näher bitte. DIe Pipelines nutzen. Die sollen ackern, für die Integer. Reihenweise. Und nicht wie im Stau, ersma Schleifenbildung, die Stack Pointer zugange, die Integers nix zu tun, wenn alle vom Autobahnkreuz nicht Sternförmig abreisen. Die werden im Stau nicht heiss, wie Autos, eher kalt Die for int Schleife macht Autobahn gesperrt, nicht mehr und nicht weniger. Das macht die gehörig oft. Dann noch die while kaskadiert und dann auch noch Exception Handling, sicher ist sicher. Wenn man sowas Kleines programmiert für den Zweck, dann braucht man kein Exception Handling.
    Für normale Anwendergesicht (Lamer) Programmierung ist das Lehrbuchmäßig, aber ja, für den Zweck zwar ungeeignet der Code. Programmieren macht Spaß, deswegen gebe ich mir die Mühe, meinen Senf dazu zu geben.


    Bei Pinball Dreams war ich in Aalborg Denmark der Taktzyklenoptimierer 1991. Für scrollfreies Ruckeln strebt man Schleifenbildung an. Straight down Code lässt die Pipelines brennen, auch wenn die RAM Preise teuer sind. Fleissarbeit, Schleifenbildung zu vermeiden. Das kostet so dermaßen Zyklen, jedesmal über Stack Pointer Alles zu sichern im RAM. Mehr mit den Registern arbeiten. Ausm RAM so viel es eben geht sequentiell lesen, nicht so viel schreiben.

    Ich habe gerade nochmal drüber nachgedacht. Es wird kein Maximum Heat Test, aber weil die meisten Rehner, während Lastwechsel abstürzen, wenn die VCORE auf den Kernen steiler abfällt als die Eiger Nordwand, bevor die SPAWAS nachregeln, ist der Code doch gut, Bau Floating Point Arithmetics mit ein. Du weisst, ein Vorzeichenbit, 7 Bit Exponent und 24 Bit Mantisse. Nimm nicht den Datentyp double, nimm float. Wir haben es mit 32/64 bit Prozessoren zu tun und nicht mit 32/16 Bit Prozessoren. Ich habe mal für 10MB Speicher 1100 Mark bezahlt.

    Speicher haben wir genug. Bau ruhig mal ein paar Waitstates ein in den Tasks. Ich teste das dann gerne

    Sorry, jetzt habe ich Multihreaded erst gesehen in der for int. Sorry. Ja , wegen den Lastwechseln kann das so einige Computer zum Abstürzen bringen. Ich habe damals in Lattice C Assembler Mnemonics mit eingebaut. Compilercode ist erfahrungsgemäß nicht so dolle.
    Geändert von Plasmadampfer (14.09.2018 um 13:52 Uhr)

  8. #8
    Avatar von gaussmath
    Mitglied seit
    27.09.2007
    Beiträge
    3.167

    AW: Stresstest für die Integer Einheiten der CPU

    Klar ist das high Level Code, aber man weiß halt nicht, was der Jitter so zaubert im Hintergrund. Wenn ich den Code mit 16 Tasks laufen lassen bei mir, habe ich eine CPU Auslastung von 97-98% und eine TDP von 180 Watt auf 8 Kernen, was schon ziemlich hoch ist.
    Klar pro Intel, klar pro Nvidia und klar pro Kleinkredit.

    Custom OCAT Beta
    Stresstest für Integer-Einheiten

  9. #9

    Mitglied seit
    02.07.2016
    Beiträge
    180

    AW: Stresstest für die Integer Einheiten der CPU

    Ja mach gaussmath App, Integer und Fast Floating Point in.NET. Schön Lastwechsel einbauen. Viele, ganz viele User leben mit BSOD mit instabilen Kisten. Ich kenne keinen Stresstest, der Lastwechsel mit eingebaut hat. Prime 95 kann das bisher am Besten. Da schmieren die Computer ab, wenn einmal kurz die Spawas die abreissende Flanke haben in der Stromversorgung zur CPU.

    •   Alt

      Anzeige
      Bitte einloggen, um diese Anzeige auszublenden.
       

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

    AW: Stresstest für die Integer Einheiten der CPU

    Das ist mit Lastwechseln ist natürlich eine gute Idee. Wie würdest du das machen? Sleeps oder Cache-RAM Wechsel über die Größe des Arrays?
    Klar pro Intel, klar pro Nvidia und klar pro Kleinkredit.

    Custom OCAT Beta
    Stresstest für Integer-Einheiten

Seite 1 von 5 12345

Ä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
  •