1. Dashboard
  2. Forum
    1. Unerledigte Themen
  3. Mitglieder
    1. Letzte Aktivitäten
    2. Benutzer online
    3. Team-Mitglieder
    4. Trophäen
    5. Mitgliedersuche
  4. Tutorial Bereich
  • Anmelden
  • Registrieren
  • Suche
Dieses Thema
  • Alles
  • Dieses Thema
  • Dieses Forum
  • Seiten
  • Forum
  • Lexikon
  • Erweiterte Suche
  1. Informatik Forum
  2. Webmaster & Internet
  3. Entwicklung

Speedup enhanced - Fraction enhanced

    • Frage
  • sommeralex
  • 25. Januar 2007 um 21:26
  • Unerledigt
  • sommeralex
    11
    sommeralex
    Mitglied
    Punkte
    1.325
    Beiträge
    188
    • 25. Januar 2007 um 21:26
    • #1

    Passt zwar nicht in die Code-Ecke, aber ich vermute mal, dass wenn sich jemand auskennt, die code-ecke-looker die besten sind :winking_face:

    Es geht um den SpeedUP:

    Fraction Enhanced - SpeedUp Enhanced

    das eine ist der Anteil der Gesamtausführungszeit, der andere bezeichnet die "gesamte ausführbare Zeit"

    hab gegoogelt - aber außer in meinen unterlagen nichts (brauchbares) gefunden. einzig der angebene link. kennt jemand den unterschied und kann es vernünftig erklären? http://209.85.129.104/search?q=cache…lient=firefox-a


  • jeuneS2
    11
    jeuneS2
    Mitglied
    Reaktionen
    17
    Punkte
    1.227
    Beiträge
    238
    • 25. Januar 2007 um 21:38
    • #2

    Computer Architecture VO, nehme ich an?

    FractionEnhanced ist der Anteil des Programms, der verbessert wurde.
    SpeedUpEnhanced bezieht sich darauf, um wie viel schneller dieser Anteil geworden ist.

    Wenn man also 50% eines Programms doppelt so schnell macht, erreicht man einen SpeedUp von 1/((1-0.5)+0.5/2)=1.33

    Why bother spending time reading up on things? Everybody's an authority, in a free land.

  • sommeralex
    11
    sommeralex
    Mitglied
    Punkte
    1.325
    Beiträge
    188
    • 25. Januar 2007 um 21:56
    • #3

    Ja, ist die VO .- ich glaub, es geht mir hier nur um ein sprachliches Problem..

    also: was soll das heissen, der Anteil der verbessert wurde?

    wenn ich eine schnellere CPU habe, geht meistens (fast) alles schneller. Angenommen, ich habe eine neue Super-Float CPU, die mir meine Floatberechnungen verdoppelt. Das heisst, es gibt einen kleinen Float-Anteil in meinem imaginären Mathe-Programm, der macht sagen wir 30% aus. Also ist der Anteil 30%. richtig?

    Aus meinem uraltskript:

    SpeedUP Enhanced: wird die Verbesserung der gesamten ausführbaren Zeit bezeichnet. Benötigt man für eine Problemstellung statt 10s nur noch 5s, so ergibt sich ein Geschwindigkeitsgewinn von 10/5.

    Fraction E: bezeichnet man jenen Anteil der Gesamtausführungszeit, um den ein Programm verbessert wurde. Benötogt ein Programm beispielsweise zur Ausführung eines Problems 25s und die Gesamtausführungszeit konnte um 5s durch Maßnahmen der Leistungssteigerung verbessertw erden, so ergibt sich daraus ein Verhältnis von 5/25.

    bin mir halt nicht sicher, ob deine (verständliche) Definition kompatibel mit der aus meinem Skript ist.

  • jeuneS2
    11
    jeuneS2
    Mitglied
    Reaktionen
    17
    Punkte
    1.227
    Beiträge
    238
    • 25. Januar 2007 um 22:16
    • #4
    Zitat von sommeralex

    Ja, ist die VO .- ich glaub, es geht mir hier nur um ein sprachliches Problem..

    also: was soll das heissen, der Anteil der verbessert wurde?

    wenn ich eine schnellere CPU habe, geht meistens (fast) alles schneller. Angenommen, ich habe eine neue Super-Float CPU, die mir meine Floatberechnungen verdoppelt. Das heisst, es gibt einen kleinen Float-Anteil in meinem imaginären Mathe-Programm, der macht sagen wir 30% aus. Also ist der Anteil 30%. richtig?

    Ja.

    Zitat von sommeralex

    Aus meinem uraltskript:

    SpeedUP Enhanced: wird die Verbesserung der gesamten ausführbaren Zeit bezeichnet. Benötigt man für eine Problemstellung statt 10s nur noch 5s, so ergibt sich ein Geschwindigkeitsgewinn von 10/5.

    Fraction E: bezeichnet man jenen Anteil der Gesamtausführungszeit, um den ein Programm verbessert wurde. Benötogt ein Programm beispielsweise zur Ausführung eines Problems 25s und die Gesamtausführungszeit konnte um 5s durch Maßnahmen der Leistungssteigerung verbessertw erden, so ergibt sich daraus ein Verhältnis von 5/25.

    bin mir halt nicht sicher, ob deine (verständliche) Definition kompatibel mit der aus meinem Skript ist.

    Meine Definition basiert auf den Folien zur VO (Foliensatz "Computer Architecture", Folie 10), die Definitionen aus deinem Skript sind nicht kompatibel dazu.

    Why bother spending time reading up on things? Everybody's an authority, in a free land.

  • sommeralex
    11
    sommeralex
    Mitglied
    Punkte
    1.325
    Beiträge
    188
    • 25. Januar 2007 um 22:22
    • #5

    ok, mein skript ist sowieso nicht gut :winking_face:

    Bezüglich Effizienz:

    Unter Effizienz (Ep) versteht man, wie gut ein Algorithmus p Prozessoren auslasten kann. Die E. ist definiert als Beschleunigungsgewinn je Prozessor und lautet daher:

    Ep = Sp / p

    (Sp..:SpeedUp)

    Der Effizienzbereich liegt zwischen den Werten 0 < Ep < 1 (sollen kleinergleich zeichen sein)


    ------------------------------------

    irgendwie gefällt mir diese Definition nicht. Angenommen, mein SpeedUp ist 5 mit 2 Prozessoren. Dann wäre

    5/2 = 2.5 - und 2.5 wäre nicht mehr im Effizienzbereich?

  • jeuneS2
    11
    jeuneS2
    Mitglied
    Reaktionen
    17
    Punkte
    1.227
    Beiträge
    238
    • 26. Januar 2007 um 01:01
    • #6

    Mit 2 Prozessoren wird die Applikation auch nicht 5x so schnell laufen, sondern maximal doppelt so schnell, was dem Faktor 1 entspräche und so auch Sinn macht.

    Why bother spending time reading up on things? Everybody's an authority, in a free land.

  • sommeralex
    11
    sommeralex
    Mitglied
    Punkte
    1.325
    Beiträge
    188
    • 26. Januar 2007 um 01:25
    • #7

    genau da liegt offenbar mein denkfehler. warum kann ein programm mit zwei prozessoren nicht mehr als doppelt so schnell sein?

    schon klar; jede cpu arbeitet in ihrer taktzahl instruktionen ab. zwei cpus können auch nur doppelt soviele instruktionen annehmen und daher maximal doppelt so schnell sein.

    aber:

    in dieser logik fehlt mir der synergiefeffekt. ich hab zwar kein praktisches beispiel, ein symbolisches: ein auto mit einem rad fährt schrecklich, mit zwei vorne (vorradantrieb) kann man zumindest lenken und optimal fährts mit 4 reifen :winking_face: mit steigender radanzahl wächst der nutzen exponentiell bis zum optimum 4 und nimmt dann wieder ab.

    oder:

    3 menschen leisten 5 mal soviell wie einer. ungefähr klar, auf was ich hinaus möchte?

  • jeuneS2
    11
    jeuneS2
    Mitglied
    Reaktionen
    17
    Punkte
    1.227
    Beiträge
    238
    • 26. Januar 2007 um 02:20
    • #8

    Ist klar, nur gibt es bei Prozessoren keine Synergieeffekte, weil insgesamt die gleiche Anzahl an Instruktionen abgearbeitet werden muss. Im Gegenteil, durch nicht vollständige Parallelität und den Kommunikationsoverhead wird der Speedup mit doppelt so vielen Prozessoren in der Realität (möglicherweise deutlich) kleiner als 2 sein. Anders gesagt: ein einzelner Prozessor ist am effizientesten, danach kommen sie sich in die Quere.

    Why bother spending time reading up on things? Everybody's an authority, in a free land.

  • sommeralex
    11
    sommeralex
    Mitglied
    Punkte
    1.325
    Beiträge
    188
    • 26. Januar 2007 um 02:47
    • #9

    danke. gute nacht!

  • Maximilian Rupp 27. Dezember 2024 um 12:05

    Hat das Thema aus dem Forum Programmieren nach Entwicklung verschoben.

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!

Benutzerkonto erstellen Anmelden

Benutzer online in diesem Thema

  • 1 Besucher

Rechtliches

Impressum

Datenschutzerklärung