Martin Jung: Welche Programmiersprache ist die richtige?

Beitrag lesen

Moin Michael,

Was soll ich sagen außer einem klaren Jaein.  :-)
Dynamische Codeoptimierung setzt ja vorraus, daß zur Laufzeit des Programms eine Art Optimizer läuft der natürlich für seine Arbeit auch gewissen einen Anteil an Rechenleistung benötigt. Und die muss ja zunächst einmal rausgearbeitet werden. Das heißt die Optimierung muss mindestens so gut sein, daß die dadurch gewonnene Rechenzeit den Optimizer mit versorgen kann.

Ein positives Saldo als Ergebnis ist natürlich eine (implizite) Zielvorgabe für derartige Bemühungen.

Kommt auch sehr darauf an, wie oft ein optimiertes Codestück aufgerufen wird. Bei einmaligem Aufruf beispielsweise hast Du nur Aufwand aber kein nutzen. Und unglücklicherweise läßt sich auch schwer vorhersagen, wie oft ein bestimmter Codeabschnitt aufgerufen wird oder auch nicht (ausser Du hast beispielsweise eine Schleife mit konstantem Start und Endwert oder dergleichen).

Gerade dieser Aspekt kann ja nur zur Laufzeit dynamisch behandelt werden.

Zudem können geänderte Bedingungen vorherige Optimierungen neutralisieren oder sogar ins negative abrutschen lassen.

Das müsste eben zur Laufzeit verhindert werden. Logisch, oder? ;-))

Das Ganze ist ein recht komplexes Feld, so dass sich eigentlich nur sagen läßt: Es kommt darauf an.
Man wird einfach Erfahrungen sammeln müssen und letzlich ist es auch eine Frage, wie gut Optimizer in Zukunft werden können.

Man kann ja 'einfach' die Prinzipien der Prozessoroptimierungen in den virtuellen Prozessor abstrahieren ;-)

Viele Grüße,
Martin Jung

0 111

Welche Programmiersprache ist die richtige?

Jürgen Ulmschneider
  • programmiertechnik
  1. 0
    Die dicke Tina
    1. 0
      wahsaga
      1. 0
        Andavos
    2. 0
      Onkel
      1. 0
        Fabian Transchel
    3. 0
      Atomfried
      1. 0
        Johannes Zeller
  2. 0
    Andavos
  3. 0
    Markus Trusk
    1. 0
      Andavos
      1. 0
        Markus Trusk
    2. 0
      Martin Jung
      1. 0
        MichaelB
        1. 0
          Martin Jung
          1. 0
            MichaelB
            1. 0
              Martin Jung
              1. 0
                MichaelB
                1. 0
                  Martin Jung
                  1. 0
                    MichaelB
    3. 0
      Andreas-Lindig
      1. 0
        MichaelB
  4. 0

    Nimm Java

    MichaelB
    1. 0
      Jürgen ulmschneider
      1. 0
        Fabian Transchel
        1. 0
          Christian Seiler
          1. 0
            Jürgen Ulmschneider
            1. 0
              Christian Seiler
              1. 0
                MichaelB
  5. 0
    Gerrit
    1. 0
      MichaelB
      1. 0
        Christian Seiler
        1. 0
          MichaelB
          1. 0
            Christian Seiler
            1. 0
              Jürgen ulmschneider
              1. 0
                MichaelB
              2. 0
                Ingo Turski
  6. 0
    Danny
    1. 0
      FrankieB
      1. 0
        MichaelB
        1. 0
          FrankieB
  7. 0
    Bio
    1. 0
      MichaelB
      1. 0
        Bio
        1. 0
          MichaelB
    2. 0
      Gerrit
      1. 0
        Gerrit
  8. 0
    Noodles
    1. 0
      MichaelB
      1. 0
        Noodles
        1. 0
          MichaelB
          1. 0
            Christian Kruse
            1. 0
              MichaelB
          2. 0
            GONZO
            1. 0
              MichaelB
    2. 0
      Jürgen Ulmschneider
      1. 0
        MichaelB
  9. 0
    Julian von Mendel
    1. 0
      MichaelB
  10. 0
    Jürgen Ulmschneider
    1. 0
      MichaelB
    2. 0
      Vinzenz
      1. 0
        MichaelB
        1. 0
          Klaus Mock
          1. 0
            MichaelB
          2. 0
            Frank Schönmann
            1. 0
              MichaelB
              1. 0
                Frank Schönmann
                1. 0
                  MichaelB
                  1. 0
                    Christian Seiler
                    1. 0
                      MichaelB
                      1. 0
                        Christian Kruse
                        1. 0
                          MichaelB
                          1. 0
                            Christian Kruse
                            1. 0
                              MichaelB
                              1. 0

                                Fortsetzung

                                MichaelB
                                1. 0
                                  Klaus Mock
                                  1. 0
                                    MichaelB
                  2. 0
                    Christian Kruse
                    1. 0
                      MichaelB
    3. 0
      Kopfwunde
    4. 0
      Eternius
      1. 0
        GONZO
        1. 0
          MichaelB
  11. 0
    Jürgen Ulmschneider
    1. 0
      MichaelB
      1. 0
        Fabian Transchel
        1. 0
          MichaelB
          1. 0
            Fabian Transchel
            1. 0
              MichaelB
      2. 0
        Christian Seiler
        • menschelei
        1. 0
          Fabian Transchel
  12. 0
    nobody
    1. 0
      Fabian Transchel
      1. 0
        MichaelB
        1. 0
          Fabian Transchel
          1. 0
            MichaelB
            1. 0
              Fabian Transchel
              1. 0

                Energien

                MichaelB
                • sonstiges
                1. 0
                  Christian Seiler
                  1. 0
                    Christian Seiler
                    1. 0
                      MichaelB
                  2. 0
                    Fabian Transchel
                    1. 0
                      Christian Seiler
                  3. 0
                    MichaelB
                  4. 0
                    Christian Seiler
                    1. 0
                      Klaus Mock
                      1. 0
                        Fabian Transchel
                    2. 0
                      Fabian Transchel
          2. 0
            Christian Seiler
            1. 0
              Fabian Transchel