Bad Cache



  • Hallo ich möchte selber ein Programm schreiben was folgendes leisten soll:

    Aufgabenstellung
    Ziel dieser Aufgabe ist es sich mit dem Verhalten des Caches vertraut zu machen. Sie sollten einen Algorithmus entwerfen, welcher möglich viele Caches Misses erzeugt.

    Erstellung eines Steckbriefs Ihres Testsystems (Rechner)
    Lesen Sie unter Windows oder Linux die Eigenschaften Ihres,
    Prozessors aus (CPUz oder System-Infos) und dokumentieren Sie
    einen Steckbrief Ihres Systems.
    L1, L2, (L3) - Assoziationstyp

    Stör-Algorithmus (Theorie)
    Entwerfen Sie eine Algorithmus / Störstrategie für Ihr Testsystem

    Entwerfen Sie basierend auf den Daten (L1 , L2,L3 .. Assoz.) Ihres
    Test-Systems eine Zugriffsstrategie, die mit möglich wenigen Zugriffen,
    eine hohe Cache-Miss-Rate erzeugt.

    Dabei spielen die folgenden Überlegungen eine Rolle

    Wie groß muss ich mein Test-Array (Test-Daten) anlegen
    Wie werden die Adressen des Test-Arrays auf den Cache abgebildet
    Wie könnte man die Assoziation nutzen um möglichst viele Störungen
    zu erzeugen.

    Erstellung & Test des Test-Programms

    Erstellen Sie zu Ihrer Strategie eine Testprogramm, analysieren und
    dokumentieren Sie das Cache-Verhalten - Ergebnisse.

    Das Programm sollte in einer gängigen Programmiersprache
    (C , C++, C#, Java, Pascal, Assembler, Basis , .....)
    unter Linux oder Windows realisiert und analysiert werden.

    Zu Bewertung der Ergebnisse müssen Sie sich eine Testumgebung
    schaffen. Die entsprechend Profiling-Tools werden von verschieden
    Open-Source Gruppen oder von HW-Herstellen (Intel / AMD),
    teils zeitliche begrenzt (30Tage Test-Lizenz) zur Verfügug gestellt.

    Stichworte für Ihre Suchen
    Code-Profiler, Cache-Tests , Valgrid, Code-Analyser, VTune ,PerfMon

    Vielleicht könnte mir jemand der sich damit auskennt ein paar Denkanstöße geben.

    Danke für eure Mühen 🙂
    Gruss


Anmelden zum Antworten